From 9a68feaae561aee105a14430f86dc231c7c6c04b Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 20 十二月 2024 19:47:31 +0800
Subject: [PATCH] 最新版本541200007

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java                      |   44 ++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java                               |  106 ++-----
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderNoFinishListResponse.java            |   53 +++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderVo.java            |   34 ++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TmsFactoryParamServiceImpl.java                |    8 
 server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java                                                     |  161 +++++++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/TotalOutQtyNumVO.java                |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/request/TmsSevenArrivalDetailsRequest.java            |   18 +
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderInfoVo.java        |   23 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/TmsService.java                               |    8 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WholeProvinceBoardVO.java            |   76 +----
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/TMSContants.java                                      |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsSevenArrivalStatusAndDetailsResponse.java |   32 ++
 admin/src/components/business/OperaTmsFactoryParamWindow.vue                                                                |    1 
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderListResponse.java                    |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java                    |  246 +++++++++++++++--
 server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOutQtyAndVehicleQtyResponse.java          |    6 
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/TmsFactoryParam.java                              |    6 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java                             |   11 
 19 files changed, 647 insertions(+), 192 deletions(-)

diff --git a/admin/src/components/business/OperaTmsFactoryParamWindow.vue b/admin/src/components/business/OperaTmsFactoryParamWindow.vue
index 1bb0181..e03fa54 100644
--- a/admin/src/components/business/OperaTmsFactoryParamWindow.vue
+++ b/admin/src/components/business/OperaTmsFactoryParamWindow.vue
@@ -27,7 +27,6 @@
     </el-form>
   </GlobalWindow>
 </template>
-
 <script>
 import BaseOpera from '@/components/base/BaseOpera'
 import GlobalWindow from '@/components/common/GlobalWindow'
diff --git a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java
index 894d2d5..b521c92 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -3420,4 +3420,165 @@
     }
 
 
+
+    // 鑾峰彇鏈懆鐨勫紑濮嬫椂闂�
+    public static Date getBeginDayOfWeek(int addYears) {
+        Date date = new Date();
+        if (date == null) {
+            return null;
+        }
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(date);
+        cal.set(Calendar.YEAR,getNowYearNum()+addYears);
+        int dayofweek = cal.get(Calendar.DAY_OF_WEEK);
+        if (dayofweek == 1) {
+            dayofweek += 7;
+        }
+        cal.add(Calendar.DATE, 2 - dayofweek);
+        return getDayStartTime(cal.getTime());
+    }
+
+    // 鑾峰彇鏈懆鐨勭粨鏉熸椂闂�
+    public static Date getEndDayOfWeek(int addYears) {
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(getBeginDayOfWeek(addYears));
+        cal.add(Calendar.DAY_OF_WEEK, 6);
+        Date weekEndSta = cal.getTime();
+        return getDayEndTime(weekEndSta);
+    }
+
+    // 鑾峰彇涓婂懆鐨勫紑濮嬫椂闂�
+    public static Date getBeginDayOfLastWeek() {
+        Date date = new Date();
+        if (date == null) {
+            return null;
+        }
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(date);
+        cal.set(Calendar.YEAR,getNowYearNum());
+        int dayofweek = cal.get(Calendar.DAY_OF_WEEK);
+        if (dayofweek == 1) {
+            dayofweek += 7;
+        }
+        cal.add(Calendar.DATE, 2 - dayofweek - 7);
+        return getDayStartTime(cal.getTime());
+    }
+
+    // 鑾峰彇涓婂懆鐨勭粨鏉熸椂闂�
+    public static Date getEndDayOfLastWeek() {
+        Calendar cal = Calendar.getInstance();
+        cal.setTime(getBeginDayOfLastWeek());
+        cal.add(Calendar.DAY_OF_WEEK, 6);
+        Date weekEndSta = cal.getTime();
+        return getDayEndTime(weekEndSta);
+    }
+
+    // 鑾峰彇鏈湀鐨勫紑濮嬫椂闂�
+    public static Date getBeginDayOfMonth(int addYears) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(getNowYearNum()+addYears, getNowMonthNum() - 1, 1);
+        return getDayStartTime(calendar.getTime());
+    }
+
+    // 鑾峰彇鏈湀鐨勭粨鏉熸椂闂�
+    public static Date getEndDayOfMonth(int addYears) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(getNowYearNum()+addYears, getNowMonthNum() - 1, 1);
+        int day = calendar.getActualMaximum(5);
+        calendar.set(getNowYearNum()+addYears, getNowMonthNum() - 1, day);
+        return getDayEndTime(calendar.getTime());
+    }
+
+    // 鑾峰彇涓婃湀鐨勫紑濮嬫椂闂�
+    public static Date getBeginDayOfLastMonth() {
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(getNowYearNum(), getNowMonthNum() - 2, 1);
+        return getDayStartTime(calendar.getTime());
+    }
+
+    // 鑾峰彇涓婃湀鐨勭粨鏉熸椂闂�
+    public static Date getEndDayOfLastMonth() {
+        Calendar calendar = Calendar.getInstance();
+        calendar.set(getNowYearNum(), getNowMonthNum() - 2, 1);
+        int day = calendar.getActualMaximum(5);
+        calendar.set(getNowYearNum(), getNowMonthNum() - 2, day);
+        return getDayEndTime(calendar.getTime());
+    }
+
+    // 鑾峰彇鏈勾鐨勫紑濮嬫椂闂�
+    public static Date getBeginDayOfYear(int addYears) {
+        Calendar cal = Calendar.getInstance();
+        cal.set(Calendar.YEAR, getNowYearNum()+addYears);
+        cal.set(Calendar.MONTH, Calendar.JANUARY);
+        cal.set(Calendar.DATE, 1);
+        return getDayStartTime(cal.getTime());
+    }
+
+    // 鑾峰彇鏈勾鐨勭粨鏉熸椂闂�
+    public static java.util.Date getEndDayOfYear(int addYears){
+        Calendar cal = Calendar.getInstance();
+        cal.set(Calendar.YEAR, getNowYearNum()+addYears);
+        cal.set(Calendar.MONTH, Calendar.DECEMBER);
+        cal.set(Calendar.DATE, 31);
+        return getDayEndTime(cal.getTime());
+    }
+
+    // 鑾峰彇褰撳ぉ鐨勫紑濮嬫椂闂�
+    public static java.util.Date getDayBegin() {
+        Calendar cal = new GregorianCalendar();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        cal.set(Calendar.MILLISECOND, 0);
+        return cal.getTime();
+    }
+
+    // 鑾峰彇褰撳ぉ鐨勭粨鏉熸椂闂�
+    public static java.util.Date getDayEnd() {
+        Calendar cal = new GregorianCalendar();
+        cal.set(Calendar.HOUR_OF_DAY, 23);
+        cal.set(Calendar.MINUTE, 59);
+        cal.set(Calendar.SECOND, 59);
+        return cal.getTime();
+    }
+
+
+    // 鑾峰彇鏌愪釜鏃ユ湡鐨勫紑濮嬫椂闂�
+    public static Timestamp getDayStartTime(Date d) {
+        Calendar calendar = Calendar.getInstance();
+        if (null != d)
+            calendar.setTime(d);
+        calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),
+                calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
+        calendar.set(Calendar.MILLISECOND, 0);
+        return new Timestamp(calendar.getTimeInMillis());
+    }
+
+    // 鑾峰彇鏌愪釜鏃ユ湡鐨勭粨鏉熸椂闂�
+    public static Timestamp getDayEndTime(Date d) {
+        Calendar calendar = Calendar.getInstance();
+        if (null != d)
+            calendar.setTime(d);
+        calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),
+                calendar.get(Calendar.DAY_OF_MONTH), 23, 59, 59);
+        calendar.set(Calendar.MILLISECOND, 999);
+        return new Timestamp(calendar.getTimeInMillis());
+    }
+
+
+    // 鑾峰彇浠婂勾鏄摢涓�骞�
+    public static Integer getNowYearNum() {
+        Date date = new Date();
+        GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
+        gc.setTime(date);
+        return Integer.valueOf(gc.get(1));
+    }
+
+    // 鑾峰彇鏈湀鏄摢涓�鏈�
+    public static int getNowMonthNum() {
+        Date date = new Date();
+        GregorianCalendar gc = (GregorianCalendar) Calendar.getInstance();
+        gc.setTime(date);
+        return gc.get(2) + 1;
+    }
 }
