Commit 4e50ae8e7000638198457c09bad915f3e71c5287

Authored by liujun001
1 parent cb1a916d

临港二期

Showing 24 changed files with 443 additions and 31 deletions
Bsth-admin/src/main/java/com/ruoyi/controller/RefreshController.java
@@ -77,7 +77,7 @@ public class RefreshController { @@ -77,7 +77,7 @@ public class RefreshController {
77 77
78 @GetMapping(value = "/key/info/local") 78 @GetMapping(value = "/key/info/local")
79 @ApiOperation("/key/info/local") 79 @ApiOperation("/key/info/local")
80 - @PreAuthorize("@ss.hasPermi('refresh:key:info:local')") 80 + //@PreAuthorize("@ss.hasPermi('refresh:key:info:local')")
81 public ResponseResult<Boolean> testKeyInfoLocal(@RequestParam(value = "dateStr", required = false) String dateStr) throws ParseException { 81 public ResponseResult<Boolean> testKeyInfoLocal(@RequestParam(value = "dateStr", required = false) String dateStr) throws ParseException {
82 if (StringUtils.isEmpty(dateStr)) { 82 if (StringUtils.isEmpty(dateStr)) {
83 dateStr = DateUtil.YYYY_MM_DD_LINK.format(new Date()); 83 dateStr = DateUtil.YYYY_MM_DD_LINK.format(new Date());
@@ -108,7 +108,7 @@ public class RefreshController { @@ -108,7 +108,7 @@ public class RefreshController {
108 108
109 @PostMapping(value = "/driver/init/image") 109 @PostMapping(value = "/driver/init/image")
110 @ApiOperation("driver/init/image") 110 @ApiOperation("driver/init/image")
111 - @PreAuthorize("@ss.hasPermi('refresh:driver:init:image')") 111 + // @PreAuthorize("@ss.hasPermi('refresh:driver:init:image')")
112 public ResponseResult<Boolean> insertDriverInitImage(@RequestParam("imagePath") String imagePath, @RequestParam("device") String device) { 112 public ResponseResult<Boolean> insertDriverInitImage(@RequestParam("imagePath") String imagePath, @RequestParam("device") String device) {
113 if (StringUtils.isEmpty(device)) { 113 if (StringUtils.isEmpty(device)) {
114 return ResponseResult.error("注册设备号不能为空"); 114 return ResponseResult.error("注册设备号不能为空");
@@ -179,7 +179,7 @@ public class RefreshController { @@ -179,7 +179,7 @@ public class RefreshController {
179 179
180 @PostMapping(value = "/driver/init/image/name") 180 @PostMapping(value = "/driver/init/image/name")
181 @ApiOperation("driver/init/image/name") 181 @ApiOperation("driver/init/image/name")
182 - @PreAuthorize("@ss.hasPermi('refresh:driver:init:image:name')") 182 + // @PreAuthorize("@ss.hasPermi('refresh:driver:init:image:name')")
183 public ResponseResult<Object> insertDriverInitImageOfName(@RequestParam("imagePath") String imagePath, @RequestParam("device") String device) { 183 public ResponseResult<Object> insertDriverInitImageOfName(@RequestParam("imagePath") String imagePath, @RequestParam("device") String device) {
184 if (StringUtils.isEmpty(device)) { 184 if (StringUtils.isEmpty(device)) {
185 return ResponseResult.error("注册设备号不能为空"); 185 return ResponseResult.error("注册设备号不能为空");
Bsth-admin/src/main/java/com/ruoyi/controller/key/info/KeyInfoController.java
@@ -39,6 +39,7 @@ public class KeyInfoController { @@ -39,6 +39,7 @@ public class KeyInfoController {
39 public String listLimit(@ModelAttribute KeyInfoQueryDTO request, @ModelAttribute OrderEntity orderEntity, @PathVariable Integer page, @PathVariable Integer pageLimit, org.springframework.ui.Model model) { 39 public String listLimit(@ModelAttribute KeyInfoQueryDTO request, @ModelAttribute OrderEntity orderEntity, @PathVariable Integer page, @PathVariable Integer pageLimit, org.springframework.ui.Model model) {
40 request.clearStrEmpty(); 40 request.clearStrEmpty();
41 KeyInfo entity = convert(request); 41 KeyInfo entity = convert(request);
  42 +
42 IPage<KeyInfo> response = KeyInfoService.pageList(new Page<KeyInfo>(page, pageLimit), entity,orderEntity); 43 IPage<KeyInfo> response = KeyInfoService.pageList(new Page<KeyInfo>(page, pageLimit), entity,orderEntity);
43 44
44 return JSON.toJSONString(convert(response)); 45 return JSON.toJSONString(convert(response));
Bsth-admin/src/main/java/com/ruoyi/controller/key/location/LinggangKeyWorkLocationController.java
1 package com.ruoyi.controller.key.location; 1 package com.ruoyi.controller.key.location;
2 2
  3 +import cn.hutool.core.convert.Convert;
3 import com.baomidou.mybatisplus.core.metadata.IPage; 4 import com.baomidou.mybatisplus.core.metadata.IPage;
4 import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 5 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5 import com.ruoyi.common.core.controller.BaseController; 6 import com.ruoyi.common.core.controller.BaseController;
6 import com.ruoyi.common.utils.poi.ExcelUtil; 7 import com.ruoyi.common.utils.poi.ExcelUtil;
7 import com.ruoyi.domain.OrderEntity; 8 import com.ruoyi.domain.OrderEntity;
  9 +import com.ruoyi.domain.caiinfo.CarInfo;
  10 +import com.ruoyi.domain.driver.NewDriver;
  11 +import com.ruoyi.domain.key.info.KeyInfo;
8 import com.ruoyi.domain.key.location.LinggangKeyWorkLocation; 12 import com.ruoyi.domain.key.location.LinggangKeyWorkLocation;
9 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationAddDTO; 13 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationAddDTO;
10 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationQueryDTO; 14 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationQueryDTO;
@@ -12,12 +16,18 @@ import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationUpdateDTO; @@ -12,12 +16,18 @@ import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationUpdateDTO;
12 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationUpdateStatusDTO; 16 import com.ruoyi.domain.key.location.dto.LinggangKeyWorkLocationUpdateStatusDTO;
13 import com.ruoyi.domain.key.location.vo.LinggangKeyWorkLocationVO; 17 import com.ruoyi.domain.key.location.vo.LinggangKeyWorkLocationVO;
14 import com.ruoyi.domain.scheduling.LinggangScheduling; 18 import com.ruoyi.domain.scheduling.LinggangScheduling;
  19 +import com.ruoyi.driver.domain.Driver;
  20 +import com.ruoyi.service.carinfo.CarInfoService;
  21 +import com.ruoyi.service.driver.NewDriverService;
  22 +import com.ruoyi.service.key.info.KeyInfoService;
15 import com.ruoyi.service.key.location.LinggangKeyWorkLocationService; 23 import com.ruoyi.service.key.location.LinggangKeyWorkLocationService;
16 import com.ruoyi.service.scheduling.LinggangSchedulingService; 24 import com.ruoyi.service.scheduling.LinggangSchedulingService;
17 import com.ruoyi.utils.DateUtil; 25 import com.ruoyi.utils.DateUtil;
18 import io.swagger.annotations.Api; 26 import io.swagger.annotations.Api;
19 import io.swagger.annotations.ApiOperation; 27 import io.swagger.annotations.ApiOperation;
20 import org.apache.commons.collections4.CollectionUtils; 28 import org.apache.commons.collections4.CollectionUtils;
  29 +import org.apache.commons.collections4.set.TransformedSet;
  30 +import org.apache.commons.lang3.StringUtils;
21 import org.apache.commons.lang3.time.DateUtils; 31 import org.apache.commons.lang3.time.DateUtils;
22 import org.springframework.beans.BeanUtils; 32 import org.springframework.beans.BeanUtils;
23 import org.springframework.beans.factory.annotation.Autowired; 33 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,9 +37,8 @@ import org.springframework.web.bind.annotation.*; @@ -27,9 +37,8 @@ import org.springframework.web.bind.annotation.*;
27 37
28 import javax.servlet.http.HttpServletResponse; 38 import javax.servlet.http.HttpServletResponse;
29 import javax.validation.Valid; 39 import javax.validation.Valid;
30 -import java.util.Date;  
31 -import java.util.List;  
32 -import java.util.Optional; 40 +import java.util.*;
  41 +import java.util.stream.Collectors;
33 42
34 @RestController 43 @RestController
35 @Api(tags = "钥匙存放地址") 44 @Api(tags = "钥匙存放地址")
@@ -39,15 +48,53 @@ public class LinggangKeyWorkLocationController extends BaseController { @@ -39,15 +48,53 @@ public class LinggangKeyWorkLocationController extends BaseController {
39 private LinggangKeyWorkLocationService linggangKeyWorkLocationService; 48 private LinggangKeyWorkLocationService linggangKeyWorkLocationService;
40 @Autowired 49 @Autowired
41 private LinggangSchedulingService schedulingService; 50 private LinggangSchedulingService schedulingService;
  51 + @Autowired
  52 + private NewDriverService driverService;
  53 + @Autowired
  54 + private KeyInfoService keyInfoService;
  55 + @Autowired
  56 + private CarInfoService carInfoService;
42 57
43 @ApiOperation("分页查询") 58 @ApiOperation("分页查询")
44 @PreAuthorize("@ss.hasPermi('linggang:key:work:location:list:limit:page:limit')") 59 @PreAuthorize("@ss.hasPermi('linggang:key:work:location:list:limit:page:limit')")
45 @PostMapping(value = "/list/limit/{page}/{pageLimit}") 60 @PostMapping(value = "/list/limit/{page}/{pageLimit}")
46 public IPage<LinggangKeyWorkLocationVO> listLimit(@ModelAttribute LinggangKeyWorkLocationQueryDTO request, @ModelAttribute OrderEntity orderEntity, @PathVariable Integer page, @PathVariable Integer pageLimit, org.springframework.ui.Model model) { 61 public IPage<LinggangKeyWorkLocationVO> listLimit(@ModelAttribute LinggangKeyWorkLocationQueryDTO request, @ModelAttribute OrderEntity orderEntity, @PathVariable Integer page, @PathVariable Integer pageLimit, org.springframework.ui.Model model) {
47 LinggangKeyWorkLocation entity = convert(request); 62 LinggangKeyWorkLocation entity = convert(request);
  63 + if (StringUtils.isNotBlank(request.getNbbm())) {
  64 + CarInfo carInfo = carInfoService.getOneByNbbm(request.getNbbm());
  65 + if (Objects.isNull(carInfo)) {
  66 + entity.setKeyInfoId(-10000);
  67 + } else {
  68 + List<KeyInfo> keyInfos = keyInfoService.listPlateNum(carInfo.getPlateNum());
  69 + if (CollectionUtils.isEmpty(keyInfos)) {
  70 + entity.setKeyInfoId(-10000);
  71 + } else {
  72 + Set<Integer> keyIds = keyInfos.stream().map(KeyInfo::getId).collect(Collectors.toSet());
  73 + entity.setKeyInfoIds(keyIds);
  74 + }
  75 + }
  76 + }
  77 +
  78 + Set<Integer> types = new HashSet<>();
  79 + types.add(1);
  80 + types.add(0);
  81 + entity.setTypes1(types);
  82 + List<NewDriver> drivers = null;
  83 + List<KeyInfo> keyInfos = null;
  84 + List<CarInfo> carInfos = null;
48 IPage<LinggangKeyWorkLocation> response = linggangKeyWorkLocationService.pageList(new Page<LinggangKeyWorkLocation>(page, pageLimit), entity, orderEntity); 85 IPage<LinggangKeyWorkLocation> response = linggangKeyWorkLocationService.pageList(new Page<LinggangKeyWorkLocation>(page, pageLimit), entity, orderEntity);
  86 + if (Objects.nonNull(response) && CollectionUtils.isNotEmpty(response.getRecords())) {
  87 + Set<Integer> keyIds = response.getRecords().stream().map(LinggangKeyWorkLocation::getKeyInfoId).collect(Collectors.toSet());
  88 + Set<Long> driverIds = response.getRecords().stream().map(LinggangKeyWorkLocation::getCreateBy).collect(Collectors.toSet());
49 89
50 - return convert(response); 90 + drivers = driverService.listOfIdsLon(driverIds);
  91 + keyInfos = keyInfoService.listByIds(keyIds);
  92 + if (CollectionUtils.isNotEmpty(keyIds)) {
  93 + Set<String> plateNums = keyInfos.stream().map(KeyInfo::getPlateNum).collect(Collectors.toSet());
  94 + carInfos = carInfoService.listPlateNums(plateNums);
  95 + }
  96 + }
  97 + return convert(response, drivers, keyInfos, carInfos);
51 } 98 }
52 99
53 @ApiOperation("根据ID查询详情") 100 @ApiOperation("根据ID查询详情")
@@ -113,30 +160,30 @@ public class LinggangKeyWorkLocationController extends BaseController { @@ -113,30 +160,30 @@ public class LinggangKeyWorkLocationController extends BaseController {
113 return flag ? com.ruoyi.common.core.domain.ResponseResult.success(Boolean.TRUE) : com.ruoyi.common.core.domain.ResponseResult.error("修改数据失败,请稍后再试"); 160 return flag ? com.ruoyi.common.core.domain.ResponseResult.success(Boolean.TRUE) : com.ruoyi.common.core.domain.ResponseResult.error("修改数据失败,请稍后再试");
114 } 161 }
115 162
116 - private LinggangScheduling queryScheduling(LinggangKeyWorkLocationUpdateStatusDTO request){ 163 + private LinggangScheduling queryScheduling(LinggangKeyWorkLocationUpdateStatusDTO request) {
117 LinggangScheduling scheduling = new LinggangScheduling(); 164 LinggangScheduling scheduling = new LinggangScheduling();
118 scheduling.setJobCode(request.getJobCode()); 165 scheduling.setJobCode(request.getJobCode());
119 scheduling.setStartScheduleDate(DateUtil.shortDate(request.getScheduleDate())); 166 scheduling.setStartScheduleDate(DateUtil.shortDate(request.getScheduleDate()));
120 - scheduling.setEndScheduleDate(DateUtils.addDays(scheduling.getStartScheduleDate(),1)); 167 + scheduling.setEndScheduleDate(DateUtils.addDays(scheduling.getStartScheduleDate(), 1));
121 168
122 List<LinggangScheduling> schedulings = schedulingService.list(scheduling); 169 List<LinggangScheduling> schedulings = schedulingService.list(scheduling);
123 int size = CollectionUtils.size(schedulings); 170 int size = CollectionUtils.size(schedulings);
124 171
125 - if(size > 1){  
126 - Optional<LinggangScheduling> optional = schedulings.stream().filter(sc->request.getScheduleDate().getTime()-sc.getFcsjT()<300000).findFirst();  
127 - if(optional.isPresent()){  
128 - return optional.get();  
129 - }  
130 - optional = schedulings.stream().filter(sc->request.getScheduleDate().getTime()-sc.getZdsjT()<300000).findFirst();  
131 - if(optional.isPresent()){ 172 + if (size > 1) {
  173 + Optional<LinggangScheduling> optional = schedulings.stream().filter(sc -> request.getScheduleDate().getTime() - sc.getFcsjT() < 300000).findFirst();
  174 + if (optional.isPresent()) {
  175 + return optional.get();
  176 + }
  177 + optional = schedulings.stream().filter(sc -> request.getScheduleDate().getTime() - sc.getZdsjT() < 300000).findFirst();
  178 + if (optional.isPresent()) {
132 return optional.get(); 179 return optional.get();
133 } 180 }
134 181
135 182
136 } 183 }
137 - if(0 == size){ 184 + if (0 == size) {
138 return null; 185 return null;
139 - }else if(1 == size){ 186 + } else if (1 == size) {
140 return schedulings.get(0); 187 return schedulings.get(0);
141 } 188 }
142 return null; 189 return null;
@@ -182,19 +229,37 @@ public class LinggangKeyWorkLocationController extends BaseController { @@ -182,19 +229,37 @@ public class LinggangKeyWorkLocationController extends BaseController {
182 }).orElseGet(null); 229 }).orElseGet(null);
183 } 230 }
184 231
185 - private List<LinggangKeyWorkLocationVO> convert(List<LinggangKeyWorkLocation> sources) { 232 + private List<LinggangKeyWorkLocationVO> convert(List<LinggangKeyWorkLocation> sources, List<NewDriver> drivers, List<KeyInfo> keyInfos, List<CarInfo> carInfos) {
  233 + int driverSize = CollectionUtils.size(drivers);
  234 + int carInfoSize = CollectionUtils.size(carInfos);
  235 +
186 return java.util.Optional.ofNullable(sources).map(scs -> { 236 return java.util.Optional.ofNullable(sources).map(scs -> {
187 return scs.stream().map(source -> { 237 return scs.stream().map(source -> {
188 - return convert(source); 238 + LinggangKeyWorkLocationVO vo = convert(source);
  239 + if (driverSize > 0) {
  240 + Optional<NewDriver> optional = drivers.stream().filter(d -> Objects.equals(Convert.toLong(d.getId()), source.getCreateBy())).findFirst();
  241 + optional.ifPresent(newDriver -> vo.setJobCode(newDriver.getJobCode()));
  242 + }
  243 +
  244 + if (carInfoSize > 0) {
  245 + Optional<KeyInfo> optional = keyInfos.stream().filter(k -> Objects.equals(k.getId(), source.getKeyInfoId())).findFirst();
  246 + if (optional.isPresent()) {
  247 + Optional<CarInfo> optCar = carInfos.stream().filter(c -> Objects.equals(optional.get().getPlateNum(), c.getPlateNum())).findFirst();
  248 + optCar.ifPresent(c -> vo.setNbbm(c.getNbbm()));
  249 + }
  250 + }
  251 + return vo;
189 }).collect(java.util.stream.Collectors.toList()); 252 }).collect(java.util.stream.Collectors.toList());
190 }).orElseGet(null); 253 }).orElseGet(null);
191 } 254 }
192 255
193 - private IPage<LinggangKeyWorkLocationVO> convert(IPage<LinggangKeyWorkLocation> sources) { 256 + private IPage<LinggangKeyWorkLocationVO> convert(IPage<LinggangKeyWorkLocation> sources, List<NewDriver> drivers, List<KeyInfo> keyInfos, List<CarInfo> carInfos) {
  257 +
  258 +
194 return java.util.Optional.ofNullable(sources).map(scs -> { 259 return java.util.Optional.ofNullable(sources).map(scs -> {
195 IPage<LinggangKeyWorkLocationVO> target = new Page(); 260 IPage<LinggangKeyWorkLocationVO> target = new Page();
196 BeanUtils.copyProperties(scs, target); 261 BeanUtils.copyProperties(scs, target);
197 - List<LinggangKeyWorkLocationVO> voNames = convert(scs.getRecords()); 262 + List<LinggangKeyWorkLocationVO> voNames = convert(scs.getRecords(), drivers, keyInfos, carInfos);
198 target.setRecords(voNames); 263 target.setRecords(voNames);
199 264
200 return target; 265 return target;
Bsth-admin/src/main/java/com/ruoyi/controller/scheduling/LinggangSchedulingController.java 0 → 100644
  1 +package com.ruoyi.controller.scheduling;
  2 +
  3 +import com.ruoyi.common.core.controller.BaseController;
  4 +import com.ruoyi.domain.scheduling.LinggangScheduling;
  5 +import com.ruoyi.domain.scheduling.dto.LinggangSchedulingAddDTO;
  6 +import com.ruoyi.domain.scheduling.dto.LinggangSchedulingQueryDTO;
  7 +import com.ruoyi.domain.scheduling.dto.LinggangSchedulingUpdateDTO;
  8 +import com.ruoyi.domain.scheduling.vo.LinggangSchedulingVO;
  9 +import com.ruoyi.service.scheduling.LinggangSchedulingService;
  10 +import io.swagger.annotations.Api;
  11 +import io.swagger.annotations.ApiOperation;
  12 +import org.springframework.beans.factory.annotation.Autowired;
  13 +import org.springframework.web.bind.annotation.RestController;
  14 +import org.springframework.web.bind.annotation.RequestMapping;
  15 +import org.springframework.web.bind.annotation.*;
  16 +import org.springframework.beans.BeanUtils;
  17 +
  18 +import org.springframework.security.access.prepost.PreAuthorize;
  19 +
  20 +import java.util.List;
  21 +import java.util.Date;
  22 +
  23 +import com.ruoyi.domain.OrderEntity;
  24 +
  25 +
  26 +import com.baomidou.mybatisplus.core.metadata.IPage;
  27 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  28 +
  29 +
  30 +import com.ruoyi.common.utils.poi.ExcelUtil;
  31 +
  32 +import javax.servlet.http.HttpServletResponse;
  33 +import javax.validation.Valid;
  34 +
  35 +import org.springframework.validation.BindingResult;
  36 +
  37 +
  38 +@RestController
  39 +@Api(tags = "")
  40 +@RequestMapping("linggang/scheduling")
  41 +public class LinggangSchedulingController extends BaseController {
  42 + @Autowired
  43 + private LinggangSchedulingService linggangSchedulingService;
  44 +
  45 + @ApiOperation("分页查询")
  46 + @PreAuthorize("@ss.hasPermi('linggang:scheduling:list:limit:page:limit')")
  47 + @PostMapping(value = "/list/limit/{page}/{pageLimit}")
  48 + public IPage<LinggangSchedulingVO> listLimit(@ModelAttribute LinggangSchedulingQueryDTO request, @ModelAttribute OrderEntity orderEntity, @PathVariable Integer page, @PathVariable Integer pageLimit, org.springframework.ui.Model model) {
  49 + LinggangScheduling entity = convert(request);
  50 + entity.setType(1);
  51 + IPage<LinggangScheduling> response = linggangSchedulingService.pageList(new Page<LinggangScheduling>(page, pageLimit), entity, orderEntity);
  52 +
  53 + return convert(response);
  54 + }
  55 +
  56 + @ApiOperation("根据ID查询详情")
  57 + @GetMapping(value = "/view/{id}")
  58 + public com.ruoyi.common.core.domain.ResponseResult<LinggangSchedulingVO> view(@PathVariable("id") Integer id, org.springframework.ui.Model model) {
  59 + LinggangScheduling source = linggangSchedulingService.getById(id);
  60 +
  61 + return com.ruoyi.common.core.domain.ResponseResult.success(convert(source));
  62 + }
  63 +
  64 +// @PostMapping(value = "/list/select")
  65 +// @ApiOperation("(页面选择)")
  66 +// public com.ruoyi.common.core.domain.ResponseResult<List<LinggangSchedulingVO>> listSelect( LinggangSchedulingQueryDTO request) {
  67 +// LinggangScheduling entity = convert(request);
  68 +// List<LinggangScheduling> selectList = linggangSchedulingService.listOfSelect(entity);
  69 +// return com.ruoyi.common.core.domain.ResponseResult.success(convert(selectList));
  70 +// }
  71 +
  72 + @PreAuthorize("@ss.hasPermi('linggang:scheduling:export')")
  73 + @ApiOperation("导出")
  74 + @PostMapping("/export")
  75 + public void export(HttpServletResponse response, @RequestBody LinggangSchedulingQueryDTO request) {
  76 + LinggangScheduling entity = convert(request);
  77 + List<LinggangScheduling> list = linggangSchedulingService.list(entity);
  78 + ExcelUtil<LinggangScheduling> util = new ExcelUtil<LinggangScheduling>(LinggangScheduling.class);
  79 + util.exportExcel(response, list, "LinggangScheduling");
  80 + }
  81 +
  82 + // @ApiOperation("添加")
  83 +// @PreAuthorize("@ss.hasPermi('linggang:scheduling:add')")
  84 +// @PostMapping(value="/add")
  85 +// public com.ruoyi.common.core.domain.ResponseResult add(@Valid @ModelAttribute LinggangSchedulingAddDTO request, BindingResult bindingResult) {
  86 +// if(bindingResult.hasErrors()){
  87 +// return com.ruoyi.common.core.domain.ResponseResult.error(bindingResult.getFieldError().getDefaultMessage());
  88 +// }
  89 +// LinggangScheduling entity = convert(request);
  90 +// entity.setCreateBy(getUserId());
  91 +// entity.setCreateTime(new Date());
  92 +// int count = linggangSchedulingService.insertSelective(entity);
  93 +// return count > 0?com.ruoyi.common.core.domain.ResponseResult.success(Boolean.TRUE):com.ruoyi.common.core.domain.ResponseResult.error("添加数据失败,请稍后再试");
  94 +// }
  95 + @ApiOperation("修改")
  96 + @PreAuthorize("@ss.hasPermi('linggang:scheduling:update')")
  97 + @PostMapping(value = "/update")
  98 + public com.ruoyi.common.core.domain.ResponseResult update(@Valid @ModelAttribute LinggangSchedulingUpdateDTO request, BindingResult bindingResult) {
  99 + if (bindingResult.hasErrors()) {
  100 + return com.ruoyi.common.core.domain.ResponseResult.error(bindingResult.getFieldError().getDefaultMessage());
  101 + }
  102 + LinggangScheduling entity = convert(request);
  103 +// entity.setUpdateBy(getUserId());
  104 +// entity.setUpdateTime(new Date());
  105 + boolean flag = linggangSchedulingService.updateAlcoholCountByPrimaryKey(entity);
  106 + return flag ? com.ruoyi.common.core.domain.ResponseResult.success(Boolean.TRUE) : com.ruoyi.common.core.domain.ResponseResult.error("修改数据失败,请稍后再试");
  107 + }
  108 +
  109 +
  110 + private LinggangScheduling convert(LinggangSchedulingQueryDTO source) {
  111 + return java.util.Optional.ofNullable(source).map(sc -> {
  112 + LinggangScheduling target = new LinggangScheduling();
  113 + BeanUtils.copyProperties(sc, target);
  114 + return target;
  115 + }).orElse(null);
  116 + }
  117 +
  118 + private LinggangScheduling convert(LinggangSchedulingUpdateDTO source) {
  119 + return java.util.Optional.ofNullable(source).map(sc -> {
  120 + LinggangScheduling target = new LinggangScheduling();
  121 + BeanUtils.copyProperties(sc, target);
  122 + return target;
  123 + }).orElse(null);
  124 + }
  125 +
  126 +
  127 + private LinggangScheduling convert(LinggangSchedulingAddDTO source) {
  128 + return java.util.Optional.ofNullable(source).map(sc -> {
  129 + LinggangScheduling target = new LinggangScheduling();
  130 + BeanUtils.copyProperties(sc, target);
  131 + return target;
  132 + }).orElseGet(null);
  133 + }
  134 +
  135 + private LinggangSchedulingVO convert(LinggangScheduling source) {
  136 + return java.util.Optional.ofNullable(source).map(sc -> {
  137 + LinggangSchedulingVO target = new LinggangSchedulingVO();
  138 + BeanUtils.copyProperties(source, target);
  139 + return target;
  140 + }).orElseGet(null);
  141 + }
  142 +
  143 + private List<LinggangSchedulingVO> convert(List<LinggangScheduling> sources) {
  144 + return java.util.Optional.ofNullable(sources).map(scs -> {
  145 + return scs.stream().map(source -> {
  146 + return convert(source);
  147 + }).collect(java.util.stream.Collectors.toList());
  148 + }).orElseGet(null);
  149 + }
  150 +
  151 + private IPage<LinggangSchedulingVO> convert(IPage<LinggangScheduling> sources) {
  152 + return java.util.Optional.ofNullable(sources).map(scs -> {
  153 + IPage<LinggangSchedulingVO> target = new Page();
  154 + BeanUtils.copyProperties(scs, target);
  155 + List<LinggangSchedulingVO> voNames = convert(scs.getRecords());
  156 + target.setRecords(voNames);
  157 +
  158 + return target;
  159 + }).orElseGet(null);
  160 + }
  161 +}
0 \ No newline at end of file 162 \ No newline at end of file
Bsth-admin/src/main/java/com/ruoyi/domain/key/location/LinggangKeyWorkLocation.java
@@ -116,6 +116,9 @@ public class LinggangKeyWorkLocation { @@ -116,6 +116,9 @@ public class LinggangKeyWorkLocation {
116 @TableField(exist = false) 116 @TableField(exist = false)
117 private Set<Integer> types; 117 private Set<Integer> types;
118 118
  119 + @TableField(exist = false)
  120 + private Set<Integer> types1;
  121 +
119 private Date time; 122 private Date time;
120 123
121 @TableField(exist = false) 124 @TableField(exist = false)
Bsth-admin/src/main/java/com/ruoyi/domain/key/location/dto/LinggangKeyWorkLocationQueryDTO.java
1 package com.ruoyi.domain.key.location.dto; 1 package com.ruoyi.domain.key.location.dto;
2 2
  3 +import com.fasterxml.jackson.annotation.JsonFormat;
3 import com.ruoyi.common.annotation.Excel; 4 import com.ruoyi.common.annotation.Excel;
4 import io.swagger.annotations.ApiModel; 5 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty; 6 import io.swagger.annotations.ApiModelProperty;
@@ -7,6 +8,8 @@ import lombok.Data; @@ -7,6 +8,8 @@ import lombok.Data;
7 import lombok.EqualsAndHashCode; 8 import lombok.EqualsAndHashCode;
8 import lombok.experimental.Accessors; 9 import lombok.experimental.Accessors;
9 10
  11 +import java.util.Date;
  12 +
10 @Data 13 @Data
11 @ApiModel(value = "钥匙存放地址的查询DTO") 14 @ApiModel(value = "钥匙存放地址的查询DTO")
12 @Accessors(chain = true) 15 @Accessors(chain = true)
@@ -74,6 +77,10 @@ public class LinggangKeyWorkLocationQueryDTO implements java.io.Serializable { @@ -74,6 +77,10 @@ public class LinggangKeyWorkLocationQueryDTO implements java.io.Serializable {
74 @ApiModelProperty(value="场站编码") 77 @ApiModelProperty(value="场站编码")
75 private String yardCode; 78 private String yardCode;
76 79
  80 + private String nbbm;
  81 +
  82 + private Date time;
  83 +
77 84
78 @Override 85 @Override
79 public String toString() { 86 public String toString() {
Bsth-admin/src/main/java/com/ruoyi/domain/key/location/vo/LinggangKeyWorkLocationVO.java
1 package com.ruoyi.domain.key.location.vo; 1 package com.ruoyi.domain.key.location.vo;
2 2
  3 +import com.fasterxml.jackson.annotation.JsonFormat;
3 import com.ruoyi.common.annotation.Excel; 4 import com.ruoyi.common.annotation.Excel;
4 import io.swagger.annotations.ApiModel; 5 import io.swagger.annotations.ApiModel;
5 import io.swagger.annotations.ApiModelProperty; 6 import io.swagger.annotations.ApiModelProperty;
@@ -9,6 +10,8 @@ import lombok.EqualsAndHashCode; @@ -9,6 +10,8 @@ import lombok.EqualsAndHashCode;
9 import lombok.NoArgsConstructor; 10 import lombok.NoArgsConstructor;
10 import lombok.experimental.Accessors; 11 import lombok.experimental.Accessors;
11 12
  13 +import java.util.Date;
  14 +
12 @Data 15 @Data
13 @NoArgsConstructor 16 @NoArgsConstructor
14 @AllArgsConstructor 17 @AllArgsConstructor
@@ -76,6 +79,11 @@ public class LinggangKeyWorkLocationVO implements java.io.Serializable { @@ -76,6 +79,11 @@ public class LinggangKeyWorkLocationVO implements java.io.Serializable {
76 @ApiModelProperty(value="场站编码") 79 @ApiModelProperty(value="场站编码")
77 private String yardCode; 80 private String yardCode;
78 81
  82 + private Integer type1;
  83 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
  84 + private Date time;
  85 + private String nbbm;
  86 +
79 87
80 @Override 88 @Override
81 public String toString() { 89 public String toString() {
Bsth-admin/src/main/java/com/ruoyi/domain/scheduling/LinggangScheduling.java
@@ -146,6 +146,9 @@ public class LinggangScheduling { @@ -146,6 +146,9 @@ public class LinggangScheduling {
146 @TableField(value = "scheduling_type") 146 @TableField(value = "scheduling_type")
147 private java.lang.Integer type; 147 private java.lang.Integer type;
148 148
  149 + @TableField(value = "alcohol_count")
  150 + private Integer alcoholCount;
  151 +
149 152
150 @TableField(exist = false) 153 @TableField(exist = false)
151 private String czCode; 154 private String czCode;
Bsth-admin/src/main/java/com/ruoyi/domain/scheduling/dto/LinggangSchedulingUpdateDTO.java
@@ -81,6 +81,8 @@ public class LinggangSchedulingUpdateDTO implements java.io.Serializable { @@ -81,6 +81,8 @@ public class LinggangSchedulingUpdateDTO implements java.io.Serializable {
81 @ApiModelProperty(value = "操作人员") 81 @ApiModelProperty(value = "操作人员")
82 private String operator; 82 private String operator;
83 83
  84 + private Integer alcoholCount;
  85 +
84 86
85 @Override 87 @Override
86 public String toString() { 88 public String toString() {
Bsth-admin/src/main/java/com/ruoyi/domain/scheduling/vo/LinggangSchedulingVO.java
1 package com.ruoyi.domain.scheduling.vo; 1 package com.ruoyi.domain.scheduling.vo;
2 2
  3 +import com.ruoyi.common.utils.DateUtils;
3 import io.swagger.annotations.ApiModel; 4 import io.swagger.annotations.ApiModel;
4 import io.swagger.annotations.ApiModelProperty; 5 import io.swagger.annotations.ApiModelProperty;
5 6
@@ -8,8 +9,10 @@ import lombok.EqualsAndHashCode; @@ -8,8 +9,10 @@ import lombok.EqualsAndHashCode;
8 import lombok.experimental.Accessors; 9 import lombok.experimental.Accessors;
9 import lombok.NoArgsConstructor; 10 import lombok.NoArgsConstructor;
10 import lombok.AllArgsConstructor; 11 import lombok.AllArgsConstructor;
  12 +import org.apache.commons.lang3.StringUtils;
11 13
12 import java.util.Date; 14 import java.util.Date;
  15 +import java.util.Objects;
13 16
14 @Data 17 @Data
15 @NoArgsConstructor 18 @NoArgsConstructor
@@ -84,6 +87,39 @@ public class LinggangSchedulingVO implements java.io.Serializable { @@ -84,6 +87,39 @@ public class LinggangSchedulingVO implements java.io.Serializable {
84 @ApiModelProperty(value = "钥匙ID", example = "1") 87 @ApiModelProperty(value = "钥匙ID", example = "1")
85 private Integer keyInfoId; 88 private Integer keyInfoId;
86 89
  90 + private Integer alcoholCount;
  91 +
  92 + private java.lang.String qdzname;
  93 +
  94 + private java.lang.String zdzname;
  95 +
  96 + public String getFcsjTStr() {
  97 + return formatDate(fcsjT);
  98 + }
  99 +
  100 + public String getZdsjTStr() {
  101 + return formatDate(zdsjT);
  102 + }
  103 +
  104 + private String formatDate(Long val) {
  105 + if (Objects.isNull(val)) {
  106 + return null;
  107 + }
  108 + Date date = new Date(val);
  109 + return DateUtils.YYYY_MM_DD_HH_MM_SS.format(date);
  110 + }
  111 +
  112 + public String getScheduleDateStr() {
  113 + return Objects.isNull(scheduleDate) ? null : DateUtils.YYYY_MM_DD.format(scheduleDate);
  114 + }
  115 +
  116 + public String getBcTypeLabel() {
  117 + return StringUtils.equalsAnyIgnoreCase("in", bcType) ? "进站" : StringUtils.equalsAnyIgnoreCase("out", bcType) ? "出站" : null;
  118 + }
  119 +
  120 + public String getAlcoholFlagLabel() {
  121 + return Objects.equals(this.getAlcoholFlag(), 1) ? "是" : Objects.equals(this.getAlcoholFlag(), 0) ? "否" : null;
  122 + }
87 123
88 @Override 124 @Override
89 public String toString() { 125 public String toString() {
Bsth-admin/src/main/java/com/ruoyi/in/controller/SignInController.java
@@ -18,6 +18,7 @@ import io.swagger.annotations.Api; @@ -18,6 +18,7 @@ import io.swagger.annotations.Api;
18 import io.swagger.annotations.ApiOperation; 18 import io.swagger.annotations.ApiOperation;
19 import io.swagger.annotations.ApiParam; 19 import io.swagger.annotations.ApiParam;
20 import org.apache.commons.collections4.CollectionUtils; 20 import org.apache.commons.collections4.CollectionUtils;
  21 +import org.apache.commons.lang3.StringUtils;
21 import org.springframework.beans.factory.annotation.Autowired; 22 import org.springframework.beans.factory.annotation.Autowired;
22 import org.springframework.validation.annotation.Validated; 23 import org.springframework.validation.annotation.Validated;
23 import org.springframework.web.bind.annotation.*; 24 import org.springframework.web.bind.annotation.*;
@@ -63,17 +64,30 @@ public class SignInController extends BaseController { @@ -63,17 +64,30 @@ public class SignInController extends BaseController {
63 SysDictData source = sysDictDataService.getResourceBaseUrl(); 64 SysDictData source = sysDictDataService.getResourceBaseUrl();
64 List<LinggangSignInResource> resources = signInResourceService.listBySignIds(ids); 65 List<LinggangSignInResource> resources = signInResourceService.listBySignIds(ids);
65 if (CollectionUtils.isNotEmpty(resources)) { 66 if (CollectionUtils.isNotEmpty(resources)) {
  67 +
66 resources.stream().forEach(r -> { 68 resources.stream().forEach(r -> {
67 Optional<SignInResponseVo> optVo = list.stream().filter(l -> Objects.equals(l.getId(), r.getSignId())).findFirst(); 69 Optional<SignInResponseVo> optVo = list.stream().filter(l -> Objects.equals(l.getId(), r.getSignId())).findFirst();
  70 +
68 if (optVo.isPresent()) { 71 if (optVo.isPresent()) {
69 if (Objects.equals(r.getResourceType(), 2)) { 72 if (Objects.equals(r.getResourceType(), 2)) {
70 optVo.get().setVideoURL(sysDictDataService.combationValue(r.getPath(), source)); 73 optVo.get().setVideoURL(sysDictDataService.combationValue(r.getPath(), source));
71 } else { 74 } else {
72 optVo.get().setImage(sysDictDataService.combationValue(r.getPath(), source)); 75 optVo.get().setImage(sysDictDataService.combationValue(r.getPath(), source));
  76 + optVo.get().setImageFlag(false);
73 } 77 }
74 } 78 }
  79 +
75 }); 80 });
76 } 81 }
  82 +
  83 + List<SignInResponseVo> list1 = list.stream().map(vo -> {
  84 + if ( vo.isImageFlag() && StringUtils.isNotEmpty(vo.getImage())) {
  85 + vo.setImage(sysDictDataService.combationValue(vo.getImage(), source));
  86 + }
  87 + return vo;
  88 + }).collect(Collectors.toList());
  89 +
  90 + tableDataInfo.setRows(list1);
77 } 91 }
78 92
79 return tableDataInfo; 93 return tableDataInfo;
Bsth-admin/src/main/java/com/ruoyi/in/service/impl/SignInServiceV1Impl.java
@@ -516,7 +516,7 @@ public class SignInServiceV1Impl extends ServiceImpl&lt;SignInMapperV1, SignInV1&gt; i @@ -516,7 +516,7 @@ public class SignInServiceV1Impl extends ServiceImpl&lt;SignInMapperV1, SignInV1&gt; i
516 signIn.setRemark(remark); 516 signIn.setRemark(remark);
517 signIn.setExType(2); 517 signIn.setExType(2);
518 signIn.setStatus(2); 518 signIn.setStatus(2);
519 - signIn.setType(1); 519 +// signIn.setType(1);
520 520
521 } 521 }
522 522
Bsth-admin/src/main/java/com/ruoyi/pojo/response/SignInResponseVo.java
@@ -29,6 +29,9 @@ public class SignInResponseVo extends SignIn { @@ -29,6 +29,9 @@ public class SignInResponseVo extends SignIn {
29 @ExcelIgnore 29 @ExcelIgnore
30 private String VideoURL; 30 private String VideoURL;
31 31
  32 + @ExcelIgnore
  33 + private boolean imageFlag = true;
  34 +
32 35
33 public SignInResponseVo(SignIn signIn){ 36 public SignInResponseVo(SignIn signIn){
34 this.setDeviceId(signIn.getDeviceId()); 37 this.setDeviceId(signIn.getDeviceId());
Bsth-admin/src/main/java/com/ruoyi/scheduling/service/impl/SchedulingServiceV1Impl.java
@@ -46,9 +46,8 @@ public class SchedulingServiceV1Impl extends ServiceImpl&lt;SchedulingMapperV1, Dri @@ -46,9 +46,8 @@ public class SchedulingServiceV1Impl extends ServiceImpl&lt;SchedulingMapperV1, Dri
46 try { 46 try {
47 Date date1 = DateUtils.FAST_YYYY_MM_DDHHMMSS.parse(dateStr); 47 Date date1 = DateUtils.FAST_YYYY_MM_DDHHMMSS.parse(dateStr);
48 48
49 - dateStr = DateUtils.FAST_YYYY_MM_DD.format(date);  
50 - dateStr = StringUtils.join(dateStr, " 00:00:00");  
51 - Date date2 = DateUtils.FAST_YYYY_MM_DDHHMMSS.parse(dateStr); 49 +
  50 + Date date2 = org.apache.commons.lang3.time.DateUtils.addMinutes(date,-80);
52 51
53 SchedulingDateEntity entity = new SchedulingDateEntity(); 52 SchedulingDateEntity entity = new SchedulingDateEntity();
54 entity.setStartDate(date2); 53 entity.setStartDate(date2);
Bsth-admin/src/main/java/com/ruoyi/service/ThreadJobService.java
@@ -588,7 +588,7 @@ public class ThreadJobService { @@ -588,7 +588,7 @@ public class ThreadJobService {
588 588
589 List<LinggangScheduling> schedulings1 = schedulings; 589 List<LinggangScheduling> schedulings1 = schedulings;
590 List<LinggangScheduling> removeSchedulings = sourceList.stream().filter(s -> { 590 List<LinggangScheduling> removeSchedulings = sourceList.stream().filter(s -> {
591 - Optional<LinggangScheduling> opt = schedulings1.stream().filter(s1 -> s1.importEqus(s) && Objects.nonNull(s1.getSignInId())).findFirst(); 591 + Optional<LinggangScheduling> opt = schedulings1.stream().filter(s1 -> s1.importEqus(s) && Objects.isNull(s1.getSignInId())).findFirst();
592 if (!opt.isPresent()) { 592 if (!opt.isPresent()) {
593 log.debug("需要删除的排班数据:[{}]", s); 593 log.debug("需要删除的排班数据:[{}]", s);
594 } 594 }
Bsth-admin/src/main/java/com/ruoyi/service/carinfo/CarInfoService.java
@@ -49,6 +49,8 @@ public interface CarInfoService extends IService&lt;CarInfo&gt; { @@ -49,6 +49,8 @@ public interface CarInfoService extends IService&lt;CarInfo&gt; {
49 */ 49 */
50 CarInfo getOneByPlateNum(String plateNum); 50 CarInfo getOneByPlateNum(String plateNum);
51 51
  52 + CarInfo getOneByNbbm(String nbbm);
  53 +
52 Integer countId(CarInfo entity); 54 Integer countId(CarInfo entity);
53 55
54 /** 56 /**
Bsth-admin/src/main/java/com/ruoyi/service/impl/BigViewServiceV1Impl.java
@@ -50,8 +50,6 @@ public class BigViewServiceV1Impl implements BigViewServiceV1 { @@ -50,8 +50,6 @@ public class BigViewServiceV1Impl implements BigViewServiceV1 {
50 @Autowired 50 @Autowired
51 private SchedulingServiceV1 schedulingServiceV1; 51 private SchedulingServiceV1 schedulingServiceV1;
52 @Autowired 52 @Autowired
53 - private IDriverService driverService;  
54 - @Autowired  
55 private SignInServiceV1 signInServiceV1; 53 private SignInServiceV1 signInServiceV1;
56 54
57 @Autowired 55 @Autowired
Bsth-admin/src/main/java/com/ruoyi/service/impl/carinfo/CarInfoServiceImpl.java
@@ -147,6 +147,13 @@ public class CarInfoServiceImpl extends ServiceImpl&lt;CarInfoMapper, CarInfo&gt; impl @@ -147,6 +147,13 @@ public class CarInfoServiceImpl extends ServiceImpl&lt;CarInfoMapper, CarInfo&gt; impl
147 } 147 }
148 148
149 @Override 149 @Override
  150 + public CarInfo getOneByNbbm(String nbbm) {
  151 + CarInfo carInfo = new CarInfo();
  152 + carInfo.setNbbm(nbbm);
  153 + return getOne(carInfo);
  154 + }
  155 +
  156 + @Override
150 public Integer countId(CarInfo entity) { 157 public Integer countId(CarInfo entity) {
151 LambdaQueryWrapper<CarInfo> wrapper = new LambdaQueryWrapper<>(entity); 158 LambdaQueryWrapper<CarInfo> wrapper = new LambdaQueryWrapper<>(entity);
152 wrapper.select(CarInfo::getId); 159 wrapper.select(CarInfo::getId);
Bsth-admin/src/main/java/com/ruoyi/service/impl/key/info/KeyInfoServiceImpl.java
@@ -91,6 +91,13 @@ public class KeyInfoServiceImpl extends ServiceImpl&lt;com.ruoyi.mapper.key.info.Ke @@ -91,6 +91,13 @@ public class KeyInfoServiceImpl extends ServiceImpl&lt;com.ruoyi.mapper.key.info.Ke
91 } 91 }
92 92
93 @Override 93 @Override
  94 + public List<KeyInfo> listPlateNum(String plateNum) {
  95 + LambdaQueryWrapper<KeyInfo> wrapper = new LambdaQueryWrapper<>();
  96 + wrapper.eq(KeyInfo::getPlateNum, plateNum);
  97 + return list(wrapper);
  98 + }
  99 +
  100 + @Override
94 public List<KeyInfo> list(KeyInfo entity, Collection<String> plateNums) { 101 public List<KeyInfo> list(KeyInfo entity, Collection<String> plateNums) {
95 LambdaQueryWrapper<KeyInfo> wrapper = null; 102 LambdaQueryWrapper<KeyInfo> wrapper = null;
96 if (Objects.isNull(entity)) { 103 if (Objects.isNull(entity)) {
Bsth-admin/src/main/java/com/ruoyi/service/impl/key/location/LinggangKeyWorkLocationServiceImpl.java
@@ -78,11 +78,20 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -78,11 +78,20 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
78 */ 78 */
79 @Override 79 @Override
80 public IPage<LinggangKeyWorkLocation> pageList(Page<LinggangKeyWorkLocation> page, LinggangKeyWorkLocation entity, OrderEntity orderEntity) { 80 public IPage<LinggangKeyWorkLocation> pageList(Page<LinggangKeyWorkLocation> page, LinggangKeyWorkLocation entity, OrderEntity orderEntity) {
  81 + Date timeDate = entity.getTime();
  82 + String timeStr = null;
  83 + if(Objects.nonNull(timeDate)){
  84 + timeStr = DateUtil.YYYY_MM_DD_LINK.format(timeDate);
  85 + }
  86 + entity.setTime(null);
  87 +
81 LambdaQueryWrapper<LinggangKeyWorkLocation> countWrapper = new LambdaQueryWrapper<>(entity); 88 LambdaQueryWrapper<LinggangKeyWorkLocation> countWrapper = new LambdaQueryWrapper<>(entity);
82 countWrapper.select(LinggangKeyWorkLocation::getId); 89 countWrapper.select(LinggangKeyWorkLocation::getId);
83 switchTime(entity, countWrapper); 90 switchTime(entity, countWrapper);
84 switchTypes(entity, countWrapper); 91 switchTypes(entity, countWrapper);
  92 + switchTypes1(entity,countWrapper);
85 switchKeyInfoIds(entity, countWrapper); 93 switchKeyInfoIds(entity, countWrapper);
  94 + switchTime(timeStr,countWrapper);
86 int count = count(countWrapper); 95 int count = count(countWrapper);
87 96
88 List<LinggangKeyWorkLocation> lists = Collections.emptyList(); 97 List<LinggangKeyWorkLocation> lists = Collections.emptyList();
@@ -91,7 +100,9 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -91,7 +100,9 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
91 LambdaQueryWrapper<LinggangKeyWorkLocation> selectWrapper = new LambdaQueryWrapper<>(entity); 100 LambdaQueryWrapper<LinggangKeyWorkLocation> selectWrapper = new LambdaQueryWrapper<>(entity);
92 switchTime(entity, selectWrapper); 101 switchTime(entity, selectWrapper);
93 switchTypes(entity, selectWrapper); 102 switchTypes(entity, selectWrapper);
  103 + switchTypes1(entity,selectWrapper);
94 switchKeyInfoIds(entity, selectWrapper); 104 switchKeyInfoIds(entity, selectWrapper);
  105 + switchTime(timeStr,selectWrapper);
95 orderColumn(selectWrapper, orderEntity); 106 orderColumn(selectWrapper, orderEntity);
96 lists = list(selectWrapper); 107 lists = list(selectWrapper);
97 } 108 }
@@ -119,6 +130,13 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -119,6 +130,13 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
119 } 130 }
120 } 131 }
121 132
  133 + private static void switchTime(String timeStr, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper){
  134 + if(StringUtils.isEmpty(timeStr)){
  135 + return;
  136 + }
  137 + wrapper.likeRight(LinggangKeyWorkLocation::getTime,timeStr);
  138 + }
  139 +
122 private static void switchTypes(LinggangKeyWorkLocation entity, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper) { 140 private static void switchTypes(LinggangKeyWorkLocation entity, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper) {
123 if (Objects.isNull(entity) || Objects.isNull(wrapper)) { 141 if (Objects.isNull(entity) || Objects.isNull(wrapper)) {
124 return; 142 return;
@@ -129,6 +147,16 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -129,6 +147,16 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
129 } 147 }
130 } 148 }
131 149
  150 + private static void switchTypes1(LinggangKeyWorkLocation entity, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper) {
  151 + if (Objects.isNull(entity) || Objects.isNull(wrapper)) {
  152 + return;
  153 + }
  154 +
  155 + if (CollectionUtils.isNotEmpty(entity.getTypes1())) {
  156 + wrapper.in(LinggangKeyWorkLocation::getType1, entity.getTypes1());
  157 + }
  158 + }
  159 +
132 private static void switchKeyInfoIds(LinggangKeyWorkLocation entity, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper) { 160 private static void switchKeyInfoIds(LinggangKeyWorkLocation entity, LambdaQueryWrapper<LinggangKeyWorkLocation> wrapper) {
133 if (Objects.isNull(entity) || Objects.isNull(wrapper)) { 161 if (Objects.isNull(entity) || Objects.isNull(wrapper)) {
134 return; 162 return;
@@ -365,6 +393,19 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -365,6 +393,19 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
365 CalDriverScheduling calDriverScheduling = signInServiceV1.findSchedulingByDateTime(s.getJobCode(), s.getTime(), type); 393 CalDriverScheduling calDriverScheduling = signInServiceV1.findSchedulingByDateTime(s.getJobCode(), s.getTime(), type);
366 if (Objects.nonNull(calDriverScheduling) && Objects.nonNull(calDriverScheduling.getDriverScheduling())) { 394 if (Objects.nonNull(calDriverScheduling) && Objects.nonNull(calDriverScheduling.getDriverScheduling())) {
367 s.setSchedulingId(calDriverScheduling.getDriverScheduling().getId()); 395 s.setSchedulingId(calDriverScheduling.getDriverScheduling().getId());
  396 +
  397 + String code = calDriverScheduling.getDriverScheduling().getQdzCode();
  398 + if(Objects.equals(type,2)){
  399 + code = calDriverScheduling.getDriverScheduling().getZdzCode();
  400 + }
  401 + LinggangVenueInfo linggangVenueInfo = venueInfoService.getOne(code);
  402 + if(Objects.nonNull(linggangVenueInfo)){
  403 + s.setYardId(linggangVenueInfo.getId());
  404 + s.setYardName(linggangVenueInfo.getName());
  405 + }
  406 +
  407 + carInfoService.getOneByPlateNum(calDriverScheduling.getDriverScheduling().getNbbm());
  408 +
368 } 409 }
369 } 410 }
370 411
@@ -839,6 +880,7 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW @@ -839,6 +880,7 @@ public class LinggangKeyWorkLocationServiceImpl extends ServiceImpl&lt;LinggangKeyW
839 if (Objects.equals(sc.getBcType(), BC_TYPE_OUT)) { 880 if (Objects.equals(sc.getBcType(), BC_TYPE_OUT)) {
840 location.setType(3); 881 location.setType(3);
841 } 882 }
  883 + location.setType1(2);
842 return location; 884 return location;
843 885
844 }).filter(obj -> Objects.nonNull(obj)).collect(Collectors.toList()); 886 }).filter(obj -> Objects.nonNull(obj)).collect(Collectors.toList());
Bsth-admin/src/main/java/com/ruoyi/service/impl/scheduling/LinggangSchedulingServiceImpl.java
1 package com.ruoyi.service.impl.scheduling; 1 package com.ruoyi.service.impl.scheduling;
2 2
3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4 +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
4 import com.baomidou.mybatisplus.core.metadata.IPage; 5 import com.baomidou.mybatisplus.core.metadata.IPage;
5 import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 6 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 7 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 import com.github.pagehelper.PageHelper; 8 import com.github.pagehelper.PageHelper;
  9 +import com.ruoyi.common.utils.DateUtils;
8 import com.ruoyi.domain.OrderEntity; 10 import com.ruoyi.domain.OrderEntity;
9 import com.ruoyi.domain.scheduling.LinggangScheduling; 11 import com.ruoyi.domain.scheduling.LinggangScheduling;
10 import com.ruoyi.mapper.scheduling.LinggangSchedulingMapper; 12 import com.ruoyi.mapper.scheduling.LinggangSchedulingMapper;
11 import com.ruoyi.service.scheduling.LinggangSchedulingService; 13 import com.ruoyi.service.scheduling.LinggangSchedulingService;
12 import org.apache.commons.collections4.CollectionUtils; 14 import org.apache.commons.collections4.CollectionUtils;
  15 +import org.apache.commons.lang3.StringUtils;
13 import org.springframework.beans.factory.annotation.Autowired; 16 import org.springframework.beans.factory.annotation.Autowired;
14 import org.springframework.stereotype.Service; 17 import org.springframework.stereotype.Service;
15 18
@@ -29,9 +32,15 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -29,9 +32,15 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
29 */ 32 */
30 @Override 33 @Override
31 public IPage<LinggangScheduling> pageList(Page<LinggangScheduling> page, LinggangScheduling entity, OrderEntity orderEntity) { 34 public IPage<LinggangScheduling> pageList(Page<LinggangScheduling> page, LinggangScheduling entity, OrderEntity orderEntity) {
  35 + String scheDateStr = null;
  36 + if(Objects.nonNull(entity.getScheduleDate())){
  37 + scheDateStr= DateUtils.YYYY_MM_DD.format(entity.getScheduleDate());
  38 + }
  39 + entity.setScheduleDate(null);
32 LambdaQueryWrapper<LinggangScheduling> countWrapper = new LambdaQueryWrapper<>(entity); 40 LambdaQueryWrapper<LinggangScheduling> countWrapper = new LambdaQueryWrapper<>(entity);
33 countWrapper.select(LinggangScheduling::getId); 41 countWrapper.select(LinggangScheduling::getId);
34 switchScheduleDate(countWrapper, entity); 42 switchScheduleDate(countWrapper, entity);
  43 + switchScheduleDateLike(countWrapper,scheDateStr);
35 int count = count(countWrapper); 44 int count = count(countWrapper);
36 45
37 List<LinggangScheduling> lists = Collections.emptyList(); 46 List<LinggangScheduling> lists = Collections.emptyList();
@@ -39,6 +48,7 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -39,6 +48,7 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
39 PageHelper.startPage((int) page.getCurrent(), (int) page.getSize(), false); 48 PageHelper.startPage((int) page.getCurrent(), (int) page.getSize(), false);
40 LambdaQueryWrapper<LinggangScheduling> selectWrapper = new LambdaQueryWrapper<>(entity); 49 LambdaQueryWrapper<LinggangScheduling> selectWrapper = new LambdaQueryWrapper<>(entity);
41 switchScheduleDate(selectWrapper, entity); 50 switchScheduleDate(selectWrapper, entity);
  51 + switchScheduleDateLike(selectWrapper,scheDateStr);
42 orderColumn(selectWrapper, orderEntity); 52 orderColumn(selectWrapper, orderEntity);
43 lists = list(selectWrapper); 53 lists = list(selectWrapper);
44 } 54 }
@@ -155,6 +165,14 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -155,6 +165,14 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
155 return updateById(entity); 165 return updateById(entity);
156 } 166 }
157 167
  168 + @Override
  169 + public boolean updateAlcoholCountByPrimaryKey(LinggangScheduling entity) {
  170 + LambdaUpdateWrapper<LinggangScheduling> wrapper = new LambdaUpdateWrapper<>();
  171 + wrapper.set(LinggangScheduling::getAlcoholCount,entity.getAlcoholCount());
  172 + wrapper.eq(LinggangScheduling::getId,entity.getId());
  173 + return update(wrapper);
  174 + }
  175 +
158 /***根据主键删除数据*/ 176 /***根据主键删除数据*/
159 @Override 177 @Override
160 public boolean deleteById(Integer id) { 178 public boolean deleteById(Integer id) {
@@ -170,6 +188,11 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -170,6 +188,11 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
170 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDate")) { 188 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDate")) {
171 wrapper.orderByAsc(LinggangScheduling::getScheduleDate); 189 wrapper.orderByAsc(LinggangScheduling::getScheduleDate);
172 } 190 }
  191 +
  192 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDateStr")) {
  193 + wrapper.orderByAsc(LinggangScheduling::getScheduleDate);
  194 + }
  195 +
173 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "lineName")) { 196 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "lineName")) {
174 wrapper.orderByAsc(LinggangScheduling::getLineName); 197 wrapper.orderByAsc(LinggangScheduling::getLineName);
175 } 198 }
@@ -194,9 +217,17 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -194,9 +217,17 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
194 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjT")) { 217 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjT")) {
195 wrapper.orderByAsc(LinggangScheduling::getFcsjT); 218 wrapper.orderByAsc(LinggangScheduling::getFcsjT);
196 } 219 }
  220 +
  221 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjTStr")) {
  222 + wrapper.orderByAsc(LinggangScheduling::getFcsjT);
  223 + }
197 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjT")) { 224 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjT")) {
198 wrapper.orderByAsc(LinggangScheduling::getZdsjT); 225 wrapper.orderByAsc(LinggangScheduling::getZdsjT);
199 } 226 }
  227 +
  228 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjTStr")) {
  229 + wrapper.orderByAsc(LinggangScheduling::getZdsjT);
  230 + }
200 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "signInId")) { 231 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "signInId")) {
201 wrapper.orderByAsc(LinggangScheduling::getSignInId); 232 wrapper.orderByAsc(LinggangScheduling::getSignInId);
202 } 233 }
@@ -228,6 +259,11 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -228,6 +259,11 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
228 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDate")) { 259 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDate")) {
229 wrapper.orderByDesc(LinggangScheduling::getScheduleDate); 260 wrapper.orderByDesc(LinggangScheduling::getScheduleDate);
230 } 261 }
  262 +
  263 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "scheduleDateStr")) {
  264 + wrapper.orderByDesc(LinggangScheduling::getScheduleDate);
  265 + }
  266 +
231 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "lineName")) { 267 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "lineName")) {
232 wrapper.orderByDesc(LinggangScheduling::getLineName); 268 wrapper.orderByDesc(LinggangScheduling::getLineName);
233 } 269 }
@@ -252,9 +288,17 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -252,9 +288,17 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
252 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjT")) { 288 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjT")) {
253 wrapper.orderByDesc(LinggangScheduling::getFcsjT); 289 wrapper.orderByDesc(LinggangScheduling::getFcsjT);
254 } 290 }
  291 +
  292 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "fcsjTStr")) {
  293 + wrapper.orderByDesc(LinggangScheduling::getFcsjT);
  294 + }
255 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjT")) { 295 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjT")) {
256 wrapper.orderByDesc(LinggangScheduling::getZdsjT); 296 wrapper.orderByDesc(LinggangScheduling::getZdsjT);
257 } 297 }
  298 +
  299 + if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "zdsjTStr")) {
  300 + wrapper.orderByDesc(LinggangScheduling::getZdsjT);
  301 + }
258 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "signInId")) { 302 if (org.apache.commons.lang3.StringUtils.equals(orderEntity.getProp(), "signInId")) {
259 wrapper.orderByDesc(LinggangScheduling::getSignInId); 303 wrapper.orderByDesc(LinggangScheduling::getSignInId);
260 } 304 }
@@ -293,4 +337,10 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin @@ -293,4 +337,10 @@ public class LinggangSchedulingServiceImpl extends ServiceImpl&lt;LinggangSchedulin
293 wrapper.le(LinggangScheduling::getScheduleDate, entity.getEndScheduleDate()); 337 wrapper.le(LinggangScheduling::getScheduleDate, entity.getEndScheduleDate());
294 } 338 }
295 } 339 }
  340 +
  341 + private void switchScheduleDateLike(LambdaQueryWrapper<LinggangScheduling> wrapper, String scheduleDateStr) {
  342 + if(StringUtils.isNotBlank(scheduleDateStr)){
  343 + wrapper.likeRight(LinggangScheduling::getScheduleDate,scheduleDateStr);
  344 + }
  345 + }
296 } 346 }
297 \ No newline at end of file 347 \ No newline at end of file
Bsth-admin/src/main/java/com/ruoyi/service/key/info/KeyInfoService.java
@@ -26,6 +26,8 @@ public interface KeyInfoService extends IService&lt;KeyInfo&gt; { @@ -26,6 +26,8 @@ public interface KeyInfoService extends IService&lt;KeyInfo&gt; {
26 26
27 List<KeyInfo> listPlateNums(Collection<String> plateNum); 27 List<KeyInfo> listPlateNums(Collection<String> plateNum);
28 28
  29 + List<KeyInfo> listPlateNum(String plateNum);
  30 +
29 List<KeyInfo> list(KeyInfo entity,Collection<String> plateNums); 31 List<KeyInfo> list(KeyInfo entity,Collection<String> plateNums);
30 32
31 /*** 33 /***
Bsth-admin/src/main/java/com/ruoyi/service/scheduling/LinggangSchedulingService.java
@@ -57,5 +57,7 @@ public interface LinggangSchedulingService extends IService&lt;LinggangScheduling&gt; @@ -57,5 +57,7 @@ public interface LinggangSchedulingService extends IService&lt;LinggangScheduling&gt;
57 */ 57 */
58 boolean updateByPrimaryKey(LinggangScheduling entity); 58 boolean updateByPrimaryKey(LinggangScheduling entity);
59 59
  60 + boolean updateAlcoholCountByPrimaryKey(LinggangScheduling entity);
  61 +
60 boolean deleteById(Integer id); 62 boolean deleteById(Integer id);
61 } 63 }
62 \ No newline at end of file 64 \ No newline at end of file
Bsth-admin/src/main/resources/application-druid-devTest.yml
@@ -137,7 +137,7 @@ ruoyi: @@ -137,7 +137,7 @@ ruoyi:
137 # 实例演示开关 137 # 实例演示开关
138 demoEnabled: true 138 demoEnabled: true
139 # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath) 139 # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath)
140 - profile: /data/test/bath-alcoho-sign/apache-tomcat-8.5.61/webapps/uploadPath 140 + profile: /home/test/lingang/apache-tomcat-8.5.61/webapps/uploadPath
141 # 获取ip地址开关 141 # 获取ip地址开关
142 addressEnabled: false 142 addressEnabled: false
143 # 验证码类型 math 数字计算 char 字符验证 143 # 验证码类型 math 数字计算 char 字符验证
@@ -211,7 +211,7 @@ bsth: @@ -211,7 +211,7 @@ bsth:
211 key: C21s5J1n1rHwXPkvVjubKshtfYuvuSe2GHus41Q1NPcT 211 key: C21s5J1n1rHwXPkvVjubKshtfYuvuSe2GHus41Q1NPcT
212 # key: C21s5J1n1rHwXPkvVjubKshtofV5sHXvyUQqSWYxHp2b 212 # key: C21s5J1n1rHwXPkvVjubKshtofV5sHXvyUQqSWYxHp2b
213 lib: 213 lib:
214 - path: /data/test/bath-alcoho-sign/LINUX64 214 + path: //home/test/lingang/LINUX64
215 # path: D:/work/code/jienengjiancha/bsth-alcohol-sign/Bsth-admin/src/main/resources/libs/WIN64 215 # path: D:/work/code/jienengjiancha/bsth-alcohol-sign/Bsth-admin/src/main/resources/libs/WIN64
216 faceFeature: 216 faceFeature:
217 url: http://222.76.217.238:8880/fcgi-bin/entry.fcgi/system 217 url: http://222.76.217.238:8880/fcgi-bin/entry.fcgi/system