|
@@ -2,19 +2,38 @@ package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.service.SysMessageService;
|
|
|
+import com.yonge.cooleshow.biz.dal.vo.TeacherEarningVo;
|
|
|
+import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.UserAccountRecord;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.UserAccountRecordSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.dao.UserAccountRecordDao;
|
|
|
import com.yonge.cooleshow.biz.dal.service.UserAccountRecordService;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.time.LocalDate;
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
|
|
|
@Service
|
|
|
public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordDao, UserAccountRecord> implements UserAccountRecordService {
|
|
|
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(UserAccountRecordService.class);
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysMessageService sysMessageService;
|
|
|
+
|
|
|
@Override
|
|
|
public UserAccountRecordVo detail(Long id) {
|
|
|
UserAccountRecordVo detail = baseMapper.detail(id);
|
|
@@ -33,4 +52,25 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
|
|
|
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public void sendTeacherEarning() {
|
|
|
+ List<TeacherEarningVo> teacherEarningVoList = baseMapper.selectTodayTeacherEarning();
|
|
|
+ if (CollectionUtils.isEmpty(teacherEarningVoList)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ for (TeacherEarningVo teacherEarningVo : teacherEarningVoList) {
|
|
|
+ Map<Long, String> receivers = new HashMap<>();
|
|
|
+ String url = sysMessageService.selectConfigUrl(MessageTypeEnum.COURSE_SETTLEMENT.getCode());
|
|
|
+ receivers.put(teacherEarningVo.getTeacherId(), teacherEarningVo.getTeacherPhone());
|
|
|
+ String dateString = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
|
|
+ try {
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.COURSE_SETTLEMENT,
|
|
|
+ receivers, null, 0, url, ClientEnum.TEACHER.getCode(), dateString);
|
|
|
+ log.info(" COURSE_SETTLEMENT ok");
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.warn("老师课酬结算消息推送失败,{}",e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|