浏览代码

Merge branch 'online1' into maintenance_feature

周箭河 4 年之前
父节点
当前提交
73ac513234
共有 34 个文件被更改,包括 627 次插入289 次删除
  1. 3 1
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/UserController.java
  2. 2 2
      mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysMenuMapper.xml
  3. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ImGroupDao.java
  4. 6 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPreRegistrationDao.java
  5. 34 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PreRegisterSubjectDto.java
  6. 2 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ProbationPeriodEnum.java
  7. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/ImGroupService.java
  8. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPreRegistrationService.java
  9. 87 41
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java
  10. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java
  11. 33 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupServiceImpl.java
  12. 4 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java
  13. 35 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPreRegistrationServiceImpl.java
  14. 7 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  15. 19 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java
  16. 15 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java
  17. 15 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java
  18. 6 2
      mec-biz/src/main/resources/config/mybatis/ImGroupMapper.xml
  19. 1 1
      mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml
  20. 19 0
      mec-biz/src/main/resources/config/mybatis/StudentPreRegistrationMapper.xml
  21. 12 0
      mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml
  22. 3 0
      mec-client-api/src/main/java/com/ym/mec/im/WebFeignService.java
  23. 6 0
      mec-client-api/src/main/java/com/ym/mec/im/fallback/WebFeignServiceFallback.java
  24. 0 2
      mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java
  25. 24 0
      mec-common/common-core/src/main/java/com/ym/mec/common/entity/Mapper.java
  26. 4 15
      mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java
  27. 14 1
      mec-student/src/main/java/com/ym/mec/student/controller/ImGroupController.java
  28. 3 3
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/ImGroupController.java
  29. 1 1
      mec-teacher/src/main/resources/bootstrap-test.properties
  30. 9 0
      mec-web/src/main/java/com/ym/mec/web/controller/APIController.java
  31. 199 199
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java
  32. 11 4
      mec-web/src/main/java/com/ym/mec/web/controller/ImGroupController.java
  33. 19 9
      mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java
  34. 15 0
      mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

+ 3 - 1
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/UserController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.auth.web.controller;
 package com.ym.mec.auth.web.controller;
 
 
+import com.ym.mec.im.WebFeignService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiImplicitParams;
@@ -56,7 +57,7 @@ public class UserController extends BaseController {
 	@Autowired
 	@Autowired
 	private IdGeneratorService smsCodeService;
 	private IdGeneratorService smsCodeService;
 	@Autowired
 	@Autowired
-	private ESealPlugin eSealPlugin;
+	private WebFeignService webFeignService;
 	@Value("${message.debugMode}")
 	@Value("${message.debugMode}")
 	private boolean debugMode;
 	private boolean debugMode;
 	@Autowired
 	@Autowired
@@ -154,6 +155,7 @@ public class UserController extends BaseController {
 			ImResult register = imFeignService.register(new ImUserModel(sysUser.getId().toString(), username, sysUser.getAvatar()));
 			ImResult register = imFeignService.register(new ImUserModel(sysUser.getId().toString(), username, sysUser.getAvatar()));
 			sysUser.setImToken(register.getToken());
 			sysUser.setImToken(register.getToken());
 		}
 		}
+		webFeignService.updateNickName(sysUser.getId(),username,null);
 		password = new BCryptPasswordEncoder().encode(password);
 		password = new BCryptPasswordEncoder().encode(password);
 		sysUser.setPassword(password);
 		sysUser.setPassword(password);
 		sysUser.setUpdateTime(new Date());
 		sysUser.setUpdateTime(new Date());

+ 2 - 2
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysMenuMapper.xml

@@ -40,8 +40,8 @@
     <insert id="insert" parameterType="com.ym.mec.auth.api.entity.SysMenu" useGeneratedKeys="true" keyColumn="id"
     <insert id="insert" parameterType="com.ym.mec.auth.api.entity.SysMenu" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
             keyProperty="id">
         INSERT INTO sys_menu
         INSERT INTO sys_menu
-        (id_,name_,permission_,path_,parent_id_,icon_,component_,sort_,type_,create_time_,update_time_,hidden_,parent_permission_,memo_)
-        VALUES(#{id},#{name},#{permission},#{path},#{parentId},#{icon},#{component},#{sort},#{type},now(),now(),#{hid},#{parentPermission},#{memo})
+        (id_,name_,permission_,path_,parent_id_,icon_,component_,sort_,type_,create_time_,update_time_,hidden_,parent_permission_,memo_,keep_alive_)
+        VALUES(#{id},#{name},#{permission},#{path},#{parentId},#{icon},#{component},#{sort},#{type},now(),now(),#{hid},#{parentPermission},#{memo},#{keepAlive})
     </insert>
     </insert>
 
 
     <!-- 根据主键查询一条记录 -->
     <!-- 根据主键查询一条记录 -->

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ImGroupDao.java

@@ -28,4 +28,6 @@ public interface ImGroupDao extends BaseDAO<Long, ImGroup> {
 	List<ImGroupMemberDto> queryMemberById(Long imGroupId);
 	List<ImGroupMemberDto> queryMemberById(Long imGroupId);
 
 
 	ImGroupMemberDto queryMember(@Param("imGroupId") Long imGroupId, @Param("userId") Integer userId);
 	ImGroupMemberDto queryMember(@Param("imGroupId") Long imGroupId, @Param("userId") Integer userId);
+
+    int updateNickname(@Param("userId") Integer userId, @Param("nickName") String nickName);
 }
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPreRegistrationDao.java

@@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Param;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.entity.Mapper;
 
 
 public interface StudentPreRegistrationDao extends BaseDAO<Long, StudentPreRegistration> {
 public interface StudentPreRegistrationDao extends BaseDAO<Long, StudentPreRegistration> {
 
 
@@ -18,4 +19,9 @@ public interface StudentPreRegistrationDao extends BaseDAO<Long, StudentPreRegis
 	List<StudentPreRegistration> queryByMusicGroupId(String musicGroupId);
 	List<StudentPreRegistration> queryByMusicGroupId(String musicGroupId);
 	
 	
 	List<StudentPreRegistrationDto> queryListForPage(Map<String,Object> params);
 	List<StudentPreRegistrationDto> queryListForPage(Map<String,Object> params);
+	
+	//统计第一专业
+	List<Mapper> queryFirstSubjectNum(String musicGroupId);
+	
+	List<Mapper> querySecondSubjectNum(String musicGroupId);
 }
 }

+ 34 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/PreRegisterSubjectDto.java

@@ -0,0 +1,34 @@
+package com.ym.mec.biz.dal.dto;
+
+public class PreRegisterSubjectDto {
+
+	private String subjectName;
+	
+	private int firstSubjectNum;
+	
+	private int secondSubjectNum;
+
+	public String getSubjectName() {
+		return subjectName;
+	}
+
+	public void setSubjectName(String subjectName) {
+		this.subjectName = subjectName;
+	}
+
+	public int getFirstSubjectNum() {
+		return firstSubjectNum;
+	}
+
+	public void setFirstSubjectNum(int firstSubjectNum) {
+		this.firstSubjectNum = firstSubjectNum;
+	}
+
+	public int getSecondSubjectNum() {
+		return secondSubjectNum;
+	}
+
+	public void setSecondSubjectNum(int secondSubjectNum) {
+		this.secondSubjectNum = secondSubjectNum;
+	}
+}

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/ProbationPeriodEnum.java

@@ -6,7 +6,8 @@ import com.ym.mec.common.enums.BaseEnum;
 public enum ProbationPeriodEnum implements BaseEnum<Integer, ProbationPeriodEnum> {
 public enum ProbationPeriodEnum implements BaseEnum<Integer, ProbationPeriodEnum> {
     NORMAL(0,"正式"),
     NORMAL(0,"正式"),
     TRY(1,"试用"),
     TRY(1,"试用"),
-    LEAVE(2,"离职");
+    LEAVE(2,"离职"),
+    INTERNSHIP(3,"实习");
 
 
     private Integer code;
     private Integer code;
 
 

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/ImGroupService.java

@@ -51,4 +51,12 @@ public interface ImGroupService extends BaseService<Long, ImGroup> {
 	 * @return
 	 * @return
 	 */
 	 */
 	ImGroupMemberDto queryMember(Long imGroupId, Integer userId);
 	ImGroupMemberDto queryMember(Long imGroupId, Integer userId);
+
+	/**
+	 * 修改用户在群、通讯录的备注
+	 * @param userId
+	 * @param nickName
+	 * @return
+	 */
+    int updateNickName(Integer userId, String nickName,String userType);
 }
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPreRegistrationService.java

@@ -1,5 +1,8 @@
 package com.ym.mec.biz.service;
 package com.ym.mec.biz.service;
 
 
+import java.util.List;
+
+import com.ym.mec.biz.dal.dto.PreRegisterSubjectDto;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.PageInfo;
@@ -9,4 +12,6 @@ import com.ym.mec.common.service.BaseService;
 public interface StudentPreRegistrationService extends BaseService<Long, StudentPreRegistration> {
 public interface StudentPreRegistrationService extends BaseService<Long, StudentPreRegistration> {
 	
 	
 	public PageInfo<StudentPreRegistrationDto> queryListForPage(QueryInfo queryInfo);
 	public PageInfo<StudentPreRegistrationDto> queryListForPage(QueryInfo queryInfo);
+	
+	public List<PreRegisterSubjectDto> querySubjectNum(String musicGroupId);
 }
 }

+ 87 - 41
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -251,11 +251,22 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             Teacher teacher = idTeacherMap.get(courseScheduleTeacherSalary.getUserId());
             Teacher teacher = idTeacherMap.get(courseScheduleTeacherSalary.getUserId());
 
 
-            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())<0;
-            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+//            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())<0;
+//            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
 
 
-            //如果上课日期在转正日期之前的按80%结算
-            if(Objects.isNull(teacher)||notPositive||isProbationPeriod){
+            //判断课程是否在试用期内
+            boolean trail = false;
+
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getEntryDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getEntryDate())>=0){
+                trail = true;
+            }
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())>=0){
+                trail = false;
+            }
+
+
+            //如果上课日期在试用期内按80%结算
+            if(trail){
                 expectSalary = expectSalary.multiply(new BigDecimal("0.8"));
                 expectSalary = expectSalary.multiply(new BigDecimal("0.8"));
                 deductReasons.add("未转正");
                 deductReasons.add("未转正");
             }
             }
@@ -265,10 +276,13 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             List<TeacherAttendance> courseTeacherAttendances = teacherCourseAttendanceMap.get(org.apache.commons.lang3.StringUtils.joinWith(":", courseScheduleTeacherSalary.getCourseScheduleId(), courseScheduleTeacherSalary.getUserId()));
             List<TeacherAttendance> courseTeacherAttendances = teacherCourseAttendanceMap.get(org.apache.commons.lang3.StringUtils.joinWith(":", courseScheduleTeacherSalary.getCourseScheduleId(), courseScheduleTeacherSalary.getUserId()));
 
 
