zouxuan 5 years ago
parent
commit
b768115d42

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleTeacherSalaryDao.java

@@ -62,7 +62,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @params [days:天数]
 	 * @describe 获取多少天之前的未结算教师课酬记录(vip课)
 	 */
-	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(@Param("days") Integer days);
+	List<CourseScheduleTeacherSalary> findSomeDayAgoTeacherCourseSalaryNoSettlement(@Param("startDate") String startDate,@Param("endDate") String endDate);
 
 	List<CourseScheduleTeacherSalary> findTemp();
 
@@ -73,7 +73,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @params [days:天数]
 	 * @describe 获取多少天之前的未结算教师课酬记录(陪练课课)
 	 */
-	List<CourseScheduleTeacherSalary> findTeacherCourseSalaryNoSettlement(@Param("days") Integer days,@Param("groupType") String groupType);
+	List<CourseScheduleTeacherSalary> findTeacherCourseSalaryNoSettlement(@Param("startDate") String startDate,@Param("endDate") String endDate);
 
 	/**
 	 * 查询老师指定课程的课酬
@@ -358,7 +358,7 @@ public interface CourseScheduleTeacherSalaryDao extends BaseDAO<Long, CourseSche
 	 * @param endDate
 	 * @return
 	 */
-	List<TeacherVipSalaryDto> queryOnlineCourseByGroupType(@Param("startDate") Date startDate, @Param("endDate") Date endDate);
+	List<TeacherVipSalaryDto> queryOnlineCourseByGroupType(@Param("startDate") String startDate, @Param("endDate") String endDate);
 	/**
 	 * 该用户是不是这个群组的老师
 	 * @param groupId

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

@@ -418,5 +418,5 @@ public interface VipGroupService extends BaseService<Long, VipGroup> {
      * @param endDate
      * @return
      */
-    void updateHistoryTeacherSalaryOfOnline(Date startDate, Date endDate);
+    void updateHistoryTeacherSalaryOfOnline(String startDate, String endDate);
 }

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

@@ -203,10 +203,13 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
     @Transactional(rollbackFor = Exception.class)
     public void practiceTeacherSalarySettlement() {
 //        int days = Integer.parseInt(sysConfigDao.findByParamName(SysConfigService.VIP_APPEAL_DAYS_RANGE).getParanValue());
-        int days = 0;
+//        int days = 0;
         //获取教师未结算课程记录
         Date now = new Date();
-        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(days,GroupType.PRACTICE.getCode());
+        Date date = DateUtil.addMonths(now, -1);
+        String startDate = DateUtil.format(DateUtil.getFirstDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
+        String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
+        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findTeacherCourseSalaryNoSettlement(startDate,endDate);
         if (!CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)) {
             someDayAgoTeacherCourseSalaryNoSettlement.forEach(courseScheduleTeacherSalary -> {
                 courseScheduleTeacherSalary.setActualSalary(courseScheduleTeacherSalary.getTeacherActualSalary());
@@ -284,19 +287,19 @@ public class CourseScheduleTeacherSalaryServiceImpl extends BaseServiceImpl<Long
     @Transactional(rollbackFor = Exception.class)
     public void teacherSalarySettlement() {
 //        int days = Integer.parseInt(sysConfigDao.findByParamName(SysConfigService.VIP_APPEAL_DAYS_RANGE).getParanValue());
-        int days = 0;
+//        int days = 0;
         BigDecimal percent = new BigDecimal(10);
-
+        Date now = new Date();
+        Date date = DateUtil.addMonths(now, -1);
+        String startDate = DateUtil.format(DateUtil.getFirstDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
+        String endDate = DateUtil.format(DateUtil.getLastDayOfMonth(date),DateUtil.DEFAULT_PATTERN);
         //获取教师未结算课程记录
-        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(days);
+        List<CourseScheduleTeacherSalary> someDayAgoTeacherCourseSalaryNoSettlement = courseScheduleTeacherSalaryDao.findSomeDayAgoTeacherCourseSalaryNoSettlement(startDate,endDate);
         if (CollectionUtils.isEmpty(someDayAgoTeacherCourseSalaryNoSettlement)) {
             LOGGER.info("未获取到未结算课酬记录!");
             return;
         }
-        Date now = new Date();
-        Date date = DateUtil.addMonths(now, -1);
-        Date startDate = DateUtil.getFirstDayOfMonth(date);
-        Date endDate = DateUtil.getLastDayOfMonth(date);
+
         vipGroupService.updateHistoryTeacherSalaryOfOnline(startDate, endDate);
         //获取未结算课程编号列表
         List<Long> courseScheduleIds = someDayAgoTeacherCourseSalaryNoSettlement.stream().map(CourseScheduleTeacherSalary::getCourseScheduleId).collect(Collectors.toList());

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

@@ -2875,7 +2875,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 	@Override
 	@Async
-	public void updateHistoryTeacherSalaryOfOnline(Date startDate, Date endDate) {
+	public void updateHistoryTeacherSalaryOfOnline(String startDate, String endDate) {
 		// 查询所有含有线上课的课程组,线上课节数,实付金额
 		List<VipCourseStudentInfoDto> list = vipGroupDao.queryVipCourseStudentInfo();
 		Map<String, VipCourseStudentInfoDto> map = list.stream().collect(Collectors.toMap(VipCourseStudentInfoDto::getMusicGroupId, e -> e));

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

@@ -273,8 +273,8 @@
 		LEFT JOIN vip_group vg ON vg.id_ = cs.music_group_id_
 		LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
 		WHERE 1=1
-		<if test="days!=null">
-			AND cs.class_date_ &lt;= DATE_FORMAT(DATE_ADD( NOW( ), INTERVAL - #{days} DAY ),'%Y-%m-%d')
+		<if test="startDate != null">
+			AND cs.class_date_ BETWEEN #{startDate} AND #{endDate}
 		</if>
 		AND cs.group_type_ = 'VIP' AND vg.organ_id_ != 41
 		AND csts.settlement_time_ IS NULL
@@ -303,10 +303,10 @@
 		LEFT JOIN course_schedule cs ON cs.id_ = csts.course_schedule_id_
 		LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
 		WHERE ta.id_ IS NOT NULL
-		<if test="days!=null">
-			AND cs.class_date_ &lt;= DATE_FORMAT(DATE_ADD( NOW( ), INTERVAL - #{days} DAY ),'%Y-%m-%d')
+		<if test="startDate != null">
+			AND cs.class_date_ BETWEEN #{startDate} AND #{endDate}
 		</if>
-		AND cs.type_ = #{groupType}
+		AND cs.type_ = 'PRACTICE'
 		AND csts.settlement_time_ IS NULL
 		AND (cs.del_flag_ IS NULL OR cs.del_flag_=0)
     </select>

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

@@ -47,7 +47,7 @@ public class CourseScheduleTeacherSalaryController extends BaseController {
     }
     
     @GetMapping("/updateHistoryTeacherSalaryOfOnline")
-    public Object updateHistoryTeacherSalaryOfOnline(Date startDate, Date endDate) {
+    public Object updateHistoryTeacherSalaryOfOnline(String startDate, String endDate) {
     	vipGroupService.updateHistoryTeacherSalaryOfOnline(startDate, endDate);
         return succeed();
     }