\ No newline at end of file
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java
index 082627d..d3609e3 100644
--- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java
@@ -10,6 +10,7 @@
 import com.doumee.core.tms.model.response.TmsBasePageResponse;
 import com.doumee.core.tms.model.response.TmsOrderInfoResponse;
 import com.doumee.core.tms.model.response.TmsOrderListResponse;
+import com.doumee.core.tms.model.response.TmsOrderNoFinishListResponse;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.dao.business.model.TmsFactoryParam;
@@ -48,26 +49,11 @@
     @LoginNoRequired
     @ApiOperation("涓績鏁版嵁")
     @GetMapping("/centerData")
-    public ApiResponse<WholeProvinceBoardVO> centerData() {
-        WholeProvinceBoardVO data = new WholeProvinceBoardVO();
-        Random random = new Random();
-
-        data.setYearOutTotal(BigDecimal.valueOf(random.nextInt(200)));
-        data.setYearOutTotalOnYear(BigDecimal.valueOf(random.nextInt(10)));
-        data.setYearOutTimes(random.nextInt(200));
-        data.setYearProvinceRata(BigDecimal.valueOf(random.nextInt(100)).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP));
-
-        data.setYearInPlanTotal(BigDecimal.valueOf(random.nextInt(200)));
-        data.setYearInTotal(BigDecimal.valueOf(random.nextInt(data.getYearInPlanTotal().intValue())));
-        data.setYearInTotalOnYear(BigDecimal.valueOf(random.nextInt(10)));
-        data.setYearInTimes(random.nextInt(200));
-
-        data.setOutPlanTotal(BigDecimal.valueOf(random.nextInt(200)));
-        data.setOutPlanTimes(random.nextInt(200));
-        data.setOutTotal(BigDecimal.valueOf(random.nextInt(data.getOutPlanTotal().intValue())));
-        data.setOutTimes(random.nextInt(data.getOutPlanTimes()));
-        data.setOutRata(BigDecimal.valueOf(random.nextInt(100)));
-
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "鏌ヨ绫诲瀷鍘傚尯缂栫爜", required = false)
+    })
+    public ApiResponse<WholeProvinceBoardVO> centerData(@RequestParam String factoryCode) {
+        WholeProvinceBoardVO data = boardService.centerProvinceData(  factoryCode);
         return ApiResponse.success(data);
     }
 
@@ -75,43 +61,24 @@
     @LoginNoRequired
     @ApiOperation("杩戜竷鏃ュ埌璐ф儏鍐�")
     @GetMapping("/arriveGoodsList")
-    public ApiResponse<List<ArriveGoodsVO>> arriveGoodsList() {
-        List<ArriveGoodsVO> list = new ArrayList<>();
-        Random random = new Random();
-        List<String> dayList = DateUtil.getBeforDays(new Date(),7);
-        for (String str:dayList) {
-            ArriveGoodsVO data = new ArriveGoodsVO();
-            data.setDateStr(str);
-            data.setArriveNum(new BigDecimal(random.nextInt(1000)));
-            data.setInTransitNum(new BigDecimal(random.nextInt(1000)));
-            list.add(data);
-
-        }
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "鏌ヨ绫诲瀷鍘傚尯缂栫爜", required = false)
+    })
+    public ApiResponse<List<LastSevenDaysOrderVo>>  arriveGoodsList(@RequestParam String factoryCode) {
+        List<LastSevenDaysOrderVo> list = boardService.arriveGoodsList(factoryCode);
         return ApiResponse.success(list);
     }
 
 
-    @LoginNoRequired
-    @ApiOperation("褰撳墠杩愯緭浠诲姟")
-    @GetMapping("/transportTaskList")
-    public ApiResponse<List<TransportTaskVO>> transportTaskList() {
-        List<TransportTaskVO> list = new ArrayList<>();
-        Random random = new Random();
-        for (int i = 1; i < 11; i++) {
-            TransportTaskVO data = new TransportTaskVO();
-            data.setCarNo("鐨朅8" + random.nextInt(9) + random.nextInt(9) + random.nextInt(9) + random.nextInt(9));
-            data.setStatusStr("鍒拌揪鍗歌揣鍦�");
-            data.setAddress("瀹夊窘鍚堣偉");
-            data.setTaskDate(new Date());
-            list.add(data);
-        }
-        return ApiResponse.success(list);
-    }
     @LoginNoRequired
     @ApiOperation("璁㈠崟鍦ㄩ�旇窡韪�-绱鍑哄簱閲�")
     @GetMapping("/totalOutQtyNum")
-    public ApiResponse<TotalOutQtyNumVO> totalOutQtyNum() {
-        TotalOutQtyNumVO result = boardService.totalOutQtyNum();
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "鏌ヨ绫诲瀷 0鏈湀 1鏈懆 2鏈勾", required = false),
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "鏌ヨ绫诲瀷鍘傚尯缂栫爜", required = false)
+    })
+    public ApiResponse<TotalOutQtyNumVO> totalOutQtyNum(@RequestParam Integer type,@RequestParam String factoryCode) {
+        TotalOutQtyNumVO result = boardService.totalOutQtyNum(type,factoryCode);
 
         return ApiResponse.success(result);
     }
@@ -150,44 +117,29 @@
     @LoginNoRequired
     @ApiOperation("鍦板浘鏈湀鏈勾鎬诲嚭搴撻噺缁熻闆嗗悎锛堟寜鐪佷唤锛�")
     @GetMapping("/mapYearAndMonthOutList")
-    public ApiResponse<List<WholeProvinceMapVO>> mapYearAndMonthOutList( ) {
-        List<WholeProvinceMapVO>  list = boardService.mapYearAndMonthOutList();
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "鏌ヨ绫诲瀷鍘傚尯缂栫爜", required = false)
+    })
+    public ApiResponse<List<WholeProvinceMapVO>> mapYearAndMonthOutList( @RequestParam String factoryCode) {
+        List<WholeProvinceMapVO>  list = boardService.mapYearAndMonthOutList(factoryCode);
         return ApiResponse.success(list);
     }
 
 
     @ApiOperation("璁㈠崟浠诲姟鍚堝悓鍒楄〃鎺ュ彛")
     @LoginNoRequired