-            TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
+            TeacherAttendance teacherAttendance = null;
+            if(!CollectionUtils.isEmpty(courseTeacherAttendances)){
+                teacherAttendance = courseTeacherAttendances.get(0);
+            }
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignInStatus())){
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignInStatus())){
                 //未签到扣除全部课酬
                 //未签到扣除全部课酬
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("未签到扣除全部课酬");
                 deductReasons.add("未签到扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
                 //异常签到
                 //异常签到
@@ -276,18 +290,18 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                 float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                 if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                 if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                     //课程开始前1分钟至开始后3分钟进入教室
                     //课程开始前1分钟至开始后3分钟进入教室
-                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                     deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                 }else if(signCourseTimeBetween<=-3){
                 }else if(signCourseTimeBetween<=-3){
                     //课程开始后3分钟后进入教室
                     //课程开始后3分钟后进入教室
-                    deductCost = deductCost.add(expectSalary);
+                    deductCost = deductCost.add(expectSalary.abs());
                     deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                     deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                 }
                 }
             }
             }
 
 
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignOutStatus())){
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignOutStatus())){
                 //未签退扣除全部课酬
                 //未签退扣除全部课酬
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("未签退扣除全部课酬");
                 deductReasons.add("未签退扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
                 //异常签退
                 //异常签退
@@ -296,11 +310,11 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
                 if(signOutCourseTimeBetween>3){
                 if(signOutCourseTimeBetween>3){
                     //课程开始前20分钟至开始后3分钟退出教室
                     //课程开始前20分钟至开始后3分钟退出教室
-                    deductCost = deductCost.add(expectSalary);
+                    deductCost = deductCost.add(expectSalary.abs());
                     deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                     deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                 }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                 }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                     //课程结束前3分钟后至课程结束前退出教室
                     //课程结束前3分钟后至课程结束前退出教室
-                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                     deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                 }
                 }
             }
             }
@@ -368,10 +382,21 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             Teacher teacher = idTeacherMap.get(courseScheduleTeacherSalary.getUserId());
             Teacher teacher = idTeacherMap.get(courseScheduleTeacherSalary.getUserId());
 
 
-            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())<0;
-            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+//            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())<0;
+//            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
 
 
-            if(Objects.isNull(teacher)||notPositive||isProbationPeriod){
+            //判断课程是否在试用期内
+            boolean trail = false;
+
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getEntryDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getEntryDate())>=0){
+                trail = true;
+            }
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseScheduleTeacherSalary.getCourseSchedule().getClassDate().compareTo(teacher.getFormalStaffDate())>=0){
+                trail = false;
+            }
+
+            //如果上课日期在试用期内按80%结算
+            if(trail){
                 expectSalary = expectSalary.multiply(new BigDecimal("0.8"));
                 expectSalary = expectSalary.multiply(new BigDecimal("0.8"));
                 deductReasons.add("未转正");
                 deductReasons.add("未转正");
             }
             }
@@ -383,7 +408,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 //            TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
 //            TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(courseTeacherAttendances.get(0).getSignInStatus())){
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(courseTeacherAttendances.get(0).getSignInStatus())){
                 //未签到扣除全部课酬
                 //未签到扣除全部课酬
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("未签到扣除全部课酬");
                 deductReasons.add("未签到扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.ONLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.ONLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
                 //异常签到
                 //异常签到
@@ -391,21 +416,21 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                 float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                 if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                 if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                     //课程开始前1分钟至开始后3分钟进入教室
                     //课程开始前1分钟至开始后3分钟进入教室
-                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                     deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                 }else if(signCourseTimeBetween<=-3){
                 }else if(signCourseTimeBetween<=-3){
                     //课程开始后3分钟后进入教室
                     //课程开始后3分钟后进入教室
-                    deductCost = deductCost.add(expectSalary);
+                    deductCost = deductCost.add(expectSalary.abs());
                     deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                     deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                 }
                 }
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.OFFLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.OFFLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("点名时经纬度不在范围内扣除全部课酬");
                 deductReasons.add("点名时经纬度不在范围内扣除全部课酬");
             }
             }
 
 
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(courseTeacherAttendances.get(0).getSignOutStatus())){
             if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(courseTeacherAttendances.get(0).getSignOutStatus())){
                 //未签退扣除全部课酬
                 //未签退扣除全部课酬
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("未签退扣除全部课酬");
                 deductReasons.add("未签退扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignOutStatus())&&TeachModeEnum.ONLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignOutStatus())&&TeachModeEnum.ONLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
                 //异常签退
                 //异常签退
@@ -414,15 +439,15 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
                 if(signOutCourseTimeBetween>3){
                 if(signOutCourseTimeBetween>3){
                     //课程开始前20分钟至开始后3分钟退出教室
                     //课程开始前20分钟至开始后3分钟退出教室
-                    deductCost = deductCost.add(expectSalary);
+                    deductCost = deductCost.add(expectSalary.abs());
                     deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                     deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                 }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                 }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                     //课程结束前3分钟后至课程结束前退出教室
                     //课程结束前3分钟后至课程结束前退出教室
-                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(expectSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                     deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                 }
                 }
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.OFFLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
             }else if(YesOrNoEnum.NO.equals(courseTeacherAttendances.get(0).getSignInStatus())&&TeachModeEnum.OFFLINE.equals(courseScheduleTeacherSalary.getCourseSchedule().getTeachMode())){
-                deductCost = deductCost.add(expectSalary);
+                deductCost = deductCost.add(expectSalary.abs());
                 deductReasons.add("点名时经纬度不在范围内扣除全部课酬");
                 deductReasons.add("点名时经纬度不在范围内扣除全部课酬");
             }
             }
 
 
@@ -558,12 +583,22 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 }
                 }
 
 
                 //未转正
                 //未转正
-                boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())<0;
+//                boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())<0;
                 //试用期
                 //试用期
-                boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+//                boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+
+                //判断课程是否在试用期内
+                boolean trail = false;
+
+                if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getEntryDate())&&courseSchedule.getClassDate().compareTo(teacher.getEntryDate())>=0){
+                    trail = true;
+                }
+                if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())>=0){
+                    trail = false;
+                }
 
 
-                //如果上课日期在转正日期之前的按80%结算
-                if(Objects.isNull(teacher)||notPositive||isProbationPeriod){
+                //如果上课日期在试用期内按80%结算
+                if(trail){
                     teacherSalary = teacherSalary.multiply(new BigDecimal("0.8"));
                     teacherSalary = teacherSalary.multiply(new BigDecimal("0.8"));
                     deductReasons.add("未转正");
                     deductReasons.add("未转正");
                 }
                 }
@@ -576,7 +611,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
                 TeacherAttendance teacherAttendance = courseTeacherAttendances.get(0);
                 if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignInStatus())){
                 if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignInStatus())){
                     //未签到扣除全部课酬
                     //未签到扣除全部课酬
-                    deductCost = deductCost.add(teacherSalary);
+                    deductCost = deductCost.add(teacherSalary.abs());
                     deductReasons.add("未签到扣除全部课酬");
                     deductReasons.add("未签到扣除全部课酬");
                 }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
                 }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
                     //异常签到
                     //异常签到
@@ -584,18 +619,18 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                     float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                     float signCourseTimeBetween = (float)signCourseTimeBetweenSeconds/(float)60;
                     if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                     if(signCourseTimeBetween<=1&&signCourseTimeBetween>-3){
                         //课程开始前1分钟至开始后3分钟进入教室
                         //课程开始前1分钟至开始后3分钟进入教室
-                        deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)));
+                        deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)).abs());
                         deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                         deductReasons.add("课程开始前1分钟至开始后3分钟进入教室扣除一半课酬");
                     }else if(signCourseTimeBetween<=-3){
                     }else if(signCourseTimeBetween<=-3){
                         //课程开始后3分钟后进入教室
                         //课程开始后3分钟后进入教室
-                        deductCost = deductCost.add(teacherSalary);
+                        deductCost = deductCost.add(teacherSalary.abs());
                         deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                         deductReasons.add("课程开始后3分钟进入教室扣除全部课酬");
                     }
                     }
                 }
                 }
 
 
                 if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignOutStatus())){
                 if(CollectionUtils.isEmpty(courseTeacherAttendances)||Objects.isNull(teacherAttendance.getSignOutStatus())){
                     //未签退扣除一半课酬
                     //未签退扣除一半课酬
-                    deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("未签退扣除一半课酬");
                     deductReasons.add("未签退扣除一半课酬");
                 }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
                 }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
                     //异常签退
                     //异常签退
@@ -604,11 +639,11 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
                     if(signOutCourseTimeBetween>3){
                     if(signOutCourseTimeBetween>3){
                         //课程开始前20分钟至开始后3分钟退出教室
                         //课程开始前20分钟至开始后3分钟退出教室
-                        deductCost = deductCost.add(teacherSalary);
+                        deductCost = deductCost.add(teacherSalary.abs());
                         deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                         deductReasons.add("课程结束前3分钟之前退出教室扣除全部课酬");
                     }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                     }else if(signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0){
                         //课程结束前3分钟后至课程结束前退出教室
                         //课程结束前3分钟后至课程结束前退出教室
-                        deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)));
+                        deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)).abs());
                         deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                         deductReasons.add("课程结束前3分钟后至课程结束前退出教室扣除一半课酬");
                     }
                     }
                 }
                 }
@@ -643,10 +678,21 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                 deductReasons.add("教学点补贴:" + subsidy);
                 deductReasons.add("教学点补贴:" + subsidy);
             }
             }
 
 
-            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())<0;
-            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+//            boolean notPositive = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())<0;
+//            boolean isProbationPeriod = Objects.nonNull(teacher)&&Objects.nonNull(teacher.getIsProbationPeriod())&&ProbationPeriodEnum.TRY.equals(teacher.getIsProbationPeriod());
+
+            //判断课程是否在试用期内
+            boolean trail = false;
+
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getEntryDate())&&courseSchedule.getClassDate().compareTo(teacher.getEntryDate())>=0){
+                trail = true;
+            }
+            if(Objects.nonNull(teacher)&&Objects.nonNull(teacher.getFormalStaffDate())&&courseSchedule.getClassDate().compareTo(teacher.getFormalStaffDate())>=0){
+                trail = false;
+            }
 
 
-            if(Objects.isNull(teacher)||notPositive||isProbationPeriod){
+            //如果上课日期在试用期内按80%结算
+            if(trail){
                 teacherSalary = teacherSalary.multiply(new BigDecimal("0.8"));
                 teacherSalary = teacherSalary.multiply(new BigDecimal("0.8"));
                 deductReasons.add("未转正");
                 deductReasons.add("未转正");
             }
             }
