Browse Source

后台消息推送修改

zouxuan 3 years ago
parent
commit
57a175fa63

+ 4 - 6
mec-biz/src/main/java/com/ym/mec/biz/event/SendSeoMessageChangeEvent.java

@@ -4,8 +4,6 @@ import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.SysUserRoleEnum;
 import org.springframework.context.ApplicationEvent;
 
-import java.util.Map;
-
 public class SendSeoMessageChangeEvent extends ApplicationEvent {
     //分部
     private Integer organId;
@@ -14,7 +12,7 @@ public class SendSeoMessageChangeEvent extends ApplicationEvent {
     private SysUserRoleEnum[] roleArr;
 
     //额外参数
-    private Map<String, Long> memo;
+    private String memo;
 
     //其他的目标用户
     private Integer targetId;
@@ -30,7 +28,7 @@ public class SendSeoMessageChangeEvent extends ApplicationEvent {
      *
      * @param source the object on which the event initially occurred (never {@code null})
      */
-    public SendSeoMessageChangeEvent(Object source,Integer organId,SysUserRoleEnum[] roleArr,Map<String, Long> memo,
+    public SendSeoMessageChangeEvent(Object source,Integer organId,SysUserRoleEnum[] roleArr,String memo,
                                      Integer targetId,MessageTypeEnum msgTemplate,Object... args) {
         super(source);
         this.organId = organId;
@@ -73,11 +71,11 @@ public class SendSeoMessageChangeEvent extends ApplicationEvent {
         this.roleArr = roleArr;
     }
 
-    public Map<String, Long> getMemo() {
+    public String getMemo() {
         return memo;
     }
 
-    public void setMemo(Map<String, Long> memo) {
+    public void setMemo(String memo) {
         this.memo = memo;
     }
 

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/event/listener/SendSeoMessageListener.java

@@ -24,10 +24,10 @@ public class SendSeoMessageListener implements ApplicationListener<SendSeoMessag
     @Override
     public void onApplicationEvent(SendSeoMessageChangeEvent event) {
         Set<Integer> targetUserIdList = organizationService.queryUserIdByRoleId(event.getRoleArr(), event.getOrganId());
+        if(event.getTargetId() != null){
+            targetUserIdList.add(event.getTargetId());
+        }
         if(targetUserIdList != null && targetUserIdList.size() > 0){
-            if(event.getTargetId() != null){
-                targetUserIdList.add(event.getTargetId());
-            }
             sysMessageService.batchSeoMessage(targetUserIdList,
                     event.getMsgTemplate(),
                     JSONObject.toJSONString(event.getMemo()),

+ 1 - 2
mec-biz/src/main/java/com/ym/mec/biz/event/source/SendSeoMessageSource.java

@@ -7,14 +7,13 @@ import org.springframework.context.ApplicationContext;
 import org.springframework.stereotype.Component;
 
 import javax.annotation.Resource;
-import java.util.Map;
 
 @Component
 public class SendSeoMessageSource {
     @Resource
     private ApplicationContext applicationContext;
 
-    public void sendSeoMessage(Integer organId, SysUserRoleEnum[] roleArr, Map<String, Long> memo,
+    public void sendSeoMessage(Integer organId, SysUserRoleEnum[] roleArr, String memo,
                                Integer targetId, MessageTypeEnum msgTemplate, Object... args){
         applicationContext.publishEvent(new SendSeoMessageChangeEvent(this,organId,roleArr,memo,targetId,msgTemplate,args));
     }

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -4055,7 +4055,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		Map<String, Long> memo = new HashMap<>(1);
 		memo.put("courseScheduleComplaintsId", courseScheduleComplaints.getId());
 		sendSeoMessageSource.sendSeoMessage(user.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
-				memo,targetUserId,MessageTypeEnum.BACKSTAGE_STUDENT_APPEAL,courseSchedule.getName(), user.getUsername());
+				JSONObject.toJSONString(memo),targetUserId,MessageTypeEnum.BACKSTAGE_STUDENT_APPEAL,courseSchedule.getName(), user.getUsername());
     }
 
     @Override

+ 19 - 36
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -26,6 +26,7 @@ import java.util.Set;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 
+import com.alibaba.fastjson.JSON;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
@@ -1345,10 +1346,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
             musicGroupSubjectGoodsGroupDao.batchInsert(subFeeSettingDto.getMusicGroupSubjectGoodsGroups(), musicGroupId);
         }
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY, "", sysUser.getRealName(), musicGroup.getName());
-
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                null,null,MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY,sysUser.getRealName(), musicGroup.getName());
     }
 
     @Override
@@ -1412,11 +1411,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.TEACHER_PUSH_MUSIC_GROUP_COURSE_ADD_PLAN,
                     map, null, 0, "1", "TEACHER", musicGroup.getName());
         }
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-        integers.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_ACTION_GROUP, "1", musicGroup.getName());
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                "1",musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_ACTION_GROUP,musicGroup.getName());
 
         //统计变更学员数
         groupEventSource.musicGroupStudentChangeEvent(musicGroupId, StudentMusicGroupStatusEnum.NORMAL, null);
@@ -1447,10 +1443,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, "提交审核(草稿 -> 审核中)", sysUser.getId(), ""));
         musicGroup.setStatus(MusicGroupStatusEnum.AUDIT);
         musicGroupDao.update(musicGroup);
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId()), MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY, "", sysUser.getRealName(), musicGroup.getName());
-
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                null,null,MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_APPLY,sysUser.getRealName(), musicGroup.getName());
     }
 
     @Override