-    @PostMapping("/orderList")
-    public ApiResponse<TmsBasePageResponse<TmsOrderListResponse>> orderList(@RequestBody TmsOrderListRequest param )   {
-        if(param == null){
-            param = new TmsOrderListRequest();
-        }
-        if(param.getParameters() == null){
-            param.setParameters( new TmsOrderListParamRequest());
-        }
-        if(param.getPager() == null){
-            param.setPager( new TmsOrderListPagerRequest());
-        }
-        if(param.getPager().getPage() == null){
-            param.getPager().setPage(1);
-        }
-        if(param.getPager().getRows() == null){
-            param.getPager().setRows(10);
-        }
-        if(StringUtils.isBlank(param.getParameters().getPhoneNumber())){
-            param.getParameters().setPhoneNumber("00000000000");//鎵嬫満鍙峰繀濉�
-        }
-        if(param.getParameters().getContractNumbers()==null || param.getParameters().getContractNumbers().size()==0){
-            param.getParameters().setContractNumbers(null);
-        }
-        return  ApiResponse.success(tmsService.orderList(param));
+    @GetMapping("/orderList")
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "query", dataType = "String", name = "factoryCode", value = "鏌ヨ绫诲瀷鍘傚尯缂栫爜", required = false)
+    })
+    public ApiResponse<List<TmsOrderNoFinishListResponse>> orderNoFinishList(@RequestParam String factoryCode)   {
+        List<TmsOrderNoFinishListResponse> list = boardService.orderNoFinishList(factoryCode);
+        return  ApiResponse.success(list);
     }
     @ApiOperation("鍚堝悓璇︽儏鎺ュ彛")
     @LoginNoRequired
     @PostMapping("/orderInfo")
     public ApiResponse<TmsOrderInfoResponse> ordreInfo(@RequestBody TmsOrderInfoRequest request )   {
-
         return ApiResponse.success(tmsService.orderInfo(request));
     }
 
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/TMSContants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/TMSContants.java
index 5c30aeb..6941b1c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/TMSContants.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/TMSContants.java
@@ -21,6 +21,8 @@
         String[] getGis = new String[]{"/tms/zhyt/getGis",  "銆怲MS銆戞牴鎹繍杈撳崟鍙锋煡璇is杞�"};//TMS鏍规嵁杩愯緭鍗曞彿鏌ヨgis杞ㄦ帴鍙e湴鍧�
         String[] getOrderStatusByContractNumber = new String[]{"/tms/zhyt/getOrderStatusByContractNumber",  "銆怲MS銆戝崟鐢熷懡鍛ㄦ湡"};//3.8璁㈠崟鐢熷懡鍛ㄦ湡
         String[] getOutQtyAndVehicleQty = new String[]{"/tms/zhyt/getOutQtyAndVehicleQty",  "銆怲MS銆戞寚瀹氭椂闂磋寖鍥村唴绱鍑哄簱閲�"};//3.8鎸囧畾鏃堕棿鑼冨洿鍐呯疮璁″嚭搴撻噺