@@ -690,7 +736,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             if(Objects.isNull(teacherAttendance)||Objects.isNull(teacherAttendance.getSignInStatus())){
             if(Objects.isNull(teacherAttendance)||Objects.isNull(teacherAttendance.getSignInStatus())){
                 //无签到记录扣除全部课酬
                 //无签到记录扣除全部课酬
-                deductCost = deductCost.add(teacherSalary);
+                deductCost = deductCost.add(teacherSalary.abs());
                 deductReasons.add("未签到扣除全部课酬");
                 deductReasons.add("未签到扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignInStatus())){
                 int signCourseTimeBetweenSeconds = DateUtil.secondsBetween(teacherAttendance.getSignInTime(), courseSchedule.getStartClassTime());
                 int signCourseTimeBetweenSeconds = DateUtil.secondsBetween(teacherAttendance.getSignInTime(), courseSchedule.getStartClassTime());
@@ -701,11 +747,11 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
                     deductReasons.add("未提前20分钟打卡扣除50元");
                     deductReasons.add("未提前20分钟打卡扣除50元");
                 }else if(signCourseTimeBetween<=0&&signCourseTimeBetween>-30){
                 }else if(signCourseTimeBetween<=0&&signCourseTimeBetween>-30){
                     //迟到30分钟内扣除一半课酬
                     //迟到30分钟内扣除一半课酬
-                    deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)));
+                    deductCost = deductCost.add(teacherSalary.divide(new BigDecimal(2)).abs());
                     deductReasons.add("迟到30分钟内扣除一半课酬");
                     deductReasons.add("迟到30分钟内扣除一半课酬");
                 }else if(signCourseTimeBetween<=-30){
                 }else if(signCourseTimeBetween<=-30){
                     //迟到30分钟及以上扣除全部课酬
                     //迟到30分钟及以上扣除全部课酬
-                    deductCost = deductCost.add(teacherSalary);
+                    deductCost = deductCost.add(teacherSalary.abs());
                     deductReasons.add("迟到30分钟及以上扣除全部课酬");
                     deductReasons.add("迟到30分钟及以上扣除全部课酬");
                 }
                 }
                 if(!signInInRange){
                 if(!signInInRange){
@@ -719,14 +765,14 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             if(Objects.isNull(teacherAttendance)||Objects.isNull(teacherAttendance.getSignOutStatus())){
             if(Objects.isNull(teacherAttendance)||Objects.isNull(teacherAttendance.getSignOutStatus())){
                 //未签退扣除全部课酬
                 //未签退扣除全部课酬
-                deductCost = deductCost.add(teacherSalary);
+                deductCost = deductCost.add(teacherSalary.abs());
                 deductReasons.add("未签退扣除全部课酬");
                 deductReasons.add("未签退扣除全部课酬");
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
             }else if(YesOrNoEnum.NO.equals(teacherAttendance.getSignOutStatus())){
                 int signOutCourseTimeBetweenSeconds = DateUtil.secondsBetween(teacherAttendance.getSignOutTime(), courseSchedule.getEndClassTime());
                 int signOutCourseTimeBetweenSeconds = DateUtil.secondsBetween(teacherAttendance.getSignOutTime(), courseSchedule.getEndClassTime());
                 float signOutCourseTimeBetween = (float)signOutCourseTimeBetweenSeconds/(float) 60;
                 float signOutCourseTimeBetween = (float)signOutCourseTimeBetweenSeconds/(float) 60;
                 if(signOutCourseTimeBetween>3){
                 if(signOutCourseTimeBetween>3){
                     //早退
                     //早退
-                    deductCost = deductCost.add(teacherSalary);
+                    deductCost = deductCost.add(teacherSalary.abs());
                     deductReasons.add("早退扣除全部课酬");
                     deductReasons.add("早退扣除全部课酬");
                 }else if((signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0)||signOutCourseTimeBetween<=3600){
                 }else if((signOutCourseTimeBetween<=3&&signOutCourseTimeBetween>0)||signOutCourseTimeBetween<=3600){
                     //异常签退,扣除50元
                     //异常签退,扣除50元
@@ -743,7 +789,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
 
             if(!signInInRange&&!signOutInRange){
             if(!signInInRange&&!signOutInRange){
                 //签到签退GPS定位在指定距离外
                 //签到签退GPS定位在指定距离外
-                deductCost = deductCost.add(teacherSalary);
+                deductCost = deductCost.add(teacherSalary.abs());
                 deductReasons.add("签到签退GPS定位在指定距离外,扣除全部课酬");
                 deductReasons.add("签到签退GPS定位在指定距离外,扣除全部课酬");
             }
             }
 
 

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

@@ -6,6 +6,7 @@ import java.util.stream.Collectors;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.entity.Organization;
 import com.ym.mec.biz.dal.entity.Organization;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.GroupType;
+import com.ym.mec.biz.service.ImGroupService;
 import com.ym.mec.biz.service.ImUserFriendService;
 import com.ym.mec.biz.service.ImUserFriendService;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -59,6 +60,8 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 	private ImUserFriendService imUserFriendService;
 	private ImUserFriendService imUserFriendService;
 	@Autowired
 	@Autowired
 	private OrganizationDao organizationDao;
 	private OrganizationDao organizationDao;
+	@Autowired
+	private ImGroupService imGroupService;
 
 
 	@Override
 	@Override
 	public BaseDAO<Integer, Employee> getDAO() {
 	public BaseDAO<Integer, Employee> getDAO() {
@@ -121,6 +124,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		//新增用户角色
 		//新增用户角色
 		employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds());
 		employeeDao.batchAddEmployeeRole(employee.getId(),employee.getRoleIds());
 		teacherDao.updateUser(employee);
 		teacherDao.updateUser(employee);
+		imGroupService.updateNickName(employee.getUserId(),employee.getRealName(),"SYSTEM");
 	}
 	}
 
 
 	@Override
 	@Override

+ 33 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ImGroupServiceImpl.java

@@ -3,6 +3,10 @@ package com.ym.mec.biz.service.impl;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.common.entity.ImUserModel;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
@@ -38,6 +42,9 @@ public class ImGroupServiceImpl extends BaseServiceImpl<Long, ImGroup> implement
 	@Autowired
 	@Autowired
 	private ImFeignService imFeignService;
 	private ImFeignService imFeignService;
 
 
+	@Autowired
+	private SysUserFeignService sysUserFeignService;
+
 	@Override
 	@Override
 	public BaseDAO<Long, ImGroup> getDAO() {
 	public BaseDAO<Long, ImGroup> getDAO() {
 		return imGroupDao;
 		return imGroupDao;
@@ -119,4 +126,30 @@ public class ImGroupServiceImpl extends BaseServiceImpl<Long, ImGroup> implement
 		return imGroupDao.queryMember(imGroupId, userId);
 		return imGroupDao.queryMember(imGroupId, userId);
 	}
 	}
 
 
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public int updateNickName(Integer userId, String nickName,String userType) {
+		//修改群成员备注
+		int i = imGroupDao.updateNickname(userId, nickName);
+		//修改sysUser名称,如果包含学员的角色,那么修改userName。否则修改realName
+		SysUser sysUser = sysUserFeignService.queryUserById(userId);
+		if(StringUtils.isNotEmpty(userType)){
+			if("STUDENT" == userType){
+				sysUser.setUsername(nickName);
+			}else {
+				sysUser.setRealName(nickName);
+			}
+		}else {
+			if(sysUser.getUserType().contains("STUDENT")){
+				sysUser.setUsername(nickName);
+			}else {
+				sysUser.setRealName(nickName);
+			}
+			sysUserFeignService.updateSysUser(sysUser);
+		}
+		//同步融云基本信息
+		imFeignService.update(new ImUserModel(sysUser.getId().toString(),nickName,sysUser.getAvatar()));
+		return i;
+	}
+
 }
 }

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

@@ -17,6 +17,7 @@ import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.SysConfigService;
 import com.ym.mec.biz.service.SysConfigService;
 
 
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.im.WebFeignService;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -110,6 +111,8 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Autowired
     @Autowired
     private SysUserContractsDao sysUserContractsDao;
     private SysUserContractsDao sysUserContractsDao;
     @Autowired
     @Autowired
+    private WebFeignService webFeignService;
+    @Autowired
     private StudentCourseHomeworkDao studentCourseHomeworkDao;
     private StudentCourseHomeworkDao studentCourseHomeworkDao;
 
 
     @Override
     @Override
@@ -664,6 +667,7 @@ public class StudentManageServiceImpl implements StudentManageService {
             LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
             LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
             studentExtracurricularExercisesSituationDao.deleteByStudent(student.getId(), monDayDate.toString());
             studentExtracurricularExercisesSituationDao.deleteByStudent(student.getId(), monDayDate.toString());
         }
         }
+        webFeignService.updateNickName(userId,student.getUsername(),"STUDENT");
         return userId;
         return userId;
     }
     }
 
 

+ 35 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPreRegistrationServiceImpl.java

@@ -2,17 +2,21 @@ package com.ym.mec.biz.service.impl;
 
 
 import java.util.ArrayList;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.List;
 import java.util.List;
 import java.util.Map;
 import java.util.Map;
+import java.util.Set;
 
 
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import com.ym.mec.biz.dal.dao.StudentPreRegistrationDao;
 import com.ym.mec.biz.dal.dao.StudentPreRegistrationDao;
+import com.ym.mec.biz.dal.dto.PreRegisterSubjectDto;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.biz.dal.entity.StudentPreRegistration;
 import com.ym.mec.biz.service.StudentPreRegistrationService;
 import com.ym.mec.biz.service.StudentPreRegistrationService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.entity.Mapper;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
@@ -48,5 +52,36 @@ public class StudentPreRegistrationServiceImpl extends BaseServiceImpl<Long, Stu
 		pageInfo.setRows(dataList);
 		pageInfo.setRows(dataList);
 		return pageInfo;
 		return pageInfo;
 	}
 	}
+
+	@Override
+	public List<PreRegisterSubjectDto> querySubjectNum(String musicGroupId) {
+		Set<String> subjectNames = new HashSet<String>();
+		Map<String, Integer> firstMap = new HashMap<String, Integer>();
+		Map<String, Integer> secondMap = new HashMap<String, Integer>();
+
+		List<Mapper> firstMapperList = studentPreRegistrationDao.queryFirstSubjectNum(musicGroupId);
+		for (Mapper mapper : firstMapperList) {
+			firstMap.put(String.valueOf(mapper.getKey()), Integer.parseInt(mapper.getValue().toString()));
+			subjectNames.add(String.valueOf(mapper.getKey()));
+		}
+
+		List<Mapper> secondMapperList = studentPreRegistrationDao.querySecondSubjectNum(musicGroupId);
+		for (Mapper mapper : secondMapperList) {
+			secondMap.put(String.valueOf(mapper.getKey()), Integer.parseInt(mapper.getValue().toString()));
+			subjectNames.add(String.valueOf(mapper.getKey()));
+		}
+
+		List<PreRegisterSubjectDto> list = new ArrayList<PreRegisterSubjectDto>();
+		for (String subjectName : subjectNames) {
+			PreRegisterSubjectDto dto = new PreRegisterSubjectDto();
+			dto.setSubjectName(subjectName);
+			dto.setFirstSubjectNum(firstMap.get(subjectName) == null ? 0 : firstMap.get(subjectName));
+			dto.setSecondSubjectNum(secondMap.get(subjectName) == null ? 0 : secondMap.get(subjectName));
+
+			list.add(dto);
+		}
+
+		return list;
+	}
 	
 	
 }
 }

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

@@ -26,6 +26,7 @@ import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.biz.event.source.GroupEventSource;
 import com.ym.mec.biz.event.source.GroupEventSource;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.biz.service.*;
+import com.ym.mec.im.WebFeignService;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
@@ -150,11 +151,12 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     private StudentCourseFeeDetailDao studentCourseFeeDetailDao;
     private StudentCourseFeeDetailDao studentCourseFeeDetailDao;
     @Autowired
     @Autowired
     private CourseScheduleDao courseScheduleDao;
     private CourseScheduleDao courseScheduleDao;
