浏览代码

平衡关系,每月定时任务

zouxuan 3 月之前
父节点
当前提交
75e6f467a7

+ 8 - 0
mec-application/src/main/java/com/ym/mec/web/controller/TaskController.java

@@ -765,4 +765,12 @@ public class TaskController extends BaseController {
     public void deleteOverdueHomework(){
     public void deleteOverdueHomework(){
         studentCourseHomeworkService.deleteOverdueHomework();
         studentCourseHomeworkService.deleteOverdueHomework();
     }
     }
+
+    /**
+     * 平衡关系定时任务
+     */
+    @GetMapping("/balanceRelation")
+	public void balanceRelation(){
+		studentService.balanceRelation();
+	}
 }
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentDao.java

@@ -403,4 +403,8 @@ public interface StudentDao extends com.ym.mec.common.dal.BaseDAO<Integer, Stude
     List<Integer> queryByCoopIds(@Param("coopId") Integer coopId);
     List<Integer> queryByCoopIds(@Param("coopId") Integer coopId);
 
 
     void updateCloudTeacherEndTime(@Param("studentId") Integer studentId);
     void updateCloudTeacherEndTime(@Param("studentId") Integer studentId);
+
+    void balanceRelation(@Param("lastDayOfLastMonth") String lastDayOfLastMonth,
+                         @Param("firstDayOfThisMonth") String firstDayOfThisMonth,
+                         @Param("firstDayOfLastMonth") String firstDayOfLastMonth);
 }
 }

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

@@ -248,4 +248,9 @@ public interface StudentService extends BaseService<Integer, Student> {
     PageInfo<Student> queryBaseInfoByPage(QueryInfo queryInfo);
     PageInfo<Student> queryBaseInfoByPage(QueryInfo queryInfo);
 
 
     Map<Integer,SysUser> getUserMapByIds(List<Integer> userIds);
     Map<Integer,SysUser> getUserMapByIds(List<Integer> userIds);
+
+    /**
+     * 平衡关系定时任务
+     */
+    void balanceRelation();
 }
 }

+ 14 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentServiceImpl.java

@@ -67,8 +67,6 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
     @Autowired
     @Autowired
     private MemberRankSettingService memberRankSettingService;
     private MemberRankSettingService memberRankSettingService;
     @Autowired
     @Autowired
-    private SysConfigDao sysConfigDao;
-    @Autowired
     private SysTenantConfigService sysTenantConfigService;
     private SysTenantConfigService sysTenantConfigService;
     @Autowired
     @Autowired
     private SysMessageService sysMessageService;
     private SysMessageService sysMessageService;
@@ -1671,6 +1669,20 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem
         return sysUsers.stream().collect(Collectors.toMap(SysUser::getId, Function.identity()));
         return sysUsers.stream().collect(Collectors.toMap(SysUser::getId, Function.identity()));
     }
     }
 
 
+    @Override
+    public void balanceRelation() {
+        Date now = new Date();
+        //获取上个月最后一天
+        String lastDayOfLastMonth = DateUtil.format(DateUtil.getLastDayOfMonth(DateUtil.addMonths(now, -1)), DateUtil.ISO_EXPANDED_DATE_FORMAT);
+        //获取上个月第一天
+        String firstDayOfLastMonth = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(now, -1)), DateUtil.ISO_EXPANDED_DATE_FORMAT);
+        //获取当月第一天
+        String firstDayOfThisMonth = DateUtil.format(DateUtil.getFirstDayOfMonth(now), DateUtil.ISO_EXPANDED_DATE_FORMAT);
+        //汇总平衡关系
+        studentDao.balanceRelation(lastDayOfLastMonth, firstDayOfThisMonth,firstDayOfLastMonth);
+
+    }
+
     private int queryBaseInfoCount(Map<String, Object> params) {
     private int queryBaseInfoCount(Map<String, Object> params) {
         return studentDao.queryBaseInfoCount(params);
         return studentDao.queryBaseInfoCount(params);
     }
     }

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentStatisticsServiceImpl.java

@@ -108,7 +108,7 @@ public class StudentStatisticsServiceImpl extends BaseServiceImpl<Integer, Stude
 		Map<String, Object> params = new HashMap<String, Object>();
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
 		MapUtil.populateMap(params, queryInfo);
 		if(StringUtils.isNotEmpty(queryInfo.getOrganId())){
 		if(StringUtils.isNotEmpty(queryInfo.getOrganId())){
-			List<Integer> organIdList = Arrays.stream(queryInfo.getOrganId().split(",")).map(id -> Integer.valueOf(id)).collect(Collectors.toList());
+			List<Integer> organIdList = Arrays.stream(queryInfo.getOrganId().split(",")).map(Integer::valueOf).collect(Collectors.toList());
 			params.put("organIdList",organIdList);
 			params.put("organIdList",organIdList);
 		}
 		}
 		return studentStatisticsDao.countStatistics(params);
 		return studentStatisticsDao.countStatistics(params);