+        String[] getSevenArrivalStatusAndDetails = new String[]{"/tms/zhyt/getSevenArrivalStatusAndDetails",  "銆怲MS銆戣繎7鏃ュ埌璐ф儏鍐�(鍚槑缁�)"};//3.13杩�7鏃ュ埌璐ф儏鍐�(鍚槑缁�)
+        String[] getNotFinishOrderList = new String[]{"/tms/zhyt/getNotFinishOrderList",  "銆怲MS銆戞湭瀹屾垚璁㈠崟"};//3.13鏈畬鎴愯鍗�
     }
 
     public  enum TopStatusLevel {
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/request/TmsSevenArrivalDetailsRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/request/TmsSevenArrivalDetailsRequest.java
new file mode 100644
index 0000000..cfe63c1
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/request/TmsSevenArrivalDetailsRequest.java
@@ -0,0 +1,18 @@
+package com.doumee.core.tms.model.request;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("tms杩�7鏃ュ埌璐ф儏鍐�(鍚槑缁�)璇锋眰鍙傛暟")
+public class TmsSevenArrivalDetailsRequest {
+    private String ncCreateDateFrom;//	瀛楃涓�	璁㈠崟寮�濮嬫棩鏈� 2024-12-19
+    private String ncCreateDateThrough	;//	瀛楃涓�	璁㈠崟缁撴潫鏃ユ湡 2024-12-19
+    private List<String> facrotyCodeList;//鏄�	闆嗗悎	鐑熷巶闆嗗悎
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderListResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderListResponse.java
index fde4887..1ba3038 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderListResponse.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderListResponse.java
@@ -60,4 +60,6 @@
     private String    plannedArrivedDate; //		鐘舵�佹弿杩�
     private long timeStamp;//鏃堕棿鎴�
 
+
+
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderNoFinishListResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderNoFinishListResponse.java
new file mode 100644
index 0000000..8c0a945
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOrderNoFinishListResponse.java
@@ -0,0 +1,53 @@
+package com.doumee.core.tms.model.response;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("tms鏈畬鎴愬悎鍚屽垪琛ㄨ繑鍥炲弬鏁�")
+public class TmsOrderNoFinishListResponse {
+    @ApiModelProperty(value = "钀ラ攢璁㈠崟缂栫爜" )
+    private String    orderNumber;//	瀛楃涓�	钀ラ攢璁㈠崟缂栫爜
+    @ApiModelProperty(value = "鍚堝悓鍙�" )
+    private String    contractNumber;//	瀛楃涓�	鍚堝悓鍙�
+    @ApiModelProperty(value = "杩愯緭鍗曞彿" )
+    private String    transportCode	;//瀛楃涓�	杩愯緭鍗曞彿
+    @ApiModelProperty(value = "杩愯緭杞﹁締" )
+    private String       plateNumber;//	瀛楃涓�	杩愯緭杞﹁締
+    @ApiModelProperty(value = "鐘舵��" )
+    private String      status;//	瀛楃涓�	鐘舵��
+    @ApiModelProperty(value = "浠诲姟涓嬭揪鏃堕棿" )
+    private String     transportDate;//	瀛楃涓�	浠诲姟涓嬭揪鏃堕棿
+    @ApiModelProperty(value = "璁㈠崟鍒涘缓鏃ユ湡" )
+    private String     createDate	;//瀛楃涓�	璁㈠崟鍒涘缓鏃ユ湡
+    @ApiModelProperty(value = "鍙戣揣鍦�" )
+    private String     deliveryEnterprise	;//瀛楃涓�	鍙戣揣鍦�
+    @ApiModelProperty(value = "鍒拌揣鍦�" )
+    private String     receiveEnterprise	;//瀛楃涓�	鍒拌揣鍦�
+    @ApiModelProperty(value = "鍙告満濮撳悕" )
+    private String     driverName	;//瀛楃涓�	鍙告満濮撳悕
+    @ApiModelProperty(value = "鍙告満鎵嬫満鍙�" )
+    private String    driverTel	;//瀛楃涓�	鍙告満鎵嬫満鍙�
+    @ApiModelProperty(value = "棰勮鍒拌揪鏃堕棿" )
+    private String     plannedArrivedDate	;//瀛楃涓�	棰勮鍒拌揪鏃堕棿
+    @ApiModelProperty(value = "杩愯緭閲�" )
+    private String    totalQty;//	鏁板瓧	杩愯緭閲�
+    @ApiModelProperty(value = "鍙戣揣浠撳簱缁忓害" )
+    private String    deliveryLon;//	鏁板瓧	鍙戣揣浠撳簱缁忓害
+    @ApiModelProperty(value = "鍙戣揣浠撳簱缁村害" )
+    private String    deliveryLat	;//鏁板瓧	鍙戣揣浠撳簱缁村害
+    @ApiModelProperty(value = "鏀惰揣浠撳簱缁忓害" )
+    private String    receiveLon;//	鏁板瓧	鏀惰揣浠撳簱缁忓害
+    @ApiModelProperty(value = "鏀惰揣浠撳簱缁村害" )
+    private String    receiveLat;//	鏁板瓧	鏀惰揣浠撳簱缁村害
+    @ApiModelProperty(value = "杞﹁締缁忓害" )
+    private String    platLon	;//鏁板瓧	杞﹁締缁忓害
+    @ApiModelProperty(value = "杞﹁締缁忓害" )
+    private String    platLat	;//鏁板瓧	杞﹁締缁忓害
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOutQtyAndVehicleQtyResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOutQtyAndVehicleQtyResponse.java
index 55153bd..4d5740f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOutQtyAndVehicleQtyResponse.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsOutQtyAndVehicleQtyResponse.java
@@ -18,9 +18,9 @@
     @ApiModelProperty(value = "绱鍑哄簱閲�")
     private BigDecimal totalOutQty;//鏁板瓧	绱鍑哄簱閲�
     @ApiModelProperty(value = "鐪佸绱鍑哄簱閲�")
-    private String outSideProvinceOutQty;//	鏁板瓧	鐪佸绱鍑哄簱閲�
+    private BigDecimal outSideProvinceOutQty;//	鏁板瓧	鐪佸绱鍑哄簱閲�
     @ApiModelProperty(value = "鐪佸唴绱鍑哄簱閲�")
-    private String inSideProvinceOutQty;//	鏁板瓧	鐪佸唴绱鍑哄簱閲�
+    private BigDecimal inSideProvinceOutQty;//	鏁板瓧	鐪佸唴绱鍑哄簱閲�
     @ApiModelProperty(value = "绱鍑哄簱杞︽")
-    private BigDecimal vehicleQty;//鏁板瓧	绱鍑哄簱杞︽
+    private Integer vehicleQty;//鏁板瓧	绱鍑哄簱杞︽
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsSevenArrivalStatusAndDetailsResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsSevenArrivalStatusAndDetailsResponse.java
new file mode 100644
index 0000000..ad02453
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/tms/model/response/TmsSevenArrivalStatusAndDetailsResponse.java
@@ -0,0 +1,32 @@
+package com.doumee.core.tms.model.response;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2023/11/23 14:03
+ */
+@Data
+@ApiModel("tms鎸囧畾鏃堕棿鑼冨洿鍐呯疮璁″嚭搴撻噺杩斿洖鍙傛暟")
+public class TmsSevenArrivalStatusAndDetailsResponse {
+
+    private String ncCreateDate	;//鍒跺崟鏃ユ湡	杩斿洖骞存湀鏃ワ紝姣斿锛�2024-07-08
+    @ApiModelProperty(value = "宸ュ巶鍚嶇О")
+    private String factoryName	;//宸ュ巶鍚嶇О
+    @ApiModelProperty(value = "宸ュ巶缂栫爜")
+    private String factoryCode;//	宸ュ巶缂栫爜
+    @ApiModelProperty(value = "杩愯緭鍗曞彿")
+    private String transportCode	;//杩愯緭鍗曞彿
+    @ApiModelProperty(value = "杞︾墝鍙�")
+    private String platNumber	;//杞︾墝鍙�
+    @ApiModelProperty(value = "鍚堝悓鍙�")
+    private String  contractNumber;//	鍚堝悓鍙�
+    @ApiModelProperty(value = "鐘舵�乗t0  鏈惎杩愶紱1   鍦ㄩ�旓紱2  鍒拌揣")
+    private Integer  status;//	鐘舵��	0  鏈惎杩愶紱1   鍦ㄩ�旓紱2  鍒拌揣
+    @ApiModelProperty(value = "浠撳簱鍚嶇О")
+    private String  repertotyName;//	浠撳簱鍚嶇О
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/TmsFactoryParam.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/TmsFactoryParam.java
index f396de4..9e11fcb 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/TmsFactoryParam.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/TmsFactoryParam.java
@@ -72,9 +72,9 @@
     @ExcelColumn(name="鎬诲嚭搴撹兘鍔涳紙涓囨敮锛�")
     private BigDecimal num2;
 
-    @ApiModelProperty(value = "鎵╁睍瀛楁3")
-    @ExcelColumn(name="鎵╁睍瀛楁3")
-    private String param3;
+    @ApiModelProperty(value = "8灏忔椂鍑哄簱鑳藉姏锛堜竾鏀級", example = "1")
+    @ExcelColumn(name="8灏忔椂鍑哄簱鑳藉姏锛堜竾鏀級")
+    private BigDecimal param3;
 
     @ApiModelProperty(value = "鎵╁睍瀛楁4")
     @ExcelColumn(name="鎵╁睍瀛楁4")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderInfoVo.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderInfoVo.java
new file mode 100644
index 0000000..996243d
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderInfoVo.java
@@ -0,0 +1,23 @@
+package com.doumee.dao.web.response.platformReport;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 閫氱敤
+ *
+ * @Author : Rk
+ * @create 2024/10/25 10:59
+ */
+@Data
+public class LastSevenDaysOrderInfoVo {
+
+    @ApiModelProperty(value = "鏃ユ湡")
+    private String dateStr;
+    @ApiModelProperty(value = "鐘舵�� 0鏈惎鍔� 1杩愯緭涓� 2宸插埌璐�")
+    private Integer status;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderVo.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderVo.java
new file mode 100644
index 0000000..b161716
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/LastSevenDaysOrderVo.java
@@ -0,0 +1,34 @@
+package com.doumee.dao.web.response.platformReport;
+
+import com.doumee.core.tms.model.response.TmsSevenArrivalStatusAndDetailsResponse;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 閫氱敤
+ *
+ * @Author : Rk
+ * @create 2024/10/25 10:59
+ */
+@Data
+public class LastSevenDaysOrderVo {
+
+    @ApiModelProperty(value = "鏃ユ湡")
+    private String dateStr;
+    @ApiModelProperty(value = "鏈惎鍔ㄦ暟閲�")
+    private int waitNum;
+    @ApiModelProperty(value = "杩愯緭涓暟閲�")
+    private int ingNum;
+    @ApiModelProperty(value = "宸插埌璐ф暟閲�")
+    private int doneNum;
+    @ApiModelProperty(value = "鏈惎鍔ㄩ泦鍚�")
+    private List<TmsSevenArrivalStatusAndDetailsResponse> waitList;
+    @ApiModelProperty(value = "杩愯緭涓泦鍚�")
+    private List<TmsSevenArrivalStatusAndDetailsResponse> ingList;
+    @ApiModelProperty(value = "宸插埌璐ч泦鍚�")
+    private List<TmsSevenArrivalStatusAndDetailsResponse> doneList;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/TotalOutQtyNumVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/TotalOutQtyNumVO.java
index bc19379..499e756 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/TotalOutQtyNumVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/TotalOutQtyNumVO.java
@@ -27,5 +27,7 @@
     private BigDecimal sameInNum;
     @ApiModelProperty(value = "鍘诲勾鍚屾湡鍑哄簱閲忥紙鐪佸锛�")
     private BigDecimal sameOutNum;
+    @ApiModelProperty(value = "绱杞︽鏁伴噺")
+    private int totalCarNum;
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WholeProvinceBoardVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WholeProvinceBoardVO.java
index 8becde0..34540f1 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WholeProvinceBoardVO.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/platformReport/WholeProvinceBoardVO.java
@@ -15,69 +15,29 @@
 @Data
 public class WholeProvinceBoardVO {
 
-    @ApiModelProperty(value = "绱鍑哄簱閲�  - 骞村害")
-    private BigDecimal yearOutTotal;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戝綋鏃ヨ鍗曢噷")
+    private BigDecimal currentOrderNum;
 
-    @ApiModelProperty(value = "绱鍑哄簱閲�  - 骞村害鍚屾瘮")
-    private BigDecimal yearOutTotalOnYear;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戝綋鏃ヨ鍒掗噺")
+    private BigDecimal currentPlanNum;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戝綋鏃ヨ鍒掕溅娆¢噺")
+    private int currentPlanCarNum;
 
-    @ApiModelProperty(value = "绱鍑哄簱杞︽ - 骞村害")
-    private Integer yearOutTimes;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戜粖鏃ュ嚭搴撻噺")
+    private BigDecimal  crrentOutNum;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戜粖鏃ュ嚭搴撹溅娆¢噺")
+    private int  crrentOutCarNum;
 
-    @ApiModelProperty(value = "鐪佸唴鍗犳瘮")
-    private BigDecimal yearProvinceRata;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戝墿浣欎换鍔¢噺")
+    private BigDecimal crrentRestNum;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戝墿浣欎换鍔¤溅娆¢噺")
+    private int  crrentRestCarNum;
 
 
-    @ApiModelProperty(value = "绱鍏ュ簱閲�  - 骞村害")
-    private BigDecimal yearInTotal;
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖��8灏忔椂鍑哄簱鑳藉姏")
+    private BigDecimal hoursAbility;
 
-    @ApiModelProperty(value = "绱鍏ュ簱閲�  - 骞村害鍚屾瘮")
-    private BigDecimal yearInTotalOnYear;
-
-    @ApiModelProperty(value = "绱鍏ュ簱杞︽ - 骞村害")
-    private Integer yearInTimes;
-
-    @ApiModelProperty(value = "璁″垝鍏ュ簱閲� - 骞村害")
-    private BigDecimal yearInPlanTotal;
-
-
-
-    @ApiModelProperty(value = "浠婃棩璁″垝鍑哄簱閲�")
-    private BigDecimal outPlanTotal;
-
-    @ApiModelProperty(value = "浠婃棩璁″垝鍑哄簱娆℃暟")
-    private Integer outPlanTimes;
-
-    @ApiModelProperty(value = "浠婃棩鍑哄簱閲�")
-    private BigDecimal outTotal;
-
-    @ApiModelProperty(value = "浠婃棩鍑哄簱娆℃暟")
-    private Integer outTimes;
-
-    @ApiModelProperty(value = "鍑哄簱鑳藉姏鍗犳瘮")
-    private BigDecimal outRata;
-
-    @ApiModelProperty(value = "杩戜竷鏃ュ埌璐ф儏鍐�" , hidden = true)
-    private List<ArriveGoodsVO> arriveGoodsList;
-
-    @ApiModelProperty(value = "褰撳墠杩愯緭浠诲姟" , hidden = true)
-    private List<TransportTaskVO> transportTaskList;
-
-
-    @ApiModelProperty(value = "杩涢攢瀛樿繍钀� - 7鏃�" , hidden = true)
-    private List<WholeProvinceZxtDetailVO> salesOperationWeekList;
-
-    @ApiModelProperty(value = "杩涢攢瀛樿繍钀� - 鏈堝害" , hidden = true)
-    private List<WholeProvinceZxtDetailVO> salesOperationMonthList;
-
-    @ApiModelProperty(value = "杩涢攢瀛樿繍钀� - 骞村害" , hidden = true)
-    private List<WholeProvinceZxtDetailVO> salesOperationYearList;
-
-    @ApiModelProperty(value = "搴撳瓨鍒╃敤鐜�" , hidden = true)
-    private List<StockRataVO> stockRataVOListList;
-
-
-
-
+    @ApiModelProperty(value = "銆愬嚭搴撹兘鍔涖�戞渶澶у嚭搴撹兘鍔�")
+    private BigDecimal maxAbility;
 
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TmsFactoryParamServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TmsFactoryParamServiceImpl.java
index ebc5c4f..5479690 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TmsFactoryParamServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/TmsFactoryParamServiceImpl.java
@@ -176,13 +176,7 @@
         if (pageWrap.getModel().getParam4() != null) {
              queryWrapper.eq(TmsFactoryParam::getParam4, pageWrap.getModel().getParam4());
         }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
-            }
-        }
+        queryWrapper.orderByAsc( TmsFactoryParam::getSortnum);
         return PageData.from(tmsFactoryParamMapper.selectPage(page, queryWrapper));
     }
 
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 ac195f5..28bf9dd 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
@@ -1,5 +1,7 @@
 package com.doumee.service.business.impl.thrid;
 
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.TypeReference;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
@@ -14,12 +16,11 @@
 import com.doumee.core.haikang.model.param.respose.*;
 import com.doumee.core.haikang.service.HKCarOpenService;
 import com.doumee.core.haikang.service.HKService;
+import com.doumee.core.tms.model.TMSContants;
 import com.doumee.core.tms.model.request.TmsFacrotyCodeListRequest;
 import com.doumee.core.tms.model.request.TmsOutQtyAndVehicleQtyRequest;
-import com.doumee.core.tms.model.response.TmsDistributionOfDeliveryLocResponse;
-import com.doumee.core.tms.model.response.TmsInventoryListResponse;
-import com.doumee.core.tms.model.response.TmsOutQtyAndVehicleQtyResponse;
-import com.doumee.core.tms.model.response.TmsTotalAndReportVehicleQtyResponse;
+import com.doumee.core.tms.model.request.TmsSevenArrivalDetailsRequest;
+import com.doumee.core.tms.model.response.*;
 import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.DateUtil;
 import com.doumee.core.utils.Utils;
@@ -42,6 +43,7 @@
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
@@ -88,6 +90,9 @@
     private PlatformGroupMapper platformGroupMapper;
     @Autowired
     private TmsService tmsService;
+
+    @Value("${debug_model}")
+    private Boolean isDebug;
     /**
      * 鑾峰彇鍖哄煙鏍戝舰缁撴瀯鏁版嵁
      * @return
@@ -1042,7 +1047,7 @@
                     .isNotNull(PlatformLog::getParam3)
                     .ne(PlatformLog::getParam3,Constants.ZERO+""));
             if(platformLogList!=null && platformLogList.size()>0){
-                return new BigDecimal((double)(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum))/(double)60);
+                return new BigDecimal((double)(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum))/(double)3600);
             }
         }
         return r;
@@ -1861,6 +1866,9 @@
                 curtotalNum += Constants.formatIntegerNum(workEfficiencyVO.getWorkNum()) ;
             }
             workEfficiencyVO.setTotalWorkNum(curtotalNum);//绱鍊�
+            if(System.currentTimeMillis() < curTime){
+                workEfficiencyVO.setTotalWorkNum(0);
+            }
             workEfficiencyVOList.add(workEfficiencyVO);
         }
         return workEfficiencyVOList;
@@ -2042,7 +2050,7 @@
         }
     }
     /**
-     * 鍑哄簱鑳藉姏鏉庢案鍒�
+     * 鍑哄簱鑳藉姏
      * @return
      */
     @Override
@@ -2058,13 +2066,17 @@
         if(paramList!=null){
             String startDate = DateUtil.formatDate(new Date(),"yyyy-MM-dd");
             String endDate = DateUtil.formatDate(new Date(),"yyyy-MM-dd");
+            if(isDebug){
+                  startDate =  "2024-12-01";
+                  endDate =   "2024-12-05";
+            }
             for(TmsFactoryParam p : paramList){
                 WholeProvinceZxtDetailVO t = new WholeProvinceZxtDetailVO();
                 t.setFactoryName(p.getName());
                 t.setCurrentNum(new BigDecimal(0));
                 t.setUseRate(new BigDecimal(0));
-                t.setTotalNum(Constants.formatBigdecimal(p.getNum2()));//鎬诲嚭搴撹兘鍔�
-                if(StringUtils.isBlank(p.getCode())){
+                t.setTotalNum(Constants.formatBigdecimal(p.getParam3()));//8灏忔椂鍑哄簱鑳藉姏
+                if(StringUtils.isNotBlank(p.getCode())){
                     param.setFacrotyCodeList(new ArrayList<>());
                     param.setDateStart(startDate);
                     param.setDateEnd(endDate);
@@ -2086,11 +2098,62 @@
         return result;
     }
     /**
+     * 鍏ㄨ韩鍑哄簱鑳藉姏
+     * @return
+     */
+    @Override
+    public  WholeProvinceBoardVO centerProvinceData(String  factoryCode){
+        WholeProvinceBoardVO data = new WholeProvinceBoardVO();
+        data.setMaxAbility(new BigDecimal(0));
+        data.setHoursAbility(new BigDecimal(0));
+        List<TmsFactoryParam> paramList = factoryList();
+        String code = null;
+        if(paramList!=null){
+            //澶勭悊鏈�澶у嚭搴撹兘鍔涘拰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())));
+                        code = param.getCode();
+                        break;
+                    }
+                }else{
+                    data.setHoursAbility(data.getHoursAbility().add(Constants.formatBigdecimal(param.getParam3())));
+                    data.setMaxAbility(data.getMaxAbility().add(Constants.formatBigdecimal(param.getNum2())));
+                }
+            }
+        }
+        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();
+        TmsOutQtyAndVehicleQtyRequest param = new TmsOutQtyAndVehicleQtyRequest();
+        param.setDateEnd(DateUtil.getShortTime(date));
+        param.setDateStart(DateUtil.getShortTime(date));
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
+        }
+        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())));//浠婃棩鍑哄簱杞︽
+            }
+        }
+        return  data;
+
+    }
+    /**
      * 鍑哄簱鑳藉姏鏉庢案鍒�
      * @return
      */
     @Override