@@ -1511,10 +1505,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         }
         // 添加成员
         imGroupMemberService.join(Long.parseLong(musicGroupId), userRoleMap);
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(roleIds,
-                MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_ADJUST_SUCCESS, "", musicGroup.getName());
+        //缴费老师推送消息
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),null,
+                null,musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_CREATE_MUSIC_GROUP_ADJUST_SUCCESS, musicGroup.getName());
         Map<Integer, String> map = new HashMap<>(1);
         map.put(musicGroup.getEducationalTeacherId(), musicGroup.getEducationalTeacherId().toString());
         if (map != null && map.size() > 0) {
@@ -1721,11 +1714,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         }
         //记录建团日志
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, "取消乐团", sysUser.getId(), ""));
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-        integers.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_STOP, "1", musicGroup.getName());
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                "1",musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_STOP, musicGroup.getName());
         return true;
     }
 
@@ -1864,11 +1854,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         }
 
         musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId, "延长缴费", sysUser.getId(), ""));
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-        integers.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_LENGTHEN_PAYMENT, "", musicGroup.getName());
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                null,musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_LENGTHEN_PAYMENT, musicGroup.getName());
         return true;
     }
 
@@ -2027,17 +2014,16 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 			Map<String, Object> memo = new HashMap<>(2);
 			memo.put("Id", musicGroupQuit.getId());
 			memo.put("type", "MUSICGROUP");
-
 			SysUser sysUser = sysUserFeignService.queryUserById(userId);
-
-			sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_GROUP, JSONObject.toJSONString(memo),
-					sysUser.getUsername());
 			Map<Integer, String> receivers = new HashMap<>(integers.size());
 			for (Integer integer : integers) {
 				receivers.put(integer, integer.toString());
 			}
 			sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.SYSTEM_PUSH_STUDENT_COMMIT_QUIT_MUSIC_APPLY, receivers, null, 0, null,
 					"SYSTEM", musicGroup.getName(), sysUser.getUsername());
