Selaa lähdekoodia

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 5 vuotta sitten
vanhempi
commit
b931d1d163
29 muutettua tiedostoa jossa 388 lisäystä ja 209 poistoa
  1. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDefaultVipGroupSalaryDao.java
  2. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherLeaveRecordDao.java
  3. 6 6
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherAttendanceDto.java
  4. 3 3
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseHomework.java
  5. 6 6
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java
  6. 9 9
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TeacherAttendance.java
  7. 0 2
      mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupService.java
  8. 9 31
      mec-biz/src/main/java/com/ym/mec/biz/service/SysMessageService.java
  9. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/TeacherDefaultVipGroupSalaryService.java
  10. 80 20
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  11. 7 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java
  12. 13 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  13. 16 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupStudentFeeServiceImpl.java
  14. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SmsCodeServiceImpl.java
  15. 2 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  16. 100 56
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java
  17. 30 15
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java
  18. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherDefaultVipGroupSalaryServiceImpl.java
  19. 1 1
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherLeaveRecordServiceImpl.java
  20. 4 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  21. 4 4
      mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml
  22. 44 4
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  23. 15 14
      mec-student/src/main/java/com/ym/mec/student/controller/SysMessageController.java
  24. 15 14
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/SysMessageController.java
  25. 1 1
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherDefaultVipGroupSalaryController.java
  26. 2 2
      mec-thirdparty/src/main/java/com/ym/mec/thirdparty/eseal/provider/TsignPlugin.java
  27. 14 1
      mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/MessageSenderPluginContext.java
  28. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleController.java
  29. 1 1
      mec-web/src/main/java/com/ym/mec/web/controller/TeacherDefaultVipGroupSalaryController.java

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDefaultVipGroupSalaryDao.java

@@ -13,7 +13,7 @@ public interface TeacherDefaultVipGroupSalaryDao extends BaseDAO<Long, TeacherDe
      * @Date: 2019/10/2
      * 根据教师和课程类型获取老师vip课默认薪酬
      */