-    public    TotalOutQtyNumVO totalOutQtyNum(int queryType){
+    public    TotalOutQtyNumVO totalOutQtyNum(int type,String code){
         TotalOutQtyNumVO  data = new TotalOutQtyNumVO();
         data.setCurrentInNum(new BigDecimal(0));
         data.setLastInNum(new BigDecimal(0));
@@ -2100,6 +2163,68 @@
         data.setLastOutNum(new BigDecimal(0));
         data.setSameOutNum(new BigDecimal(0));
 
+        Date sameStart = DateUtil.getBeginDayOfMonth(-1);
+        Date sameEnd = DateUtil.getEndDayOfMonth(-1);
+        Date curStart = DateUtil.getBeginDayOfMonth(0);
+        Date curEnd = DateUtil.getEndDayOfMonth(0);
+        Date lastStart = DateUtil.getBeginDayOfLastMonth();
+        Date lastEnd = DateUtil.getEndDayOfLastMonth();
+        if(type ==1){
+            //鏈懆
+            sameStart= DateUtil.getBeginDayOfWeek(-1);
+            sameEnd= DateUtil.getEndDayOfWeek(-1);
+            curStart= DateUtil.getBeginDayOfWeek(0);
+            curEnd= DateUtil.getEndDayOfWeek(0);
+            lastStart = DateUtil.getBeginDayOfLastWeek();
+            lastEnd= DateUtil.getEndDayOfLastWeek();
+        }else if(type == 2){
+            curStart= DateUtil.getBeginDayOfYear(0);
+            curEnd= DateUtil.getEndDayOfYear(0);
+            lastStart= DateUtil.getBeginDayOfYear(-1);
+            lastEnd= DateUtil.getEndDayOfYear(-1);
+            sameStart = null;
+            sameEnd =null;
+        }
+        TmsOutQtyAndVehicleQtyRequest param = new TmsOutQtyAndVehicleQtyRequest();
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);
+        }
+        if(type !=2){
+            //鏈勾鐨勪笉闇�瑕佹煡鍘诲勾鍚屽懆鏈�
+            param.setDateEnd(DateUtil.getShortTime(sameEnd));
+            param.setDateStart(DateUtil.getShortTime(sameStart));
+            List<TmsOutQtyAndVehicleQtyResponse> listSame=  tmsService.getOutQtyAndVehicleQty(param);//鍘诲勾鍚屾湡
+            if(listSame!=null ){
+                for(TmsOutQtyAndVehicleQtyResponse model : listSame){
+                    data.setSameOutNum(data.getSameOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+                    data.setSameInNum(data.getSameInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+                }
+            }
+        }
+        param.setDateEnd(DateUtil.getShortTime(curEnd));
+        param.setDateStart(DateUtil.getShortTime(curStart));
+        List<TmsOutQtyAndVehicleQtyResponse> listCur =  tmsService.getOutQtyAndVehicleQty(param);//鏈懆鏈�
+        if(listCur!=null ){
+            for(TmsOutQtyAndVehicleQtyResponse model : listCur){
+                data.setCurrentOutNum(data.getCurrentOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+                data.setCurrentInNum(data.getCurrentInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+                data.setTotalCarNum(data.getTotalCarNum()+Constants.formatIntegerNum(model.getVehicleQty()));//绱杞︽
+            }
+        }
+        param.setDateEnd(DateUtil.getShortTime(lastEnd));
+        param.setDateStart(DateUtil.getShortTime(lastStart));
+        List<TmsOutQtyAndVehicleQtyResponse> listLast =  tmsService.getOutQtyAndVehicleQty(param);//涓婂懆鏈�
+        if(listCur!=null ){
+            for(TmsOutQtyAndVehicleQtyResponse model : listLast){
+                data.setLastOutNum(data.getLastOutNum().add(Constants.formatBigdecimal(model.getOutSideProvinceOutQty())));
+                data.setLastInNum(data.getLastInNum().add(Constants.formatBigdecimal(model.getInSideProvinceOutQty())));
+            }
+        }
+        if(type == 2){//鏈勾鐨�
+            data.setSameOutNum(data.getLastOutNum());
+            data.setSameInNum(data.getLastInNum());
+        }
         return data;
     }
     /**
@@ -2107,36 +2232,26 @@
      * @return
      */
     @Override
-    public    List<WholeProvinceMapVO> mapYearAndMonthOutList(){
+    public    List<WholeProvinceMapVO> mapYearAndMonthOutList(String code){
         List<WholeProvinceMapVO> result = new ArrayList<>();
-        List<TmsFactoryParam> paramList =factoryList();
-        if(paramList!=null && paramList.size()>0){
-            List<String> codes = new ArrayList<>();
-            for(TmsFactoryParam p : paramList){
-                if(StringUtils.isBlank(p.getCode())){
-                    continue;
-                }
-                codes.add(p.getCode());
-            }
-            if(codes.size()>0){
-                TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
-                param.setFacrotyCodeList(codes);
-                List<TmsDistributionOfDeliveryLocResponse> response  = tmsService.getDistributionOfDeliveryLocations(param);//鏌ヨ鍑哄簱閲�
-                if(response!=null &&response.size()>0){
-                    for(TmsDistributionOfDeliveryLocResponse model : response){
-                        WholeProvinceMapVO tt = getFromProvinceResultList(model ,result);
-                        if(tt == null){
-                            tt =new WholeProvinceMapVO();
-                            tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
-                            tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
-                            tt.setProvinceCode(model.getFromProvinceCode());
-                            tt.setProvinceName(model.getFromProvinceName());
-                            result.add(tt);
-                        }
-                    }
+        TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);
+        }
+        List<TmsDistributionOfDeliveryLocResponse> response  = tmsService.getDistributionOfDeliveryLocations(param);//鏌ヨ鍑哄簱閲�
+        if(response!=null &&response.size()>0){
+            for(TmsDistributionOfDeliveryLocResponse model : response){
+                WholeProvinceMapVO tt = getFromProvinceResultList(model ,result);
+                if(tt == null){
+                    tt =new WholeProvinceMapVO();
+                    tt.setMonthNum( Constants.formatBigdecimal0Float(model.getMonthOutboundQuantity()));
+                    tt.setYearNum( Constants.formatBigdecimal0Float(model.getYearOutboundQuantity()));
+                    tt.setProvinceCode(model.getFromProvinceCode());
+                    tt.setProvinceName(model.getFromProvinceName());
+                    result.add(tt);
                 }
             }
-
         }
         return result;
     }
@@ -2165,6 +2280,65 @@
         return paramList;
     }
     /**
+     * 鑾峰彇鏈畬鎴愯鍗曢泦鍚�
+     * @return TmsBaseResponse
+     */
+    @Override
+    public   List<TmsOrderNoFinishListResponse>  orderNoFinishList(String code){
+        TmsFacrotyCodeListRequest param = new TmsFacrotyCodeListRequest();
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
+        }
+        List<TmsOrderNoFinishListResponse> infoList =   tmsService.getNotFinishOrderList(param);//鏌ヨ鍑哄簱閲�
+        return infoList;
+    }
+    /**
+     * 杩戜竷鏃ュ埌璐ф儏鍐�
+     * @return
+     */
+    @Override
+    public  List<LastSevenDaysOrderVo> arriveGoodsList(String code){
+        List<LastSevenDaysOrderVo> list = new ArrayList<>();
+        TmsSevenArrivalDetailsRequest param = new TmsSevenArrivalDetailsRequest();
+        if(StringUtils.isNotBlank(code)){
+            param.setFacrotyCodeList(new ArrayList<>());
+            param.getFacrotyCodeList().add(code);//鏌ヨ鎸囧畾鍘傚尯
+        }
+        List<TmsSevenArrivalStatusAndDetailsResponse> infoList =   tmsService.getSevenArrivalStatusAndDetails(param);//鏌ヨ鍑哄簱閲�
+        Date date = new Date();
+        for (int i = 0; i < 7; i++) {
+            LastSevenDaysOrderVo model = new LastSevenDaysOrderVo();
+            Date td = DateUtil.addDaysToDate(date,-i);
+            model.setDateStr(DateUtil.getShortTime(td));
+            dealGoodsListFromResponse(model,infoList);
+        }
+        return list;
+    }
+    private void dealGoodsListFromResponse(  LastSevenDaysOrderVo model, List<TmsSevenArrivalStatusAndDetailsResponse> list) {
+        model.setIngList(new ArrayList<>());
+        model.setWaitList(new ArrayList<>());
+        model.setDoneList(new ArrayList<>());
+        if(list ==null || list.size()==0){
+            return;
+        }
+        for(TmsSevenArrivalStatusAndDetailsResponse temp : list){
+            if(StringUtils.equals(temp.getNcCreateDate(),model.getDateStr())){
+                if(Constants.equalsInteger(temp.getStatus(),Constants.ZERO)){
+                    model.getWaitList().add(temp);
+                }else if(Constants.equalsInteger(temp.getStatus(),Constants.ONE)){
+                    model.getIngList().add(temp);
+                }else if(Constants.equalsInteger(temp.getStatus(),Constants.TWO)){
+                    model.getDoneList().add(temp);
+                }
+            }
+        }
+        model.setDoneNum(model.getDoneList().size());
+        model.setIngNum(model.getIngList().size());
+        model.setWaitNum(model.getWaitList().size());
+    }
+
+    /**
      * 鍑哄簱鑳藉姏鏉庢案鍒�
      * @return
      */
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java
index 615705c..4aa255f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/TmsServiceImpl.java
@@ -190,6 +190,24 @@
     }
 
     /**
+     * 鏈畬鎴愯鍗曞垪琛ㄦ帴鍙�
+     * 鏍规嵁鍖哄煙ID闆嗗悎+绛涢�夋潯浠讹紙鍚堝悓鍙枫�佸埗鍗曞紑濮嬫棩鏈熴�佸埗鍗曠粨鏉熸棩鏈熴�佸彂璐у湴銆佸埌璐у湴銆佺渷浠斤紝闈為渶瑕侊級锛岃繑鍥炲悎鍚屽垪琛ㄤ俊鎭紝鎸夌収鏃堕棿鍊掑簭灞曠ず锛�
+     * @param param 鍙傛暟
+     * @return TmsBaseResponse
+     */
+    @Override
+    public    List<TmsOrderNoFinishListResponse> getNotFinishOrderList(TmsFacrotyCodeListRequest param){
+        String url = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.TMS_INTERFACE_URL_PREFIX).getCode()
+                    +TMSContants.InterfacePath.getNotFinishOrderList[0];
+        TmsBaseResponse<List<TmsOrderNoFinishListResponse> > response = sendHttpRequest(url,TMSContants.InterfacePath.getNotFinishOrderList[1],JSONObject.toJSONString(param)
+                ,new TypeReference< TmsBaseResponse<List<TmsOrderNoFinishListResponse>> >(){});
+        if(response ==null || response.getData() == null){
+            return  new ArrayList<>();
+        }
+        return  response.getData();
+
+    }
+    /**
      * 鍚堝悓鍒楄〃鎺ュ彛
      * 鏍规嵁鍖哄煙ID闆嗗悎+绛涢�夋潯浠讹紙鍚堝悓鍙枫�佸埗鍗曞紑濮嬫棩鏈熴�佸埗鍗曠粨鏉熸棩鏈熴�佸彂璐у湴銆佸埌璐у湴銆佺渷浠斤紝闈為渶瑕侊級锛岃繑鍥炲悎鍚屽垪琛ㄤ俊鎭紝鎸夌収鏃堕棿鍊掑簭灞曠ず锛�
      * @param param 鍙傛暟
@@ -244,10 +262,10 @@
     @Override
     public  List<TmsDistributionOfDeliveryLocResponse>   getDistributionOfDeliveryLocations(TmsFacrotyCodeListRequest param){
         List<TmsDistributionOfDeliveryLocResponse> result = new ArrayList<>();
-        if( param.getFacrotyCodeList() == null || param.getFacrotyCodeList().size() == 0){
-            param.setFacrotyCodeList(new ArrayList<>());
-            param.getFacrotyCodeList().add("0");
-        }
+//        if( param.getFacrotyCodeList() == null || param.getFacrotyCodeList().size() == 0){
+//            param.setFacrotyCodeList(new ArrayList<>());
+//            param.getFacrotyCodeList().add("0");
+//        }
         String url = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.TMS_INTERFACE_URL_PREFIX).getCode()
                     +TMSContants.InterfacePath.getDistributionOfDeliveryLocations[0];
         TmsBaseResponse< List<TmsDistributionOfDeliveryLocResponse>> response = sendHttpRequest(url,TMSContants.InterfacePath.getDistributionOfDeliveryLocations[1],
@@ -296,6 +314,23 @@
         return result;
     }
     /**
+     * 杩�7鏃ュ埌璐ф儏鍐�(鍚槑缁�)
+     * @return TmsBaseResponse
+     */
+    @Override
+    public  List<TmsSevenArrivalStatusAndDetailsResponse>   getSevenArrivalStatusAndDetails(TmsSevenArrivalDetailsRequest param ){
+        List<TmsSevenArrivalStatusAndDetailsResponse> result = new ArrayList<>();
+        String url = systemDictDataBiz.queryByCode(Constants.TSM_PARAM,Constants.TMS_INTERFACE_URL_PREFIX).getCode()
+                    +TMSContants.InterfacePath.getSevenArrivalStatusAndDetails[0];
+        TmsBaseResponse< List<TmsSevenArrivalStatusAndDetailsResponse>> response = sendHttpRequest(url,TMSContants.InterfacePath.getSevenArrivalStatusAndDetails[1]
+                ,JSONObject.toJSONString(param)
+                ,new TypeReference< TmsBaseResponse< List<TmsSevenArrivalStatusAndDetailsResponse>>>(){});
+        if(response!=null && response.getData()!=null){
+              result =response.getData();
+        }
+        return result;
+    }
+    /**
      * 鎸囧畾鏃堕棿鑼冨洿鍐呯疮璁″嚭搴撻噺
      * @return TmsBaseResponse
      */
@@ -313,6 +348,7 @@
         return result;
     }
 