+
+            sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                    JSONObject.toJSONString(memo),null,MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_GROUP, sysUser.getUsername());
 		} else {
 			musicGroupQuit.setStatus(reqMusicGroupQuit.getStatus());
 			approveQuitMusicGroup(currentOperatorRoleIds, musicGroupQuit);
@@ -3683,11 +3669,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 //                }
 //            }
 //        }
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-        integers.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING, "", musicGroup.getName());
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                null,musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_MARKING, musicGroup.getName());
     }
 
     /**

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OrganizationServiceImpl.java

@@ -159,7 +159,7 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 			throw new BizException("分部信息不存在");
 		}
 		if(roleArr == null || roleArr.length == 0){
-			return null;
+			return new HashSet<>();
 		}
 		StringJoiner stringJoiner = new StringJoiner(",");
 		for (SysUserRoleEnum e : roleArr) {
@@ -176,7 +176,7 @@ public class OrganizationServiceImpl extends BaseServiceImpl<Integer, Organizati
 		if(stringJoiner.length() > 0) {
 			return Arrays.stream(stringJoiner.toString().split(",")).mapToInt(Integer::valueOf).boxed().collect(Collectors.toSet());
 		}
-		return null;
+		return new HashSet<>();
 	}
 
     private List<Mapper> getOrganManagerName(Map<Integer, String> nameMap, String organManager){

+ 9 - 11
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -10,6 +10,7 @@ import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.page.*;
+import com.ym.mec.biz.event.source.SendSeoMessageSource;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.HttpResponseResult;
@@ -44,6 +45,7 @@ import static com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus.NON_P
 import static com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus.PAID_COMPLETED;
 import static com.ym.mec.biz.dal.enums.OrderDetailTypeEnum.*;
 import static com.ym.mec.biz.dal.enums.PaymentStatusEnum.YES;
+import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.SECTION_MANAGER;
 
 @Service
 public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, StudentRegistration> implements StudentRegistrationService {
@@ -71,6 +73,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     @Autowired
     private SysMessageService sysMessageService;
     @Autowired
+    private SendSeoMessageSource sendSeoMessageSource;
+    @Autowired
     private MusicGroupSubjectPlanDao musicGroupSubjectPlanDao;
     @Autowired
     private SubjectDao subjectDao;
@@ -223,11 +227,9 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             //修改专业已报名人数
             musicGroupSubjectPlanService.addApplyStudentNum(musicGroupId, subId, 1);
             MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
-            Set<Integer> roleIds = new HashSet<>(1);
-            roleIds.add(SysUserRole.SECTION_MANAGER);
-            Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-            integers.add(musicGroup.getEducationalTeacherId());
-            sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_STUDENT_SUBJECT_CHANGE, "", musicGroup.getName());
+
+            sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                    null,musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_STUDENT_SUBJECT_CHANGE, musicGroup.getName());
         }
         return i;
     }
@@ -856,12 +858,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
         imFeignService.update(new ImUserModel(userId.toString(), sysUser.getUsername(), sysUser.getAvatar()));
         
         //学生报名表
-        Set<Integer> roleIds = new HashSet<>(1);
-        roleIds.add(SysUserRole.SECTION_MANAGER);
-        Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, musicGroup.getOrganId());
-        integers.add(musicGroup.getEducationalTeacherId());
-        sysMessageService.batchSeoMessage(integers, MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_ADD_STUDENT, "", musicGroup.getName(), studentRegistration.getName());
-        
+        sendSeoMessageSource.sendSeoMessage(musicGroup.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+                null,musicGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_MUSIC_GROUP_ADD_STUDENT, musicGroup.getName(), studentRegistration.getName());
         return userId;
     }
 

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentWithdrawServiceImpl.java

@@ -13,6 +13,7 @@ import com.ym.mec.biz.dal.entity.StudentWithdraw;
 import com.ym.mec.biz.dal.entity.SysUserCashAccount;
 import com.ym.mec.biz.dal.entity.SysUserCashAccountDetail;
 import com.ym.mec.biz.dal.enums.*;
+import com.ym.mec.biz.event.source.SendSeoMessageSource;
 import com.ym.mec.biz.service.StudentWithdrawService;
 import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.biz.service.SysUserCashAccountDetailService;
@@ -32,6 +33,8 @@ import org.springframework.transaction.annotation.Transactional;
 import java.math.BigDecimal;
 import java.util.*;
 
+import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.SECTION_MANAGER;
+
 @Service
 public class StudentWithdrawServiceImpl extends BaseServiceImpl<Integer, StudentWithdraw> implements StudentWithdrawService {
 
@@ -57,9 +60,7 @@ public class StudentWithdrawServiceImpl extends BaseServiceImpl<Integer, Student
 	@Autowired
 	private SysUserCashAccountDetailService accountDetailService;
 	@Autowired
-	private SysMessageService sysMessageService;
-	@Autowired
-	private MusicGroupDao musicGroupDao;
+	private SendSeoMessageSource sendSeoMessageSource;
 
 	@Override
 	@Transactional(rollbackFor = Exception.class)
@@ -192,9 +193,8 @@ public class StudentWithdrawServiceImpl extends BaseServiceImpl<Integer, Student
 				cashAccountDetail.setStatus(DealStatusEnum.ING);
 				cashAccountDetail.setAttribute(withdraw.getId()+"");
 				cashAccountDetailService.insert(cashAccountDetail);
-				Set<Integer> roleIds = new HashSet<>(1);
-				roleIds.add(SysUserRole.SECTION_MANAGER);
-				sysMessageService.batchSeoMessage(musicGroupDao.queryUserIdByRoleId(roleIds,sysUser.getOrganId()), MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_WITHDRAW,"",sysUser.getUsername());
+				sendSeoMessageSource.sendSeoMessage(sysUser.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+						null,null,MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_WITHDRAW, sysUser.getUsername());
 			} else {
 				throw new BizException("账户余额不足");
 			}

+ 11 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherLeaveRecordServiceImpl.java

@@ -10,6 +10,8 @@ import java.util.Objects;
 import java.util.Set;
 import java.util.stream.Collectors;
 
+import com.ym.mec.biz.dal.enums.SysUserRoleEnum;
+import com.ym.mec.biz.event.source.SendSeoMessageSource;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import org.apache.commons.lang3.StringUtils;
@@ -44,6 +46,9 @@ import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.json.JsonUtil;
 
+import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.EDUCATIONAL_TEACHER;
+import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.SECTION_MANAGER;
+
 @Service
 public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, TeacherLeaveRecord> implements TeacherLeaveRecordService {
 
@@ -52,14 +57,11 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 	@Autowired
 	private TeacherDao teacherDao;
 	@Autowired
-	private MusicGroupDao musicGroupDao;
-
-	@Autowired
 	private CourseScheduleService courseScheduleService;
-
 	@Autowired
 	private SysMessageService sysMessageService;
-
+	@Autowired
+	private SendSeoMessageSource sendSeoMessageSource;
 	@Autowired
 	private SysUserFeignService sysUserFeignService;
 
@@ -109,16 +111,11 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 			}
 		}
 		teacherLeaveRecordDao.insert(teacherLeaveRecord);
-		Set<Integer> roleIds = new HashSet<>(1);
-		roleIds.add(SysUserRole.SECTION_MANAGER);
-		roleIds.add(SysUserRole.EDUCATIONAL_TEACHER);
 		Teacher teacher = teacherDao.get(sysUser.getId());
-		Set<Integer> userIds = musicGroupDao.queryUserIdByRoleId(roleIds,teacher.getTeacherOrganId());
-		if (userIds != null && userIds.size() > 0) {
-			Map<String,Object> memo = new HashMap<>(1);
-			memo.put("leaveRecordId",teacherLeaveRecord.getId());
-			sysMessageService.batchSeoMessage(userIds, MessageTypeEnum.EDUCATION_PUSH_TEACHER_LEAVE_APPLY, JSONObject.toJSONString(memo), sysUser.getRealName());
-		}
+		Map<String,Object> memo = new HashMap<>(1);
+		memo.put("leaveRecordId",teacherLeaveRecord.getId());
+		sendSeoMessageSource.sendSeoMessage(teacher.getTeacherOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER,EDUCATIONAL_TEACHER},
+				JSONObject.toJSONString(memo),null,MessageTypeEnum.EDUCATION_PUSH_TEACHER_LEAVE_APPLY, sysUser.getRealName());
 		return true;
 	}
 

+ 10 - 26
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -4,13 +4,13 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.auth.api.entity.SysUserRole;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.StudentApplyRefunds.StudentApplyRefundsStatus;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.page.*;
+import com.ym.mec.biz.event.source.SendSeoMessageSource;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.controller.BaseController;
@@ -26,7 +26,6 @@ import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateConvertor;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.string.MessageFormatter;
-
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -40,15 +39,14 @@ import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 import org.springframework.util.CollectionUtils;
-
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
-
 import static com.ym.mec.biz.dal.enums.GroupType.VIP;
+import static com.ym.mec.biz.dal.enums.SysUserRoleEnum.SECTION_MANAGER;
 import static java.math.BigDecimal.ROUND_DOWN;
 import static java.math.BigDecimal.ZERO;
 
@@ -120,6 +118,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	@Autowired
 	private SysMessageService sysMessageService;
 	@Autowired
+	private SendSeoMessageSource sendSeoMessageSource;
+	@Autowired
 	private VipGroupDefaultClassesCycleDao vipGroupDefaultClassesCycleDao;
 	@Autowired
 	private TeacherDao teacherDao;
@@ -724,26 +724,13 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			createVipGroupCourseScheInfo(vipGroupApplyBaseInfoDto.getId(),classGroup);
 		}
 
-		Set<Integer> roleIds = new HashSet<>(1);
-		roleIds.add(SysUserRole.SECTION_MANAGER);
-		Map<String,Long> memo = new HashMap<>(1);
-		memo.put("vipGroupId",vipGroupApplyBaseInfoDto.getId());
-//		SysUser sysUser = sysUserFeignService.queryUserById(vipGroup.getVipGroupApplyBaseInfo().getUserId());
 		if(Objects.isNull(teacher)){
 			throw new BizException("该用户不存在");
 		}
-		Set<Integer> userIds = musicGroupDao.queryUserIdByRoleId(roleIds,teacher.getTeacherOrganId());
-		if(CollectionUtils.isEmpty(userIds)){
-			throw new BizException("当前分部没有运营主管,无法创建,请联系总部工作人员!");
-		}
-		if(vipGroupApplyBaseInfoDto.getEducationalTeacherId() != null){
-			userIds.add(vipGroupApplyBaseInfoDto.getEducationalTeacherId());
-		}
-//		if (vipGroup.getVipGroupApplyBaseInfo().getUserId() != null){
-//			sysMessageService.batchSeoMessage(userIds,MessageTypeEnum.BACKSTAGE_VIP_COURSE_APPLY, JSONObject.toJSONString(memo),sysUser.getUsername(),sysUser.getUsername());
-//		}else {
-		sysMessageService.batchSeoMessage(userIds,MessageTypeEnum.BACKSTAGE_TEACHER_APPLY_VIP, JSONObject.toJSONString(memo),teacher.getRealName());
-//		}
+		Map<String,Long> memo = new HashMap<>(1);
+		memo.put("vipGroupId",vipGroupApplyBaseInfoDto.getId());
+		sendSeoMessageSource.sendSeoMessage(teacher.getTeacherOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+				JSONObject.toJSONString(memo),vipGroupApplyBaseInfoDto.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_TEACHER_APPLY_VIP, teacher.getRealName());
 		return BaseController.succeed(vipGroupApplyBaseInfoDto.getAuditStatus().getCode());
 	}
 
@@ -3017,14 +3004,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		studentApplyRefunds.setOrigPaymentOrderId(studentPaymentOrder.getId());
 		studentApplyRefunds.setUserId(userId);
 		studentApplyRefundsDao.insert(studentApplyRefunds);
-		Set<Integer> roleIds = new HashSet<>(1);
-		roleIds.add(SysUserRole.SECTION_MANAGER);
-		Set<Integer> integers = musicGroupDao.queryUserIdByRoleId(roleIds, sysUser.getOrganId());
-		integers.add(vipGroup.getEducationalTeacherId());
 		Map<String,Object> memo = new HashMap<>(2);
 		memo.put("Id",studentApplyRefunds.getId());
 		memo.put("type","VIPGROUP");
-		sysMessageService.batchSeoMessage(integers,MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_COURSE,JSONObject.toJSONString(memo),sysUser.getUsername());
+		sendSeoMessageSource.sendSeoMessage(sysUser.getOrganId(),new SysUserRoleEnum[]{SECTION_MANAGER},
+				JSONObject.toJSONString(memo),vipGroup.getEducationalTeacherId(),MessageTypeEnum.BACKSTAGE_STUDENT_APPLY_QUIT_COURSE,sysUser.getUsername());
 	}
 
 	@Override