Commit deee7e0e246b3f9940fd32600baec8e266090fa3

Authored by guzijian
1 parent a00169ae

fix: 可视化大屏-》增加状态判断策略异常等级排 未签 -》 迟到 -》 酒驾

Bsth-admin/src/main/java/com/ruoyi/service/impl/BigViewServiceImpl.java
@@ -50,8 +50,8 @@ public class BigViewServiceImpl implements BigViewService { @@ -50,8 +50,8 @@ public class BigViewServiceImpl implements BigViewService {
50 private NowSchedulingCache cache; 50 private NowSchedulingCache cache;
51 51
52 @Override 52 @Override
53 - public Integer queryNumberByType(String type,String dateKey) {  
54 - Integer x = handleType(type,dateKey); 53 + public Integer queryNumberByType(String type, String dateKey) {
  54 + Integer x = handleType(type, dateKey);
55 if (x != null) return x; 55 if (x != null) return x;
56 return 0; 56 return 0;
57 } 57 }
@@ -59,7 +59,7 @@ public class BigViewServiceImpl implements BigViewService { @@ -59,7 +59,7 @@ public class BigViewServiceImpl implements BigViewService {
59 @Override 59 @Override
60 public List<FleetInfoVo> queryFleetInfoByFleetName(String dateKey) { 60 public List<FleetInfoVo> queryFleetInfoByFleetName(String dateKey) {
61 // 从缓存中读取数据,但是调度表中还好包含飞司售人员信息 需要过滤一下 非司售人员nbbm不会存在 61 // 从缓存中读取数据,但是调度表中还好包含飞司售人员信息 需要过滤一下 非司售人员nbbm不会存在
62 - String key = dateKey.replaceAll("-",""); 62 + String key = dateKey.replaceAll("-", "");
63 Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(key); 63 Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(key);
64 64
65 Map<String, LineInfo> matchMap = transformMapByMacheList(map); 65 Map<String, LineInfo> matchMap = transformMapByMacheList(map);
@@ -76,7 +76,7 @@ public class BigViewServiceImpl implements BigViewService { @@ -76,7 +76,7 @@ public class BigViewServiceImpl implements BigViewService {
76 @Override 76 @Override
77 public SignInfoVo querySignDetails(String date, String jobCode) { 77 public SignInfoVo querySignDetails(String date, String jobCode) {
78 SignInfoVo vo = null; 78 SignInfoVo vo = null;
79 - Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(date.replaceAll("-","")); 79 + Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(date.replaceAll("-", ""));
80 List<DriverScheduling> list = map.get(jobCode); 80 List<DriverScheduling> list = map.get(jobCode);
81 if (CollectionUtil.isNotEmpty(list)) { 81 if (CollectionUtil.isNotEmpty(list)) {
82 vo = new SignInfoVo(); 82 vo = new SignInfoVo();
@@ -100,7 +100,7 @@ public class BigViewServiceImpl implements BigViewService { @@ -100,7 +100,7 @@ public class BigViewServiceImpl implements BigViewService {
100 info.setResult(Objects.isNull(scheduling.getRemark()) ? "未签" : scheduling.getRemark()); 100 info.setResult(Objects.isNull(scheduling.getRemark()) ? "未签" : scheduling.getRemark());
101 vo.getSignInfos().add(info); 101 vo.getSignInfos().add(info);
102 } 102 }
103 - vo.setLpName(StringUtils.join(lpNameMap.keySet(),"/")); 103 + vo.setLpName(StringUtils.join(lpNameMap.keySet(), "/"));
104 } 104 }
105 return vo; 105 return vo;
106 } 106 }
@@ -235,19 +235,32 @@ public class BigViewServiceImpl implements BigViewService { @@ -235,19 +235,32 @@ public class BigViewServiceImpl implements BigViewService {
235 * @param driverScheduling 235 * @param driverScheduling
236 */ 236 */
237 private void handleMoreStatus(Map<String, LineInfo> matchMap, DriverScheduling scheduling, String nbbm, LineInfo.PersonInfoVo personInfoVo, DriverScheduling driverScheduling) { 237 private void handleMoreStatus(Map<String, LineInfo> matchMap, DriverScheduling scheduling, String nbbm, LineInfo.PersonInfoVo personInfoVo, DriverScheduling driverScheduling) {
  238 + // TODO 判断多异常
238 long time = System.currentTimeMillis(); 239 long time = System.currentTimeMillis();
239 if (DRIVER_STRING.equals(scheduling.getPosts())) { 240 if (DRIVER_STRING.equals(scheduling.getPosts())) {
240 LineInfo.PersonInfoVo driverInfoVo = matchMap.get(nbbm).getDriverInfoVo(); 241 LineInfo.PersonInfoVo driverInfoVo = matchMap.get(nbbm).getDriverInfoVo();
241 - // 第二次签到时间未到不记录状态  
242 - if (!Objects.isNull(driverInfoVo) && time - scheduling.getFcsjT() < 0) {  
243 - return; 242 + if (!Objects.isNull(driverInfoVo)) {
  243 + // 第二次签到时间未到不记录状态
  244 + if (time - scheduling.getFcsjT() < 0) {
  245 + return;
  246 + }
  247 + // 如有多异常覆盖策略 异常等级排 未签 -》 迟到 -》 酒驾
  248 + if (driverInfoVo.getSignStatus().compareTo(personInfoVo.getSignStatus()) < 0) {
  249 + return;
  250 + }
244 } 251 }
245 matchMap.get(nbbm).setDriverInfoVo(personInfoVo); 252 matchMap.get(nbbm).setDriverInfoVo(personInfoVo);
246 } else { 253 } else {
247 LineInfo.PersonInfoVo saleInfoVo = matchMap.get(nbbm).getSaleInfoVo(); 254 LineInfo.PersonInfoVo saleInfoVo = matchMap.get(nbbm).getSaleInfoVo();
248 - // 第二次签到时间未到不记录状态  
249 - if (!Objects.isNull(saleInfoVo) && time - scheduling.getFcsjT() < 0) {  
250 - return; 255 + if (!Objects.isNull(saleInfoVo)) {
  256 + // 第二次签到时间未到不记录状态
  257 + if (time - scheduling.getFcsjT() < 0) {
  258 + return;
  259 + }
  260 + // 如有多异常覆盖策略 异常等级排 未签 -》 迟到 -》 酒驾
  261 + if (saleInfoVo.getSignStatus().compareTo(personInfoVo.getSignStatus()) < 0) {
  262 + return;
  263 + }
251 } 264 }
252 matchMap.get(nbbm).setSaleInfoVo(personInfoVo); 265 matchMap.get(nbbm).setSaleInfoVo(personInfoVo);
253 } 266 }
@@ -281,7 +294,7 @@ public class BigViewServiceImpl implements BigViewService { @@ -281,7 +294,7 @@ public class BigViewServiceImpl implements BigViewService {
281 } 294 }
282 295
283 private Integer handleType(String type, String dateKey) { 296 private Integer handleType(String type, String dateKey) {
284 - String key = dateKey.replaceAll("-",""); 297 + String key = dateKey.replaceAll("-", "");
285 Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(key); 298 Map<String, List<DriverScheduling>> map = cache.getCacheScheduling(key);
286 Map<String, Object> typeMap = new HashMap<>(map.size()); 299 Map<String, Object> typeMap = new HashMap<>(map.size());
287 switch (type) { 300 switch (type) {