Commit 93a558e87022eee5347388b2960925d360b0a78a

Authored by guzijian
1 parent 03e5fac4

feat: 特定设备无需测试酒精

ruoyi-admin/src/main/java/com/ruoyi/driver/controller/DriverController.java
@@ -79,7 +79,7 @@ public class DriverController extends BaseController { @@ -79,7 +79,7 @@ public class DriverController extends BaseController {
79 */ 79 */
80 @GetMapping("/getDrivers") 80 @GetMapping("/getDrivers")
81 @ApiOperation(value = "获取驾驶员信息列表(全量)", notes = "查询驾驶员信息列表") 81 @ApiOperation(value = "获取驾驶员信息列表(全量)", notes = "查询驾驶员信息列表")
82 - public AjaxResult getDrivers(Driver driver) { 82 + public AjaxResult getDrivers(DriverRequestVo driver) {
83 return AjaxResult.success(driverService.getDrivers(driver)); 83 return AjaxResult.success(driverService.getDrivers(driver));
84 } 84 }
85 85
ruoyi-admin/src/main/java/com/ruoyi/driver/service/IDriverService.java
@@ -88,7 +88,7 @@ public interface IDriverService @@ -88,7 +88,7 @@ public interface IDriverService
88 88
89 void downloadHeadImage(String jobCode, HttpServletResponse response); 89 void downloadHeadImage(String jobCode, HttpServletResponse response);
90 90
91 - List<DriverResponseVo> getDrivers(Driver driver); 91 + List<DriverResponseVo> getDrivers(DriverRequestVo driver);
92 92
93 93
94 AjaxResult faceRegistrationFeedback(String deviceId, List<String> jobCode); 94 AjaxResult faceRegistrationFeedback(String deviceId, List<String> jobCode);
ruoyi-admin/src/main/java/com/ruoyi/driver/service/impl/DriverServiceImpl.java
@@ -321,13 +321,14 @@ public class DriverServiceImpl implements IDriverService { @@ -321,13 +321,14 @@ public class DriverServiceImpl implements IDriverService {
321 } 321 }
322 322
323 @Override 323 @Override
324 - public List<DriverResponseVo> getDrivers(Driver driver) { 324 + public List<DriverResponseVo> getDrivers(DriverRequestVo driver) {
325 List<Driver> drivers = driverMapper.getDrivers(driver); 325 List<Driver> drivers = driverMapper.getDrivers(driver);
326 Long now = System.currentTimeMillis(); 326 Long now = System.currentTimeMillis();
327 List<DriverResponseVo> vos = new ArrayList<>(drivers.size()); 327 List<DriverResponseVo> vos = new ArrayList<>(drivers.size());
328 List<DriverScheduling> dto = null; 328 List<DriverScheduling> dto = null;
329 Boolean schedulingFlag = true; 329 Boolean schedulingFlag = true;
330 Boolean alcoholFlag = true; 330 Boolean alcoholFlag = true;
  331 + boolean needCheckAlcoholDevice = doCheckDevice(driver.getDeviceId());
331 // 更新信息 332 // 更新信息
332 for (Driver item : drivers) { 333 for (Driver item : drivers) {
333 dto = schedulingService.queryScheduling(item.getJobCode(), now); 334 dto = schedulingService.queryScheduling(item.getJobCode(), now);
@@ -335,17 +336,19 @@ public class DriverServiceImpl implements IDriverService { @@ -335,17 +336,19 @@ public class DriverServiceImpl implements IDriverService {
335 // 针对指定用户操作 336 // 针对指定用户操作
336 if ( item.getJobCode().equals("722717") || item.getJobCode().equals("700001")) { 337 if ( item.getJobCode().equals("722717") || item.getJobCode().equals("700001")) {
337 if (!CollectionUtil.isEmpty(dto) && vo.getPlanAction().equals(SIGN_IN_STRING) ){ 338 if (!CollectionUtil.isEmpty(dto) && vo.getPlanAction().equals(SIGN_IN_STRING) ){
338 - vos.add(DriverResponseVo.createDriverResponseVo(null, item, SIGN_IN_STRING, true, true, "测试", "测试", "测试")); 339 + vos.add(DriverResponseVo.createDriverResponseVo(null, item, SIGN_IN_STRING, needCheckAlcoholDevice, true, "测试", "测试", "测试"));
339 }else if (!CollectionUtil.isEmpty(dto)){ 340 }else if (!CollectionUtil.isEmpty(dto)){
340 vos.add(vo); 341 vos.add(vo);
341 }else { 342 }else {
342 - vos.add(DriverResponseVo.createDriverResponseVo(null, item, SIGN_IN_STRING, true, true, "测试", "测试", "测试")); 343 + vos.add(DriverResponseVo.createDriverResponseVo(null, item, SIGN_IN_STRING, needCheckAlcoholDevice, true, "测试", "测试", "测试"));
343 } 344 }
344 }else { 345 }else {
345 // 无排班 346 // 无排班
346 if (Objects.isNull(vo)) { 347 if (Objects.isNull(vo)) {
347 vos.add(DriverResponseVo.createDriverResponseVo(null, item, null, false, false, "", "", "")); 348 vos.add(DriverResponseVo.createDriverResponseVo(null, item, null, false, false, "", "", ""));
348 } else { 349 } else {
  350 + // 特定设备是无需酒精测试的
  351 + vo.setCheckAlcohol(needCheckAlcoholDevice ? vo.getCheckAlcohol() : false);
349 vos.add(vo); 352 vos.add(vo);
350 } 353 }
351 } 354 }
@@ -353,6 +356,25 @@ public class DriverServiceImpl implements IDriverService { @@ -353,6 +356,25 @@ public class DriverServiceImpl implements IDriverService {
353 return vos; 356 return vos;
354 } 357 }
355 358
  359 + private boolean doCheckDevice(String deviceId) {
  360 + switch (deviceId){
  361 + case "001":
  362 + case "002":
  363 + case "003":
  364 + case "004":
  365 + case "005":
  366 + case "006":
  367 + case "007":
  368 + case "008":
  369 + case "009":
  370 + case "010":
  371 + case "011":
  372 + case "012":
  373 + return true;
  374 + }
  375 + return false;
  376 + }
  377 +
356 private DriverResponseVo handlerRecommendation(Driver driver, Long now, List<DriverScheduling> dto, Boolean schedulingFlag, Boolean alcoholFlag) { 378 private DriverResponseVo handlerRecommendation(Driver driver, Long now, List<DriverScheduling> dto, Boolean schedulingFlag, Boolean alcoholFlag) {
357 DriverResponseVo vo = null; 379 DriverResponseVo vo = null;
358 // 给出计划操作 380 // 给出计划操作
ruoyi-admin/src/main/java/com/ruoyi/pojo/vo/DriverRequestVo.java 0 → 100644
  1 +package com.ruoyi.pojo.vo;
  2 +
  3 +import com.ruoyi.driver.domain.Driver;
  4 +import lombok.Data;
  5 +
  6 +@Data
  7 +public class DriverRequestVo extends Driver {
  8 + private String deviceId;
  9 +}
ruoyi-admin/src/main/java/com/ruoyi/pojo/vo/UpdateAttendanceVo.java
@@ -2,6 +2,8 @@ package com.ruoyi.pojo.vo; @@ -2,6 +2,8 @@ package com.ruoyi.pojo.vo;
2 2
3 import lombok.Data; 3 import lombok.Data;
4 4
  5 +import javax.validation.constraints.NotBlank;
  6 +import javax.validation.constraints.NotEmpty;
5 import java.util.List; 7 import java.util.List;
6 8
7 9
@@ -10,8 +12,11 @@ import java.util.List; @@ -10,8 +12,11 @@ import java.util.List;
10 */ 12 */
11 @Data 13 @Data
12 public class UpdateAttendanceVo { 14 public class UpdateAttendanceVo {
  15 + @NotEmpty(message = "工号不能为空")
13 private List<String> jobCode; 16 private List<String> jobCode;
  17 + @NotBlank(message = "开始日期不能为空")
14 private String startDate; 18 private String startDate;
  19 + @NotBlank(message = "结束日期不能为空")
15 private String endDate; 20 private String endDate;
16 private Integer ruleId; 21 private Integer ruleId;
17 } 22 }