|
|
@@ -0,0 +1,51 @@
|
|
|
+package org.dromara.system.util;
|
|
|
+
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.dromara.common.core.utils.SpringUtils;
|
|
|
+import org.dromara.system.domain.bo.TblDzbcPathSchedulingBo;
|
|
|
+import org.dromara.system.domain.vo.TblDzbcPathSchedulingVo;
|
|
|
+import org.dromara.system.service.ISysUserService;
|
|
|
+import org.dromara.system.service.ITblDzbcPathSchedulingService;
|
|
|
+import org.springframework.scheduling.annotation.Scheduled;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+@Slf4j
|
|
|
+@Component
|
|
|
+public class ScheduleCarUtil {
|
|
|
+
|
|
|
+ @Scheduled(cron = "0 10 0 ? * ? ")
|
|
|
+ public void doSchedule() {
|
|
|
+ //获取所有自动排班标记的路线
|
|
|
+ TblDzbcPathSchedulingBo bo = new TblDzbcPathSchedulingBo();
|
|
|
+ bo.setIsauto(1);
|
|
|
+ List<TblDzbcPathSchedulingVo> list = SpringUtils.getBean(ITblDzbcPathSchedulingService.class).queryList(bo);
|
|
|
+ Map<Long, TblDzbcPathSchedulingVo> map = new HashMap<>();
|
|
|
+ for (TblDzbcPathSchedulingVo vo : list) {
|
|
|
+ if(map.containsKey(vo.getPathId())){
|
|
|
+ TblDzbcPathSchedulingVo vo1 = map.get(vo.getPathId());
|
|
|
+ if(vo1.getMdate().getTime()<vo.getMdate().getTime()){
|
|
|
+ map.put(vo.getPathId(),vo);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ map.put(vo.getPathId(),vo);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ map.values().stream().forEach(vo->{
|
|
|
+ TblDzbcPathSchedulingBo bo1 = new TblDzbcPathSchedulingBo();
|
|
|
+ bo1.setMdate(DateUtil.offsetDay(vo.getMdate(), 1));
|
|
|
+ bo1.setPathId(vo.getPathId());
|
|
|
+ bo1.setExt1(vo.getExt1());
|
|
|
+ bo1.setCarId(vo.getCarId());
|
|
|
+ bo1.setPprice(vo.getPprice());
|
|
|
+ bo1.setIsauto(1);
|
|
|
+ SpringUtils.getBean(ITblDzbcPathSchedulingService.class).insertByBo(bo1);
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+}
|