|
|
|
@ -53,6 +53,14 @@ public class ScheduleController {
|
|
|
|
|
|
|
|
|
|
@Scheduled(cron = "0 0 0 1 1/1 ?")
|
|
|
|
|
public void taskRank() {
|
|
|
|
|
//获取开始时间和结束时间
|
|
|
|
|
Calendar cal = Calendar.getInstance();
|
|
|
|
|
cal.setTime(new Date());
|
|
|
|
|
cal.add(Calendar.DAY_OF_MONTH,-1);
|
|
|
|
|
cal.set(Calendar.DAY_OF_MONTH,1);
|
|
|
|
|
Date timeStart = cal.getTime();
|
|
|
|
|
cal.getActualMaximum(Calendar.DAY_OF_MONTH);
|
|
|
|
|
Date timeEnd = cal.getTime();
|
|
|
|
|
//获取员工排名进排名数据库
|
|
|
|
|
QueryWrapper<RankListDTO> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
queryWrapper.groupBy("u.id");
|
|
|
|
@ -62,9 +70,9 @@ public class ScheduleController {
|
|
|
|
|
for (RankListVo rankListVo : rankList) {
|
|
|
|
|
//查询是否有上一月记录,如果有就减去上一月传播值,没有则直接添加
|
|
|
|
|
QueryWrapper<Rank> queryWrapper2 = new QueryWrapper<>();
|
|
|
|
|
queryWrapper2.eq("link_id",rankListVo.getLinkId());
|
|
|
|
|
queryWrapper2.eq("linkId",rankListVo.getLinkId());
|
|
|
|
|
queryWrapper2.eq("type",2);//2.员工
|
|
|
|
|
queryWrapper2.orderByDesc("date_start");
|
|
|
|
|
queryWrapper2.orderByDesc("dateStart");
|
|
|
|
|
queryWrapper2.last("limit 1");
|
|
|
|
|
Rank rank = rankMapper.selectOne(queryWrapper2);
|
|
|
|
|
if (rank != null){
|
|
|
|
@ -72,13 +80,6 @@ public class ScheduleController {
|
|
|
|
|
}
|
|
|
|
|
Rank rank2 = new Rank();
|
|
|
|
|
PropertyUtils.copyProperties(rankListVo,rank2);
|
|
|
|
|
Calendar cal = Calendar.getInstance();
|
|
|
|
|
cal.setTime(new Date());
|
|
|
|
|
cal.add(Calendar.DAY_OF_MONTH,-1);
|
|
|
|
|
cal.set(Calendar.DAY_OF_MONTH,1);
|
|
|
|
|
Date timeStart = cal.getTime();
|
|
|
|
|
cal.getActualMaximum(Calendar.DAY_OF_MONTH);
|
|
|
|
|
Date timeEnd = cal.getTime();
|
|
|
|
|
rank2.setDateStart(timeStart);
|
|
|
|
|
rank2.setDateEnd(timeEnd);
|
|
|
|
|
rankMapper.insert(rank2);
|
|
|
|
|