-
+    @Autowired
+    private StudentInstrumentService studentInstrumentService;
     @Autowired
     @Autowired
     private GroupEventSource groupEventSource;
     private GroupEventSource groupEventSource;
     @Autowired
     @Autowired
-    private StudentInstrumentService studentInstrumentService;
+    private WebFeignService webFeignService;
 
 
     @Override
     @Override
     public BaseDAO<Long, StudentRegistration> getDAO() {
     public BaseDAO<Long, StudentRegistration> getDAO() {
@@ -226,7 +228,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     public StudentFeeDetailDto queryFeeDetail(Integer studentId, String musicGroupId) {
     public StudentFeeDetailDto queryFeeDetail(Integer studentId, String musicGroupId) {
         StudentFeeDetailDto studentFeeDetailDto = new StudentFeeDetailDto();
         StudentFeeDetailDto studentFeeDetailDto = new StudentFeeDetailDto();
         List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId, studentId);
         List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId, studentId);
-        if (musicalList.size() <= 0) {
+        if(musicalList.size() <=0){
             return studentFeeDetailDto;
             return studentFeeDetailDto;
         }
         }
         MusicalListDetailDto detailDto = musicalList.get(0);
         MusicalListDetailDto detailDto = musicalList.get(0);
@@ -342,6 +344,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             studentRegistrationDao.insert(studentRegistration);
             studentRegistrationDao.insert(studentRegistration);
         }
         }
 
 
+        webFeignService.updateNickName(sysUser.getId(),studentRegistration.getName(),"STUDENT");
         // 增加报名学生数
         // 增加报名学生数
         musicGroupSubjectPlanService.addApplyStudentNum(studentRegistration.getMusicGroupId(), studentRegistration.getSubjectId(), 1);
         musicGroupSubjectPlanService.addApplyStudentNum(studentRegistration.getMusicGroupId(), studentRegistration.getSubjectId(), 1);
         // 报名成功后,发送短信
         // 报名成功后,发送短信
@@ -638,8 +641,6 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                 studentDao.insert(new Student(userId, studentRegistration.getSubjectId().toString()));
                 studentDao.insert(new Student(userId, studentRegistration.getSubjectId().toString()));
                 //添加用户现金账户
                 //添加用户现金账户
                 sysUserCashAccountDao.insert(new SysUserCashAccount(userId, "CNY"));
                 sysUserCashAccountDao.insert(new SysUserCashAccount(userId, "CNY"));
-                //添加用户电子签章账户
-//                contractService.register(userId, sysUser.getRealName(), sysUser.getIdCardNo(), sysUser.getPhone());
                 ImResult register = imFeignService.register(new ImUserModel(userId.toString(), sysUser.getUsername(), null));
                 ImResult register = imFeignService.register(new ImUserModel(userId.toString(), sysUser.getUsername(), null));
                 sysUser.setImToken(register.getToken());
                 sysUser.setImToken(register.getToken());
                 teacherDao.updateUser(sysUser);
                 teacherDao.updateUser(sysUser);
@@ -684,6 +685,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                         studentDao.update(student);
                         studentDao.update(student);
                     }
                     }
                 }
                 }
+                webFeignService.updateNickName(userId,sysUser.getUsername(),"STUDENT");
             }
             }
             MusicGroupStudentFee studentFeeDaoByUser = musicGroupStudentFeeDao.findByUser(userId, musicGroupId);
             MusicGroupStudentFee studentFeeDaoByUser = musicGroupStudentFeeDao.findByUser(userId, musicGroupId);
             if (studentFeeDaoByUser != null) {
             if (studentFeeDaoByUser != null) {

+ 19 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherAttendanceServiceImpl.java

@@ -15,6 +15,7 @@ import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.redis.service.RedisCache;
 import com.ym.mec.common.redis.service.RedisCache;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 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.thirdparty.message.MessageSenderPluginContext.MessageSender;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
@@ -298,12 +299,30 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 //						}
 //						}
 //					}
 //					}
 					courseHomework.setExpectNum(studentCourseHomeworks.size());
 					courseHomework.setExpectNum(studentCourseHomeworks.size());
+
+					Teacher teacher = teacherDao.get(courseSchedule.getActualTeacherId());
+					String dateStr = DateUtil.dateToString(DateUtil.addDays(date, 3), "MM月dd日");
+
 					if(!CollectionUtils.isEmpty(studentCourseHomeworks)){
 					if(!CollectionUtils.isEmpty(studentCourseHomeworks)){
 						courseHomeworkService.update(courseHomework);
 						courseHomeworkService.update(courseHomework);
 
 
 						studentCourseHomeworkDao.batchInsertStudentCourseHomeworkRecord(studentCourseHomeworks);
 						studentCourseHomeworkDao.batchInsertStudentCourseHomeworkRecord(studentCourseHomeworks);
 						List<Integer> studentIds = studentCourseHomeworks.stream().map(StudentCourseHomework::getUserId).collect(Collectors.toList());
 						List<Integer> studentIds = studentCourseHomeworks.stream().map(StudentCourseHomework::getUserId).collect(Collectors.toList());
 						studentServeService.updateExercisesSituation(courseSchedule.getClassDate(), studentIds, teacherAttendance.getTeacherId());
 						studentServeService.updateExercisesSituation(courseSchedule.getClassDate(), studentIds, teacherAttendance.getTeacherId());
+
+						for (StudentCourseHomework studentCourseHomework : studentCourseHomeworks) {
+							Map<Integer, String> userMap = new HashMap<>();
+							userMap.put(studentCourseHomework.getUserId(), studentCourseHomework.getUserId().toString());
+							String notifyUrl = "?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId() + "&extra=0";
+							String extra = "dayaedu" + notifyUrl + "&userId=" + studentCourseHomework.getUserId();
+
+							sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_REMIND, courseSchedule.getActualTeacherId().toString(), extra,
+									new String[]{studentCourseHomework.getUserId().toString()},
+									null, courseSchedule.getName(), dateStr, courseHomework.getContent());
+
+							sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.HOMEWORK_REMIND,
+									userMap, null, 0, 3 + notifyUrl, "STUDENT", teacher.getRealName(), courseSchedule.getName(), dateStr);
+						}
 					}
 					}
 				}else{
 				}else{
 					courseHomework.setContent(teacherSignOutDto.getCourseHomeworkInfo().getContent());
 					courseHomework.setContent(teacherSignOutDto.getCourseHomeworkInfo().getContent());

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

@@ -21,6 +21,7 @@ import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.im.ImFeignService;
 import com.ym.mec.im.ImFeignService;
+import com.ym.mec.im.WebFeignService;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.idcard.IdcardValidator;
 import com.ym.mec.util.idcard.IdcardValidator;
@@ -69,6 +70,8 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 	@Autowired
 	@Autowired
 	private ImFeignService imFeignService;
 	private ImFeignService imFeignService;
 	@Autowired
 	@Autowired
+	private WebFeignService webFeignService;
+	@Autowired
 	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
 	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
 	@Autowired
 	@Autowired
 	private StudentDao studentDao;
 	private StudentDao studentDao;
@@ -110,6 +113,11 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 			}
 			}
 			return id;
 			return id;
 		}
 		}
+		if(Objects.nonNull(teacher.getEntryDate())&&Objects.nonNull(teacher.getFormalStaffDate())){
+			if(teacher.getEntryDate().compareTo(teacher.getFormalStaffDate())>0){
+				throw new BizException("入职日期不可晚于转正日期");
+			}
+		}
 		teacher.setUserType("TEACHER");
 		teacher.setUserType("TEACHER");
 		teacher.setUsername(teacher.getRealName());
 		teacher.setUsername(teacher.getRealName());
 		teacherDao.addSysUser(teacher);
 		teacherDao.addSysUser(teacher);
@@ -139,12 +147,18 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 				throw new BizException("手机号已存在");
 				throw new BizException("手机号已存在");
 			}
 			}
 		}
 		}
+		if(Objects.nonNull(teacher.getEntryDate())&&Objects.nonNull(teacher.getFormalStaffDate())){
+			if(teacher.getEntryDate().compareTo(teacher.getFormalStaffDate())>0){
+				throw new BizException("入职日期不可晚于转正日期");
+			}
+		}
 		teacher.setUpdateTime(new Date());
 		teacher.setUpdateTime(new Date());
 		teacher.setTeacherOrganId(teacher.getOrganId());
 		teacher.setTeacherOrganId(teacher.getOrganId());
 		teacherDao.update(teacher);
 		teacherDao.update(teacher);
 		teacher.setOrganId(null);
 		teacher.setOrganId(null);
 		teacherDao.updateUser(teacher);
 		teacherDao.updateUser(teacher);
-		imFeignService.update(new ImUserModel(teacher.getId().toString(),teacher.getRealName(),teacher.getAvatar()));
+		webFeignService.updateNickName(teacher.getId(),teacher.getRealName(),"TEACHER");
+//		imFeignService.update(new ImUserModel(teacher.getId().toString(),teacher.getRealName(),teacher.getAvatar()));
 	}
 	}
 
 
 	@Override
 	@Override
@@ -654,7 +668,6 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		teacher.setIdcardHandImg(idcardHandImg);
 		teacher.setIdcardHandImg(idcardHandImg);
 		teacher.setUpdateTime(date);
 		teacher.setUpdateTime(date);
 		teacherDao.update(teacher);
 		teacherDao.update(teacher);
-
 		return true;
 		return true;
 	}
 	}
 
 

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

@@ -48,6 +48,7 @@ import java.time.temporal.ChronoUnit;
 import java.util.*;
 import java.util.*;
 import java.util.function.Function;
 import java.util.function.Function;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
+import java.util.stream.Stream;
 
 
 @Service
 @Service
 public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> implements VipGroupService {
 public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> implements VipGroupService {
@@ -259,6 +260,14 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			}
 			}
 		}
 		}
 
 
