From 4830578f72f2a9716c260bf343ed5c40cd975f8e Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期三, 25 十二月 2024 17:40:35 +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/thrid/BoardServiceImpl.java |  124 ++++++++++++++++++++++++++++++++++++-----
 1 files changed, 108 insertions(+), 16 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
index 0c83707..33d49b2 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -1109,10 +1109,11 @@
                    //濡傛灉鏄湪绾挎垨鑰呬紤鐪狅紝鏌ヨ鍦ㄩ�旇繕鏄┖闂瞭y
                     codes.add(model.getPlateNum());
                     model.setJobStatus(Constants.ZERO);
-                }else
+                }else{
                     model.setJobStatus(Constants.TWO);
                     data.setOfflineNum(data.getOfflineNum()+1);
                 }
+            }
             if(codes.size()>0){
                 //鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙�  12鍙栨秷锛圵MS锛�
                 List<PlatformJob> busyNum = platformJobMapper.selectList(new QueryWrapper<PlatformJob>() .lambda()
@@ -2137,6 +2138,10 @@
         WholeProvinceBoardVO data = new WholeProvinceBoardVO();
         data.setMaxAbility(new BigDecimal(0));
         data.setHoursAbility(new BigDecimal(0));
+        data.setCurrentPlanNum(new BigDecimal(0));
+        data.setCurrentOrderNum(new BigDecimal(0));
+        data.setCrrentRestNum(new BigDecimal(0));
+        data.setCrrentOutNum(new BigDecimal(0));
         List<TmsFactoryParam> paramList = factoryList();
         String code = null;
         if(paramList!=null){
@@ -2144,8 +2149,8 @@
             for(TmsFactoryParam param : paramList){
                 if(StringUtils.isNotBlank(factoryCode)){
                     if(StringUtils.equals(param.getCode(),factoryCode)){
-                        data.setHoursAbility(data.getHoursAbility().add(Constants.formatBigdecimal(param.getParam3())));
-                        data.setMaxAbility(data.getMaxAbility().add(Constants.formatBigdecimal(param.getNum2())));
+                        data.setHoursAbility(Constants.formatBigdecimal(param.getParam3()));
+                        data.setMaxAbility(Constants.formatBigdecimal(param.getNum2()));
                         code = param.getCode();
                         break;
                     }
@@ -2155,13 +2160,7 @@
                 }
             }
         }
-        if(isDebug){
-            data.setCurrentPlanNum(new BigDecimal(1220));
-            data.setCurrentOrderNum(new BigDecimal(32340));
-            data.setCrrentOutNum(new BigDecimal(3450));
-            data.setCrrentRestNum(new BigDecimal(456450));
-        }
-        Date date = new Date();
+      /*  Date date = new Date();
         TmsOutQtyAndVehicleQtyRequest param = new TmsOutQtyAndVehicleQtyRequest();
         param.setDateEnd(DateUtil.getShortTime(date));
         param.setDateStart(DateUtil.getShortTime(date));
@@ -2169,16 +2168,109 @@
             param.setFacrotyCodeList(new ArrayList<>());
             param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
         }
-        List<TmsOutQtyAndVehicleQtyResponse> listSame=  tmsService.getOutQtyAndVehicleQty(param);//鍘诲勾鍚屾湡
+        List<TmsOutQtyAndVehicleQtyResponse> listSame=  tmsService.getOutQtyAndVehicleQty(param);
         if(listSame!=null ){
             for(TmsOutQtyAndVehicleQtyResponse model : listSame){
                 data.setCrrentOutNum(data.getCrrentOutNum().add(Constants.formatBigdecimal(model.getTotalOutQty())));//浠婃棩鍑哄簱閲�
                 data.setCrrentOutCarNum(data.getCrrentOutCarNum()+(Constants.formatIntegerNum(model.getVehicleQty())));//浠婃棩鍑哄簱杞︽
             }
-        }
+        }*/
+        initOutboundCapability(data,factoryCode);
         return  data;
 
     }
+    private void initOutboundCapability(WholeProvinceBoardVO data, String code) {
+        TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);
+        }
+        TmsOutboundCapabilityResponse result=  tmsService.getOutboundCapability(param);
+        if(result !=null){
+            List<String> planCodes = new ArrayList<>();
+            List<String> todayCodes = new ArrayList<>();
+            String todayDate = DateUtil.getShortTime(new Date());
+            if(result.getCurrentDayOrderList()!=null && result.getCurrentDayOrderList().size()>0){
+                for(TmsOutboundCapabilityInfoResponse model :result.getCurrentDayOrderList()){
+                    data.setCurrentOrderNum(data.getCurrentOrderNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+                    /**
+                     * DISPATCH_TYPE in(1,2) 涓� TRANSPORT_CODE涓嶄负绌猴紝sum(NC_TOTALITY)  +      DISPATCH_TYPE not in(1,2) sum(NC_TOTALITY)
+                     * 	浠婃棩鍑哄簱涓嬭揪鐨勮鍒掍换鍔℃�婚噺
+                     */
+                    if(StringUtils.isNotBlank(model.getTransportCode())
+                            && (StringUtils.equals("1",model.getDispatchType()) || StringUtils.equals("2",model.getDispatchType()))){
+                        data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+                    }
+                    if(!(StringUtils.equals("1",model.getDispatchType()) || StringUtils.equals("2",model.getDispatchType()))){
+                        data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁″垝閲�
+                    }
+
+                    /**
+                     * 浠婃棩涓嬭揪鍑哄簱鐨勮鍒掍换鍔″搴旂殑杩愯緭杞︽鏁�
+                     * TRANSPORT_CODE涓嶄负绌篶ount(transport_code )
+                     */
+                    if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+                        planCodes.add(model.getTransportCode());
+                    }
+                    /**
+                     * 浠婃棩涓嬭揪鍑哄簱鐨勮鍒掍换鍔″搴旂殑杩愯緭杞︽鏁�
+                     * TRANSPORT_CODE涓嶄负绌篶ount(transport_code )
+                     */
+                    if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+                        planCodes.add(model.getTransportCode());
+                    }
+                    /**
+                     *  out_date涓哄綋鏃�,sum(NC_TOTALITY) 浠婃棩瀹屾垚鐨勫嚭搴撲綔涓氫换鍔℃�婚噺
+                     * TRANSPORT_CODE涓嶄负绌� 涓攐ut_date涓哄綋鏃� count(transport_code)  	浠婃棩瀹屾垚鐨勫嚭搴撲綔涓氫换鍔$殑杩愯緭杞︽鏁�
+                     */
+                    if(StringUtils.isNotBlank(model.getOutDate()) && model.getOutDate().length()> 10){
+                        String tDate = model.getOutDate().substring(0,10);
+                        if(tDate.equals(todayDate)){
+                            //濡傛灉鏄綋鏃�
+                            data.setCrrentOutNum(data.getCrrentOutNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁㈠崟閲�
+                        }
+                        if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),todayCodes)){
+                            todayCodes.add(model.getTransportCode());
+                        }
+                    }
+                }
+            }
+            if(result.getCurrentDayAgoOrderList()!=null && result.getCurrentDayAgoOrderList().size()>0){
+                for(TmsOutboundCapabilityInfoResponse model :result.getCurrentDayAgoOrderList()){
+                    /**
+                     * out_date涓虹┖锛宻um(NC_TOTALITY)	鏄ㄥぉ鏈畬鎴愬嚭搴撹鍒掍换鍔�
+                     * out_date涓虹┖ 涓擳RANSPORT_CODE涓嶄负绌� * count(transport_code )	鏄ㄥぉ鏈畬鎴愬嚭搴撹鍒掍换鍔¤溅娆�
+                     */
+                    if(StringUtils.isBlank(model.getOutDate())){
+                        data.setCurrentPlanNum(data.getCurrentPlanNum().add(Constants.formatBigdecimal(model.getNcTotality())));//浠婃棩璁″垝閲�
+                        if(StringUtils.isNotBlank(model.getTransportCode()) && notInList(model.getTransportCode(),planCodes)){
+                            planCodes.add(model.getTransportCode());
+                        }
+                    }
+                }
+            }
+            data.setCurrentPlanCarNum(planCodes.size());//浠婃棩璁″垝杞︽
+            data.setCrrentOutCarNum(todayCodes.size());//浠婃棩鍑哄簱杞︽
+        }
+        data.setCrrentRestNum(data.getCurrentPlanNum().subtract(data.getCrrentOutNum()));
+        data.setCrrentRestCarNum(data.getCurrentPlanCarNum() -data.getCrrentOutCarNum());
+        if(data.getCrrentRestNum().compareTo(new BigDecimal(0)) <=0){
+            data.setCrrentRestNum(new BigDecimal(0));
+        }
+        if(data.getCrrentRestCarNum()<=0){
+            data.setCrrentRestCarNum(0);
+        }
+    }
+
+    private boolean notInList(String transportCode, List<String> planCodes) {
+        for(String s :planCodes){
+            if(StringUtils.equals(transportCode,s)){
+                return  false;
+            }
+        }
+        return true;
+    }
+
     /**
      * 鍑哄簱鑳藉姏鏉庢案鍒�
      * @return
@@ -2278,8 +2370,8 @@
                     tt =new WholeProvinceMapVO();
                     tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
                     tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
-                    tt.setProvinceCode(model.getFromProvinceCode());
-                    tt.setProvinceName(model.getFromProvinceName());
+                    tt.setProvinceCode(model.getToProvinceCode());
+                    tt.setProvinceName(model.getToProvinceName());
                     result.add(tt);
                 }
             }
@@ -2289,7 +2381,7 @@
 
     private WholeProvinceMapVO getFromProvinceResultList(TmsDistributionOfDeliveryLocResponse model, List<WholeProvinceMapVO> result) {
         for(WholeProvinceMapVO t : result){
-            if(StringUtils.equals(t.getProvinceCode(), model.getFromProvinceCode())){
+            if(StringUtils.equals(t.getProvinceCode(), model.getToProvinceCode())){
                 t.setMonthNum(Constants.formatBigdecimal(t.getMonthNum()).add(Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity())));
                 t.setYearNum(Constants.formatBigdecimal(t.getYearNum()).add(Constants.formatBigdecimal0Float(model.getYearOutboundQuantity())));
                 return   t;
@@ -2343,7 +2435,7 @@
         String flag = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.SCREEN_SEVENT_ARRIVAL_STARTDATE).getCode();
         if(StringUtils.equals(flag,"-1")){
             startDate =DateUtil.getBeginDayOfMonth(0);
-            date = DateUtil.addMonthToDate(startDate,7);
+            date = DateUtil.addDaysToDate(startDate,7);
         }
         param.setNcCreateDateFrom(DateUtil.getShortTime(startDate));
         param.setNcCreateDateThrough(DateUtil.getShortTime(date));

--
Gitblit v1.9.3