From 2a8c4e590db641bbb3c1f5fc016a0b99bb52cdff Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期二, 21 十月 2025 16:30:54 +0800
Subject: [PATCH] 月台自动叫号处理问题

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java |   64 +++++++++++++++++++++++--------
 1 files changed, 47 insertions(+), 17 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
index 20303e5..16f88e7 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -696,10 +696,10 @@
         savePlatformLog(Constants.PlatformJobLogType.SIGN.getKey(),oldPlatformJob,platformJob,
                 Constants.PlatformJobLogType.SIGN.getInfo());
         //绛惧埌寰俊閫氱煡 2025骞�3鏈�26鏃�14:25:00
-        logger.info("绛惧埌寰俊閫氱煡=========================>寮�濮�====绛惧埌绫诲瀷=>"+signInDTO.getSignType()+"===>浜哄憳涓婚敭=>"+platformGroup.getSignInNoticeUsers());
+        log.info("绛惧埌寰俊閫氱煡=========================>寮�濮�====绛惧埌绫诲瀷=>"+signInDTO.getSignType()+"===>浜哄憳涓婚敭=>"+platformGroup.getSignInNoticeUsers());
         if(!Constants.equalsInteger(signInDTO.getSignType(),Constants.TWO)&&
                 StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers())){
-            logger.info("绛惧埌寰俊閫氱煡=========================>杩涘叆");
+            log.info("绛惧埌寰俊閫氱煡=========================>杩涘叆");
             List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
                     .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
                     .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getSignInNoticeUsers().split(",")))
@@ -712,7 +712,7 @@
                 );
             }
         }
-        logger.info("绛惧埌寰俊閫氱煡=========================>缁撴潫");
+        log.info("绛惧埌寰俊閫氱煡=========================>缁撴潫");
     }
 
 
@@ -1036,7 +1036,6 @@
 
 
 
-    private Logger logger = LoggerFactory.getLogger(PlatformJobServiceImpl.class);
 
     @Override
     public void sendInPark(PlatformJob platformJob){
@@ -1710,7 +1709,7 @@
                                jobIds.add(job.getJobId());
                            }
                        }catch (Exception e){
-                           logger.error("=============鏇存柊鐢靛瓙閿佺姸鎬佷俊鎭紓甯革細"+e.getMessage());
+                           log.error("=============鏇存柊鐢靛瓙閿佺姸鎬佷俊鎭紓甯革細"+e.getMessage());
                        }
                    }
                }
@@ -2576,9 +2575,6 @@
         return platformJob;
     }
 
-
-
-
     @Override
     public void autoPlatformCallCar(WmsService wmsService){
         //鏌ヨ褰撳墠寮�鍚殑鏈堝彴鏁版嵁
@@ -2586,6 +2582,7 @@
                 .eq(PlatformGroup::getIsdeleted,Constants.ZERO).eq(PlatformGroup::getAutoCall,Constants.ONE)
         );
         if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(allPlatformGroup)){
+            log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤鑷姩鍙彿鏈堝彴缁�");
             return;
         }
         //杩囨护褰撳墠鏃堕棿娈典笉鍦ㄦ椂闂村唴鐨勬湀鍙扮粍  AUTO_CALL_END_TIME AUTO_CALL_START_TIME
@@ -2596,6 +2593,7 @@
                 && Integer.valueOf(i.getAutoCallEndTime().replaceAll(":","")) > nowHm
         ).collect(Collectors.toList());
         if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(autoCallGroup)){
+            log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤宸ヤ綔鏃堕棿鍐� 鑷姩鍙彿鏈堝彴缁�");
             return;
         }
         //鏌ヨ鎵�鏈夋湀鍙�
@@ -2607,12 +2605,14 @@
                 .in(Platform::getGroupId,autoCallGroup.stream().map(i->i.getId()).collect(Collectors.toList()))
         );
         if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isEmpty(platformList)){
+            log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤鑷姩鍙彿鏈堝彴");
             return;
         }
         //寰幆鎵�鏈夎嚜鍔ㄥ彨鍙锋湀鍙�
         for (PlatformGroup platformGroup:autoCallGroup) {
             List<Platform> platforms = platformList.stream().filter(i->Constants.equalsInteger(i.getGroupId(),platformGroup.getId())).collect(Collectors.toList());
             if(CollectionUtils.isEmpty(platforms)){
+                log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤鑷姩鍙彿鏈堝彴-"+platformGroup.getName());
                 continue;
             }
             Boolean isDefaul = false;
@@ -2630,7 +2630,6 @@
                 }
             }
             for (Platform platform:platforms) {
-
                 //鏈堝彴 鍙彿鍏ュ洯鏁伴噺
                 Integer workingNum = platform.getWorkingNum();
                 //鏌ヨ褰撳墠鏈堝彴鏄惁瀛樺湪鏈堝彴鍙彿鏁版嵁 濡傛灉澶т簬绛変簬鍙彨鍙锋暟閲� 鍒欒烦杩�
@@ -2639,6 +2638,7 @@
                         .eq(PlatformJob::getPlatformId,platform.getId())
                         .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey())).intValue();
                 if(workNum>=workingNum){
+                    log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氳秴杩囪嚜鍔ㄥ彨鍙蜂綔涓氶檺鍒�-"+platform.getName());
                     continue;
                 };
 
