Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 4 years ago
parent
commit
5b20da1235
28 changed files with 199 additions and 92 deletions
  1. 5 5
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/IndexBaseMonthDataDao.java
  2. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupQuitQueryInfo.java
  3. 22 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/page/TeacherCloseQueryInfo.java
  4. 2 16
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesMessageServiceImpl.java
  5. 0 8
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java
  6. 24 26
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java
  7. 1 18
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentCourseHomeworkServiceImpl.java
  8. 12 12
      mec-biz/src/main/resources/config/mybatis/IndexBaseMonthDataMapper.xml
  9. 2 2
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderDetailMapper.xml
  10. 1 1
      mec-biz/src/main/resources/config/mybatis/MusicGroupPaymentCalenderMapper.xml
  11. 5 1
      mec-biz/src/main/resources/config/mybatis/MusicGroupQuitMapper.xml
  12. 15 1
      mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml
  13. 24 0
      mec-common/audit-log/src/main/java/com/yonge/log/dal/model/AuditLog.java
  14. 15 1
      mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java
  15. 1 1
      mec-common/audit-log/src/main/java/com/yonge/log/model/AuditLogAnnotation.java
  16. 5 0
      mec-student/pom.xml
  17. 2 0
      mec-student/src/main/java/com/ym/mec/student/controller/ExtracurricularExercisesReplyController.java
  18. 5 0
      mec-student/src/main/java/com/ym/mec/student/controller/PracticeGroupController.java
  19. 4 0
      mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkController.java
  20. 2 0
      mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkReplyController.java
  21. 2 0
      mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseScheduleController.java
  22. 3 0
      mec-student/src/main/java/com/ym/mec/student/controller/StudentVipGroupController.java
  23. 5 0
      mec-teacher/pom.xml
  24. 2 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/CourseHomeworkController.java
  25. 3 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherAttendanceController.java
  26. 2 0
      mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherVipGroupController.java
  27. 25 0
      mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupQuitController.java
  28. 1 0
      mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

+ 5 - 5
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/IndexBaseMonthDataDao.java

@@ -112,7 +112,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
 
     List<Long> queryApplyForQuitGroupNum(@Param("organIds") Set<Integer> organIds);
 