-    TeacherDefaultVipGroupSalary findByTeacherAndCategory(@Param("userId") Long userId,
+    TeacherDefaultVipGroupSalary findByTeacherAndCategory(@Param("userId") Integer userId,
                                                           @Param("categoryId") Long categoryId);
 
     /**

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherLeaveRecordDao.java

@@ -16,7 +16,7 @@ public interface TeacherLeaveRecordDao extends BaseDAO<Long, TeacherLeaveRecord>
      * @param teacherIds:
      * @return java.util.List<com.ym.mec.biz.dal.entity.TeacherLeaveRecord>
      */
-    List<TeacherLeaveRecord> findByTeacherIds(@Param("teacherIds") List<Long> teacherIds,
+    List<TeacherLeaveRecord> findByTeacherIds(@Param("teacherIds") List<Integer> teacherIds,
                                               @Param("date")Date date);
 	
 }

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherAttendanceDto.java

@@ -29,7 +29,7 @@ public class TeacherAttendanceDto {
     private java.util.Date endClassTime;
 
     @ApiModelProperty(value = "班级ID",required = false)
-    private Long classId;
+    private Integer classId;
 
     @ApiModelProperty(value = "班级名称",required = false)
     private String className;
@@ -38,7 +38,7 @@ public class TeacherAttendanceDto {
     private ClassGroupTypeEnum classType;
 
     @ApiModelProperty(value = "乐团ID",required = false)
-    private Long musicGroupId;
+    private String musicGroupId;
 
     @ApiModelProperty(value = "乐团名称",required = false)
     private String musicGroupName;
@@ -227,11 +227,11 @@ public class TeacherAttendanceDto {
         this.endClassTime = endClassTime;
     }
 
-    public Long getClassId() {
+    public Integer getClassId() {
         return classId;
     }
 
-    public void setClassId(Long classId) {
+    public void setClassId(Integer classId) {
         this.classId = classId;
     }
 
@@ -252,11 +252,11 @@ public class TeacherAttendanceDto {
         this.classType = classType;
     }
 
-    public Long getMusicGroupId() {
+    public String getMusicGroupId() {
         return musicGroupId;
     }
 
-    public void setMusicGroupId(Long musicGroupId) {
+    public void setMusicGroupId(String musicGroupId) {
         this.musicGroupId = musicGroupId;
     }
 

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseHomework.java

@@ -32,7 +32,7 @@ public class CourseHomework {
 	private Date expiryDate;
 	
 	/**  */
-	private Integer musicGroupId;
+	private String musicGroupId;
 	
 	/**  */
 	private Integer classGroupId;
@@ -115,11 +115,11 @@ public class CourseHomework {
 		return this.updateTime;
 	}
 			
-	public void setMusicGroupId(Integer musicGroupId){
+	public void setMusicGroupId(String musicGroupId){
 		this.musicGroupId = musicGroupId;
 	}
 	
-	public Integer getMusicGroupId(){
+	public String getMusicGroupId(){
 		return this.musicGroupId;
 	}
 			

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CourseSchedule.java

@@ -85,11 +85,11 @@ public class CourseSchedule {
 
 	/** 上课教师 */
 	@ApiModelProperty(value = "上课教师", required = false)
-	private Long teacherId;
+	private Integer teacherId;
 
 	/** 实际上课教师 */
 	@ApiModelProperty(value = "实际上课教师", required = false)
-	private Long actualTeacherId;
+	private Integer actualTeacherId;
 
 	@ApiModelProperty(value = "助教编号列表")
 	private List<Integer> teachingTeacherIdList;
@@ -249,19 +249,19 @@ public class CourseSchedule {
 		return this.endClassTime;
 	}
 
-	public Long getTeacherId() {
+	public Integer getTeacherId() {
 		return teacherId;
 	}
 
-	public void setTeacherId(Long teacherId) {
+	public void setTeacherId(Integer teacherId) {
 		this.teacherId = teacherId;
 	}
 
-	public Long getActualTeacherId() {
+	public Integer getActualTeacherId() {
 		return actualTeacherId;
 	}
 
-	public void setActualTeacherId(Long actualTeacherId) {
+	public void setActualTeacherId(Integer actualTeacherId) {
 		this.actualTeacherId = actualTeacherId;
 	}
 

+ 9 - 9
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TeacherAttendance.java

@@ -16,15 +16,15 @@ public class TeacherAttendance {
 	
 	/**  */
 	@ApiModelProperty(value = "教师编号",required = false)
-	private Long teacherId;
+	private Integer teacherId;
 	
 	/**  */
 	@ApiModelProperty(value = "乐团编号",required = false)
-	private Long musicGroupId;
+	private String musicGroupId;
 	
 	/**  */
 	@ApiModelProperty(value = "班级编号",required = false)
-	private Long classGroupId;
+	private Integer classGroupId;
 	
 	/**  */
 	@ApiModelProperty(value = "课程计划编号",required = false)
@@ -86,27 +86,27 @@ public class TeacherAttendance {
 		this.id = id;
 	}
 
-	public Long getTeacherId() {
+	public Integer getTeacherId() {
 		return teacherId;
 	}
 
-	public void setTeacherId(Long teacherId) {
+	public void setTeacherId(Integer teacherId) {
 		this.teacherId = teacherId;
 	}
 
-	public Long getMusicGroupId() {
+	public String getMusicGroupId() {
 		return musicGroupId;
 	}
 
-	public void setMusicGroupId(Long musicGroupId) {
+	public void setMusicGroupId(String musicGroupId) {
 		this.musicGroupId = musicGroupId;
 	}
 
-	public Long getClassGroupId() {
+	public Integer getClassGroupId() {
 		return classGroupId;
 	}
 
-	public void setClassGroupId(Long classGroupId) {
+	public void setClassGroupId(Integer classGroupId) {
 		this.classGroupId = classGroupId;
 	}
 

+ 0 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupService.java

@@ -1,7 +1,6 @@
 package com.ym.mec.biz.service;
 
 import java.math.BigDecimal;
-import java.time.LocalDate;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -17,7 +16,6 @@ import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
 import com.ym.mec.biz.dal.page.MusicGroupQueryInfo;
 import com.ym.mec.common.page.PageInfo;
-import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.BaseService;
 
 public interface MusicGroupService extends BaseService<String, MusicGroup> {

+ 9 - 31
mec-biz/src/main/java/com/ym/mec/biz/service/SysMessageService.java

@@ -1,35 +1,16 @@
 package com.ym.mec.biz.service;
 
+import java.util.Date;
+import java.util.Map;
+
 import com.ym.mec.biz.dal.entity.SysMessage;
-import com.ym.mec.biz.dal.enums.MessageSendMode;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
-import com.ym.mec.biz.dal.enums.SendStatusEnum;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 
-import java.util.Date;
-
 public interface SysMessageService extends BaseService<Long, SysMessage> {
 
 	/**
-	 * 添加消息
-	 * @param userId 用户编号
-	 * @param subject 消息主题
-	 * @param content 消息内容
-	 * @param receivers 接收人,多个人用逗号分开
-	 * @param triggerTime 触发时间
-	 * @param mode 消息的发送模式
-	 * @param status 消息的当前状态
-	 * @param errorMsg 错误消息
-	 * @param readStatus 阅读状态
-	 * @param memo 备注
-	 * @param group 消息组
-	 * @return
-	 */
-	public int addMessage(Integer userId, String subject, String content, String receivers, Date triggerTime, MessageSendMode mode, SendStatusEnum status,
-			String errorMsg, Integer readStatus, String memo, String group);
-
-	/**
 	 * 修改消息对象
 	 * @param message
 	 * @return
@@ -39,30 +20,27 @@ public interface SysMessageService extends BaseService<Long, SysMessage> {
 	/**
 	 * 批量发送消息
 	 * @param messageSender 消息发送者
-	 * @param mode 消息模式
 	 * @param subject 消息主题
 	 * @param content 消息内容
 	 * @param receivers 消息接受者
 	 * @param triggerTime 触发时间
 	 * @return
 	 */
-	public boolean batchSendMessage(MessageSender messageSender, MessageSendMode mode, String subject, String content, String receivers, Date triggerTime,
+	public boolean batchSendMessage(MessageSender messageSender, String subject, String content, Map<Integer, String> receivers, Date triggerTime,
 			Integer readStatus, String memo);
 
 	/**
 	 * 发送消息
 	 * @param messageSender 消息发送者
-	 * @param userId 用户编号
-	 * @param mode 消息模式
 	 * @param messageType 消息类型
-	 * @param receivers 消息接受者(多个用户用逗号分隔)
+	 * @param receivers 消息接收者(Key:用户编号  value:消息接收对象)
 	 * @param triggerTime 触发时间
 	 * @param readStatus 阅读状态(0-未读  1-已读)
 	 * @param url 超链接地址
 	 * @param args 参数
 	 * @return
 	 */
-	public void sendMessage(MessageSender messageSender, Integer userId, MessageSendMode mode, MessageTypeEnum messageType, String receivers, Date triggerTime,
+	public void batchSendMessage(MessageSender messageSender, MessageTypeEnum messageType, Map<Integer, String> receivers, Date triggerTime,
 			Integer readStatus, String url, Object... args);
 
 	/**
@@ -78,8 +56,8 @@ public interface SysMessageService extends BaseService<Long, SysMessage> {
 	 * @param url 超链接地址
 	 * @return
 	 */
-	public void sendMessage(MessageSender messageSender, Integer userId, MessageSendMode mode, String title, String content, String receiver, Date triggerTime,
-			Integer readStatus, String url);
+	public void sendMessage(MessageSender messageSender, Integer userId, String title, String content, String receiver, Date triggerTime, Integer readStatus,
+			String url);
 
 	/**
 	 * 发送验证码
@@ -90,7 +68,7 @@ public interface SysMessageService extends BaseService<Long, SysMessage> {
 	 * @param receiver 消息接受者
 	 * @return
 	 */
-	public boolean sendSecurityCode(MessageSender messageSender, Integer userId, MessageSendMode mode, MessageTypeEnum messageType, String receiver);
+	public boolean sendSecurityCode(MessageSender messageSender, Integer userId, MessageTypeEnum messageType, String receiver);
 
 	/**
 	 * 获取已经发送的验证码

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

@@ -14,7 +14,7 @@ public interface TeacherDefaultVipGroupSalaryService extends BaseService<Long, T
      * @return com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary
      * @describe 根据用户及课程类型获取教师默认vip课酬
      */
-    TeacherDefaultVipGroupSalary findByTeacherAndCategory(Long userId, Long categoryId);
+    TeacherDefaultVipGroupSalary findByTeacherAndCategory(Integer userId, Long categoryId);
 
     /**
      * 批量新增修改教师vip课酬设置

+ 80 - 20
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1,16 +1,89 @@
 package com.ym.mec.biz.service.impl;
 
+import java.math.BigDecimal;
+import java.time.Duration;
+import java.time.Instant;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-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.enums.*;
+import com.ym.mec.biz.dal.dao.ClassGroupDao;
+import com.ym.mec.biz.dal.dao.ClassGroupRelationDao;
+import com.ym.mec.biz.dal.dao.ClassGroupStudentMapperDao;
+import com.ym.mec.biz.dal.dao.ClassGroupTeacherMapperDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleStudentPaymentDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleTeacherSalaryDao;
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
+import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
+import com.ym.mec.biz.dal.dao.SchoolDao;
+import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
+import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
+import com.ym.mec.biz.dal.dao.VipGroupActivityDao;
+import com.ym.mec.biz.dal.dao.VipGroupDao;
+import com.ym.mec.biz.dal.dto.ClassGroup4MixDto;
+import com.ym.mec.biz.dal.dto.ClassGroupTeachersDto;
+import com.ym.mec.biz.dal.dto.CourseListDto;
+import com.ym.mec.biz.dal.dto.CourseTimeDto;
+import com.ym.mec.biz.dal.dto.HighClassGroupDto;
+import com.ym.mec.biz.dal.dto.MusicGroupClassGroupDto;
+import com.ym.mec.biz.dal.dto.MusicGroupCourseScheduleDto;
+import com.ym.mec.biz.dal.dto.StudentAttendanceViewDto;
+import com.ym.mec.biz.dal.dto.StudentPayInfoDto;
+import com.ym.mec.biz.dal.dto.TeacherClassGroupDto;
+import com.ym.mec.biz.dal.dto.TeacherClassHeadInfo;
+import com.ym.mec.biz.dal.dto.TeacherMusicClassInfoDto;
+import com.ym.mec.biz.dal.dto.TeacherVipClassInfoDto;
+import com.ym.mec.biz.dal.entity.ClassGroup;
+import com.ym.mec.biz.dal.entity.ClassGroupRelation;
+import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper;
+import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
+import com.ym.mec.biz.dal.entity.CourseSchedule;
+import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
+import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
+import com.ym.mec.biz.dal.entity.MusicGroup;
+import com.ym.mec.biz.dal.entity.StudentRegistration;
+import com.ym.mec.biz.dal.entity.Subject;
+import com.ym.mec.biz.dal.entity.TeacherDefaultMusicGroupSalary;
+import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
+import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
+import com.ym.mec.biz.dal.enums.CourseStatusEnum;
+import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
+import com.ym.mec.biz.dal.enums.StudentAttendanceStatusEnum;
+import com.ym.mec.biz.dal.enums.TeachModeEnum;
+import com.ym.mec.biz.dal.enums.TeachTypeEnum;
+import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.CourseScheduleQueryInfo;
 import com.ym.mec.biz.dal.page.StudentPayLogQueryInfo;
 import com.ym.mec.biz.dal.page.VipClassQueryInfo;
 import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
-import com.ym.mec.biz.service.*;
+import com.ym.mec.biz.service.ClassGroupRelationService;
+import com.ym.mec.biz.service.ClassGroupService;
+import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
+import com.ym.mec.biz.service.StudentRegistrationService;
+import com.ym.mec.biz.service.SubjectService;
+import com.ym.mec.biz.service.TeacherDefaultMusicGroupSalaryService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.ImGroupMember;
 import com.ym.mec.common.entity.ImGroupModel;
@@ -24,19 +97,6 @@ import com.ym.mec.jiari.JiaRiFeignService;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateConvertor;
 import com.ym.mec.util.date.DateUtil;
-import jdk.nashorn.internal.ir.WhileNode;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Propagation;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import java.math.BigDecimal;
-import java.time.*;
-import java.time.format.DateTimeFormatter;
-import java.util.*;
-import java.util.stream.Collectors;
 
 @Service
 public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup> implements ClassGroupService {
@@ -284,8 +344,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                     courseSchedule.setClassDate(classDate);
                     courseSchedule.setStartClassTime(DateUtil.stringToDate(startClassTime));
                     courseSchedule.setEndClassTime(DateUtil.stringToDate(endClassTime));
-                    courseSchedule.setTeacherId(highClassGroup.getUserId().longValue());
-                    courseSchedule.setActualTeacherId(highClassGroup.getUserId().longValue());
+                    courseSchedule.setTeacherId(highClassGroup.getUserId());
+                    courseSchedule.setActualTeacherId(highClassGroup.getUserId());
                     courseSchedule.setCreateTime(date);
                     courseSchedule.setUpdateTime(date);
                     courseSchedule.setTeachMode(TeachModeEnum.OFFLINE);

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

@@ -275,9 +275,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				for(Date keyDate2:collect1.keySet()){
 					List<CourseSchedule> currentCourses1=collect1.get(keyDate2);
 					if(currentCourses1.size()>ParamEnum.ONE.getCode()){
-						Map<Long, List<CourseSchedule>> collect2 = currentCourses1.stream().collect(
+						Map<Integer, List<CourseSchedule>> collect2 = currentCourses1.stream().collect(
 								Collectors.groupingBy(CourseSchedule::getTeacherId));
-						for (Long teacherID:collect2.keySet()){
+						for (Integer teacherID:collect2.keySet()){
 							if(collect2.get(teacherID).size()>ParamEnum.ONE.getCode()){
 								throw new BizException(new SimpleDateFormat("yyyy-MM-dd").format(keyDate)+"日的课程安排在教师分配上有冲突!");
 							}
@@ -614,9 +614,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
 		List<CourseSchedule> list = courseScheduleDao.queryNoSignInListByBeforeMinutes(minutes);
 
-		String teacherList = list.stream().map(cs -> cs.getActualTeacherId().toString()).collect(Collectors.joining(","));
+		Map<Integer, String> receivers = new HashMap<Integer, String>();
+		for (CourseSchedule sf : list) {
+			receivers.put(sf.getTeacherId(), sf.getTeacherId() + "");
+		}
 
-		sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageSendMode.PUSH, "", "", teacherList, null, 0, "");
+		sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.TEACHER_PUSH_SIGN_IN_MESSAGE, receivers, null, 0, "");
 		return true;
 	}
 

+ 13 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -17,8 +17,10 @@ import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.IdGeneratorService;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.im.ImFeignService;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
+
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -98,6 +100,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
     @Autowired
     private SysUserFeignService sysUserFeignService;
+	
+	@Autowired
+	private SysMessageService sysMessageService;
 
     @Override
     public BaseDAO<String, MusicGroup> getDAO() {
@@ -495,6 +500,14 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         musicGroupStudentFee.setNextPaymentDate(musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId));
 
         musicGroupStudentFeeDao.update(musicGroupStudentFee);
+        
+		SysUser user = sysUserFeignService.queryUserById(userId);
+		Map<Integer, String> receivers = new HashMap<Integer, String>();
+		receivers.put(user.getId(), userId + "");
+
+		// 发送续费结果通知
+		sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_RENEW_RESULT, receivers, null, 0, "",
+				user.getRealName());
 
         return true;
     }

+ 16 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupStudentFeeServiceImpl.java

@@ -2,7 +2,9 @@ package com.ym.mec.biz.service.impl;
 
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -12,10 +14,13 @@ import com.ym.mec.biz.dal.dao.SysConfigDao;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
 import com.ym.mec.biz.dal.entity.SysConfig;
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.service.MusicGroupStudentFeeService;
 import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.biz.service.SysMessageService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 
 @Service
 public class MusicGroupStudentFeeServiceImpl extends BaseServiceImpl<Long, MusicGroupStudentFee> implements MusicGroupStudentFeeService {
@@ -26,6 +31,9 @@ public class MusicGroupStudentFeeServiceImpl extends BaseServiceImpl<Long, Music
 	@Autowired
 	private SysConfigDao sysConfigDao;
 
+	@Autowired
+	private SysMessageService sysMessageService;
+
 	@Override
 	public BaseDAO<Long, MusicGroupStudentFee> getDAO() {
 		return musicGroupStudentFeeDao;
@@ -57,6 +65,14 @@ public class MusicGroupStudentFeeServiceImpl extends BaseServiceImpl<Long, Music
 
 		if (updateList.size() > 0) {
 			musicGroupStudentFeeDao.batchUpdate(updateList);
+
+			Map<Integer, String> receivers = new HashMap<Integer, String>();
+			for (MusicGroupStudentFee sf : updateList) {
+				receivers.put(sf.getUserId(), sf.getUserId() + "");
+			}
+
+			// 发送续费通知
+			sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_WAIT_RENEW_MESSAGE, receivers, null, 0, "");
 		}
 
 		// int i = DateUtil.daysBetween(new Date(), musicGroupStudentFee.getNextPaymentDate());

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

@@ -43,7 +43,7 @@ public class SmsCodeServiceImpl implements SmsCodeService {
 		if(sysUser != null){
 			userId = sysUser.getId();
 		}
-		sysMessageService.sendSecurityCode(MessageSenderPluginContext.MessageSender.YIMEI,userId,MessageSendMode.SMS, MessageTypeEnum.SMS_VERIFY_CODE_LOGIN,mobile);
+		sysMessageService.sendSecurityCode(MessageSenderPluginContext.MessageSender.YIMEI,userId, MessageTypeEnum.SMS_VERIFY_CODE_LOGIN,mobile);
 //		sysMessageService.insert(new SysMessage("",content, MessageSendMode.SMS,mobile,userId,""));
 //		redisCache.put(loginVerifyCodeKey + mobile, code, expireTime);
 		return true;

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

@@ -172,6 +172,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             sysUser.setImToken(register.getToken());
             teacherDao.updateUser(sysUser);
         }
+        studentRegistration.setCreateTime(date);
+        studentRegistration.setUpdateTime(date);
         studentRegistration.setUserId(sysUser.getId());
         studentRegistrationDao.insert(studentRegistration);
         //增加报名学生数
@@ -187,11 +189,6 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     @Transactional(rollbackFor = Exception.class)
     @Override
     public StudentPaymentOrder addOrder(StudentRegistration studentRegistration, BigDecimal amount, String orderNo, String paymentChannel, BigDecimal courseFee, List<MusicGroupSubjectGoodsGroup> goodsGroups, List<Goods> goodsList, List<Goods> otherGoodsList) {
-
-
-
-
-
         Date date = new Date();
         StudentPaymentOrder studentPaymentOrder = new StudentPaymentOrder();
         studentPaymentOrder.setUserId(studentRegistration.getUserId());

+ 100 - 56
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMessageServiceImpl.java

@@ -1,5 +1,21 @@
 package com.ym.mec.biz.service.impl;
 
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Random;
+
+import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Service;
+
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.SysMessageDao;
@@ -17,18 +33,6 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.string.MessageFormatter;
-import org.apache.commons.lang.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.stereotype.Service;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Random;
 
 @Service
 public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> implements SysMessageService {
@@ -66,43 +70,61 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		return sysMessageDao;
 	}
 
-	@Override
-	public int addMessage(Integer userId, String subject, String content, String receivers, Date triggerTime, MessageSendMode mode, SendStatusEnum status,
+	/**
+	 * 添加消息
+	 * @param userId 用户编号
+	 * @param subject 消息主题
+	 * @param content 消息内容
+	 * @param receivers 接收人,多个人用逗号分开
+	 * @param triggerTime 触发时间
+	 * @param mode 消息的发送模式
+	 * @param status 消息的当前状态
+	 * @param errorMsg 错误消息
+	 * @param readStatus 阅读状态
+	 * @param memo 备注
+	 * @param group 消息组
+	 * @return
+	 */
+	private int addMessage(Map<Integer, String> receivers, String subject, String content, Date triggerTime, MessageSendMode mode, SendStatusEnum status,
 			String errorMsg, Integer readStatus, String memo, String group) {
 		SysMessage message = null;
 		Date date = new Date();
 
 		List<SysMessage> messages = new ArrayList<SysMessage>();
-		String[] tels = StringUtils.split(receivers, ',');
-		if (tels != null && tels.length > 0) {
-			for (String tel : tels) {
-				message = new SysMessage();
-				if (userId == null) {
-					SysUser user = sysUserFeignService.queryUserByMobile(tel);
-					if (user != null) {
-						userId = user.getId();
-					}
-				}
-				message.setUserId(userId);
-				message.setContent(content);
-				message.setCreateOn(date);
-				message.setModifyOn(date);
-				message.setReceiver(tel);
-				if (triggerTime == null) {
-					triggerTime = date;
+
+		Integer userId = null;
+		String receiver;
+		for (Entry<Integer, String> entry : receivers.entrySet()) {
+			userId = entry.getKey();
+			receiver = entry.getValue();
+
+			message = new SysMessage();
+			if (userId == null) {
+				SysUser user = sysUserFeignService.queryUserByMobile(receiver);
+				if (user != null) {
+					userId = user.getId();
 				}
-				message.setSendTime(triggerTime);
-				message.setTitle(subject);
-				message.setStatus(status);
-				message.setType(mode);
-				message.setErrorMsg(errorMsg);
-				message.setReadStatus(readStatus);
-				message.setMemo(memo);
-				message.setGroup(group);
-
-				messages.add(message);
 			}
+			message.setUserId(userId);
+			message.setContent(content);
+			message.setCreateOn(date);
+			message.setModifyOn(date);
+			message.setReceiver(receiver);
+			if (triggerTime == null) {
+				triggerTime = date;
+			}
+			message.setSendTime(triggerTime);
+			message.setTitle(subject);
+			message.setStatus(status);
+			message.setType(mode);
+			message.setErrorMsg(errorMsg);
+			message.setReadStatus(readStatus);
+			message.setMemo(memo);
+			message.setGroup(group);
+
+			messages.add(message);
 		}
+
 		return sysMessageDao.batchInsert(messages);
 	}
 
@@ -113,16 +135,16 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 	@Override
 	@Async
-	public boolean batchSendMessage(MessageSender messageSender, MessageSendMode mode, String subject, String content, String receivers, Date triggerTime,
+	public boolean batchSendMessage(MessageSender messageSender, String subject, String content, Map<Integer, String> receivers, Date triggerTime,
 			Integer readStatus, String memo) {
 
-		if (StringUtils.isBlank(receivers)) {
+		if (receivers == null || receivers.size() == 0) {
 			throw new BizException("消息接收人不能为空");
 		}
 		if (StringUtils.isBlank(content)) {
 			throw new BizException("消息内容不能为空");
 		}
-		String[] tos = StringUtils.split(receivers, ',');
+		String[] tos = receivers.values().toArray(new String[receivers.size()]);
 		if (tos != null && tos.length > 0) {
 			Date date = new Date();
 			SendStatusEnum status = SendStatusEnum.WAIT;
@@ -143,7 +165,13 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 				errorMsg = e.getMessage();
 				LOGGER.warn("消息发送失败", e);
 			}
-			return addMessage(null, subject, content, receivers, triggerTime, mode, status, errorMsg, readStatus, memo, null) > 0;
+			MessageSendMode mode = MessageSendMode.SMS;
+			if (messageSender.getSendMode().equals("PUSH")) {
+				mode = MessageSendMode.PUSH;
+			} else if (messageSender.getSendMode().equals("EMAIL")) {
+				mode = MessageSendMode.EMAIL;
+			}
+			return addMessage(receivers, subject, content, triggerTime, mode, status, errorMsg, readStatus, memo, null) > 0;
 		}
 
 		return false;
@@ -151,13 +179,13 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 
 	@Override
 	@Async
-	public void sendMessage(MessageSender messageSender, Integer userId, MessageSendMode mode, MessageTypeEnum type, String receivers, Date triggerTime,
-							Integer readStatus, String url, Object... args) {
+	public void batchSendMessage(MessageSender messageSender, MessageTypeEnum type, Map<Integer, String> receivers, Date triggerTime, Integer readStatus,
+			String url, Object... args) {
 
-		if (StringUtils.isBlank(receivers)) {
+		if (receivers == null || receivers.size() == 0) {
 			throw new BizException("接收地址不能为空");
 		}
-		String[] tos = StringUtils.split(receivers, ',');
+		String[] tos = receivers.values().toArray(new String[receivers.size()]);
 		SysMessageConfig messageConfig = sysMessageConfigService.queryByType(type);
 		if (messageConfig == null) {
 			throw new BizException("消息类型错误");
@@ -182,14 +210,20 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 				LOGGER.warn("消息发送失败", e);
 			}
 		}
-		addMessage(userId, type.getCode(), MessageFormatter.arrayFormat(messageConfig.getContent(), args), receivers, triggerTime, mode, status, errorMsg,
-				readStatus, url, messageConfig.getGroup());
+		MessageSendMode mode = MessageSendMode.SMS;
+		if (messageSender.getSendMode().equals("PUSH")) {
+			mode = MessageSendMode.PUSH;
+		} else if (messageSender.getSendMode().equals("EMAIL")) {
+			mode = MessageSendMode.EMAIL;
+		}
+		addMessage(receivers, type.getCode(), MessageFormatter.arrayFormat(messageConfig.getContent(), args), triggerTime, mode, status, errorMsg, readStatus,
+				url, messageConfig.getGroup());
 	}
 
 	@Override
 	@Async
-	public void sendMessage(MessageSender messageSender, Integer userId, MessageSendMode mode, String title, String content, String receiver, Date triggerTime,
-			Integer readStatus, String url) {
+	public void sendMessage(MessageSender messageSender, Integer userId, String title, String content, String receiver, Date triggerTime, Integer readStatus,
+			String url) {
 		if (StringUtils.isBlank(receiver)) {
 			throw new BizException("接收地址不能为空");
 		}
@@ -211,11 +245,19 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 				LOGGER.warn("消息发送失败", e);
 			}
 		}
-		addMessage(userId, title, content, receiver, triggerTime, mode, status, errorMsg, readStatus, url, null);
+		MessageSendMode mode = MessageSendMode.SMS;
+		if (messageSender.getSendMode().equals("PUSH")) {
+			mode = MessageSendMode.PUSH;
+		} else if (messageSender.getSendMode().equals("EMAIL")) {
+			mode = MessageSendMode.EMAIL;
+		}
+		Map<Integer, String> receivers = new HashMap<Integer, String>();
+		receivers.put(userId, receiver);
+		addMessage(receivers, title, content, triggerTime, mode, status, errorMsg, readStatus, url, null);
 	}
 
 	@Override
-	public boolean sendSecurityCode(MessageSender messageSender, Integer userId, MessageSendMode mode, MessageTypeEnum messageType, String receiver) {
+	public boolean sendSecurityCode(MessageSender messageSender, Integer userId, MessageTypeEnum messageType, String receiver) {
 		String key1 = getVerificationCode1CacheKey(messageType, receiver);
 		if (redisCache.get(key1) != null) {
 			throw new BizException("请勿频繁操作,获取验证码间隔时间为60秒");
@@ -226,7 +268,9 @@ public class SysMessageServiceImpl extends BaseServiceImpl<Long, SysMessage> imp
 		if (debugMode == false) {
 			code = getRandomCode(messageType, receiver);
 		}
-		sendMessage(messageSender, userId, mode, messageType, receiver, null, 1, "", code);
+		Map<Integer, String> receivers = new HashMap<Integer, String>();
+		receivers.put(userId, receiver);
+		batchSendMessage(messageSender, messageType, receivers, null, 1, "", code);
 		redisCache.put(key, code, CODE_EXPIRE);
 		redisCache.put(key1, code, CODE_INTERVAL_TIME);
 		return true;

+ 30 - 15
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -1,8 +1,23 @@
 package com.ym.mec.biz.service.impl;
 
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.*;
+import com.ym.mec.biz.dal.dao.CourseScheduleDao;
+import com.ym.mec.biz.dal.dao.StudentAttendanceDao;
+import com.ym.mec.biz.dal.dao.StudentCourseHomeworkDao;
+import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
 import com.ym.mec.biz.dal.dto.TeacherAbnormalAttendanceInfoDto;
 import com.ym.mec.biz.dal.dto.TeacherAttendanceDto;
 import com.ym.mec.biz.dal.dto.TeacherPersonalAttendanceDto;
@@ -11,12 +26,16 @@ import com.ym.mec.biz.dal.entity.CourseHomework;
 import com.ym.mec.biz.dal.entity.StudentCourseHomework;
 import com.ym.mec.biz.dal.entity.SysConfig;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
-import com.ym.mec.biz.dal.enums.MessageSendMode;
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.ParamEnum;
 import com.ym.mec.biz.dal.enums.SignStatusEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
 import com.ym.mec.biz.dal.page.TeacherCloseQueryInfo;
-import com.ym.mec.biz.service.*;
+import com.ym.mec.biz.service.CourseHomeworkService;
+import com.ym.mec.biz.service.CourseScheduleService;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.biz.service.SysMessageService;
+import com.ym.mec.biz.service.TeacherAttendanceService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
@@ -24,13 +43,6 @@ import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
-import org.apache.commons.lang.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.*;
-import java.util.stream.Collectors;
 
 @Service
 public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherAttendance>  implements TeacherAttendanceService {
@@ -79,7 +91,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 
 		if(Objects.isNull(teacherAttendance)){
 			teacherAttendance=teacherSignOutDto.getTeacherAttendanceInfo();
-			teacherAttendance.setTeacherId(Long.valueOf(user.getId()));
+			teacherAttendance.setTeacherId(user.getId());
 		}else{
 			isAttendance=true;
 		}
@@ -145,7 +157,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 			//新增课堂作业
 			CourseHomework courseHomework=teacherSignOutDto.getCourseHomeworkInfo();
 			courseHomework.setCourseScheduleId(teacherAttendance.getCourseScheduleId());
-			courseHomework.setMusicGroupId(currentCourseDetail.getMusicGroupId().intValue());
+			courseHomework.setMusicGroupId(currentCourseDetail.getMusicGroupId());
 			courseHomework.setClassGroupId(currentCourseDetail.getClassId().intValue());
 			courseHomework.setExpectNum(studentAttendanceDao.countNormalAttendanceStudentNums(teacherAttendance.getCourseScheduleId()));
 			courseHomeworkService.insert(courseHomework);
@@ -191,9 +203,12 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 		
 		List<TeacherAttendance> list = teacherAttendanceDao.queryNoSignOutListByOverMinutes(minutes);
 		
-		String teacherList = list.stream().map(ta -> ta.getTeacherId().toString()).collect(Collectors.joining(","));
-		
-		sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageSendMode.PUSH, "", "", teacherList, null, 0, "");
+		Map<Integer, String> receivers = new HashMap<Integer, String>();
+		for (TeacherAttendance sf : list) {
+			receivers.put(sf.getTeacherId(), sf.getTeacherId() + "");
+		}
+
+		sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.TEACHER_PUSH_SIGN_OUT_MESSAGE, receivers, null, 0, "");
 		return true;
 	}
 

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

@@ -23,7 +23,7 @@ public class TeacherDefaultVipGroupSalaryServiceImpl extends BaseServiceImpl<Lon
 	}
 
 	@Override
-	public TeacherDefaultVipGroupSalary findByTeacherAndCategory(Long userId, Long categoryId) {
+	public TeacherDefaultVipGroupSalary findByTeacherAndCategory(Integer userId, Long categoryId) {
 		return teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(userId,categoryId);
 	}
 

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

@@ -117,7 +117,7 @@ public class TeacherLeaveRecordServiceImpl extends BaseServiceImpl<Long, Teacher
 	@Override
 	public void checkCourseSchedulePlansExitLeaveRecord(List<CourseSchedule> courseSchedules){
 		Date now=new Date();
-		List<Long> teacherIds = courseSchedules.stream().map(CourseSchedule::getActualTeacherId).collect(Collectors.toList());
+		List<Integer> teacherIds = courseSchedules.stream().map(CourseSchedule::getActualTeacherId).collect(Collectors.toList());
 		List<TeacherLeaveRecord> teacherLeaveRecords = teacherLeaveRecordDao.findByTeacherIds(teacherIds, now);
 		Map<Integer, List<TeacherLeaveRecord>> teacherLeaveRecordByTeacher = teacherLeaveRecords.stream().collect(Collectors.groupingBy(TeacherLeaveRecord::getUserId));
 		courseSchedules.forEach(courseSchedule -> {

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

@@ -234,8 +234,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		//课程信息调整
 		vipGroup.getCourseSchedules().forEach(courseSchedule -> {
 		    courseSchedule.setSchoolId(vipGroup.getVipGroupApplyBaseInfo().getTeacherSchoolId());
-		    courseSchedule.setTeacherId(vipGroupApplyBaseInfoDto.getUserId().longValue());
-			courseSchedule.setActualTeacherId(vipGroupApplyBaseInfoDto.getUserId().longValue());
+		    courseSchedule.setTeacherId(vipGroupApplyBaseInfoDto.getUserId());
+			courseSchedule.setActualTeacherId(vipGroupApplyBaseInfoDto.getUserId());
 			courseSchedule.setStatus(CourseStatusEnum.NOT_START);
 		    courseSchedule.setType(CourseSchedule.CourseScheduleType.VIP);
 			courseSchedule.setClassGroupId(classGroup.getId());
@@ -434,7 +434,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 	@Override
 	public VipGroupCostCountDto vipGroupCostCount(VipGroupCostCountParamsDto vipGroupCostCountParamsDto) {
         SysUser user = sysUserFeignService.queryUserInfo();
-        TeacherDefaultVipGroupSalary teacherDefaultVipGroupSalary = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(user.getId().longValue(), vipGroupCostCountParamsDto.getVipGroupCategoryId());
+        TeacherDefaultVipGroupSalary teacherDefaultVipGroupSalary = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(user.getId(), vipGroupCostCountParamsDto.getVipGroupCategoryId());
         VipGroupDefaultClassesUnitPrice vipGroupDefaultClassesUnitPrice = vipGroupDefaultClassesUnitPriceDao.get(vipGroupCostCountParamsDto.getVipGroupDefaultClassesUnitPriceId().intValue());
 		VipGroupActivity vipGroupActivity = vipGroupActivityDao.get(vipGroupCostCountParamsDto.getVipGroupActivityId().intValue());
         VipGroupSalarySettlementDto vipGroupSalarySettlementDto = JSON.parseObject(vipGroupActivity.getSalarySettlementJson(), VipGroupSalarySettlementDto.class);
@@ -494,7 +494,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			throw new BizException("未找到课程形式");
 		}
 
-		TeacherDefaultVipGroupSalary teacherDefaultVipGroupSalary = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(teacherId.longValue(),
+		TeacherDefaultVipGroupSalary teacherDefaultVipGroupSalary = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(teacherId,
 				vipGroup.getVipGroupCategoryId());
 
 		if(Objects.isNull(vipGroup.getVipGroupActivityId())){

+ 4 - 4
mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml

@@ -28,8 +28,8 @@
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.ClassGroupStudentMapper" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
-        INSERT INTO class_group_student_mapper (id_,class_group_id_,user_id_,status_,create_time_)
-        VALUES(#{id},#{classGroupId},#{userId},#{status},now())
+        INSERT INTO class_group_student_mapper (id_,music_group_id_,class_group_id_,user_id_,status_,create_time_)
+        VALUES(#{id},#{musicGroupId},#{classGroupId},#{userId},#{status},now())
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -70,10 +70,10 @@
 
     <!-- 班级学生批量插入 -->
     <insert id="classGroupStudentsInsert" parameterType="java.util.List">
-        INSERT INTO class_group_student_mapper (class_group_id_,user_id_,status_,create_time_)
+        INSERT INTO class_group_student_mapper (music_group_id_,class_group_id_,user_id_,status_,create_time_)
         VALUES
         <foreach collection="classGroupStudentMapperList" item="item" index="index" separator=",">
-            (#{item.classGroupId},#{item.userId},#{item.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now())
+            (#{item.musicGroupId},#{item.classGroupId},#{item.userId},#{item.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now())
         </foreach>
     </insert>
     

+ 44 - 4
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -77,9 +77,49 @@
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentRegistration" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO student_registration
-        (parents_phone_,id_,user_id_,name_,music_group_id_,current_grade_,current_class_,subject_id_,is_allow_adjust_,kit_purchase_method_,remark_,create_time_,update_time_,parents_name_,parents_company_,payment_status_,actual_subject_id_,music_group_status_)
-        VALUES(#{parentsPhone},#{id},#{userId},#{name},#{musicGroupId},#{currentGrade},#{currentClass},#{subjectId},#{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{kitPurchaseMethod,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-        #{remark},now(),now(),#{parentsName},#{parentsCompany},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{subjectId},#{musicGroupStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id!=null">id_,</if>
+            <if test="userId!=null">user_id_,</if>
+            <if test="name!=null">name_,</if>
+            <if test="musicGroupId!=null">music_group_id_,</if>
+            <if test="currentGrade!=null">current_grade_,</if>
+            <if test="currentClass!=null">current_class_,</if>
+            <if test="subjectId!=null">subject_id_,</if>
+            <if test="actualSubjectId!=null">actual_subject_id_,</if>
+            <if test="isAllowAdjust!=null">is_allow_adjust_,</if>
+            <if test="kitPurchaseMethod!=null">kit_purchase_method_,</if>
+            <if test="remark!=null">remark_,</if>
+            <if test="parentsName!=null">parents_name_,</if>
+            <if test="parentsPhone!=null">parents_phone_,</if>
+            <if test="parentsCompany!=null">parents_company_,</if>
+            <if test="paymentStatus!=null">payment_status_,</if>
+            <if test="classGroupId!=null">class_group_id_,</if>
+            <if test="musicGroupStatus!=null">music_group_status_,</if>
+            <if test="createTime!=null">create_time_,</if>
+            <if test="updateTime!=null">update_time_,</if>
+        </trim>
+        VALUES
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id!=null">#{id},</if>
+            <if test="userId!=null">#{userId},</if>
+            <if test="name!=null">#{name},</if>
+            <if test="musicGroupId!=null">#{musicGroupId},</if>
+            <if test="currentGrade!=null">#{currentGrade},</if>
+            <if test="currentClass!=null">#{currentClass},</if>
+            <if test="subjectId!=null">#{subjectId},</if>
+            <if test="actualSubjectId!=null">#{actualSubjectId},</if>
+            <if test="isAllowAdjust!=null">#{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},</if>
+            <if test="kitPurchaseMethod!=null">#{kitPurchaseMethod,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},</if>
+            <if test="remark!=null">#{remark},</if>
+            <if test="parentsName!=null">#{parentsName},</if>
+            <if test="parentsPhone!=null">#{parentsPhone},</if>
+            <if test="parentsCompany!=null">#{parentsCompany},</if>
+            <if test="paymentStatus!=null">#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},</if>
+            <if test="classGroupId!=null">#{classGroupId},</if>
+            <if test="musicGroupStatus!=null">#{musicGroupStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},</if>
+            <if test="createTime!=null">#{createTime},</if>
+            <if test="updateTime!=null">#{updateTime},</if>
+        </trim>
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -327,7 +367,7 @@
         <if test="actualSubjectId != null and actualSubjectId !=''">
             AND actual_subject_id_ = #{actualSubjectId}
         </if>
-        AND payment_status_ = 1 AND class_group_id_ IS NULL
+        AND payment_status_ = 2 AND class_group_id_ IS NULL
     </select>
 
 

+ 15 - 14
mec-student/src/main/java/com/ym/mec/student/controller/SysMessageController.java

@@ -1,18 +1,10 @@
 package com.ym.mec.student.controller;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
-import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.entity.SysMessage;
-import com.ym.mec.biz.dal.enums.MessageSendMode;
-import com.ym.mec.biz.dal.page.SysMessageQueryInfo;
-import com.ym.mec.biz.service.SysMessageService;
-import com.ym.mec.common.controller.BaseController;
-import com.ym.mec.common.exception.BizException;
-import com.ym.mec.common.page.PageInfo;
-import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
-import com.ym.mec.util.validator.CommonValidator;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+
+import java.io.IOException;
+
 import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -21,7 +13,16 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.io.IOException;
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.entity.SysMessage;
+import com.ym.mec.biz.dal.page.SysMessageQueryInfo;
+import com.ym.mec.biz.service.SysMessageService;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
+import com.ym.mec.util.validator.CommonValidator;
 
 @RestController
 @Api(tags = "消息服务")
@@ -124,7 +125,7 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation(value = "发送消息")
 	@PostMapping("/sendMessage")
-	public Object sendMessage(MessageSender messageSender, MessageSendMode sendMode, String content, String receiver, int readStatus, String url) {
+	public Object sendMessage(MessageSender messageSender, String content, String receiver, int readStatus, String url) {
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
@@ -135,7 +136,7 @@ public class SysMessageController extends BaseController {
 		if (StringUtils.isBlank(mobileNo) || !CommonValidator.isMobileNo(mobileNo)) {
 			throw new BizException("请输入正确的手机号");
 		}
-		sysMessageService.sendMessage(messageSender, userId, sendMode, "", content, receiver, null, readStatus, url);
+		sysMessageService.sendMessage(messageSender, userId, "", content, receiver, null, readStatus, url);
 		return succeed();
 	}
 }

+ 15 - 14
mec-teacher/src/main/java/com/ym/mec/teacher/controller/SysMessageController.java

@@ -1,18 +1,10 @@
 package com.ym.mec.teacher.controller;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
-import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.entity.SysMessage;
-import com.ym.mec.biz.dal.enums.MessageSendMode;
-import com.ym.mec.biz.dal.page.SysMessageQueryInfo;
-import com.ym.mec.biz.service.SysMessageService;
-import com.ym.mec.common.controller.BaseController;
-import com.ym.mec.common.exception.BizException;
-import com.ym.mec.common.page.PageInfo;
-import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
-import com.ym.mec.util.validator.CommonValidator;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+
+import java.io.IOException;
+
 import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -21,7 +13,16 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.io.IOException;
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.entity.SysMessage;
+import com.ym.mec.biz.dal.page.SysMessageQueryInfo;
+import com.ym.mec.biz.service.SysMessageService;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.exception.BizException;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.thirdparty.message.MessageSenderPluginContext.MessageSender;
+import com.ym.mec.util.validator.CommonValidator;
 
 @RestController
 @Api(tags = "消息服务")
@@ -124,7 +125,7 @@ public class SysMessageController extends BaseController {
 
 	@ApiOperation(value = "发送消息")
 	@PostMapping("/sendMessage")
-	public Object sendMessage(MessageSender messageSender, MessageSendMode sendMode, String content, String receiver, int readStatus, String url) {
+	public Object sendMessage(MessageSender messageSender, String content, String receiver, int readStatus, String url) {
 		SysUser sysUser = sysUserFeignService.queryUserInfo();
 		if (sysUser == null) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
@@ -135,7 +136,7 @@ public class SysMessageController extends BaseController {
 		if (StringUtils.isBlank(mobileNo) || !CommonValidator.isMobileNo(mobileNo)) {
 			throw new BizException("请输入正确的手机号");
 		}
-		sysMessageService.sendMessage(messageSender, userId, sendMode, "", content, receiver, null, readStatus, url);
+		sysMessageService.sendMessage(messageSender, userId, "", content, receiver, null, readStatus, url);
 		return succeed();
 	}
 }

+ 1 - 1
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherDefaultVipGroupSalaryController.java

@@ -37,7 +37,7 @@ public class TeacherDefaultVipGroupSalaryController extends BaseController {
         if (Objects.isNull(user)) {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
-        return succeed(teacherDefaultVipGroupSalaryService.findByTeacherAndCategory(user.getId().longValue(),categoryId));
+        return succeed(teacherDefaultVipGroupSalaryService.findByTeacherAndCategory(user.getId(),categoryId));
     }
 
 }

+ 2 - 2
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/eseal/provider/TsignPlugin.java

@@ -54,12 +54,12 @@ public class TsignPlugin implements ESealPlugin, InitializingBean, DisposableBea
 		projectconfig.setItsmApiUrl(apisUrl);
 		Result result = ServiceClientManager.registClient(projectconfig, null, null);
 		if (result.getErrCode() != 0) {
-//			throw new ThirdpartyException("e签宝客户端注册失败");
+			throw new ThirdpartyException("e签宝客户端注册失败");
 		}
 
 		serviceClient = ServiceClientManager.get(projectId);
 		if (serviceClient == null) {
-//			throw new ThirdpartyException("获取e签宝客户端失败");
+			throw new ThirdpartyException("获取e签宝客户端失败");
 		}
 	}
 

+ 14 - 1
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/MessageSenderPluginContext.java

@@ -21,7 +21,20 @@ public class MessageSenderPluginContext implements ApplicationContextAware {
 
 	public enum MessageSender {
 
-		JIGUANG, MOXINGTONG, SHIYUAN,YIMEI;
+		JIGUANG("PUSH"), MOXINGTONG("SMS"), SHIYUAN("SMS"),YIMEI("SMS");
+		
+		/**
+		 * 发送模式(SMS,PUSH,EMAIL)
+		 */
+		private String sendMode;
+		
+		private MessageSender(String sendMode) {
+			this.sendMode = sendMode;
+		}
+
+		public String getSendMode() {
+			return sendMode;
+		}
 	}
 
 	private MessageSenderPlugin messageSenderPlugin;

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleController.java

@@ -71,7 +71,7 @@ public class CourseScheduleController extends BaseController {
             if(CollectionUtils.isEmpty(classGroupTeacherMappers)){
                 throw new BizException("乐团老师设置有误");
             }
-            courseSchedule.setTeacherId(classGroupTeacherMappers.get(0).getUserId().longValue());
+            courseSchedule.setTeacherId(classGroupTeacherMappers.get(0).getUserId());
             courseSchedule.setSchoolId(musicGroup.getSchoolId());
         });
 

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/controller/TeacherDefaultVipGroupSalaryController.java

@@ -27,7 +27,7 @@ public class TeacherDefaultVipGroupSalaryController extends BaseController {
     @ApiOperation(value = "根据老师编号及课程类型编号获取默认课酬")
     @GetMapping("/findByTeacherAndCategory")
     @PreAuthorize("@pcs.hasPermissions('teacherDefaultVipGroupSalary/findByTeacherAndCategory')")
-    public Object findByTeacherAndCategory(Long userId, Long categoryId){
+    public Object findByTeacherAndCategory(Integer userId, Long categoryId){
         return succeed(teacherDefaultVipGroupSalaryService.findByTeacherAndCategory(userId,categoryId));
     }