From 3078ed5432eb05d74dbd91bda2c7bfe6d2faa5f4 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期五, 27 三月 2026 10:50:26 +0800
Subject: [PATCH] 修改推送应收账单

---
 tms/src/main/java/com/ruoyi/tms/service/impl/TmsDispatchOrderServiceImpl.java |  182 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 173 insertions(+), 9 deletions(-)

diff --git a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsDispatchOrderServiceImpl.java b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsDispatchOrderServiceImpl.java
index 366d567..01d355e 100644
--- a/tms/src/main/java/com/ruoyi/tms/service/impl/TmsDispatchOrderServiceImpl.java
+++ b/tms/src/main/java/com/ruoyi/tms/service/impl/TmsDispatchOrderServiceImpl.java
@@ -62,6 +62,8 @@
     private ISysUserService userService;
     @Autowired
     private ITmsDriverDispatchService tmsDriverDispatchService;
+    @Autowired
+    private ITmsDispatchOrderLogService tmsDispatchOrderLogService;
     @Resource
     private TmsQuoteDetailMapper tmsQuoteDetailMapper;
 
@@ -117,6 +119,9 @@
 
     @Resource
     private TmsShelfMapper tmsShelfMapper;
+
+    @Autowired
+    private ITmsDispatchOrderImportLogService tmsDispatchOrderImportLogService;
 
 
     /**
@@ -276,8 +281,16 @@
             tmsDispatchOrder.setCloseTime(DateUtils.getNowDate());
             tmsDispatchOrder.setCloseRemark(tmsDispatchOrder.getCloseRemark());
             tmsDispatchOrder.setCloseWhy(tmsDispatchOrder.getCloseWhy());
-            tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
-            // TODO 鍔犳棩蹇�
+            int result = tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
+            
+            if (result > 0) {
+                TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+                log.setHeadId(tmsDispatchOrder.getId());
+                log.setCreateBy(SecurityUtils.getUsername());
+                log.setCreateTime(DateUtils.getNowDate());
+                log.setNode("浣滃簾璋冨害鍗�");
+                tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+            }
 
             return AjaxResult.success("鎿嶄綔鎴愬姛");
         }else{
@@ -285,23 +298,49 @@
         }
     }
 
+    //濉啓濮旀墭鎶ュ叧淇℃伅
     @Override
     public int customsOrder(TmsDispatchOrder tmsDispatchOrder) {
-        return tmsDispatchOrderMapper.update(new LambdaUpdateWrapper<TmsDispatchOrder>()
+        int result = tmsDispatchOrderMapper.update(new LambdaUpdateWrapper<TmsDispatchOrder>()
                 .eq(TmsDispatchOrder::getId, tmsDispatchOrder.getId())
                 .set(TmsDispatchOrder::getCustomsServiceProviderId, tmsDispatchOrder.getCustomsServiceProviderId())
                 .set(TmsDispatchOrder::getCustomsServiceProviderName, tmsDispatchOrder.getCustomsServiceProviderName())
         );
-
+        
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("濉啓濮旀墭鎶ュ叧淇℃伅");
+            
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+        
+        return result;
     }
 
+    //濉啓濮旀墭瑁呭嵏淇℃伅
     @Override
     public int loadingOrder(TmsDispatchOrder tmsDispatchOrder) {
-        return tmsDispatchOrderMapper.update(new LambdaUpdateWrapper<TmsDispatchOrder>()
+        int result = tmsDispatchOrderMapper.update(new LambdaUpdateWrapper<TmsDispatchOrder>()
                 .eq(TmsDispatchOrder::getId, tmsDispatchOrder.getId())
                 .set(TmsDispatchOrder::getLoadingServiceProviderId, tmsDispatchOrder.getLoadingServiceProviderId())
                 .set(TmsDispatchOrder::getLoadingServiceProviderName, tmsDispatchOrder.getLoadingServiceProviderName())
         );
+        
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("濉啓濮旀墭瑁呭嵏淇℃伅");
+            
+    
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+        
+        return result;
     }
 
     @Override
@@ -442,7 +481,7 @@
 
             TmsDispatchOrderImport tmsDispatchOrderImport = new TmsDispatchOrderImport();
             tmsDispatchOrderImport.setProjectName("XXX椤圭洰");
-            tmsDispatchOrderImport.setTransportLine("骞夸笢鐪�/鐝犳捣甯�/棣欐床鍖�>棣欐腐鐗瑰埆琛屾斂鍖�");
+            tmsDispatchOrderImport.setTransportLine("骞夸笢鐪�/鐝犳捣甯�/棣欐床鍖�->棣欐腐鐗瑰埆琛屾斂鍖�");
             tmsDispatchOrderImport.setRequiredVehicleTypes("10T");
             tmsDispatchOrderImport.setOrderType("鍩虹璁㈠崟");
             tmsDispatchOrderImport.setIsCustoms("鏄�");
@@ -548,7 +587,17 @@
         int failureNum = 0;
         StringBuilder successMsg = new StringBuilder();
         StringBuilder failureMsg = new StringBuilder();
+        StringBuilder failureDescription = new StringBuilder();
         int line = 1;
+        
+        // 鍒涘缓瀵煎叆鏃ュ織瀵硅薄
+        TmsDispatchOrderImportLog importLog = new TmsDispatchOrderImportLog();
+        importLog.setImportTime(DateUtils.getNowDate());
+        importLog.setFileName("璋冨害鍗曞鍏ユ枃浠�"); // 杩欓噷闇�瑕佹牴鎹疄闄呮儏鍐佃幏鍙栨枃浠跺悕
+        importLog.setOperator(SecurityUtils.getUsername());
+        importLog.setCreateBy(SecurityUtils.getUsername());
+        importLog.setCreateTime(DateUtils.getNowDate());
+        
         for (TmsDispatchOrderImport tmsDispatchOrderImport : list){
             try
             {
@@ -722,10 +771,26 @@
                 failureNum++;
                 String msg = "<br/>" +  "璋冨害鍗曠"+line+"琛屽鍏ュけ璐ワ細";
                 failureMsg.append(msg + e.getMessage());
+                
+                // 璁板綍澶辫触璇存槑锛屽寘鍚鍙峰拰澶辫触鍘熷洜
+                failureDescription.append("绗�" + line + "琛岋細" + e.getMessage()).append("\n");
+                
                 log.error(msg, e);
             }finally {
                 line++;
             }
+        }
+
+        // 璁剧疆瀵煎叆鏃ュ織鐨勭粺璁′俊鎭�
+        importLog.setSuccessCount(list.size() - failureNum);
+        importLog.setFailureCount(failureNum);
+        importLog.setFailureDescription(failureDescription.toString());
+        
+        // 淇濆瓨瀵煎叆鏃ュ織
+        try {
+            tmsDispatchOrderImportLogService.insertTmsDispatchOrderImportLog(importLog);
+        } catch (Exception e) {
+            log.error("淇濆瓨瀵煎叆鏃ュ織澶辫触锛�", e);
         }
 
         if (failureNum > 0)
@@ -755,6 +820,27 @@
         tmsDispatchOrder.setDispatchNo(noByKey);
         tmsDispatchOrder.setCreateBy(SecurityUtils.getUsername());
         tmsDispatchOrder.setCreateTime(DateUtils.getNowDate());
+        int result = tmsDispatchOrderMapper.insertTmsDispatchOrder(tmsDispatchOrder);
+        
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("鏂板璋冨害鍗�");
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+        
+        return result;
+    }
+    @Override
+    public int insertTmsDispatchOrder2(TmsDispatchOrder tmsDispatchOrder)
+    {
+        String noByKey = systemDataNoService.getNoByKey(SystemDataNoEnum.DL);
+
+        tmsDispatchOrder.setDispatchNo(noByKey);
+        tmsDispatchOrder.setCreateBy("AGENTS");
+        tmsDispatchOrder.setCreateTime(DateUtils.getNowDate());
         return tmsDispatchOrderMapper.insertTmsDispatchOrder(tmsDispatchOrder);
     }
 
@@ -783,13 +869,69 @@
         tmsDispatchOrder.setUpdateBy(SecurityUtils.getUsername());
 
         tmsDispatchOrder.setUpdateTime(DateUtils.getNowDate());
-        return tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
+        int result = tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
+        
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("缂栬緫璋冨害鍗�");
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+        
+        return result;
+    }
+    @Override
+    public int updateTmsDispatchOrder2(TmsDispatchOrder tmsDispatchOrder)
+    {
+        tmsDispatchOrder.setUpdateBy(SecurityUtils.getUsername());
+
+        tmsDispatchOrder.setUpdateTime(DateUtils.getNowDate());
+        int result = tmsDispatchOrderMapper.updateTmsDispatchOrder(tmsDispatchOrder);
+
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("濉啓瀹為檯杩愯緭璁板綍");
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+
+        return result;
     }
 
     @Override
+    public int updateTmsDispatchOrder(YpdddjDispatchOrderVo dispatchOrderVo)
+    {
+        return tmsDispatchOrderMapper.update(new LambdaUpdateWrapper<TmsDispatchOrder>()
+                .in(TmsDispatchOrder::getDispatchNo,dispatchOrderVo.getDispatchNos())
+                .set(dispatchOrderVo.getShipperId()!=null,TmsDispatchOrder::getShipperId,dispatchOrderVo.getShipperId())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getShipperName()),TmsDispatchOrder::getShipperName,dispatchOrderVo.getShipperName())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getShipperRegionLabel()),TmsDispatchOrder::getShipperRegionLabel,dispatchOrderVo.getShipperRegionLabel())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getShipperAddress()),TmsDispatchOrder::getShipperAddress,dispatchOrderVo.getShipperAddress())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getShipperMobile()),TmsDispatchOrder::getShipperMobile,dispatchOrderVo.getShipperMobile())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getShipperRegionCode()),TmsDispatchOrder::getShipperRegionCode,dispatchOrderVo.getShipperRegionCode())
+
+                .set(dispatchOrderVo.getReceiverId()!=null,TmsDispatchOrder::getReceiverId,dispatchOrderVo.getReceiverId())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getReceiverName()),TmsDispatchOrder::getReceiverName,dispatchOrderVo.getReceiverName())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getReceiverRegionLabel()),TmsDispatchOrder::getReceiverRegionLabel,dispatchOrderVo.getReceiverRegionLabel())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getReceiverAddress()),TmsDispatchOrder::getReceiverAddress,dispatchOrderVo.getReceiverAddress())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getReceiverMobile()),TmsDispatchOrder::getReceiverMobile,dispatchOrderVo.getReceiverMobile())
+                .set(StringUtils.isNotEmpty(dispatchOrderVo.getReceiverRegionCode()),TmsDispatchOrder::getReceiverRegionCode,dispatchOrderVo.getReceiverRegionCode())
+
+                .set(TmsDispatchOrder::getUpdateBy,SecurityUtils.getUsername())
+                .set(TmsDispatchOrder::getUpdateTime,DateUtils.getNowDate())
+        );
+
+    }
+
+    //鎵胯繍鍗曟墦鍗�
+    @Override
     public int printDispatchOrder(TmsDispatchOrder tmsDispatchOrder)
     {
-        return tmsDispatchOrderMapper.update(null,new LambdaUpdateWrapper<TmsDispatchOrder>()
+        int result = tmsDispatchOrderMapper.update(null,new LambdaUpdateWrapper<TmsDispatchOrder>()
                 .eq(TmsDispatchOrder::getId,tmsDispatchOrder.getId())
                 .set(TmsDispatchOrder::getIsPrint,0)
                         .setSql("print_count = IFNULL(print_count, 0) + 1")
@@ -804,7 +946,19 @@
                         .set(TmsDispatchOrder::getWeight,tmsDispatchOrder.getWeight())
                         .set(TmsDispatchOrder::getContactName,tmsDispatchOrder.getContactName())
                         .set(TmsDispatchOrder::getContactPhone,tmsDispatchOrder.getContactPhone())
-                );
+        );
+        
+        if (result > 0) {
+            TmsDispatchOrderLog log = new TmsDispatchOrderLog();
+            log.setHeadId(tmsDispatchOrder.getId());
+            log.setCreateBy(SecurityUtils.getUsername());
+            log.setCreateTime(DateUtils.getNowDate());
+            log.setNode("鎵胯繍鍗曟墦鍗�");
+           
+            tmsDispatchOrderLogService.insertTmsDispatchOrderLog(log);
+        }
+        
+        return result;
     }
 
     /**
@@ -1511,4 +1665,14 @@
     public List<DpItineraryLogVo> selectItineraryLog() {
         return tmsDispatchOrderMapper.selectItineraryLog();
     }
+
+    @Override
+    public String getLastLicensePlateByDriverName(String driverName) {
+        TmsDispatchOrder tmsDispatchOrder = tmsDispatchOrderMapper.selectOne(new LambdaQueryWrapper<TmsDispatchOrder>()
+                .eq(TmsDispatchOrder::getMainDriverName, driverName)
+                .orderByDesc(TmsDispatchOrder::getCreateTime)
+                .last("limit 1")
+        );
+        return tmsDispatchOrder != null ? tmsDispatchOrder.getLicensePlate() : null;
+    }
 }

--
Gitblit v1.8.0