Commit cc8441d5165b424f34c41597c747db5e4c1d4794

Authored by guzijian
1 parent 60715fd8

feat: 正对特殊线路设置打卡时间

ruoyi-admin/src/main/java/com/ruoyi/driver/service/impl/DriverServiceImpl.java
@@ -24,7 +24,7 @@ import com.ruoyi.common.utils.file.MimeTypeUtils; @@ -24,7 +24,7 @@ import com.ruoyi.common.utils.file.MimeTypeUtils;
24 import com.ruoyi.equipment.mapper.EquipmentMapper; 24 import com.ruoyi.equipment.mapper.EquipmentMapper;
25 import com.ruoyi.framework.config.ServerConfig; 25 import com.ruoyi.framework.config.ServerConfig;
26 import com.ruoyi.job.DriverJob; 26 import com.ruoyi.job.DriverJob;
27 -import com.ruoyi.pojo.DriverSignRecommendation; 27 +import com.ruoyi.pojo.DriverSignInRecommendation;
28 import com.ruoyi.domain.EquipmentDriverExpand; 28 import com.ruoyi.domain.EquipmentDriverExpand;
29 import com.ruoyi.domain.DriverScheduling; 29 import com.ruoyi.domain.DriverScheduling;
30 import com.ruoyi.pojo.request.DriverRequestVo; 30 import com.ruoyi.pojo.request.DriverRequestVo;
@@ -57,7 +57,6 @@ import static com.ruoyi.common.ApiProperties.PERSONNEL_API_KEY; @@ -57,7 +57,6 @@ import static com.ruoyi.common.ApiProperties.PERSONNEL_API_KEY;
57 import static com.ruoyi.common.ConstDriverProperties.*; 57 import static com.ruoyi.common.ConstDriverProperties.*;
58 import static com.ruoyi.common.ConstSignInConstSignInProperties.*; 58 import static com.ruoyi.common.ConstSignInConstSignInProperties.*;
59 import static com.ruoyi.common.redispre.GlobalRedisPreName.DRIVER_SCHEDULING_PRE; 59 import static com.ruoyi.common.redispre.GlobalRedisPreName.DRIVER_SCHEDULING_PRE;
60 -import static com.ruoyi.common.redispre.GlobalRedisPreName.REDIS_SIGN_IN_DRIVER_ALCOHOL_OVERFLOW;  
61 60
62 /** 61 /**
63 * 驾驶员信息Service业务层处理 62 * 驾驶员信息Service业务层处理
@@ -130,10 +129,10 @@ public class DriverServiceImpl implements IDriverService { @@ -130,10 +129,10 @@ public class DriverServiceImpl implements IDriverService {
130 return drivers; 129 return drivers;
131 } 130 }
132 131
133 - private DriverSignRecommendation checkTime(List<DriverScheduling> dto, Long now) {  
134 - Map<Integer, DriverSignRecommendation> timeMap = new HashMap<>(); 132 + private DriverSignInRecommendation checkTime(List<DriverScheduling> dto, Long now) {
  133 + Map<Integer, DriverSignInRecommendation> timeMap = new HashMap<>();
135 for (int i = 0; i < dto.size(); i++) { 134 for (int i = 0; i < dto.size(); i++) {
136 - timeMap.put(i, new DriverSignRecommendation(dto.get(i), i)); 135 + timeMap.put(i, new DriverSignInRecommendation(dto.get(i), i));
137 } 136 }
138 long minDiff = Long.MAX_VALUE; 137 long minDiff = Long.MAX_VALUE;
139 Integer index = 0; 138 Integer index = 0;
@@ -358,7 +357,7 @@ public class DriverServiceImpl implements IDriverService { @@ -358,7 +357,7 @@ public class DriverServiceImpl implements IDriverService {
358 DriverResponseVo vo = null; 357 DriverResponseVo vo = null;
359 // 给出计划操作 358 // 给出计划操作
360 if (!CollectionUtil.isEmpty(dto)) { 359 if (!CollectionUtil.isEmpty(dto)) {
361 - DriverSignRecommendation recommendation = checkTime(dto, now); 360 + DriverSignInRecommendation recommendation = checkTime(dto, now);
362 if (BC_TYPE_OUT.equals(recommendation.getBcType())) { 361 if (BC_TYPE_OUT.equals(recommendation.getBcType())) {
363 // 售票员无需酒精测试 362 // 售票员无需酒精测试
364 if (recommendation.getPosts().equals(PERSONNEL_POSTS_DRIVER)) 363 if (recommendation.getPosts().equals(PERSONNEL_POSTS_DRIVER))
ruoyi-admin/src/main/java/com/ruoyi/in/service/impl/SignInServiceImpl.java
@@ -27,7 +27,7 @@ import com.ruoyi.driver.mapper.DriverMapper; @@ -27,7 +27,7 @@ import com.ruoyi.driver.mapper.DriverMapper;
27 import com.ruoyi.equipment.domain.Equipment; 27 import com.ruoyi.equipment.domain.Equipment;
28 import com.ruoyi.equipment.mapper.EquipmentMapper; 28 import com.ruoyi.equipment.mapper.EquipmentMapper;
29 import com.ruoyi.errorScheduling.service.IErrorJobcodeService; 29 import com.ruoyi.errorScheduling.service.IErrorJobcodeService;
30 -import com.ruoyi.pojo.DriverSignRecommendation; 30 +import com.ruoyi.pojo.DriverSignInRecommendation;
31 import com.ruoyi.pojo.GlobalIndex; 31 import com.ruoyi.pojo.GlobalIndex;
32 import com.ruoyi.domain.DriverScheduling; 32 import com.ruoyi.domain.DriverScheduling;
33 import com.ruoyi.pojo.response.SignInResponseVo; 33 import com.ruoyi.pojo.response.SignInResponseVo;
@@ -427,7 +427,7 @@ public class SignInServiceImpl implements ISignInService { @@ -427,7 +427,7 @@ public class SignInServiceImpl implements ISignInService {
427 if (Objects.isNull(driver)) { 427 if (Objects.isNull(driver)) {
428 return true; 428 return true;
429 } 429 }
430 - // TODO 排班校验 和签到超时校验 非司售未作 430 + // 排班校验 和签到超时校验
431 result = checkWorkDay(now, dto, globalIndex, signIn, driver.getPosts()); 431 result = checkWorkDay(now, dto, globalIndex, signIn, driver.getPosts());
432 432
433 // 酒精测试校验 确定 且员工工种是驾驶员 433 // 酒精测试校验 确定 且员工工种是驾驶员
@@ -518,7 +518,7 @@ public class SignInServiceImpl implements ISignInService { @@ -518,7 +518,7 @@ public class SignInServiceImpl implements ISignInService {
518 private boolean driverCheckTimeOut(GlobalIndex globalIndex, SignIn signIn, List<DriverScheduling> dto, long now) { 518 private boolean driverCheckTimeOut(GlobalIndex globalIndex, SignIn signIn, List<DriverScheduling> dto, long now) {
519 try { 519 try {
520 Boolean result = true; 520 Boolean result = true;
521 - DriverSignRecommendation currentScheduling = schedulingService.computedTheCurrentClosestTimestamp(dto, now, 0); 521 + DriverSignInRecommendation currentScheduling = schedulingService.computedTheCurrentClosestTimestamp(dto, now, 0);
522 LocalDateTime endTime = ConstDateUtil.getLocalDateTimeByLongTime(currentScheduling.getTimestamps()); 522 LocalDateTime endTime = ConstDateUtil.getLocalDateTimeByLongTime(currentScheduling.getTimestamps());
523 LocalDateTime nowTime = ConstDateUtil.getLocalDateTimeByLongTime(now); 523 LocalDateTime nowTime = ConstDateUtil.getLocalDateTimeByLongTime(now);
524 long nowBetween = ChronoUnit.MINUTES.between(endTime, nowTime); 524 long nowBetween = ChronoUnit.MINUTES.between(endTime, nowTime);
@@ -530,7 +530,7 @@ public class SignInServiceImpl implements ISignInService { @@ -530,7 +530,7 @@ public class SignInServiceImpl implements ISignInService {
530 if (!(Math.abs(nowBetween) <= 60)) { 530 if (!(Math.abs(nowBetween) <= 60)) {
531 // 签到一个逻辑 当前无记录 531 // 签到一个逻辑 当前无记录
532 if (currentScheduling.getBcType().equals(BC_TYPE_OUT) && Objects.isNull(currentScheduling.getSignInId())) { 532 if (currentScheduling.getBcType().equals(BC_TYPE_OUT) && Objects.isNull(currentScheduling.getSignInId())) {
533 - DriverSignRecommendation lastClosestTimestamp = schedulingService.computedTheCurrentClosestTimestamp(dto, now, -1); 533 + DriverSignInRecommendation lastClosestTimestamp = schedulingService.computedTheCurrentClosestTimestamp(dto, now, -1);
534 // 上一次无记|签到,type:签退 当前时间小于最近签到时间 -> 超时签退 534 // 上一次无记|签到,type:签退 当前时间小于最近签到时间 -> 超时签退
535 if (nowBetween < -60L && Objects.isNull(lastClosestTimestamp.getSignInId()) && signIn.getType().equals(SIGN_OUT) && lastClosestTimestamp.getBcType().equals(BC_TYPE_IN)) { 535 if (nowBetween < -60L && Objects.isNull(lastClosestTimestamp.getSignInId()) && signIn.getType().equals(SIGN_OUT) && lastClosestTimestamp.getBcType().equals(BC_TYPE_IN)) {
536 signIn.setRemark(SIGN_OUT_TIMEOUT); 536 signIn.setRemark(SIGN_OUT_TIMEOUT);
@@ -552,7 +552,7 @@ public class SignInServiceImpl implements ISignInService { @@ -552,7 +552,7 @@ public class SignInServiceImpl implements ISignInService {
552 } 552 }
553 // 签退一个逻辑 当前无记录 553 // 签退一个逻辑 当前无记录
554 if (currentScheduling.getBcType().equals(BC_TYPE_IN) && Objects.isNull(currentScheduling.getSignInId())) { 554 if (currentScheduling.getBcType().equals(BC_TYPE_IN) && Objects.isNull(currentScheduling.getSignInId())) {
555 - DriverSignRecommendation lastClosestTimestamp = schedulingService.computedTheCurrentClosestTimestamp(dto, now, -1); 555 + DriverSignInRecommendation lastClosestTimestamp = schedulingService.computedTheCurrentClosestTimestamp(dto, now, -1);
556 // 上一次无记|签退,type:签到 当前时间小于最近签退时间 -> 签到异常 556 // 上一次无记|签退,type:签到 当前时间小于最近签退时间 -> 签到异常
557 if (nowBetween < -60L && Objects.isNull(lastClosestTimestamp.getSignInId()) && signIn.getType().equals(SIGN_IN)) { 557 if (nowBetween < -60L && Objects.isNull(lastClosestTimestamp.getSignInId()) && signIn.getType().equals(SIGN_IN)) {
558 signIn.setRemark(SIGN_IN_TIMEOUT); 558 signIn.setRemark(SIGN_IN_TIMEOUT);
@@ -583,7 +583,7 @@ public class SignInServiceImpl implements ISignInService { @@ -583,7 +583,7 @@ public class SignInServiceImpl implements ISignInService {
583 } 583 }
584 584
585 private Boolean handlerExceptionRecord(List<DriverScheduling> dto, long now, GlobalIndex globalIndex, SignIn signIn) { 585 private Boolean handlerExceptionRecord(List<DriverScheduling> dto, long now, GlobalIndex globalIndex, SignIn signIn) {
586 - DriverSignRecommendation currentScheduling = schedulingService.computedTheCurrentClosestTimestamp(dto, now, 0); 586 + DriverSignInRecommendation currentScheduling = schedulingService.computedTheCurrentClosestTimestamp(dto, now, 0);
587 LocalDateTime endTime = ConstDateUtil.getLocalDateTimeByLongTime(currentScheduling.getTimestamps()); 587 LocalDateTime endTime = ConstDateUtil.getLocalDateTimeByLongTime(currentScheduling.getTimestamps());
588 LocalDateTime nowTime = ConstDateUtil.getLocalDateTimeByLongTime(now); 588 LocalDateTime nowTime = ConstDateUtil.getLocalDateTimeByLongTime(now);
589 long nowBetween = ChronoUnit.MINUTES.between(endTime, nowTime); 589 long nowBetween = ChronoUnit.MINUTES.between(endTime, nowTime);
ruoyi-admin/src/main/java/com/ruoyi/job/DriverJob.java
@@ -39,6 +39,7 @@ import java.io.UnsupportedEncodingException; @@ -39,6 +39,7 @@ import java.io.UnsupportedEncodingException;
39 import java.net.URLEncoder; 39 import java.net.URLEncoder;
40 import java.nio.charset.StandardCharsets; 40 import java.nio.charset.StandardCharsets;
41 import java.security.MessageDigest; 41 import java.security.MessageDigest;
  42 +import java.time.LocalDate;
42 import java.time.LocalDateTime; 43 import java.time.LocalDateTime;
43 import java.time.temporal.ChronoUnit; 44 import java.time.temporal.ChronoUnit;
44 import java.util.*; 45 import java.util.*;
@@ -333,8 +334,8 @@ public class DriverJob implements InitializingBean { @@ -333,8 +334,8 @@ public class DriverJob implements InitializingBean {
333 splitSaveScheduling(driverSchedulingMap, driverJobCode, driverName, item, PERSONNEL_POSTS_DRIVER); 334 splitSaveScheduling(driverSchedulingMap, driverJobCode, driverName, item, PERSONNEL_POSTS_DRIVER);
334 splitSaveScheduling(driverSchedulingMap, salePersonJobCode, salePersonName, item, PERSONNEL_POSTS_SALES); 335 splitSaveScheduling(driverSchedulingMap, salePersonJobCode, salePersonName, item, PERSONNEL_POSTS_SALES);
335 }); 336 });
336 - // TODO 处理跟班  
337 - handleBcCopy(driverSchedulingMap); 337 + // 处理跟班
  338 + handlerBcCopy(driverSchedulingMap);
338 // 排序 339 // 排序
339 List<String> keys = new ArrayList<>(driverSchedulingMap.keySet()); 340 List<String> keys = new ArrayList<>(driverSchedulingMap.keySet());
340 for (String key : keys) { 341 for (String key : keys) {
@@ -349,15 +350,15 @@ public class DriverJob implements InitializingBean { @@ -349,15 +350,15 @@ public class DriverJob implements InitializingBean {
349 return driverSchedulingMap; 350 return driverSchedulingMap;
350 } 351 }
351 352
352 - private void handleBcCopy(Map<String, List<ResponseSchedulingDto>> driverSchedulingMap) { 353 + private void handlerBcCopy(Map<String, List<ResponseSchedulingDto>> driverSchedulingMap) {
353 try { 354 try {
354 - Date date = new Date(); 355 + LocalDate localDate = LocalDate.now();
355 DriverSchedulingExpand qwExpand = new DriverSchedulingExpand(); 356 DriverSchedulingExpand qwExpand = new DriverSchedulingExpand();
356 qwExpand.setStatus(STATUS_NORMAL.longValue()); 357 qwExpand.setStatus(STATUS_NORMAL.longValue());
357 List<ExpandResponseVo> expandList = EXPAND_MAPPER.queryExpandListByEntity(qwExpand); 358 List<ExpandResponseVo> expandList = EXPAND_MAPPER.queryExpandListByEntity(qwExpand);
358 for (ExpandResponseVo expand : expandList) { 359 for (ExpandResponseVo expand : expandList) {
359 List<ResponseSchedulingDto> dtoList = driverSchedulingMap.get(expand.getMasterJobCode()); 360 List<ResponseSchedulingDto> dtoList = driverSchedulingMap.get(expand.getMasterJobCode());
360 - if (CollectionUtil.isNotEmpty(dtoList) && date.compareTo(expand.getEndDate()) < 0) { 361 + if (CollectionUtil.isNotEmpty(dtoList) && localDate.compareTo(LocalDate.parse(ConstDateUtil.formatDate("yyyy-MM-dd", expand.getEndDate()))) <= 0) {
361 List<ResponseSchedulingDto> list = ListUtils.deepCopy(dtoList); 362 List<ResponseSchedulingDto> list = ListUtils.deepCopy(dtoList);
362 list = list.stream().peek(item -> { 363 list = list.stream().peek(item -> {
363 item.setJobCode(expand.getSlaveJobCode()); 364 item.setJobCode(expand.getSlaveJobCode());
ruoyi-admin/src/main/java/com/ruoyi/pojo/DriverSignRecommendation.java renamed to ruoyi-admin/src/main/java/com/ruoyi/pojo/DriverSignInRecommendation.java
@@ -11,7 +11,7 @@ import static com.ruoyi.common.ConstDriverProperties.BC_TYPE_OUT; @@ -11,7 +11,7 @@ import static com.ruoyi.common.ConstDriverProperties.BC_TYPE_OUT;
11 * @author 20412 11 * @author 20412
12 */ 12 */
13 @Data 13 @Data
14 -public class DriverSignRecommendation { 14 +public class DriverSignInRecommendation {
15 private Long id; 15 private Long id;
16 private String posts; 16 private String posts;
17 private String bcType; 17 private String bcType;
@@ -23,10 +23,10 @@ public class DriverSignRecommendation { @@ -23,10 +23,10 @@ public class DriverSignRecommendation {
23 private String lpName; 23 private String lpName;
24 private String lineName; 24 private String lineName;
25 25
26 - public DriverSignRecommendation() { 26 + public DriverSignInRecommendation() {
27 } 27 }
28 28
29 - public DriverSignRecommendation(DriverScheduling dto, Integer index) { 29 + public DriverSignInRecommendation(DriverScheduling dto, Integer index) {
30 this.setIndex(index); 30 this.setIndex(index);
31 this.setBcType(dto.getBcType()); 31 this.setBcType(dto.getBcType());
32 this.setTimestamps(BC_TYPE_OUT.equals(dto.getBcType()) ? dto.getFcsjT() : dto.getZdsjT()); 32 this.setTimestamps(BC_TYPE_OUT.equals(dto.getBcType()) ? dto.getFcsjT() : dto.getZdsjT());
ruoyi-admin/src/main/java/com/ruoyi/service/SchedulingService.java
@@ -5,7 +5,7 @@ import com.ruoyi.common.cache.NowSchedulingCache; @@ -5,7 +5,7 @@ import com.ruoyi.common.cache.NowSchedulingCache;
5 import com.ruoyi.driver.mapper.DriverSchedulingMapper; 5 import com.ruoyi.driver.mapper.DriverSchedulingMapper;
6 import com.ruoyi.in.domain.SignIn; 6 import com.ruoyi.in.domain.SignIn;
7 import com.ruoyi.in.mapper.SignInMapper; 7 import com.ruoyi.in.mapper.SignInMapper;
8 -import com.ruoyi.pojo.DriverSignRecommendation; 8 +import com.ruoyi.pojo.DriverSignInRecommendation;
9 import com.ruoyi.pojo.GlobalIndex; 9 import com.ruoyi.pojo.GlobalIndex;
10 import com.ruoyi.domain.DriverScheduling; 10 import com.ruoyi.domain.DriverScheduling;
11 import com.ruoyi.pojo.request.ReportViewRequestVo; 11 import com.ruoyi.pojo.request.ReportViewRequestVo;
@@ -83,10 +83,10 @@ public class SchedulingService { @@ -83,10 +83,10 @@ public class SchedulingService {
83 * @param now 83 * @param now
84 * @return 84 * @return
85 */ 85 */
86 - public DriverSignRecommendation computedTheCurrentClosestTimestamp(List<DriverScheduling> dto, Long now, Integer result) {  
87 - Map<Integer, DriverSignRecommendation> timeMap = new HashMap<>(); 86 + public DriverSignInRecommendation computedTheCurrentClosestTimestamp(List<DriverScheduling> dto, Long now, Integer result) {
  87 + Map<Integer, DriverSignInRecommendation> timeMap = new HashMap<>();
88 for (int i = 0; i < dto.size(); i++) { 88 for (int i = 0; i < dto.size(); i++) {
89 - timeMap.put(i, new DriverSignRecommendation(dto.get(i), i)); 89 + timeMap.put(i, new DriverSignInRecommendation(dto.get(i), i));
90 } 90 }
91 long minDiff = Long.MAX_VALUE; 91 long minDiff = Long.MAX_VALUE;
92 Integer index = 0; 92 Integer index = 0;
ruoyi-admin/src/main/java/com/ruoyi/service/ThreadJobService.java
@@ -182,7 +182,7 @@ public class ThreadJobService { @@ -182,7 +182,7 @@ public class ThreadJobService {
182 } 182 }
183 183
184 private void sendNotice(SignIn signIn, Driver driver, List<DriverScheduling> dto, GlobalIndex globalIndex) { 184 private void sendNotice(SignIn signIn, Driver driver, List<DriverScheduling> dto, GlobalIndex globalIndex) {
185 - if (SIGN_ALCOHOL_EX_NUM.equals(signIn.getExType())){ 185 + if (SIGN_ALCOHOL_EX_NUM.equals(signIn.getExType())) {
186 SysNotice notice = new SysNotice(); 186 SysNotice notice = new SysNotice();
187 notice.setCreateBy("system"); 187 notice.setCreateBy("system");
188 notice.setUpdateBy("system"); 188 notice.setUpdateBy("system");
@@ -191,7 +191,7 @@ public class ThreadJobService { @@ -191,7 +191,7 @@ public class ThreadJobService {
191 if (CollectionUtil.isEmpty(dto)) { 191 if (CollectionUtil.isEmpty(dto)) {
192 item = new DriverScheduling(); 192 item = new DriverScheduling();
193 handlerNoScheduling(item, signIn, driver); 193 handlerNoScheduling(item, signIn, driver);
194 - }else { 194 + } else {
195 item = dto.get(globalIndex.getIndex()); 195 item = dto.get(globalIndex.getIndex());
196 } 196 }
197 String jobCode = "工号:" + item.getJobCode() + "\n"; 197 String jobCode = "工号:" + item.getJobCode() + "\n";
@@ -210,6 +210,7 @@ public class ThreadJobService { @@ -210,6 +210,7 @@ public class ThreadJobService {
210 noticeService.insertNotice(notice); 210 noticeService.insertNotice(notice);
211 } 211 }
212 } 212 }
  213 +
213 private String getResultString(BigDecimal alcoholIntake) { 214 private String getResultString(BigDecimal alcoholIntake) {
214 if (alcoholIntake.compareTo(new BigDecimal(20)) >= 0 && alcoholIntake.compareTo(new BigDecimal(80)) < 0) 215 if (alcoholIntake.compareTo(new BigDecimal(20)) >= 0 && alcoholIntake.compareTo(new BigDecimal(80)) < 0)
215 return "饮酒后驾驶机动车"; 216 return "饮酒后驾驶机动车";
@@ -485,11 +486,49 @@ public class ThreadJobService { @@ -485,11 +486,49 @@ public class ThreadJobService {
485 // 处理错误班次 486 // 处理错误班次
486 nowScheduling = handleErrorBc(schedulingList); 487 nowScheduling = handleErrorBc(schedulingList);
487 } 488 }
  489 + // 处理松青线
  490 + // 松1路牌 签到时间 07:20 |松2路牌 签到时间 07:40 |松3路牌 签到时间 08:35 |松4路牌 签到时间 10:30
  491 + if (nowScheduling.get(0).getLineName().equals("松青线") && checkLpName(nowScheduling.get(0))) {
  492 + updateScheduling(nowScheduling);
  493 + }
488 bcList.addAll(nowScheduling); 494 bcList.addAll(nowScheduling);
489 } 495 }
490 return bcList; 496 return bcList;
491 } 497 }
492 498
  499 + private void updateScheduling(List<DriverScheduling> nowScheduling) {
  500 + switch (nowScheduling.get(0).getLpName()){
  501 + case "松1":
  502 + nowScheduling.get(0).setFcsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(0).getFcsjT())),"07:20:00").getTime());
  503 + nowScheduling.get(nowScheduling.size() - 1).setZdsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(nowScheduling.size() - 1).getFcsjT())),"15:30:00").getTime());
  504 + break;
  505 + case "松2":
  506 + nowScheduling.get(0).setFcsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(0).getFcsjT())),"07:40:00").getTime());
  507 + nowScheduling.get(nowScheduling.size() - 1).setZdsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(nowScheduling.size() - 1).getFcsjT())),"19:00:00").getTime());
  508 + break;
  509 + case "松3":
  510 + nowScheduling.get(0).setFcsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(0).getFcsjT())),"08:35:00").getTime());
  511 + nowScheduling.get(nowScheduling.size() - 1).setZdsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(nowScheduling.size() - 1).getFcsjT())),"18:10:00").getTime());
  512 + break;
  513 + case "松4":
  514 + nowScheduling.get(0).setFcsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(0).getFcsjT())),"10:30:00").getTime());
  515 + nowScheduling.get(nowScheduling.size() - 1).setZdsjT(ConstDateUtil.dateAddition(ConstDateUtil.formatDate("yyyy-MM-dd",new Date(nowScheduling.get(nowScheduling.size() - 1).getFcsjT())),"18:35:00").getTime());
  516 + break;
  517 + }
  518 + }
  519 +
  520 + private boolean checkLpName(DriverScheduling driverScheduling) {
  521 + switch (driverScheduling.getLpName()){
  522 + case "松1":
  523 + case "松2":
  524 + case "松3":
  525 + case "松4":
  526 + return true;
  527 + default:
  528 + return false;
  529 + }
  530 + }
  531 +
493 public static List<ErrorJobcode> getErrorScheduling(Map<String, List<DriverScheduling>> resultMap) { 532 public static List<ErrorJobcode> getErrorScheduling(Map<String, List<DriverScheduling>> resultMap) {
494 List<ErrorJobcode> errorList = new ArrayList<>(); 533 List<ErrorJobcode> errorList = new ArrayList<>();
495 // 循环处理 534 // 循环处理