From 01c13248f347b4bc7091fb70ba92d03676abaa8b Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期日, 29 九月 2024 11:30:32 +0800
Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java |   52 ++++++++++++++++++++++++++++++----------------------
 1 files changed, 30 insertions(+), 22 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java
index 7f9fd75..9e6f5d5 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java
@@ -12,10 +12,7 @@
 import com.doumee.dao.business.PlatformShowParamMapper;
 import com.doumee.dao.business.join.PlatformJobJoinMapper;
 import com.doumee.dao.business.join.PlatformJoinMapper;
-import com.doumee.dao.business.model.Platform;
-import com.doumee.dao.business.model.PlatformGroup;
-import com.doumee.dao.business.model.PlatformJob;
-import com.doumee.dao.business.model.PlatformShowParam;
+import com.doumee.dao.business.model.*;
 import com.doumee.dao.web.reqeust.PlatformDataDTO;
 import com.doumee.dao.web.response.PlatformGroupWorkVO;
 import com.doumee.dao.web.response.PlatformWorkVO;
@@ -253,8 +250,13 @@
         }
         if(Constants.equalsInteger(platformDataDTO.getQueryData(),Constants.ONE)){
             //鏌ヨ浠婂ぉ鎵�鏈夌殑浠诲姟鏁版嵁
-            List<PlatformJob> platformJobList =  platformJobJoinMapper.selectList(new QueryWrapper<PlatformJob>().lambda()
-                    .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+            List<PlatformJob> platformJobList =  platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>()
+                            .selectAll(PlatformJob.class)
+                            .select(" ( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = 5 order by pl.CREATE_DATE desc  limit 1  ) as newStartDate  ")
+                            .select(" ( select pl.CREATE_DATE from platform_log pl where t.id = pl.obj_id and pl.OBJ_TYPE = 4 order by pl.CREATE_DATE desc  limit 1  ) as newCallDate  ")
+                            .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName)
+                            .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
+                            .eq(PlatformJob::getIsdeleted,Constants.ZERO)
                             .in(PlatformJob::getStatus,
                                     Constants.PlatformJobStatus.WAIT_CALL.getKey(),
                                     Constants.PlatformJobStatus.IN_WAIT.getKey(),
@@ -263,13 +265,12 @@
                                     Constants.PlatformJobStatus.EXCEPTION.getKey(),
                                     Constants.PlatformJobStatus.OVER_NUMBER.getKey(),
                                     Constants.PlatformJobStatus.TRANSFERING.getKey()
-
                             )
 //                    .like(PlatformJob::getArriveDate,DateUtil.getCurrDate())
                     .orderByDesc(PlatformJob::getCreateDate)
             );
             for (Platform platform:allPlatformList) {
-                PlatformWorkVO platformWorkVO = PlatformGroupServiceImpl.getPlatformWorkVO(platform.getId(),platformJobList);
+                PlatformWorkVO platformWorkVO = PlatformGroupServiceImpl.getPlatformWorkVO(platform,platformJobList);
                 platform.setPlatformWorkVO(platformWorkVO);
             }
         }
@@ -280,30 +281,39 @@
     }
 
 
-    public static PlatformWorkVO getPlatformWorkVO(Integer platformId,List<PlatformJob> platformJobList){
+    public static PlatformWorkVO getPlatformWorkVO(Platform platform,List<PlatformJob> platformJobList){
         PlatformWorkVO platformWorkVO = new PlatformWorkVO();
         if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){
             //鑾峰彇鏈堝彴涓嬬殑鎵�鏈変綔涓氭暟鎹�
-            List<PlatformJob> platformJobs = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platformId)
-             && !Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())).collect(Collectors.toList());
+            List<PlatformJob> platformJobs = platformJobList.stream().filter(
+                    i->Constants.equalsInteger(i.getPlatformId(),platform.getId())
+                    || Constants.equalsInteger(i.getPlatformGroupId(),platform.getGroupId())
+            ).collect(Collectors.toList());
             if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobs)){
                 platformWorkVO.setWorkNum(
-                        platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())).collect(Collectors.toList()).size()
+                        platformJobs.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platform.getId())  && Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())).collect(Collectors.toList()).size()
                 );
                 platformWorkVO.setCallNum(
-                        platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())).collect(Collectors.toList()).size()
+                        platformJobs.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platform.getId())  && Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())).collect(Collectors.toList()).size()
                 );
+
                 platformWorkVO.setWaitNum(
-                        platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.TRANSFERING.getKey())
+                        platformJobs.stream().filter(i->
+                                 Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.TRANSFERING.getKey())
+                                ||  Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())
                         ).collect(Collectors.toList()).size()
                         +
-                        platformJobList.stream().filter(i->Constants.equalsInteger(platformId,i.getPlatformId())
-                                && Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())).collect(Collectors.toList()).size()
+                        platformJobList.stream().filter(i->Constants.equalsInteger(platform.getId(),i.getPlatformId())
+                                && (Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())
+                               )
+                        ).collect(Collectors.toList()).size()
                 );
                 platformWorkVO.setExceptionNum(
                         platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.EXCEPTION.getKey())).collect(Collectors.toList()).size()
                 );
-                platformWorkVO.setPlatformJobList(platformJobs);
+                platformWorkVO.setPlatformJobList(platformJobs.stream().filter(
+                        i->Constants.equalsInteger(platform.getId(),i.getPlatformId()) && !Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())
+                ).collect(Collectors.toList()));
             }
         }
         return platformWorkVO;
@@ -322,11 +332,9 @@
 
         platformGroupWorkVO.setWaitNum(platformJobJoinMapper.selectCount(new QueryWrapper<PlatformJob>().lambda()
                         .eq(PlatformJob::getPlatformGroupId,platformGroupId)
-                        .in(PlatformJob::getStatus,
-                                Constants.PlatformJobStatus.WAIT_CALL.getKey(),
-                                Constants.PlatformJobStatus.IN_WAIT.getKey(),
-                                Constants.PlatformJobStatus.CALLED.getKey()
-
+                        .and( i->i.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()).or()
+                                        .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()).or()
+                                        .apply(" ( status = "+Constants.PlatformJobStatus.TRANSFERING.getKey()+" and PLATFORM_GROUP_ID = "+platformGroupId+" ) ")
                         )
                 )
         );

--
Gitblit v1.9.3