-    List<Long> queryStudentAttendanceInfo(@Param("organIds") Set<Integer> organIds,
+    int queryStudentAttendanceInfo(@Param("organIds") Set<Integer> organIds,
                                           @Param("type") String type, @Param("startTime") String startTime);
 
 
@@ -121,21 +121,21 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @param organIds
      * @return
      */
-    List<Long> getAttendanceError(@Param("organIds") String organIds,@Param("startTime") String startTime);
+    int getAttendanceError(@Param("organIds") String organIds,@Param("startTime") String startTime);
 
     /**
      * 获取旷课考勤
      * @param organIds
      * @return
      */
-    List<Long> getNoAttendance(@Param("organIds") String organIds, @Param("startTime") String startTime);
+    int getNoAttendance(@Param("organIds") String organIds, @Param("startTime") String startTime);
 
     /**
      * 获取老师离职申请数
      * @param organIdsStr
      * @return
      */
-    List<Long> queryTeacherLeave(@Param("organIdsStr") String organIdsStr, @Param("startTime") String startTime);
+    int queryTeacherLeave(@Param("organIdsStr") String organIdsStr, @Param("startTime") String startTime);
 
     /**
      * 获取预计课酬偏低的老师编号
@@ -143,7 +143,7 @@ public interface IndexBaseMonthDataDao extends BaseDAO<Long, IndexBaseMonthData>
      * @param monthStr
      * @return
      */
-    List<Long> queryLowTeacherSalary(@Param("organIdsStr") String organIdsStr, @Param("monthStr") String monthStr);
+    int queryLowTeacherSalary(@Param("organIdsStr") String organIdsStr, @Param("monthStr") String monthStr);
 
     /**
      * 乐团巡查任务未计划

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/MusicGroupQuitQueryInfo.java

@@ -3,9 +3,18 @@ package com.ym.mec.biz.dal.page;
 import com.ym.mec.common.page.QueryInfo;
 
 public class MusicGroupQuitQueryInfo extends QueryInfo {
+    private String organId;
 
     private String ids;
 
+    public String getOrganId() {
+        return organId;
+    }
+
+    public void setOrganId(String organId) {
+        this.organId = organId;
+    }
+
     public String getIds() {
         return ids;
     }

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/TeacherCloseQueryInfo.java

@@ -41,6 +41,28 @@ public class TeacherCloseQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "工作性质(兼职 PART_JOB、全职FULL_JOB)", required = false)
     private JobNatureEnum jobNature;
 
+    @ApiModelProperty(value = "考勤状态,ERR_ATTENDANCE,NO_ATTENDANCE")
+    private String attendanceStatus;
+
+    @ApiModelProperty(value = "是否处理")
+    private Boolean visitFlag;
+
+    public Boolean getVisitFlag() {
+        return visitFlag;
+    }
+
+    public void setVisitFlag(Boolean visitFlag) {
+        this.visitFlag = visitFlag;
+    }
+
+    public String getAttendanceStatus() {
+        return attendanceStatus;
+    }
+
+    public void setAttendanceStatus(String attendanceStatus) {
+        this.attendanceStatus = attendanceStatus;
+    }
+
     public JobNatureEnum getJobNature() {
         return jobNature;
     }

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

@@ -85,22 +85,8 @@ public class ExtracurricularExercisesMessageServiceImpl extends BaseServiceImpl<
 				}
 				if(change){
 					extracurricularExercisesReplyDao.update(extracurricularExercisesReply);
-					LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
-					LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-					LocalDate createDateTime = LocalDateTime.ofInstant(extracurricularExercisesReply.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
-					LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-					if(createDateTime.isBefore(monDayDate)){
-						StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), extracurricularExercisesReply.getUserId());
-						if(Objects.nonNull(studentExercisesSituation)){
-							if(new Integer(1).equals(extracurricularExercisesReply.getIsReplied())){
-								studentExercisesSituation.setExercisesMessageNum(1);
-							}
-							if(new Integer(1).equals(extracurricularExercisesReply.getIsRepliedTimely())){
-								studentExercisesSituation.setExercisesMessageTimelyNum(1);
-							}
-							studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
-						}
-					}
+
+					studentServeService.updateExercisesSituation(new Date(), new ArrayList<>(Arrays.asList(extracurricularExercisesReply.getUserId())), extracurricularExercisesMessage.getUserId());
 				}
 			}
 

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

@@ -155,14 +155,6 @@ public class ExtracurricularExercisesReplyServiceImpl extends BaseServiceImpl<Lo
 		LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
 		LocalDate createDateTime = LocalDateTime.ofInstant(existExtra.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
 		LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
-//		if(createDateTime.isBefore(monDayDate)){
-//			StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), existExtra.getUserId());
-//			if(Objects.nonNull(studentExercisesSituation)){
-//				studentExercisesSituation.setExercisesReplyNum(1);
-//				studentExercisesSituation.setLastSubmitTime(now);
-//				studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
-//			}
-//		}
 
 		int submitStudentNum=extracurricularExercisesReplyDao.countIsSubmitStudents(existExtra.getExtracurricularExercisesId());
 		extracurricularExercises.setCompletedNum(submitStudentNum);

+ 24 - 26
mec-biz/src/main/java/com/ym/mec/biz/service/impl/IndexBaseMonthDataServiceImpl.java

@@ -365,8 +365,6 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			all.add(one);
 		}
 
-//		Date firstDayOfMonth = DateUtil.getFirstDayOfMonth(DateUtil.addMonths(date, -1));
-
 		if(IndexErrorType.STUDENT_INFO.equals(errorType)){
 
 			IndexErrInfoDto<IndexErrInfoDto> two = new IndexErrInfoDto<>();
@@ -378,10 +376,10 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			twoChild.add(new IndexErrInfoDto(IndexErrorType.STUDENT_NOT_PAYMENT, IndexErrorType.STUDENT_NOT_PAYMENT.getMsg(), indexBaseMonthDataDao.countNoPaymentStudentNum(organIds), indexBaseMonthDataDao.getNoPaymentMusicGroup(organIds)));
 			List<Long> quitGroupNum = indexBaseMonthDataDao.queryApplyForQuitGroupNum(organIds);
 			twoChild.add(new IndexErrInfoDto(IndexErrorType.STUDENT_APPLY_FOR_QUIT_MUSIC_GROUP, IndexErrorType.STUDENT_APPLY_FOR_QUIT_MUSIC_GROUP.getMsg(), quitGroupNum.size(),  quitGroupNum));
-			List<Long> attendanceInfo = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.TRUANT.getCode(),startTime);
-			twoChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_TRUANT_STUDENT_NUM, IndexErrorType.COURSE_TRUANT_STUDENT_NUM.getMsg(), attendanceInfo.size(), null));
-			List<Long> attendanceInfo1 = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.LEAVE.getCode(),startTime);
-			twoChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_LEAVE_STUDENT_NUM, IndexErrorType.COURSE_LEAVE_STUDENT_NUM.getMsg(), attendanceInfo1.size(), null));
+			int attendanceInfo = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.TRUANT.getCode(),startTime);
+			twoChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_TRUANT_STUDENT_NUM, IndexErrorType.COURSE_TRUANT_STUDENT_NUM.getMsg(), attendanceInfo, null));
+			int attendanceInfo1 = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.LEAVE.getCode(),startTime);
+			twoChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_LEAVE_STUDENT_NUM, IndexErrorType.COURSE_LEAVE_STUDENT_NUM.getMsg(), attendanceInfo1, null));
 			two.setNum(twoChild.stream().mapToInt(IndexErrInfoDto::getNum).sum());
 			two.setResult(twoChild);
 			all.add(two);
@@ -393,19 +391,19 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			three.setDesc(IndexErrorType.TEACHER_INFO.getMsg());
 			List<IndexErrInfoDto> threeChild = new ArrayList<>();
 
-			List<Long> attendanceError = indexBaseMonthDataDao.getAttendanceError(organIdsStr,startTime);
-			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE, IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE.getMsg(), attendanceError.size(), attendanceError));
+			int attendanceError = indexBaseMonthDataDao.getAttendanceError(organIdsStr,startTime);
+			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE, IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE.getMsg(), attendanceError, null));
 
-			List<Long> noAttendance = indexBaseMonthDataDao.getNoAttendance(organIdsStr,startTime);
-			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_NOT_A_CLASS, IndexErrorType.TEACHER_NOT_A_CLASS.getMsg(), noAttendance.size(), noAttendance));
+			int noAttendance = indexBaseMonthDataDao.getNoAttendance(organIdsStr,startTime);
+			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_NOT_A_CLASS, IndexErrorType.TEACHER_NOT_A_CLASS.getMsg(), noAttendance, null));
 
-			List<Long> teacherLeave = indexBaseMonthDataDao.queryTeacherLeave(organIdsStr,startTime);
-			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_LEAVE, IndexErrorType.TEACHER_LEAVE.getMsg(),teacherLeave.size(), teacherLeave));
+			int teacherLeave = indexBaseMonthDataDao.queryTeacherLeave(organIdsStr,startTime);
+			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_LEAVE, IndexErrorType.TEACHER_LEAVE.getMsg(),teacherLeave, null));
 
 			String monthStr = DateUtil.format(date, DateUtil.ISO_YEAR_MONTH_FORMAT);
 			//全职未离职老师
-			List<Long> lowTeacherSalary = indexBaseMonthDataDao.queryLowTeacherSalary(organIdsStr,monthStr);
-			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXPECT_SALARY_BE_LOW, IndexErrorType.TEACHER_EXPECT_SALARY_BE_LOW.getMsg(),lowTeacherSalary.size(), lowTeacherSalary));
+			int lowTeacherSalary = indexBaseMonthDataDao.queryLowTeacherSalary(organIdsStr,monthStr);
+			threeChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXPECT_SALARY_BE_LOW, IndexErrorType.TEACHER_EXPECT_SALARY_BE_LOW.getMsg(),lowTeacherSalary, null));
 
 			List<Long> inspectionItem = indexBaseMonthDataDao.queryInspectionItem(organIdsStr);
 			threeChild.add(new IndexErrInfoDto(IndexErrorType.INSPECTION_ITEM, IndexErrorType.INSPECTION_ITEM.getMsg(),inspectionItem.size(), inspectionItem));
@@ -491,41 +489,41 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa
 			}
 		}
 		if(!flag2){
-			List<Long> attendanceInfo = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.TRUANT.getCode(),startTime);
-			if(attendanceInfo.size() > 0){
+			int attendanceInfo = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.TRUANT.getCode(),startTime);
+			if(attendanceInfo > 0){
 				flag2 = true;
 			}
 		}
 		if(!flag2){
-			List<Long> attendanceInfo1 = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.LEAVE.getCode(),startTime);
-			if(attendanceInfo1.size() > 0){
+			int attendanceInfo1 = indexBaseMonthDataDao.queryStudentAttendanceInfo(organIds, StudentAttendanceStatusEnum.LEAVE.getCode(),startTime);
+			if(attendanceInfo1 > 0){
 				flag2 = true;
 			}
 		}
 		resultMap.put("studentInfo",flag2);
 		boolean flag3 = false;
 		if(!flag3){
-			List<Long> attendanceError = indexBaseMonthDataDao.getAttendanceError(organIdsStr,startTime);
-			if(attendanceError.size() > 0){
+			int attendanceError = indexBaseMonthDataDao.getAttendanceError(organIdsStr,startTime);
+			if(attendanceError > 0){
 				flag3 = true;
 			}
 		}
 		if(!flag3){
-			List<Long> noAttendance = indexBaseMonthDataDao.getNoAttendance(organIdsStr,startTime);
-			if(noAttendance.size() > 0){
+			int noAttendance = indexBaseMonthDataDao.getNoAttendance(organIdsStr,startTime);
+			if(noAttendance > 0){
 				flag3 = true;
 			}
 		}
 		if(!flag3){
-			List<Long> teacherLeave = indexBaseMonthDataDao.queryTeacherLeave(organIdsStr,startTime);
-			if(teacherLeave.size() > 0){
+			int teacherLeave = indexBaseMonthDataDao.queryTeacherLeave(organIdsStr,startTime);
+			if(teacherLeave > 0){
 				flag3 = true;
 			}
 		}
 		if(!flag3){
 			String monthStr = DateUtil.format(date, DateUtil.ISO_YEAR_MONTH_FORMAT);
-			List<Long> lowTeacherSalary = indexBaseMonthDataDao.queryLowTeacherSalary(organIdsStr,monthStr);
-			if(lowTeacherSalary.size() > 0){
+			int lowTeacherSalary = indexBaseMonthDataDao.queryLowTeacherSalary(organIdsStr,monthStr);
+			if(lowTeacherSalary > 0){
 				flag3 = true;
 			}
 		}

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

@@ -140,14 +140,6 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
                 }
                 break;
         }
-//        if(createDateTime.isBefore(monDayDate)&&isOk){
-//            StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), existHomework.getUserId());
-//            if(Objects.nonNull(studentExercisesSituation)){
-//                studentExercisesSituation.setExercisesReplyNum(1);
-//                studentExercisesSituation.setLastSubmitTime(now);
-//                studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
-//            }
-//        }
 
         studentServeService.updateExercisesSituation(courseSchedule.getClassDate(), new ArrayList<>(Arrays.asList(bean.getUserId())), courseSchedule.getTeacherId());
 
@@ -261,16 +253,7 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
                     break;
             }
             if(createDateTime.isBefore(monDayDate)&&isOk){
-                StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), byStudentAndCourseHomewok.getUserId());
-                if(Objects.nonNull(studentExercisesSituation)){
-                    if(YesOrNoEnum.YES.equals(byStudentAndCourseHomewok.getIsReplied())){
-                        studentExercisesSituation.setExercisesMessageNum(1);
-                    }
-                    if(new Integer(1).equals(byStudentAndCourseHomewok.getIsRepliedTimely())){
-                        studentExercisesSituation.setExercisesMessageTimelyNum(1);
-                    }
-                    studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
-                }
+                studentServeService.updateExercisesSituation(new Date(), new ArrayList<>(Arrays.asList(byStudentAndCourseHomewok.getUserId())), teacherId);
             }
         }
         return true;

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

@@ -516,7 +516,7 @@
 		WHERE
 		mg.status_ = 'PROGRESS'
 		AND DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(mgpc.payment_valid_start_date_,'%Y-%m-%d')
-		AND mgpcd.payment_status_ = 'NON_PAYMENT'
+		AND mgpcd.payment_status_ = 'NON_PAYMENT' AND mgpcd.expect_amount_ > 0
 		<if test="organIds!=null and organIds.size()>0">
 			AND mg.organ_id_ IN
 			<foreach collection="organIds" item="organId" open="(" close=")" separator=",">
@@ -557,9 +557,9 @@
 		</if>
 	</select>
 
-	<select id="queryStudentAttendanceInfo" resultType="java.lang.Long">
+	<select id="queryStudentAttendanceInfo" resultType="int">
 		SELECT
-			DISTINCT cssp.id_
+			COUNT(DISTINCT cssp.id_)
 		FROM
 			course_schedule_student_payment cssp
 			LEFT JOIN course_schedule cs ON cssp.course_schedule_id_ = cs.id_
@@ -581,17 +581,17 @@
 				</foreach>
 			</if>
 	</select>
-    <select id="getAttendanceError" resultType="java.lang.Long">
-		SELECT DISTINCT ta.id_ FROM teacher_attendance ta
+    <select id="getAttendanceError" resultType="int">
+		SELECT COUNT(DISTINCT ta.id_) FROM teacher_attendance ta
 		LEFT JOIN course_schedule cs ON ta.course_schedule_id_ = cs.id_
 		WHERE (ta.sign_in_status_ = 0 OR ta.sign_out_status_ = 0) AND cs.status_ = 'OVER' AND cs.del_flag_ = 0 AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
-		AND (ta.sign_in_time_ IS NOT NULL OR ta.sign_out_time_ IS NOT NULL) AND ta.dispose_content_ IS NULL AND DATE_FORMAT( cs.class_date_, '%Y-%m-%d' ) >= #{startTime}
+		AND (ta.sign_in_time_ IS NOT NULL OR ta.sign_out_time_ IS NOT NULL) AND ta.dispose_content_ IS NULL AND cs.class_date_ >= #{startTime}
 		<if test="organIds != null and organIds != ''">
 			AND FIND_IN_SET(cs.organ_id_,#{organIds})
 		</if>
 	</select>
-	<select id="getNoAttendance" resultType="java.lang.Long">
-		SELECT DISTINCT ta.id_ FROM teacher_attendance ta
+	<select id="getNoAttendance" resultType="int">
+		SELECT COUNT(DISTINCT ta.id_) FROM teacher_attendance ta
 		LEFT JOIN course_schedule cs ON ta.course_schedule_id_ = cs.id_
 		WHERE ta.sign_in_time_ IS NULL AND cs.status_ = 'OVER' AND ta.sign_out_time_ IS NULL AND ta.dispose_content_ IS NULL
 		AND cs.del_flag_ = 0 AND (cs.new_course_id_ IS NULL OR cs.new_course_id_ = cs.id_) AND DATE_FORMAT( cs.class_date_, '%Y-%m-%d' ) >= #{startTime}
@@ -599,16 +599,16 @@
 			AND FIND_IN_SET(cs.organ_id_,#{organIds})
 		</if>
 	</select>
-	<select id="queryTeacherLeave" resultType="java.lang.Long">
-		SELECT DISTINCT tlr.id_ FROM teacher_leave_record tlr
+	<select id="queryTeacherLeave" resultType="int">
+		SELECT COUNT(DISTINCT tlr.id_) FROM teacher_leave_record tlr
 		LEFT JOIN teacher t ON t.id_ = tlr.user_id_
 		WHERE tlr.status_ = 'ING' AND DATE_FORMAT( tlr.create_time_, '%Y-%m-%d' ) >= #{startTime}
 		<if test="organIdsStr != null and organIdsStr != ''">
 			AND FIND_IN_SET(t.organ_id_,#{organIdsStr})
 		</if>
 	</select>
-	<select id="queryLowTeacherSalary" resultType="java.lang.Long">
-		SELECT DISTINCT tcs.user_id_ FROM teacher_course_statistics tcs
+	<select id="queryLowTeacherSalary" resultType="int">
+		SELECT COUNT(DISTINCT tcs.user_id_) FROM teacher_course_statistics tcs
 		LEFT JOIN teacher t ON t.id_ = tcs.user_id_
 		LEFT JOIN sys_user su ON su.id_ = tcs.user_id_
 		WHERE su.lock_flag_ = 0 AND su.del_flag_ = 0 AND t.job_nature_ = 'FULL_TIME' AND t.demission_date_ IS NULL

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

@@ -387,7 +387,7 @@
 	<select id="queryNoPaymentTotalAmount" resultType="java.util.Map">
 		SELECT mgpcd.user_id_ 'key',SUM(mgpcd.expect_amount_) 'value' FROM music_group_payment_calender_detail mgpcd
 		LEFT JOIN music_group_payment_calender mgpc ON mgpcd.music_group_payment_calender_id_ = mgpc.id_
-		WHERE mgpc.batch_no_ IS NOT NULL AND mgpcd.payment_status_ = 'NON_PAYMENT'
+		WHERE mgpc.batch_no_ IS NOT NULL AND mgpcd.payment_status_ = 'NON_PAYMENT' AND mgpcd.expect_amount_ > 0
 		AND mgpc.music_group_id_ = #{musicGroupId} AND mgpc.status_ IN ('OPEN','OVER','PAID')
 		GROUP BY mgpcd.user_id_
 	</select>
@@ -395,7 +395,7 @@
 	<select id="queryNoPaymentUserIds" resultType="java.lang.Integer">
 		SELECT mgpcd.user_id_ FROM music_group_payment_calender_detail mgpcd
 		LEFT JOIN music_group_payment_calender mgpc ON mgpcd.music_group_payment_calender_id_ = mgpc.id_
-		WHERE mgpc.batch_no_ IS NOT NULL AND mgpcd.payment_status_ = 'NON_PAYMENT'
+		WHERE mgpc.batch_no_ IS NOT NULL AND mgpcd.payment_status_ = 'NON_PAYMENT' AND mgpcd.expect_amount_ > 0
 		  AND mgpc.music_group_id_ = #{musicGroupId} AND mgpc.status_ IN ('OPEN','OVER','PAID')
 		<if test="userIds != null">
 			AND mgpcd.user_id_ IN

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

@@ -545,7 +545,7 @@
         AND mgpc.status_ IN ('NO','OPEN','OVER')
         AND DATE_FORMAT(NOW(),'%Y-%m-%d') >= DATE_FORMAT(mgpc.payment_valid_start_date_,'%Y-%m-%d')
         LEFT JOIN music_group_payment_calender_detail mgpcd ON mgpc.id_ = mgpcd.music_group_payment_calender_id_
-        WHERE mg.id_ = #{musicGroupId} AND mgpc.batch_no_ IS NOT NULL AND mgpcd.user_id_ IN
+        WHERE mg.id_ = #{musicGroupId} AND mgpcd.expect_amount_ > 0 AND mgpc.batch_no_ IS NOT NULL AND mgpcd.user_id_ IN
         <foreach collection="studentId" item="item" separator="," open="(" close=")">
             #{item}
         </foreach>

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

@@ -103,13 +103,17 @@
             <if test="ids != null and ids != ''">
                 FIND_IN_SET(mgq.id_,#{ids})
             </if>
+            <if test="organId != null and organId != ''">
+                FIND_IN_SET(mg.organ_id_,#{organId})
+            </if>
         </where>
     </sql>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-        SELECT COUNT(*)
+        SELECT COUNT(mgq.id_)
         FROM music_group_quit mgq
+        LEFT JOIN music_group mg ON mg.id_ = mgq.music_group_id_
         <include refid="queryPageSql"/>
     </select>
     <select id="countMusicGroupQuitNum" resultType="int">

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

@@ -280,7 +280,7 @@
     </sql>
     <sql id="queryTeacherAttendancesCondition">
         <where>
-            (cs.del_flag_ != 1 OR cs.del_flag_ IS NULL)
+            cs.del_flag_ = 0 AND cs.status_ = 'OVER' AND (cs.new_course_id_ IS NULL OR cs.new_course_id_=cs.id_)
             <if test="search != null and search != ''">
                 AND (su.id_ = #{search} OR su.real_name_ LIKE CONCAT('%',#{search},'%') OR cs.id_ = #{search} OR cs.name_ LIKE CONCAT('%',#{search},'%'))
             </if>
@@ -317,6 +317,20 @@
             <if test="jobNature != null">
                 AND t.job_nature_ = #{jobNature,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
             </if>
+            <if test="attendanceStatus == 'ERR_ATTENDANCE'">
+                AND (ta.sign_in_status_ = 0 OR ta.sign_out_status_ = 0) AND (ta.sign_in_time_ IS NOT NULL OR ta.sign_out_time_ IS NOT NULL)
+            </if>
+            <if test="attendanceStatus == 'NO_ATTENDANCE'">
+                AND ta.sign_out_time_ IS NULL AND ta.sign_in_time_ IS NULL
+            </if>
+            <if test="visitFlag != null">
+                <if test="visitFlag == 0">
+                    AND ta.dispose_content_ IS NULL
+                </if>
+                <if test="visitFlag == 1">
+                    AND ta.dispose_content_ IS NOT NULL
+                </if>
+            </if>
         </where>
     </sql>
 

+ 24 - 0
mec-common/audit-log/src/main/java/com/yonge/log/dal/model/AuditLog.java

@@ -28,6 +28,30 @@ public class AuditLog implements Serializable {
 
 	private String userIp;
 
+	private String token;
+
+	private String service;
+
+	public String getService() {
+		return service;
+	}
+
+	public void setService(String service) {
+		this.service = service;
+	}
+
+	public static long getSerialVersionUID() {
+		return serialVersionUID;
+	}
+
+	public String getToken() {
+		return token;
+	}
+
+	public void setToken(String token) {
+		this.token = token;
+	}
+
 	public String getId() {
 		return id;
 	}

+ 15 - 1
mec-common/audit-log/src/main/java/com/yonge/log/interceptor/AuditLogInterceptor.java

@@ -5,13 +5,18 @@ import java.nio.charset.Charset;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.Map;
+import java.util.Objects;
 
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.context.WebApplicationContext;
+import org.springframework.web.context.support.WebApplicationContextUtils;
 import org.springframework.web.method.HandlerMethod;
 import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
 
@@ -29,6 +34,9 @@ public class AuditLogInterceptor extends HandlerInterceptorAdapter {
 	@Autowired
 	private AuditLogService auditLogService;
 
+	@Value("${spring.application.name}")
+	private String clientName;
+
 	private String username;
 
 	private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -48,7 +56,13 @@ public class AuditLogInterceptor extends HandlerInterceptorAdapter {
 		if (anno != null) {
 			AuditLog auditLog = new AuditLog();
 			auditLog.setOperateName(anno.operateName());
-			auditLog.setInterfaceUrl(anno.interfaceURL());
+			if(StringUtils.isNotBlank(anno.interfaceURL())){
+				auditLog.setInterfaceUrl(anno.interfaceURL());
+			}else{
+				auditLog.setInterfaceUrl(request.getRequestURI());
+			}
+			auditLog.setToken(request.getHeader("Authorization"));
+			auditLog.setService(clientName);
 			auditLog.setUserIp(WebUtil.getRemoteIp(request));
 
 			Map<String, Object> params = WebUtil.getParameterMap(request);

+ 1 - 1
mec-common/audit-log/src/main/java/com/yonge/log/model/AuditLogAnnotation.java

@@ -11,6 +11,6 @@ public @interface AuditLogAnnotation {
 
 	String operateName();
 
-	String interfaceURL();
+	String interfaceURL() default "";
 
 }

+ 5 - 0
mec-student/pom.xml

@@ -57,6 +57,11 @@
 			<groupId>com.ym</groupId>
 			<artifactId>mec-biz</artifactId>
 		</dependency>
+
+		<dependency>
+			<groupId>com.yonge.log</groupId>
+			<artifactId>audit-log</artifactId>
+		</dependency>
     </dependencies>
 	<build>
 		<plugins>

+ 2 - 0
mec-student/src/main/java/com/ym/mec/student/controller/ExtracurricularExercisesReplyController.java

@@ -7,6 +7,7 @@ import com.ym.mec.biz.dal.page.ExtraExercilseQueryInfo;
 import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -54,6 +55,7 @@ public class ExtracurricularExercisesReplyController extends BaseController {
 
     @ApiOperation(value = "提交课外训练作业")
     @GetMapping("/submitExtraExercise")
+    @AuditLogAnnotation(operateName = "提交课外训练作业")
     public HttpResponseResult submitExtraExercise(ExtracurricularExercisesReply extracurricularExercisesReply){
         extracurricularExercisesReplyService.submitExtraExercise(extracurricularExercisesReply);
         return succeed();

+ 5 - 0
mec-student/src/main/java/com/ym/mec/student/controller/PracticeGroupController.java

@@ -21,6 +21,7 @@ import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.http.HttpUtil;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -144,6 +145,7 @@ public class PracticeGroupController extends BaseController {
 
     @ApiOperation("陪练课预约")
     @PostMapping(value = "/practiceApply")
+    @AuditLogAnnotation(operateName = "陪练课预约")
     public Object practiceApply(PracticeGroup practiceGroup){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
@@ -204,6 +206,7 @@ public class PracticeGroupController extends BaseController {
 
     @ApiOperation("陪练课购买")
     @PostMapping(value = "/buyPracticeGroup")
+    @AuditLogAnnotation(operateName = "陪练课购买")
     public HttpResponseResult buyPracticeGroup(@RequestBody PracticeGroupBuyDto practiceGroupBuyParams){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
@@ -234,6 +237,7 @@ public class PracticeGroupController extends BaseController {
 
     @ApiOperation("重新支付")
     @PostMapping(value = "/repay")
+    @AuditLogAnnotation(operateName = "重新支付")
     public HttpResponseResult repay(Integer groupId, boolean useBalancePayment) throws Exception {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
@@ -336,6 +340,7 @@ public class PracticeGroupController extends BaseController {
 
     @ApiOperation("取消待支付的订单")
     @PostMapping(value = "/cancelWaitPayOrder")
+    @AuditLogAnnotation(operateName = "取消待支付的订单")
     public HttpResponseResult cancelWaitPayOrder(Integer groupId){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {

+ 4 - 0
mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkController.java

@@ -12,6 +12,7 @@ import com.ym.mec.biz.service.StudentServeService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.PageInfo;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -41,6 +42,7 @@ public class StudentCourseHomeworkController extends BaseController {
 
     @ApiOperation(value = "提交作业")
     @PostMapping(value = "/add",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    @AuditLogAnnotation(operateName = "提交作业")
     public Object add(@RequestBody StudentCourseHomework studentCourseHomework){
         studentCourseHomeworkService.add(studentCourseHomework);
         return succeed();
@@ -48,6 +50,7 @@ public class StudentCourseHomeworkController extends BaseController {
 
     @ApiOperation(value = "重新提交")
     @PostMapping(value = "/update",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    @AuditLogAnnotation(operateName = "重新提交")
     public Object update(@RequestBody StudentCourseHomework studentCourseHomework){
         studentCourseHomework.setStatus(YesOrNoEnum.YES);
         studentCourseHomework.setId(studentCourseHomework.getCourseHomeworkId());
@@ -58,6 +61,7 @@ public class StudentCourseHomeworkController extends BaseController {
 
     @ApiOperation(value = "重新提交-公用")
     @PostMapping(value = "/updatePublic",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    @AuditLogAnnotation(operateName = "重新提交-公用")
     public Object updatePublic(@RequestBody StudentCourseHomework studentCourseHomework){
         if(!studentCourseHomework.isExtra()){
             studentCourseHomework.setStatus(YesOrNoEnum.YES);

+ 2 - 0
mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseHomeworkReplyController.java

@@ -13,6 +13,7 @@ import com.ym.mec.biz.service.ExtracurricularExercisesMessageService;
 import com.ym.mec.biz.service.StudentCourseHomeworkReplyService;
 import com.ym.mec.biz.service.StudentServeService;
 import com.ym.mec.common.controller.BaseController;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -65,6 +66,7 @@ public class StudentCourseHomeworkReplyController extends BaseController {
 
     @ApiOperation(value = "新增回复-公用")
     @PostMapping("/addPublic")
+    @AuditLogAnnotation(operateName = "新增回复-公用")
     public Object addPublic(@RequestBody StudentCourseHomeworkReply studentCourseHomeworkReply) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {

+ 2 - 0
mec-student/src/main/java/com/ym/mec/student/controller/StudentCourseScheduleController.java

@@ -8,6 +8,7 @@ import com.ym.mec.biz.dal.page.StudentCourseScheduleRecordQueryInfo;
 import com.ym.mec.biz.service.CourseScheduleService;
 import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.common.controller.BaseController;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -63,6 +64,7 @@ public class StudentCourseScheduleController extends BaseController {
 
 	@ApiOperation(value = "请假")
 	@PostMapping("/leave")
+	@AuditLogAnnotation(operateName = "请假")
 	public Object leave(Long courseScheduleId, String reason) {
 		SysUser user = sysUserFeignService.queryUserInfo();
 		if (user == null) {

+ 3 - 0
mec-student/src/main/java/com/ym/mec/student/controller/StudentVipGroupController.java

@@ -15,6 +15,7 @@ import com.ym.mec.biz.service.SubjectService;
 import com.ym.mec.biz.service.VipGroupCategoryService;
 import com.ym.mec.biz.service.VipGroupService;
 import com.ym.mec.common.controller.BaseController;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -94,6 +95,7 @@ public class StudentVipGroupController extends BaseController {
 
     @ApiOperation(value = "vip课购买")
     @PostMapping("/buyVipGroup")
+    @AuditLogAnnotation(operateName = "vip课购买")
     public Object buyVipGroup(VipGroupBuyParamsDto vipGroupBuyParams) throws Exception {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (null == sysUser) {
@@ -116,6 +118,7 @@ public class StudentVipGroupController extends BaseController {
 
     @ApiOperation(value = "vip课退课")
     @PostMapping("/applyRefund")
+    @AuditLogAnnotation(operateName = "vip课退课")
 	public Object applyRefund(Long vipGroupId) {
 		vipGroupService.applyRefund(vipGroupId);
 		return succeed();

+ 5 - 0
mec-teacher/pom.xml

@@ -60,6 +60,11 @@
 			<groupId>com.ym</groupId>
 			<artifactId>mec-biz</artifactId>
 		</dependency>
+
+		<dependency>
+			<groupId>com.yonge.log</groupId>
+			<artifactId>audit-log</artifactId>
+		</dependency>
     </dependencies>
 	<build>
 		<plugins>

+ 2 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/CourseHomeworkController.java

@@ -13,6 +13,7 @@ import com.ym.mec.biz.service.ExtracurricularExercisesReplyService;
 import com.ym.mec.biz.service.StudentCourseHomeworkService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +44,7 @@ public class CourseHomeworkController extends BaseController {
 
     @ApiOperation(value = "布置课堂作业")
     @GetMapping("/addCourseHomework")
+    @AuditLogAnnotation(operateName = "布置课堂作业")
     public HttpResponseResult addCourseHomework(CourseHomework courseHomework){
         courseHomeworkService.addCourseHomework(courseHomework);
         return succeed();

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

@@ -10,6 +10,7 @@ import com.ym.mec.biz.service.StudentAttendanceService;
 import com.ym.mec.biz.service.TeacherAttendanceService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -36,6 +37,7 @@ public class TeacherAttendanceController extends BaseController {
 
     @ApiOperation(value = "新增教师签到")
     @PostMapping("/add")
+    @AuditLogAnnotation(operateName = "新增教师签到")
     public Object add(@RequestBody TeacherSignOutDto teacherSignOutDto) {
         return succeed(teacherAttendanceService.addTeacherAttendanceRecord(teacherSignOutDto));
     }
@@ -54,6 +56,7 @@ public class TeacherAttendanceController extends BaseController {
 
     @ApiOperation(value = "点名")
     @PostMapping("/addStudentAttendances")
+    @AuditLogAnnotation(operateName = "点名")
     public Object addStudentAttendances(@RequestBody StudentAttendanceDto studentAttendanceInfo){
         return succeed(studentAttendanceService.addStudentAttendances(studentAttendanceInfo));
     }

+ 2 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/TeacherVipGroupController.java

@@ -15,6 +15,7 @@ import com.ym.mec.biz.service.VipGroupService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.util.date.DateUtil;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
@@ -50,6 +51,7 @@ public class TeacherVipGroupController extends BaseController {
 
 	@ApiOperation("vip课申请")
 	@PostMapping("/vipGroupApply")
+	@AuditLogAnnotation(operateName = "vip课申请")
 	public Object vipGroupApply(@RequestBody VipGroupApplyDto vipGroupApplyDto) {
 		SysUser user = sysUserFeignService.queryUserInfo();
 		if (Objects.isNull(user)) {

+ 25 - 0
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupQuitController.java

@@ -1,11 +1,14 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.page.MusicGroupQuitQueryInfo;
+import com.ym.mec.biz.service.EmployeeService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.FactoryBean;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -25,6 +28,9 @@ import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.QueryInfo;
 
+import java.util.Arrays;
+import java.util.List;
+
 @RequestMapping("musicGroupQuit")
 @Api(tags = "退团服务")
 @RestController
@@ -38,11 +44,30 @@ public class MusicGroupQuitController extends BaseController {
 
 	@Autowired
 	private SysUserFeignService sysUserFeignService;
+	@Autowired
+	private EmployeeService employeeService;
 
 	@ApiOperation(value = "分页查询")
 	@RequestMapping("/queryPage")
 	@PreAuthorize("@pcs.hasPermissions('musicGroupQuit/queryPage')")
 	public HttpResponseResult queryPage(MusicGroupQuitQueryInfo queryInfo) throws Exception {
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
+		if (sysUser == null) {
+			return failed("用户信息获取失败");
+		}
+		if (!sysUser.getIsSuperAdmin()) {
+			Employee employee = employeeService.get(sysUser.getId());
+			if (StringUtils.isBlank(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(musicGroupQuitService.queryPage(queryInfo));
 	}
 

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

@@ -21,6 +21,7 @@ import com.ym.mec.biz.service.*;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
+import com.yonge.log.model.AuditLogAnnotation;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;