@@ -2659,11 +2659,13 @@
                         .orderByDesc(PlatformJob::getStatus,PlatformJob::getUrgeTime)
                         .orderByAsc(PlatformJob::getSignDate));
                 if(CollectionUtils.isEmpty(platformJobList)){
+                    log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤婊¤冻鏉′欢鐨勪綔涓�1-"+platform.getName());
                     continue;
                 }
                 for (int i = 0; i < workingNum - workNum ; i++) {
                     PlatformJob platformJob  = this.getAutoCallJob(platformJobList,platform,isDefaul,platformGroup);
                     if(Objects.isNull(platformJob)){
+                        log.error("========鏈堝彴鑷姩鍙彿============缁撴潫锛氭棤婊¤冻鏉′欢鐨勪綔涓�2-"+platform.getName());
                         continue;
                     }
                     JobOperateDTO jobOperateDTO = new JobOperateDTO();
@@ -2681,7 +2683,7 @@
                             wmsService.orderPlatformBind(callPlatformJob);
                         }
                     }catch (Exception e){
-                        logger.error("鏈堝彴鑷姩鍙彿鏉冮檺涓嬪彂澶辫触锛歿}"+JSONObject.toJSONString(platform));
+                        log.error("鏈堝彴鑷姩鍙彿鏉冮檺涓嬪彂澶辫触锛歿}"+JSONObject.toJSONString(platform));
                     }
                 }
             }
@@ -2779,7 +2781,7 @@
                             wmsService.orderPlatformBind(callPlatformJob);
                         }
                     }catch (Exception e){
-                        logger.error("鑷姩鍙彿鍏ュ洯鏉冮檺涓嬪彂澶辫触锛歿}"+JSONObject.toJSONString(platform));
+                        log.error("鑷姩鍙彿鍏ュ洯鏉冮檺涓嬪彂澶辫触锛歿}"+JSONObject.toJSONString(platform));
                     }
                 }
             }
@@ -2814,7 +2816,7 @@
             // 3锛夊鑻ヤ笉婊¤冻浠ヤ笂涓ょ偣锛屽垯鑷姩鍒嗛厤鑷虫暎浠舵湀鍙拌繘琛屼綔涓氾紱
             if(Constants.equalsInteger(platformGroup.getType(),Constants.ONE)){
                 //瑁呰揣鏈堝彴 - 鍑哄簱
-                if(Objects.nonNull(platformJob.getWmsId())){
+                if(Constants.equalsInteger(platformJob.getOrigin(),Constants.ONE)){
                     // WM鎺ㄩ�佷换鍔�
                     List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>().lambda()
                             .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO)
@@ -2846,10 +2848,11 @@
                             }
                         }
                     }
-                    //寰幆WMS浠诲姟 鏈垎閰嶈嚦鏁存墭鐩樻湀鍙板垯鐩存帴鍒嗛厤鍒版暎鎵樼洏鏈堝彴
-                    if(Constants.equalsInteger(platform.getType(),Constants.ONE)){
-                        return platformJob;
-                    }
+                    return null;
+//                    //寰幆WMS浠诲姟 鏈垎閰嶈嚦鏁存墭鐩樻湀鍙板垯鐩存帴鍒嗛厤鍒版暎鎵樼洏鏈堝彴
+//                    if(Constants.equalsInteger(platform.getType(),Constants.ONE)){
+//                        return platformJob;
+//                    }
                 }else{
                     //鐗╂祦杞﹂绾︾殑浠诲姟 鐩存帴鍒嗛厤 鏁f墭鐩樻湀鍙�
                     if(Constants.equalsInteger(platform.getType(),Constants.TWO)){
@@ -2870,7 +2873,7 @@
                     if(Objects.isNull(platformWmsJob)){
                         continue;
                     }
-                    SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.IN_REPERTOTY_CODE);
+                    SystemDictData systemDictData = systemDictDataBiz.queryByCode(Constants.WMS_PARAM,Constants.IN_REPERTOTY_CODE);
                     if(Objects.nonNull(systemDictData)){
                         //鍒ゆ柇鏀剧疆浣嶇疆
                         if(platformWmsDetailMapper.selectCount(new QueryWrapper<PlatformWmsDetail>().lambda().eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO)
@@ -2896,4 +2899,31 @@
         return null;
     }
 
+
+    @Override
+    public void jobUrge(Integer jobId,LoginUserInfo loginUserInfo){
+        if(Objects.isNull(jobId)){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        PlatformJob platformJob = platformJobMapper.selectById(jobId);
+        if(Objects.isNull(platformJob)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        if(!(Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())
+                        || Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())
+                || Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.TRANSFERING.getKey()))){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐘舵�佸凡娴佽浆");
+        }
+
+        platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
+                .set(PlatformJob::getUrgeUser,loginUserInfo.getId())
+                .set(PlatformJob::getUrgeTime,DateUtil.getCurrDateTime())
+                .set(PlatformJob::getEditDate,DateUtil.getCurrDateTime())
+                .eq(PlatformJob::getId,platformJob.getId())
+        );
+    }
+
+
+
+
 }

--
Gitblit v1.9.3