Browse Source

feat:教师端课酬

Joburgess 4 years ago
parent
commit
64f015e796

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

@@ -264,7 +264,7 @@ public interface CourseScheduleTeacherSalaryService extends BaseService<Long, Co
      * @param teacherId: 获取教师收入总览
      * @return com.ym.mec.biz.dal.dto.TeacherIncomeReviewDto
      */
-    TeacherIncomeReviewDto getTeacherSalaryOverview(Integer teacherId);
+    TeacherIncomeReviewDto getTeacherSalaryOverview(TeacherIncomeQueryInfo queryInfo);
 
     /**
      * @describe 查询教师课酬记录

+ 9 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleTeacherSalaryServiceImpl.java

@@ -2033,12 +2033,10 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
     }
 
     @Override
-    public TeacherIncomeReviewDto getTeacherSalaryOverview(Integer teacherId) {
+    public TeacherIncomeReviewDto getTeacherSalaryOverview(TeacherIncomeQueryInfo queryInfo) {
         LocalDate nowDate = LocalDate.now();
-        LocalDate monthFirstDay = nowDate.with(TemporalAdjusters.firstDayOfMonth());
-        LocalDate monthLastDay = nowDate.with(TemporalAdjusters.lastDayOfMonth());
 
-        TeacherIncomeReviewDto teacherSalaryOverview = courseScheduleTeacherSalaryDao.getTeacherSalaryOverview(teacherId, monthFirstDay.toString(), monthLastDay.toString(), "2021-03-01", null);
+        TeacherIncomeReviewDto teacherSalaryOverview = courseScheduleTeacherSalaryDao.getTeacherSalaryOverview(queryInfo.getTeacherId(), queryInfo.getStartDay(), queryInfo.getEndDay(), "2021-03-01", null);
         if(Objects.isNull(teacherSalaryOverview)){
             teacherSalaryOverview = new TeacherIncomeReviewDto();
         }
@@ -2046,7 +2044,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             teacherSalaryOverview.setThisMonthExpectIncome(BigDecimal.ZERO);
         }
 
-        List<CourseSchedule> teacherCourses = courseScheduleDao.getTeacherCourseWithClassDate(teacherId, monthFirstDay.toString(), monthLastDay.toString(), CourseStatusEnum.OVER);
+        List<CourseSchedule> teacherCourses = courseScheduleDao.getTeacherCourseWithClassDate(queryInfo.getTeacherId(), queryInfo.getStartDay(), queryInfo.getEndDay(), CourseStatusEnum.OVER);
         if(CollectionUtils.isEmpty(teacherCourses)){
             return teacherSalaryOverview;
         }
@@ -2055,7 +2053,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
         //课程教师课酬
         List<CourseScheduleTeacherSalary> courseScheduleTeacherSalaries = courseScheduleTeacherSalaryDao.findByCourseSchedules(courseIds);
-        List<CourseScheduleTeacherSalary> teacherSalaries = courseScheduleTeacherSalaries.stream().filter(c -> teacherId.equals(c.getUserId())).collect(Collectors.toList());
+        List<CourseScheduleTeacherSalary> teacherSalaries = courseScheduleTeacherSalaries.stream().filter(c -> queryInfo.getTeacherId().equals(c.getUserId())).collect(Collectors.toList());
         if(CollectionUtils.isEmpty(teacherSalaries)){
             return teacherSalaryOverview;
         }
@@ -2086,7 +2084,7 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
 
         //教师签到记录
         List<TeacherAttendance> allTeacherAttendances = teacherAttendanceDao.findByCourseSchedules(courseIds);
-        Map<Long, List<TeacherAttendance>> teacherCourseAttendanceMap = allTeacherAttendances.stream().filter(c->teacherId.equals(c.getTeacherId())).collect(Collectors.groupingBy(TeacherAttendance::getCourseScheduleId));
+        Map<Long, List<TeacherAttendance>> teacherCourseAttendanceMap = allTeacherAttendances.stream().filter(c->queryInfo.getTeacherId().equals(c.getTeacherId())).collect(Collectors.groupingBy(TeacherAttendance::getCourseScheduleId));
 
         //教师信息
         Set<Integer> teacherIds = teacherSalaries.stream().map(CourseScheduleTeacherSalary::getUserId).collect(Collectors.toSet());
@@ -2103,6 +2101,10 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
             //教师
             Teacher teacher = idTeacherMap.get(teacherSalary.getUserId());
 
+            if(Objects.nonNull(teacherSalary.getActualSalary())){
+                continue;
+            }
+
             switch (courseSchedule.getGroupType()){
                 case MUSIC:
                     calMusicCourseTeacherActualSalary(courseSchedule, teacherSalary, teacherAttendances, school, teacher, attendanceRange);

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

@@ -84,11 +84,16 @@ public class CourseScheduleTeacherSalaryController extends BaseController {
 
     @ApiOperation(value = "获取教师收入总览")
     @GetMapping("/getTeacherSalaryOverview")
-    public HttpResponseResult getTeacherSalaryOverview(){
+    public HttpResponseResult getTeacherSalaryOverview(TeacherIncomeQueryInfo queryInfo){
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
             return failed("用户信息获取失败");
         }
+        queryInfo.setTeacherId(sysUser.getId());
+        queryInfo.setCourseStatus(CourseStatusEnum.OVER);
+        if(StringUtils.isBlank(queryInfo.getStartDay())){
+            queryInfo.setStartDay("2021-03-01");
+        }
         return succeed(courseScheduleTeacherSalaryService.getTeacherSalaryOverview(sysUser.getId()));
     }