@@ -141,7 +141,7 @@ public class StudentStatisticsServiceImpl extends BaseServiceImpl<Integer, Stude
     public StudentStatisticsSumDto studentSmallClassStatisticsSum(String groupType,String organId) {
     public StudentStatisticsSumDto studentSmallClassStatisticsSum(String groupType,String organId) {
 		List<Integer> organIdList = new ArrayList<>();
 		List<Integer> organIdList = new ArrayList<>();
 		if(StringUtils.isNotEmpty(organId)){
 		if(StringUtils.isNotEmpty(organId)){
-			organIdList = Arrays.stream(organId.split(",")).map(id -> Integer.valueOf(id)).collect(Collectors.toList());
+			organIdList = Arrays.stream(organId.split(",")).map(Integer::valueOf).collect(Collectors.toList());
 		}
 		}
 		StudentStatisticsSumDto dto = studentStatisticsDao.studentSmallClassStatisticsSum(groupType, organIdList);
 		StudentStatisticsSumDto dto = studentStatisticsDao.studentSmallClassStatisticsSum(groupType, organIdList);
 		//获取进行中的学员数量
 		//获取进行中的学员数量
@@ -157,7 +157,7 @@ public class StudentStatisticsServiceImpl extends BaseServiceImpl<Integer, Stude
 		StudentStatisticsSumForDateDto sumForDateDto = new StudentStatisticsSumForDateDto();
 		StudentStatisticsSumForDateDto sumForDateDto = new StudentStatisticsSumForDateDto();
 		List<Integer> organIdList = new ArrayList<>();
 		List<Integer> organIdList = new ArrayList<>();
 		if(StringUtils.isNotEmpty(organId)){
 		if(StringUtils.isNotEmpty(organId)){
-			organIdList = Arrays.stream(organId.split(",")).map(id -> Integer.valueOf(id)).collect(Collectors.toList());
+			organIdList = Arrays.stream(organId.split(",")).map(Integer::valueOf).collect(Collectors.toList());
 		}
 		}
 		//获取流失人数
 		//获取流失人数
 //		sumForDateDto.setLostNum(studentStatisticsDao.countLostStudentNum(groupType,startDate,endDate,organIdList));
 //		sumForDateDto.setLostNum(studentStatisticsDao.countLostStudentNum(groupType,startDate,endDate,organIdList));

+ 8 - 0
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -1559,4 +1559,12 @@
         and mg.status_ = 'PROGRESS'
         and mg.status_ = 'PROGRESS'
         and mg.cooperation_organ_id_ = #{coopId}
         and mg.cooperation_organ_id_ = #{coopId}
     </select>
     </select>
+    <select id="balanceRelation">
+        select firstMonthVipReportStatis(#{firstDayOfThisMonth});
+        select firstMonthMusicClassReportStatis(#{firstDayOfThisMonth});
+        select currentMonthVipReportStatis(#{firstDayOfLastMonth},#{lastDayOfLastMonth});
+        select currentMonthMusicClassReportStatis(#{firstDayOfLastMonth},#{lastDayOfLastMonth});
+        select lastMonthVipReportStatis(#{lastDayOfLastMonth});
+        select lastMonthMusicClassReportStatis('#{lastDayOfLastMonth});
+    </select>
 </mapper>
 </mapper>

+ 3 - 0
mec-client-api/src/main/java/com/ym/mec/task/TaskRemoteService.java

@@ -331,4 +331,7 @@ public interface TaskRemoteService {
     @GetMapping("/task/deleteOverdueHomework")
     @GetMapping("/task/deleteOverdueHomework")
     void deleteOverdueHomework();
     void deleteOverdueHomework();
 
 
+    @GetMapping("task/balanceRelation")
+    void balanceRelation();
+
 }
 }

+ 5 - 1
mec-client-api/src/main/java/com/ym/mec/task/fallback/TaskRemoteServiceFallback.java

@@ -1,6 +1,5 @@
 package com.ym.mec.task.fallback;
 package com.ym.mec.task.fallback;
 
 
-import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.task.TaskRemoteService;
 import com.ym.mec.task.TaskRemoteService;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
@@ -381,4 +380,9 @@ public class TaskRemoteServiceFallback implements TaskRemoteService {
     public void deleteOverdueHomework() {
     public void deleteOverdueHomework() {
         logger.error("删除过期作业失败");
         logger.error("删除过期作业失败");
     }
     }
+
+    @Override
+    public void balanceRelation() {
+        logger.error("平衡关系更新失败");
+    }
 }
 }