+		if(Objects.nonNull(vipGroupActivity)&&Objects.nonNull(vipGroupActivity.getAttribute3())&&StringUtils.isNotBlank(vipGroupActivity.getAttribute3())){
+			Integer maxCourseNum = Integer.parseInt(vipGroupActivity.getAttribute3());
+			Integer requestCourseNum = vipGroupApplyBaseInfoDto.getOnlineClassesNum() + vipGroupApplyBaseInfoDto.getOfflineClassesNum();
+			if(requestCourseNum.compareTo(maxCourseNum)!=0){
+				throw new BizException("该活动课时数为{}节", maxCourseNum);
+			}
+		}
+
 		int repeatVipGroups = vipGroupDao.countUserRepeatVipGroupInCourseStartEndTime(vipGroupApplyBaseInfoDto.getUserId(), firstCourseSchedule.getStartClassTime(), latestCourseSchedule.getEndClassTime());
 		int repeatVipGroups = vipGroupDao.countUserRepeatVipGroupInCourseStartEndTime(vipGroupApplyBaseInfoDto.getUserId(), firstCourseSchedule.getStartClassTime(), latestCourseSchedule.getEndClassTime());
 		if(repeatVipGroups>0){
 		if(repeatVipGroups>0){
 			throw new BizException("请勿重复提交");
 			throw new BizException("请勿重复提交");
@@ -796,6 +805,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		Map<String, Object> params = new HashMap<String, Object>();
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 		MapUtil.populateMap(params, queryInfo);
 
 
+		List<String> organIds = new ArrayList<>();
+		if(StringUtils.isNotBlank(queryInfo.getOrganId())){
+			organIds = Arrays.stream(queryInfo.getOrganId().split(",")).collect(Collectors.toList());
+		}
+		params.put("organIds", organIds);
+
 		List<VipGroupStudentDto> dataList = null;
 		List<VipGroupStudentDto> dataList = null;
 		int count = vipGroupDao.countHaveCourseBalanceStudentNum(params);
 		int count = vipGroupDao.countHaveCourseBalanceStudentNum(params);
 		if (count > 0) {
 		if (count > 0) {

+ 6 - 2
mec-biz/src/main/resources/config/mybatis/ImGroupMapper.xml

@@ -92,8 +92,12 @@
 		</if>
 		</if>
 		</set> WHERE id_ = #{id} 
 		</set> WHERE id_ = #{id} 
 	</update>
 	</update>
-	
-	<!-- 根据主键删除一条记录 -->
+    <update id="updateNickname">
+		UPDATE im_group_member SET nickname_ = #{nickName} WHERE user_id_ = #{userId};
+		UPDATE im_user_friend SET friend_nickname_ = #{nickName} WHERE friend_id_ = #{userId};
+	</update>
+
+    <!-- 根据主键删除一条记录 -->
 	<delete id="delete" >
 	<delete id="delete" >
 		DELETE FROM im_group WHERE id_ = #{id} 
 		DELETE FROM im_group WHERE id_ = #{id} 
 	</delete>
 	</delete>

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml

@@ -76,7 +76,7 @@
     </insert>
     </insert>
 
 
     <insert id="batchInsertStudentCourseHomeworkRecord" parameterType="java.util.List" useGeneratedKeys="true"
     <insert id="batchInsertStudentCourseHomeworkRecord" parameterType="java.util.List" useGeneratedKeys="true"
-            keyColumn="id_">
+            keyColumn="id" keyProperty="id">
         INSERT INTO student_course_homework
         INSERT INTO student_course_homework
         (user_id_,course_schedule_id_,course_homework_id_,attachments_,score_,create_time_,update_time_,remark_,status_,is_replied_,is_view_,is_replied_timely_)
         (user_id_,course_schedule_id_,course_homework_id_,attachments_,score_,create_time_,update_time_,remark_,status_,is_replied_,is_view_,is_replied_timely_)
         VALUE
         VALUE

+ 19 - 0
mec-biz/src/main/resources/config/mybatis/StudentPreRegistrationMapper.xml

@@ -29,6 +29,11 @@
 		<result column="is_registered_" property="isRegistered" />
 		<result column="is_registered_" property="isRegistered" />
 	</resultMap>
 	</resultMap>
 	
 	
+	<resultMap type="com.ym.mec.common.entity.Mapper" id="Mapper">
+		<result column="key_" property="key" />
+		<result column="value_" property="value" />
+	</resultMap>
+	
 	<!-- 根据主键查询一条记录 -->
 	<!-- 根据主键查询一条记录 -->
 	<select id="get" resultMap="StudentPreRegistration" >
 	<select id="get" resultMap="StudentPreRegistration" >
 		SELECT * FROM student_pre_registration WHERE id_ = #{id} 
 		SELECT * FROM student_pre_registration WHERE id_ = #{id} 
@@ -147,6 +152,20 @@
 		</where>
 		</where>
 	</select>
 	</select>
 	
 	
+	<select id="queryFirstSubjectNum" resultMap="Mapper">
+		SELECT ifnull(s.name_,'听从老师安排') key_,COUNT(spr.id_) value_ FROM student_pre_registration spr 
+		left join subject s on s.id_ = spr.subject_first_
+		where spr.music_group_id_ = #{musicGroupId}
+		group by spr.subject_first_
+	</select>
+	
+	<select id="querySecondSubjectNum" resultMap="Mapper">
+		SELECT ifnull(s.name_,'听从老师安排') key_,COUNT(spr.id_) value_ FROM student_pre_registration spr  
+		left join subject s on s.id_ = spr.subject_second_
+		where spr.music_group_id_ = #{musicGroupId}
+		group by spr.subject_second_
+	</select>
+	
 	<select id="queryByMusicGroupIdAndUserId" resultMap="StudentPreRegistration" parameterType="map">
 	<select id="queryByMusicGroupIdAndUserId" resultMap="StudentPreRegistration" parameterType="map">
 		SELECT * FROM student_pre_registration WHERE user_id_ = #{userId} and music_group_id_ = #{musicGroupId}
 		SELECT * FROM student_pre_registration WHERE user_id_ = #{userId} and music_group_id_ = #{musicGroupId}
 	</select>
 	</select>

+ 12 - 0
mec-biz/src/main/resources/config/mybatis/VipGroupMapper.xml

@@ -572,6 +572,12 @@
         <if test="search!=null and search!=''">
         <if test="search!=null and search!=''">
             AND (su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
             AND (su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
         </if>
         </if>
+        <if test="organIds!=null and organIds.size()>0">
+            AND su.organ_id_ IN
+            <foreach collection="organIds" item="organId" open="(" close=")" separator=",">
+                #{organId}
+            </foreach>
+        </if>
         ORDER BY suca.course_balance_ DESC
         ORDER BY suca.course_balance_ DESC
         <include refid="global.limit"/>
         <include refid="global.limit"/>
     </select>
     </select>
@@ -588,6 +594,12 @@
         <if test="search!=null and search!=''">
         <if test="search!=null and search!=''">
             AND (su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
             AND (su.username_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%'))
         </if>
         </if>
+        <if test="organIds!=null and organIds.size()>0">
+            AND su.organ_id_ IN
+            <foreach collection="organIds" item="organId" open="(" close=")" separator=",">
+                #{organId}
+            </foreach>
+        </if>
     </select>
     </select>
 
 
     <select id="countVipGroupStudents" resultType="int">
     <select id="countVipGroupStudents" resultType="int">

+ 3 - 0
mec-client-api/src/main/java/com/ym/mec/im/WebFeignService.java

@@ -18,4 +18,7 @@ public interface WebFeignService {
 	
 	
 	@RequestMapping(value = "api/isPurchasedPracticeCourse")
 	@RequestMapping(value = "api/isPurchasedPracticeCourse")
 	Boolean isPurchasedPracticeCourse(@RequestParam("userId") Integer userId);
 	Boolean isPurchasedPracticeCourse(@RequestParam("userId") Integer userId);
+
+	@RequestMapping(value = "api/updateNickName")
+	int updateNickName(@RequestParam("userId") Integer userId,@RequestParam("nickName") String nickName,@RequestParam("userType") String userType);
 }
 }

+ 6 - 0
mec-client-api/src/main/java/com/ym/mec/im/fallback/WebFeignServiceFallback.java

@@ -3,6 +3,7 @@ package com.ym.mec.im.fallback;
 import org.springframework.stereotype.Component;
 import org.springframework.stereotype.Component;
 
 
 import com.ym.mec.im.WebFeignService;
 import com.ym.mec.im.WebFeignService;
+import org.springframework.web.bind.annotation.RequestParam;
 
 
 @Component
 @Component
 public class WebFeignServiceFallback implements WebFeignService {
 public class WebFeignServiceFallback implements WebFeignService {
@@ -21,4 +22,9 @@ public class WebFeignServiceFallback implements WebFeignService {
 	public Boolean isPurchasedPracticeCourse(Integer userId) {
 	public Boolean isPurchasedPracticeCourse(Integer userId) {
 		return false;
 		return false;
 	}
 	}
+
+	@Override
+	public int updateNickName(Integer userId, String nickName,String userType) {
+		return 0;
+	}
 }
 }

+ 0 - 2
mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java

@@ -71,8 +71,6 @@ public class AuditLogInterceptor extends HandlerInterceptorAdapter {
 			String substring = servletPath.substring(servletPath.lastIndexOf("/") + 1).toLowerCase();
 			String substring = servletPath.substring(servletPath.lastIndexOf("/") + 1).toLowerCase();
 			if(ignoreLogUrl == null){
 			if(ignoreLogUrl == null){
 				ignoreLogUrl = new ArrayList<>();
 				ignoreLogUrl = new ArrayList<>();
-				ignoreLogUrl.add("add");
-				ignoreLogUrl.add("insert");
 				ignoreLogUrl.add("query");
 				ignoreLogUrl.add("query");
 				ignoreLogUrl.add("get");
 				ignoreLogUrl.add("get");
 				ignoreLogUrl.add("find");
 				ignoreLogUrl.add("find");

+ 24 - 0
mec-common/common-core/src/main/java/com/ym/mec/common/entity/Mapper.java

@@ -0,0 +1,24 @@
+package com.ym.mec.common.entity;
+
+public class Mapper {
+
+	private Object key;
+
+	private Object value;
+
+	public Object getKey() {
+		return key;
+	}
+
+	public void setKey(Object key) {
+		this.key = key;
+	}
+
+	public Object getValue() {
+		return value;
+	}
+
+	public void setValue(Object value) {
+		this.value = value;
+	}
+}

+ 4 - 15
mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java

@@ -301,20 +301,14 @@ public class RoomServiceImpl implements RoomService {
             roomMember = saveRoomMember(roomId,userId);
             roomMember = saveRoomMember(roomId,userId);
         }
         }
         String joinSuccessKey = "joinRoomSuccess"+ roomId + userId;
         String joinSuccessKey = "joinRoomSuccess"+ roomId + userId;
-        if(redisTemplate.hasKey(joinSuccessKey)){
-            //兼容旧版本,防止重复调用
-            redisTemplate.delete(joinSuccessKey);
+        Boolean aBoolean = redisTemplate.opsForValue().setIfAbsent(joinSuccessKey, roomId, 2l, TimeUnit.SECONDS);
+        if(!aBoolean){
             RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
             RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
             if(roleEnum == RoleTeacher && StringUtils.isNotEmpty(deviceNum)){
             if(roleEnum == RoleTeacher && StringUtils.isNotEmpty(deviceNum)){
                 signInSuccess(roomMember,deviceNum);
                 signInSuccess(roomMember,deviceNum);
             }
             }
             return;
             return;
         }
         }
-        String leaveSuccessKey = "leaveRoomSuccess"+ roomId + userId;
-        if(redisTemplate.hasKey(leaveSuccessKey)){
-            redisTemplate.delete(leaveSuccessKey);
-        }
-        redisTemplate.opsForValue().setIfAbsent(joinSuccessKey,roomId,2l,TimeUnit.SECONDS);
 
 
         RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
         RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
         CourseSchedule schedule = courseScheduleDao.getLock(Long.parseLong(roomId.substring(1)));
         CourseSchedule schedule = courseScheduleDao.getLock(Long.parseLong(roomId.substring(1)));
@@ -447,8 +441,8 @@ public class RoomServiceImpl implements RoomService {
         }
         }
 
 
         String leaveSuccessKey = "leaveRoomSuccess"+ roomId + userId;
         String leaveSuccessKey = "leaveRoomSuccess"+ roomId + userId;
-        if(redisTemplate.hasKey(leaveSuccessKey)){
-            redisTemplate.delete(leaveSuccessKey);
+        Boolean aBoolean = redisTemplate.opsForValue().setIfAbsent(leaveSuccessKey, roomId, 2, TimeUnit.SECONDS);
+        if(!aBoolean){
             if (StringUtils.isNotEmpty(deviceNum)){
             if (StringUtils.isNotEmpty(deviceNum)){
                 //如果设备号不为空,更新设备号
                 //如果设备号不为空,更新设备号
                 if(roleEnum == RoleTeacher){
                 if(roleEnum == RoleTeacher){
@@ -457,11 +451,6 @@ public class RoomServiceImpl implements RoomService {
             }
             }
             return;
             return;
         }
         }
-        String joinSuccessKey = "joinRoomSuccess"+ roomId + userId;
-        if(redisTemplate.hasKey(joinSuccessKey)){
-            redisTemplate.delete(joinSuccessKey);
-        }
-        redisTemplate.opsForValue().setIfAbsent(leaveSuccessKey,roomId,2,TimeUnit.SECONDS);
 
 
         String username;
         String username;
         SysUser sysUser = sysUserFeignService.queryUserById(parseInt);
         SysUser sysUser = sysUserFeignService.queryUserById(parseInt);

+ 14 - 1
mec-student/src/main/java/com/ym/mec/student/controller/ImGroupController.java

@@ -1,5 +1,6 @@
 package com.ym.mec.student.controller;
 package com.ym.mec.student.controller;
 
 
+import com.ym.mec.biz.dal.dto.ImUserFriendDto;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 
 
@@ -76,7 +77,19 @@ public class ImGroupController extends BaseController {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
 		}
 
 
-		return succeed(imUserFriendService.queryFriendDetail(sysUser.getId(), userId));
+		ImUserFriendDto dto = imUserFriendService.queryFriendDetail(sysUser.getId(), userId);
+		if (dto == null) {
+			dto = new ImUserFriendDto();
+			SysUser user = sysUserFeignService.queryUserById(userId);
+			dto.setFriend(user);
+			if (user.getUserType().contains("STUDENT")) {
+				dto.setFriendNickname(user.getUsername());
+			} else {
+				dto.setFriendNickname(user.getRealName());
+			}
+			dto.setFriendId(userId);
+		}
+		return succeed(dto);
 	}
 	}
 
 
 	@ApiOperation("查询好友列表")
 	@ApiOperation("查询好友列表")

+ 3 - 3
mec-teacher/src/main/java/com/ym/mec/teacher/controller/ImGroupController.java

@@ -90,10 +90,10 @@ public class ImGroupController extends BaseController {
 			dto = new ImUserFriendDto();
 			dto = new ImUserFriendDto();
 			SysUser user = sysUserFeignService.queryUserById(userId);
 			SysUser user = sysUserFeignService.queryUserById(userId);
 			dto.setFriend(user);
 			dto.setFriend(user);
-			if (user.getUserType().contains("TEACHER")) {
-				dto.setFriendNickname(user.getRealName());
-			} else {
+			if (user.getUserType().contains("STUDENT")) {
 				dto.setFriendNickname(user.getUsername());
 				dto.setFriendNickname(user.getUsername());
+			} else {
+				dto.setFriendNickname(user.getRealName());
 			}
 			}
 			dto.setFriendId(userId);
 			dto.setFriendId(userId);
 		}
 		}

+ 1 - 1
mec-teacher/src/main/resources/bootstrap-test.properties

@@ -3,7 +3,7 @@
 #\u670d\u52a1\u5668\u5730\u5740
 #\u670d\u52a1\u5668\u5730\u5740
 spring.cloud.nacos.config.server-addr=47.114.1.200:8848
 spring.cloud.nacos.config.server-addr=47.114.1.200:8848
 #\u9ed8\u8ba4\u4e3aPublic\u547d\u540d\u7a7a\u95f4,\u53ef\u4ee5\u7701\u7565\u4e0d\u5199
 #\u9ed8\u8ba4\u4e3aPublic\u547d\u540d\u7a7a\u95f4,\u53ef\u4ee5\u7701\u7565\u4e0d\u5199
-spring.cloud.nacos.config.namespace=f9d46b0a-9847-48ae-8e4b-216c7a3eb466
+spring.cloud.nacos.config.namespace=f753d9d9-4bb2-4df6-a483-da9e169617c4
 #\u6307\u5b9a\u914d\u7f6e\u7fa4\u7ec4 --\u5982\u679c\u662fPublic\u547d\u540d\u7a7a\u95f4 \u5219\u53ef\u4ee5\u7701\u7565\u7fa4\u7ec4\u914d\u7f6e
 #\u6307\u5b9a\u914d\u7f6e\u7fa4\u7ec4 --\u5982\u679c\u662fPublic\u547d\u540d\u7a7a\u95f4 \u5219\u53ef\u4ee5\u7701\u7565\u7fa4\u7ec4\u914d\u7f6e
 spring.cloud.nacos.config.group=DEFAULT_GROUP
 spring.cloud.nacos.config.group=DEFAULT_GROUP
 #\u6587\u4ef6\u540d -- \u5982\u679c\u6ca1\u6709\u914d\u7f6e\u5219\u9ed8\u8ba4\u4e3a ${spring.appliction.name}
 #\u6587\u4ef6\u540d -- \u5982\u679c\u6ca1\u6709\u914d\u7f6e\u5219\u9ed8\u8ba4\u4e3a ${spring.appliction.name}

+ 9 - 0
mec-web/src/main/java/com/ym/mec/web/controller/APIController.java

@@ -4,6 +4,7 @@ import com.ym.mec.biz.dal.dao.SysUserCashAccountDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.entity.SysUserCashAccount;
 import com.ym.mec.biz.dal.entity.SysUserCashAccount;
 import com.ym.mec.biz.dal.entity.Teacher;
 import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.service.ImGroupService;
 import com.ym.mec.biz.service.PracticeGroupService;
 import com.ym.mec.biz.service.PracticeGroupService;
 import com.ym.mec.biz.service.PracticeLessonApplyService;
 import com.ym.mec.biz.service.PracticeLessonApplyService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.controller.BaseController;
@@ -31,6 +32,8 @@ public class APIController extends BaseController {
 	
 	
 	@Autowired
 	@Autowired
 	private PracticeGroupService practiceGroupService;
 	private PracticeGroupService practiceGroupService;
+	@Autowired
+	private ImGroupService imGroupService;
 
 
 	@GetMapping("/createCashAccount")
 	@GetMapping("/createCashAccount")
 	public Boolean createCashAccount(Integer userId) {
 	public Boolean createCashAccount(Integer userId) {
@@ -53,9 +56,15 @@ public class APIController extends BaseController {
 	public Object practiceSum() {
 	public Object practiceSum() {
 		return succeed(practiceLessonApplyService.practiceSum());
 		return succeed(practiceLessonApplyService.practiceSum());
 	}
 	}
+
 	@GetMapping("/isPurchasedPracticeCourse")
 	@GetMapping("/isPurchasedPracticeCourse")
 	public Boolean isPurchasedPracticeCourse(Integer userId) {
 	public Boolean isPurchasedPracticeCourse(Integer userId) {
 		return practiceGroupService.isPurchasedPracticeCourse(userId);
 		return practiceGroupService.isPurchasedPracticeCourse(userId);
 	}
 	}
 
 
+	@GetMapping("/updateNickName")
+	public int updateNickName(Integer userId,String nickName,String userType) {
+		return imGroupService.updateNickName(userId,nickName,userType);
+	}
+
 }
 }

+ 199 - 199
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -143,25 +143,25 @@ public class ExportController extends BaseController {
         Employee employee = employeeDao.get(sysUser.getId());
         Employee employee = employeeDao.get(sysUser.getId());
         if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
         if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
             queryInfo.setOrganIdList(employee.getOrganIdList());
             queryInfo.setOrganIdList(employee.getOrganIdList());
-        }else if(org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())){
+        } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
             throw new BizException("用户所在分部异常");
             throw new BizException("用户所在分部异常");
-        }else {
+        } else {
             List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
             List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-            if(!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))){
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
                 throw new BizException("非法请求");
                 throw new BizException("非法请求");
             }
             }
         }
         }
         List<ClassGroupTeachersDto> rows = classGroupService.queryClassGroupPage(queryInfo).getRows();
         List<ClassGroupTeachersDto> rows = classGroupService.queryClassGroupPage(queryInfo).getRows();
         for (ClassGroupTeachersDto row : rows) {
         for (ClassGroupTeachersDto row : rows) {
             List<ClassGroupTeacherMapper> classGroupTeacherMapperList = row.getClassGroupTeacherMapperList();
             List<ClassGroupTeacherMapper> classGroupTeacherMapperList = row.getClassGroupTeacherMapperList();
-            if(classGroupTeacherMapperList.size() > 0){
+            if (classGroupTeacherMapperList.size() > 0) {
                 List<ClassGroupTeacherMapper> teachingTeachers = classGroupTeacherMapperList.stream().filter(e -> e.getTeacherRole() == TeachTypeEnum.TEACHING).collect(Collectors.toList());
                 List<ClassGroupTeacherMapper> teachingTeachers = classGroupTeacherMapperList.stream().filter(e -> e.getTeacherRole() == TeachTypeEnum.TEACHING).collect(Collectors.toList());
-                if(teachingTeachers.size() > 0){
-                    row.setTeachingTeacherName(StringUtils.join(teachingTeachers.stream().map(e->e.getUserName()).collect(Collectors.toList()), ","));
+                if (teachingTeachers.size() > 0) {
+                    row.setTeachingTeacherName(StringUtils.join(teachingTeachers.stream().map(e -> e.getUserName()).collect(Collectors.toList()), ","));
                 }
                 }
                 List<ClassGroupTeacherMapper> bishopTeachers = classGroupTeacherMapperList.stream().filter(e -> e.getTeacherRole() == TeachTypeEnum.BISHOP).collect(Collectors.toList());
                 List<ClassGroupTeacherMapper> bishopTeachers = classGroupTeacherMapperList.stream().filter(e -> e.getTeacherRole() == TeachTypeEnum.BISHOP).collect(Collectors.toList());
-                if(bishopTeachers.size() > 0){
-                    row.setBishopTeacherName(StringUtils.join(bishopTeachers.stream().map(e->e.getUserName()).collect(Collectors.toList()),","));
+                if (bishopTeachers.size() > 0) {
+                    row.setBishopTeacherName(StringUtils.join(bishopTeachers.stream().map(e -> e.getUserName()).collect(Collectors.toList()), ","));
                 }
                 }
             }
             }
         }
         }
@@ -288,17 +288,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<ExportStudentAttendanceDto> rows = studentAttendanceService.exportStudentAttendancesQueryPage(queryInfo).getRows();
         List<ExportStudentAttendanceDto> rows = studentAttendanceService.exportStudentAttendancesQueryPage(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         try {
         try {
@@ -367,17 +367,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         queryInfo.setPage(1);
         queryInfo.setPage(1);
         queryInfo.setRows(49999);
         queryInfo.setRows(49999);
         List<MusicGroupPaymentCalenderAuditDto> rows = musicGroupPaymentCalenderService.auditList(queryInfo).getRows();
         List<MusicGroupPaymentCalenderAuditDto> rows = musicGroupPaymentCalenderService.auditList(queryInfo).getRows();
@@ -416,17 +416,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List rows = teacherAttendanceService.queryTeacherAttendances(queryInfo).getRows();
         List rows = teacherAttendanceService.queryTeacherAttendances(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         try {
         try {
@@ -496,17 +496,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<StudentBuyPracticeDto> rows = practiceGroupService.studentBuys(queryInfo).getRows();
         List<StudentBuyPracticeDto> rows = practiceGroupService.studentBuys(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         try {
         try {
@@ -621,17 +621,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         Date endTime = queryInfo.getEndTime();
         Date endTime = queryInfo.getEndTime();
         if (endTime != null) {
         if (endTime != null) {
             queryInfo.setEndTime(DateUtil.addDays(endTime, 1));
             queryInfo.setEndTime(DateUtil.addDays(endTime, 1));
@@ -672,17 +672,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         queryInfo.setIsExport(true);
         queryInfo.setIsExport(true);
         List<StudentManageListDto> rows = studentManageService.findStudentsByOrganId(queryInfo).getRows();
         List<StudentManageListDto> rows = studentManageService.findStudentsByOrganId(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
@@ -724,17 +724,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<PracticeGroupDto> rows = practiceGroupService.findPracticeGroups(queryInfo).getRows();
         List<PracticeGroupDto> rows = practiceGroupService.findPracticeGroups(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         if (rows != null && rows.size() > 0) {
         if (rows != null && rows.size() > 0) {
@@ -787,17 +787,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<VipGroup> rows = vipGroupService.findVipGroups(queryInfo).getRows();
         List<VipGroup> rows = vipGroupService.findVipGroups(queryInfo).getRows();
         OutputStream outputStream = response.getOutputStream();
         OutputStream outputStream = response.getOutputStream();
         if (rows != null && rows.size() > 0) {
         if (rows != null && rows.size() > 0) {
@@ -841,17 +841,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
-                queryInfo.setOrganIdList(employee.getOrganIdList());
-            } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<CourseScheduleEndDto> rows = scheduleService.endFindCourseSchedules(queryInfo).getRows();
         List<CourseScheduleEndDto> rows = scheduleService.endFindCourseSchedules(queryInfo).getRows();
         for (CourseScheduleEndDto row : rows) {
         for (CourseScheduleEndDto row : rows) {
             row.setIsComplaints(StringUtils.equals(row.getIsComplaints(), "1") ? "有" : "无");
             row.setIsComplaints(StringUtils.equals(row.getIsComplaints(), "1") ? "有" : "无");
@@ -860,9 +860,9 @@ public class ExportController extends BaseController {
         try {
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部名称", "课程编号", "开始时间", "结束时间",
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部名称", "课程编号", "开始时间", "结束时间",
                     "班级名称", "班级声部", "课程名称", "课程类型", "教学模式",
                     "班级名称", "班级声部", "课程名称", "课程类型", "教学模式",
-                    "教学点", "课程状态", "指导老师", "学员编号", "是否点名", "是否有考勤申诉","预计上课人数"}, new String[]{
+                    "教学点", "课程状态", "指导老师", "学员编号", "是否点名", "是否有考勤申诉", "预计上课人数"}, new String[]{
                     "organName", "id", "startClassTime", "endClassTime", "classGroupName", "subjectName", "name",
                     "organName", "id", "startClassTime", "endClassTime", "classGroupName", "subjectName", "name",
-                    "groupType.desc", "teachMode.msg", "schoolName", "status.msg", "teacherName", "studentId", "isCallNames.msg", "isComplaints","studentNum"}, rows);
+                    "groupType.desc", "teachMode.msg", "schoolName", "status.msg", "teacherName", "studentId", "isCallNames.msg", "isComplaints", "studentNum"}, rows);
             response.setContentType("application/octet-stream");
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             ouputStream = response.getOutputStream();
             ouputStream = response.getOutputStream();
@@ -893,17 +893,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<SporadicChargeInfo> rows = sporadicChargeInfoService.queryDetailPage(queryInfo).getRows();
         List<SporadicChargeInfo> rows = sporadicChargeInfoService.queryDetailPage(queryInfo).getRows();
         for (SporadicChargeInfo row : rows) {
         for (SporadicChargeInfo row : rows) {
             row.setOpenFlagStr(row.getOpenFlag().equals(0) ? "开启" : "关闭");
             row.setOpenFlagStr(row.getOpenFlag().equals(0) ? "开启" : "关闭");
@@ -1078,12 +1078,12 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/orderList')")
     @PreAuthorize("@pcs.hasPermissions('export/orderList')")
     public void orderList(StudentPaymentOrderQueryInfo queryInfo, HttpServletResponse response) throws IOException {
     public void orderList(StudentPaymentOrderQueryInfo queryInfo, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getRoutingOrganId()) && "3".equals(queryInfo.getOrderType())) {
-                queryInfo.setRoutingOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getRoutingOrganId()) && "3".equals(queryInfo.getOrderType())) {
+            queryInfo.setRoutingOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        }
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
@@ -1335,9 +1335,9 @@ public class ExportController extends BaseController {
                 }
                 }
             }
             }
             String[] header = {"学员编号", "学员姓名", "性别", "联系电话", "年级", "班级", "专业", "学员状态", "新增学员", "缴费金额",
             String[] header = {"学员编号", "学员姓名", "性别", "联系电话", "年级", "班级", "专业", "学员状态", "新增学员", "缴费金额",
-                        "下次缴费日期", "是否报名缴费", "是否激活", "是否有剩余VIP", "是否有剩余网管课", "欠费总额"};
+                    "下次缴费日期", "是否报名缴费", "是否激活", "是否有剩余VIP", "是否有剩余网管课", "欠费总额"};
             String[] body = {"userId", "realName", "gender", "phone", "currentGrade", "currentClass", "subjectName", "studentStatus", "isNewStudentStr",
             String[] body = {"userId", "realName", "gender", "phone", "currentGrade", "currentClass", "subjectName", "studentStatus", "isNewStudentStr",
-                    "courseFee", "nextPaymentDateStr", "paymentStatus.desc", "activeName", "hasVip ? '是' : '否'", "hasPractice ? '是' : '否'","noPaymentAmount"};
+                    "courseFee", "nextPaymentDateStr", "paymentStatus.desc", "activeName", "hasVip ? '是' : '否'", "hasPractice ? '是' : '否'", "noPaymentAmount"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, musicGroupStudentsDtoPageInfo.getRows());
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, musicGroupStudentsDtoPageInfo.getRows());
             response.setContentType("application/octet-stream");
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
@@ -1604,17 +1604,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
-                queryInfo.setOrganIdList(employee.getOrganIdList());
-            } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<ExtraExerciseStudentsDto> rows = extracurricularExercisesReplyService.findExtraExercises(queryInfo).getRows();
         List<ExtraExerciseStudentsDto> rows = extracurricularExercisesReplyService.findExtraExercises(queryInfo).getRows();
         if (CollectionUtils.isEmpty(rows)) {
         if (CollectionUtils.isEmpty(rows)) {
             response.setStatus(500);
             response.setStatus(500);
@@ -1663,17 +1663,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
-                queryInfo.setOrganIdList(employee.getOrganIdList());
-            } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<StudentExercisesSituationDto> rows = studentExtracurricularExercisesSituationService.findStudentExtracurricularExercisesSituations(queryInfo).getRows();
         List<StudentExercisesSituationDto> rows = studentExtracurricularExercisesSituationService.findStudentExtracurricularExercisesSituations(queryInfo).getRows();
         if (CollectionUtils.isEmpty(rows)) {
         if (CollectionUtils.isEmpty(rows)) {
             response.setStatus(500);
             response.setStatus(500);
@@ -1716,17 +1716,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
-                queryInfo.setOrganIdList(employee.getOrganIdList());
-            } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (org.apache.commons.lang3.StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        } else if (org.apache.commons.lang3.StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         List<TeacherCourseSalaryDetail4WebDto> rows = courseScheduleTeacherSalaryService.findIsSettlementCourseSalarys(queryInfo).getRows();
         List<TeacherCourseSalaryDetail4WebDto> rows = courseScheduleTeacherSalaryService.findIsSettlementCourseSalarys(queryInfo).getRows();
         if (CollectionUtils.isEmpty(rows)) {
         if (CollectionUtils.isEmpty(rows)) {
             response.setStatus(500);
             response.setStatus(500);
@@ -1799,17 +1799,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         PageInfo<Student4operating> PageOperatingStudents = studentManageService.getOperatingStudents(queryInfo);
         PageInfo<Student4operating> PageOperatingStudents = studentManageService.getOperatingStudents(queryInfo);
 
 
         if (PageOperatingStudents.getTotal() <= 0) {
         if (PageOperatingStudents.getTotal() <= 0) {
@@ -1872,8 +1872,8 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/vipCourseReviews')")
     @PreAuthorize("@pcs.hasPermissions('export/vipCourseReviews')")
     public void vipCourseReviews(CourseReviewQueryInfo queryInfo, HttpServletResponse response) throws IOException {
     public void vipCourseReviews(CourseReviewQueryInfo queryInfo, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            queryInfo.setOrganId(employee.getOrganIdList());
+        Employee employee = employeeDao.get(sysUser.getId());
+        queryInfo.setOrganId(employee.getOrganIdList());
         queryInfo.setIsExport(1);
         queryInfo.setIsExport(1);
         queryInfo.setPage(1);
         queryInfo.setPage(1);
         queryInfo.setRows(49999);
         queryInfo.setRows(49999);
@@ -2014,17 +2014,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new IOException("用户信息获取失败");
             throw new IOException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new IOException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
-                    throw new IOException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new IOException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                throw new IOException("非法请求");
             }
             }
+        }
         queryInfo.setRows(65000);
         queryInfo.setRows(65000);
         PageInfo<CooperationOrgan> pageList = cooperationOrganService.queryPage(queryInfo);
         PageInfo<CooperationOrgan> pageList = cooperationOrganService.queryPage(queryInfo);
         if (pageList.getTotal() <= 0) {
         if (pageList.getTotal() <= 0) {
@@ -2038,7 +2038,7 @@ public class ExportController extends BaseController {
         try {
         try {
 
 
             String[] header = {"分部", "单位编号", "单位名称", "联系人", "职位", "手机号", "是否启用"};
             String[] header = {"分部", "单位编号", "单位名称", "联系人", "职位", "手机号", "是否启用"};
-            String[] body = {"organization.name", "id", "name", "linkman", "job", "mobileNo","isEnable == true ? '是':'否'"};
+            String[] body = {"organization.name", "id", "name", "linkman", "job", "mobileNo", "isEnable == true ? '是':'否'"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, pageList.getRows());
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, pageList.getRows());
             response.setContentType("application/octet-stream");
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=cooperationOrgan-" + DateUtil.getDate(new Date()) + ".xls");
             response.setHeader("Content-Disposition", "attachment;filename=cooperationOrgan-" + DateUtil.getDate(new Date()) + ".xls");
@@ -2064,10 +2064,10 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupRegister')")
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupRegister')")
     public void musicGroupRegister(String organIds, HttpServletResponse response) throws IOException {
     public void musicGroupRegister(String organIds, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isBlank(organIds)) {
-                organIds = employee.getOrganIdList();
-            }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isBlank(organIds)) {
+            organIds = employee.getOrganIdList();
+        }
         List<MusicGroupStatusEnum> musicGroupStatusList = new ArrayList<>();
         List<MusicGroupStatusEnum> musicGroupStatusList = new ArrayList<>();
         musicGroupStatusList.add(MusicGroupStatusEnum.APPLY);
         musicGroupStatusList.add(MusicGroupStatusEnum.APPLY);
         musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
         musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
@@ -2189,12 +2189,12 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/routeOrderList')")
     @PreAuthorize("@pcs.hasPermissions('export/routeOrderList')")
     public void routeOrderList(StudentPaymentOrderQueryInfo queryInfo, HttpServletResponse response) throws IOException {
     public void routeOrderList(StudentPaymentOrderQueryInfo queryInfo, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getRoutingOrganId()) && queryInfo.getOrderType().equals("3")) {
-                queryInfo.setRoutingOrganId(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(queryInfo.getOrganId())) {
-                queryInfo.setOrganId(employee.getOrganIdList());
-            }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getRoutingOrganId()) && queryInfo.getOrderType().equals("3")) {
+            queryInfo.setRoutingOrganId(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        }
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
         if (StringUtils.isNotBlank(queryInfo.getSearch())) {
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<BasicUserDto> users = studentPaymentOrderDao.getUsers(queryInfo.getSearch());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
             List<Integer> userIds = users.stream().map(BasicUserDto::getUserId).collect(Collectors.toList());
@@ -2467,10 +2467,10 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupNormalStudentNum')")
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupNormalStudentNum')")
     public void musicGroupNormalStudentNum(String organIds, HttpServletResponse response) throws IOException {
     public void musicGroupNormalStudentNum(String organIds, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isBlank(organIds)) {
-                organIds = employee.getOrganIdList();
-            }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isBlank(organIds)) {
+            organIds = employee.getOrganIdList();
+        }
 
 
         List<MusicGroupStatusEnum> musicGroupStatusList = new ArrayList<>();
         List<MusicGroupStatusEnum> musicGroupStatusList = new ArrayList<>();
         musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
         musicGroupStatusList.add(MusicGroupStatusEnum.PAY);
@@ -2561,10 +2561,10 @@ public class ExportController extends BaseController {
     @PreAuthorize("@pcs.hasPermissions('export/studentOrder')")
     @PreAuthorize("@pcs.hasPermissions('export/studentOrder')")
     public void studentOrder(String organIds, Date date, HttpServletResponse response) throws IOException {
     public void studentOrder(String organIds, Date date, HttpServletResponse response) throws IOException {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         SysUser sysUser = sysUserFeignService.queryUserInfo();
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isBlank(organIds)) {
-                organIds = employee.getOrganIdList();
-            }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isBlank(organIds)) {
+            organIds = employee.getOrganIdList();
+        }
         Date startTime = DateUtil.getFirstDayOfMonth(date);
         Date startTime = DateUtil.getFirstDayOfMonth(date);
         Date EndTime = DateUtil.getLastSecondWithDay(DateUtil.getLastDayOfMonth(date));
         Date EndTime = DateUtil.getLastSecondWithDay(DateUtil.getLastDayOfMonth(date));
 
 
@@ -2657,17 +2657,17 @@ public class ExportController extends BaseController {
         if (sysUser == null) {
         if (sysUser == null) {
             throw new BizException("用户信息获取失败");
             throw new BizException("用户信息获取失败");
         }
         }
-            Employee employee = employeeDao.get(sysUser.getId());
-            if (StringUtils.isEmpty(queryInfo.getOrganIdList())) {
-                queryInfo.setOrganIdList(employee.getOrganIdList());
-            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
-                throw new BizException("用户所在分部异常");
-            } else {
-                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-                if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
-                    throw new BizException("非法请求");
-                }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganIdList())) {
+            queryInfo.setOrganIdList(employee.getOrganIdList());
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+            throw new BizException("用户所在分部异常");
+        } else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if (!list.containsAll(Arrays.asList(queryInfo.getOrganIdList().split(",")))) {
+                throw new BizException("非法请求");
             }
             }
+        }
         if (queryInfo.getEndTime() != null) {
         if (queryInfo.getEndTime() != null) {
             queryInfo.setEndTime(DateUtil.getLastTimeWithDay(queryInfo.getEndTime()));
             queryInfo.setEndTime(DateUtil.getLastTimeWithDay(queryInfo.getEndTime()));
         }
         }

+ 11 - 4
mec-web/src/main/java/com/ym/mec/web/controller/ImGroupController.java

@@ -77,6 +77,12 @@ public class ImGroupController extends BaseController {
 		return succeed(imGroupService.update(imGroup));
 		return succeed(imGroupService.update(imGroup));
 	}
 	}
 
 
+	@ApiOperation("修改群成员信息")
+	@PostMapping(value = "/updateNickName")
+	public Object updateNickName(Integer userId,String nickName,String userType) {
+		return succeed(imGroupService.updateNickName(userId,nickName,userType));
+	}
+
 	@ApiOperation("查询群成员列表")
 	@ApiOperation("查询群成员列表")
 	@GetMapping(value = "/queryGroupMemberList")
 	@GetMapping(value = "/queryGroupMemberList")
 	public Object queryGroupMemberList(Long imGroupId) {
 	public Object queryGroupMemberList(Long imGroupId) {
@@ -104,16 +110,17 @@ public class ImGroupController extends BaseController {
 		if (Objects.isNull(sysUser)) {
 		if (Objects.isNull(sysUser)) {
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 			return failed(HttpStatus.FORBIDDEN, "请登录");
 		}
 		}
-
 		ImUserFriendDto dto = imUserFriendService.queryFriendDetail(sysUser.getId(), userId);
 		ImUserFriendDto dto = imUserFriendService.queryFriendDetail(sysUser.getId(), userId);
 		if (dto == null) {
 		if (dto == null) {
 			dto = new ImUserFriendDto();
 			dto = new ImUserFriendDto();
 			SysUser user = sysUserFeignService.queryUserById(userId);
 			SysUser user = sysUserFeignService.queryUserById(userId);
 			dto.setFriend(user);
 			dto.setFriend(user);
-			if (user.getUserType().contains("TEACHER")) {
-				dto.setFriendNickname(user.getRealName());
-			} else {
+			//这里由原来的优先取老师的realName改成了优先取学员的username,
+			// 因为管理员在修改通讯录备注的时候,如果是多角色,优先改的是学员的username
+			if (user.getUserType().contains("STUDENT")) {
 				dto.setFriendNickname(user.getUsername());
 				dto.setFriendNickname(user.getUsername());
+			} else {
+				dto.setFriendNickname(user.getRealName());
 			}
 			}
 			dto.setFriendId(userId);
 			dto.setFriendId(userId);
 		}
 		}

+ 19 - 9
mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java

@@ -1,22 +1,17 @@
 package com.ym.mec.web.controller;
 package com.ym.mec.web.controller;
 
 
-import com.ym.mec.biz.dal.dao.MusicGroupDao;
-import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
-import com.ym.mec.biz.dal.entity.*;
-import com.ym.mec.common.page.PageInfo;
-import com.ym.mec.util.date.DateUtil;
-import com.ym.mec.util.excel.POIUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
 
 
-import java.io.EOFException;
 import java.io.IOException;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.OutputStream;
 import java.util.Date;
 import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
+import javax.servlet.http.HttpServletResponse;
+
 import org.apache.commons.lang3.StringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,11 +22,18 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.bind.annotation.RestController;
 
 
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderCourseSettingsDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderCourseSettingsDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
 import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
 import com.ym.mec.biz.dal.dto.DelRegisterDto;
 import com.ym.mec.biz.dal.dto.DelRegisterDto;
 import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfoDto;
 import com.ym.mec.biz.dal.dto.MusicGroupSubjectGoodsAndInfoDto;
 import com.ym.mec.biz.dal.dto.StudentAddDto;
 import com.ym.mec.biz.dal.dto.StudentAddDto;
+import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
+import com.ym.mec.biz.dal.entity.MusicGroup;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalender;
+import com.ym.mec.biz.dal.entity.MusicGroupPaymentCalenderCourseSettings;
+import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
+import com.ym.mec.biz.dal.entity.StudentRegistration;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.page.StudentPreRegistrationQueryInfo;
 import com.ym.mec.biz.dal.page.StudentPreRegistrationQueryInfo;
 import com.ym.mec.biz.dal.page.StudentRegistrationQueryInfo;
 import com.ym.mec.biz.dal.page.StudentRegistrationQueryInfo;
@@ -40,8 +42,9 @@ import com.ym.mec.biz.service.StudentPreRegistrationService;
 import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.entity.HttpResponseResult;
-
-import javax.servlet.http.HttpServletResponse;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.date.DateUtil;
+import com.ym.mec.util.excel.POIUtil;
 
 
 @RequestMapping("studentRegistration")
 @RequestMapping("studentRegistration")
 @Api(tags = "学生报名信息服务")
 @Api(tags = "学生报名信息服务")
@@ -68,6 +71,13 @@ public class StudentRegistrationController extends BaseController {
         return succeed(studentPreRegistrationService.queryListForPage(queryInfo));
         return succeed(studentPreRegistrationService.queryListForPage(queryInfo));
     }
     }
 
 
+    @ApiOperation(value = "乐团预报名声部列表查询")
+    @GetMapping("/queryPreApplySubjectList")
+    @PreAuthorize("@pcs.hasPermissions('studentRegistration/queryPreApplySubjectList')")
+    public Object queryPreApplySubjectList(String musicGroupId) {
+        return succeed(studentPreRegistrationService.querySubjectNum(musicGroupId));
+    }
+
     @ApiOperation(value = "乐团添加学员")
     @ApiOperation(value = "乐团添加学员")
     @PostMapping("/insertStudent")
     @PostMapping("/insertStudent")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/insertStudent')")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/insertStudent')")

+ 15 - 0
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

@@ -216,6 +216,21 @@ public class VipGroupManageController extends BaseController {
     @GetMapping(value = "/findHaveCourseBalanceStudents")
     @GetMapping(value = "/findHaveCourseBalanceStudents")
     @PreAuthorize("@pcs.hasPermissions('vipGroupManage/findHaveCourseBalanceStudents')")
     @PreAuthorize("@pcs.hasPermissions('vipGroupManage/findHaveCourseBalanceStudents')")
     public Object findHaveCourseBalanceStudents(VipGroupQueryInfo queryInfo){
     public Object findHaveCourseBalanceStudents(VipGroupQueryInfo queryInfo){
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        Employee employee = employeeDao.get(sysUser.getId());
+        if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+            queryInfo.setOrganId(employee.getOrganIdList());
+        }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+            return failed("用户所在分部异常");
+        }else {
+            List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+            if(!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))){
+                return failed("非法请求");
+            }
+        }
         return succeed(vipGroupService.findHaveCourseBalanceStudents(queryInfo));
         return succeed(vipGroupService.findHaveCourseBalanceStudents(queryInfo));
     }
     }