+
     /**
      * 鍙戣捣 tms鎺ュ彛璇锋眰
      * @param url
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java
index d408f01..ef4ca5d 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/BoardService.java
@@ -2,6 +2,7 @@
 
 import com.doumee.core.haikang.model.cars.response.CarsAlarmResultListResponse;
 import com.doumee.core.haikang.model.param.respose.*;
+import com.doumee.core.tms.model.response.TmsOrderNoFinishListResponse;
 import com.doumee.dao.business.model.PlatformWarnEvent;
 import com.doumee.dao.business.model.TmsFactoryParam;
 import com.doumee.dao.web.reqeust.CarsJobAndContractDTO;
@@ -99,7 +100,13 @@
 
     List<TmsFactoryParam> factoryList();
 
-    List<WholeProvinceMapVO> mapYearAndMonthOutList();
+    List<WholeProvinceMapVO> mapYearAndMonthOutList(String factoryId);
 
-    TotalOutQtyNumVO totalOutQtyNum(int queryType);
+    TotalOutQtyNumVO totalOutQtyNum(int queryType,String factoryId);
+
+    WholeProvinceBoardVO centerProvinceData(String factoryId);
+
+    List<LastSevenDaysOrderVo> arriveGoodsList(String factoryid);
+
+    List<TmsOrderNoFinishListResponse> orderNoFinishList(String factoryCode);
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/TmsService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/TmsService.java
index bf6d19c..5c37535 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/TmsService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/third/TmsService.java
@@ -30,6 +30,7 @@
      */
     TmsBasePageResponse<TmsOrderListResponse> orderList(TmsOrderListRequest param);
     List<TmsGisListResponse>  gisList(TmsGisListRequest param);
+    List<TmsOrderNoFinishListResponse> getNotFinishOrderList(TmsFacrotyCodeListRequest param);
     List<TmsCircleStatusResultListResponse>  getCicleStatusList(TmsCircleStatusListRequest param);
     /**
      * 鍚堝悓璇︽儏鎺ュ彛
@@ -56,7 +57,11 @@
      * @return TmsBaseResponse
      */
       List<TmsTotalAndReportVehicleQtyResponse>   getTotalAndReportVehicleQty( );
-
+    /**
+     * 杩�7鏃ュ埌璐ф儏鍐�(鍚槑缁�)
+     * @return TmsBaseResponse
+     */
+       List<TmsSevenArrivalStatusAndDetailsResponse>   getSevenArrivalStatusAndDetails(TmsSevenArrivalDetailsRequest param );
     /**
      * 鎸囧畾鏃堕棿鑼冨洿鍐呯疮璁″嚭搴撻噺
      * @param param
@@ -64,4 +69,5 @@
      */
 
     List<TmsOutQtyAndVehicleQtyResponse>   getOutQtyAndVehicleQty(TmsOutQtyAndVehicleQtyRequest param );
+
 }

--
Gitblit v1.9.3