From ed37ef9be9a949203dcfc602892dee8bc27f3d27 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期四, 31 十月 2024 08:54:57 +0800
Subject: [PATCH] #工作历史明细合并查询

---
 src/main/java/com/zy/asrs/controller/OrderController.java |  122 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 113 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index adfbd0d..6e3047e 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -56,6 +56,8 @@
     private MatService matService;
     @Autowired
     private AgvLocDetlService agvLocDetlService;
+    @Autowired
+    private FlowLogService flowLogService;
 
     @GetMapping("/doc/type/list")
     @Transactional
@@ -359,6 +361,7 @@
     @Transactional
     public R formAdd(@RequestBody OrderDomainParam param){
         Order order = orderService.selectByNo(param.getOrderNo());
+        long flowId = snowflakeIdWorker.nextId();
         if (order != null) {
             return R.error("鍗曟嵁缂栧彿宸插瓨鍦�");
         }
@@ -416,10 +419,30 @@
             }
             DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
             if (DetlDto.has(list, dto)) {
-                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
+                Double anfme = item.getAnfme();
                 item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                 if (!orderDetlService.updateById(item)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(anfme);
+                flowLog.setOrderCurrent(anfme + orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             } else {
                 list.add(dto);
@@ -434,6 +457,25 @@
                 orderDetl.setQty(0.0D);
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+//                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(1L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(0.0D);
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(0.0D);
+                flowLog.setQtyCurrent(0.0D);
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             }
         }
@@ -481,7 +523,7 @@
             for (OrderDetl orderDetl : param.getOrderDetlList()) {
                 DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
                 if (DetlDto.has(dbList, dto)) {
-                    OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                    OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                     item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                     if (!orderDetlService.updateById(item)) {
                         throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
@@ -551,7 +593,7 @@
                     if (orderDetl.getProcessSts() != 1) continue;
                     DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
                     if (DetlDto.has(dbList, dto)) {
-                        OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                        OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
                         item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                         if (!orderDetlService.updateById(item)) {
                             throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
@@ -570,11 +612,33 @@
                         if (!orderDetlService.insert(orderDetl)) {
                             throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
                         }
+//                        // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                        FlowLog flowLog = new FlowLog();
+                        flowLog.setFid(String.valueOf(flowId));
+                        flowLog.setOpType(1L);
+                        flowLog.setOrderNo(param.getOrderNo());
+                        flowLog.setThreeCode(orderDetl.getThreeCode().trim());
+                        flowLog.setMatnr(orderDetl.getMatnr());
+                        flowLog.setMaktx(orderDetl.getMaktx());
+                        flowLog.setOrderPrevious(0.0D);
+                        flowLog.setOrderCurrent(orderDetl.getAnfme());
+                        flowLog.setOrderChanged(orderDetl.getAnfme());
+                        flowLog.setQtyPrevious(0.0D);
+                        flowLog.setQtyCurrent(0.0D);
+                        flowLog.setQtyChanged(0.0D);
+                        flowLog.setUserId(getUserId());
+                        flowLog.setAppeTime(now);
+                        if (!flowLogService.insert(flowLog)) {
+                            throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                        }
+
                     }
+
                 }
 
             }
         }
+
         return R.ok("璁㈠崟娣诲姞鎴愬姛");
     }
 
@@ -583,6 +647,7 @@
     @Transactional
     public R formModify(@RequestBody OrderDomainParam param){
         Order order = orderService.selectById(param.getOrderId());
+        long flowId = snowflakeIdWorker.nextId();
         int docType = param.getDocType().intValue();
         if (order == null || order.getStatus() == 0) {
             return R.error("璁㈠崟涓嶅瓨鍦�");
@@ -609,10 +674,30 @@
         for (OrderDetl orderDetl : param.getOrderDetlList()) {
             DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getAnfme(), orderDetl.getProcessSts());
             if (DetlDto.has(list, dto)) {
-                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode().trim(),orderDetl.getDeadTime());
+                Double anfme = item.getAnfme();
                 item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
                 if (!orderDetlService.updateById(item)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+//                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(anfme);
+                flowLog.setOrderCurrent(anfme + orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             } else {
                 if (docType == 35 && orderDetl.getProcessSts() == 1) {
@@ -637,6 +722,25 @@
                 orderDetl.setQty(0.0D);
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
+                }
+                // 娴佹按 -- 鏂板璁㈠崟鏄庣粏
+                FlowLog flowLog = new FlowLog();
+                flowLog.setFid(String.valueOf(flowId));
+                flowLog.setOpType(2L);
+                flowLog.setOrderNo(param.getOrderNo());
+                flowLog.setThreeCode(orderDetl.getThreeCode().trim());
+                flowLog.setMatnr(orderDetl.getMatnr());
+                flowLog.setMaktx(orderDetl.getMaktx());
+                flowLog.setOrderPrevious(0.0D);
+                flowLog.setOrderCurrent(orderDetl.getAnfme());
+                flowLog.setOrderChanged(orderDetl.getAnfme());
+                flowLog.setQtyPrevious(orderDetl.getQty());
+                flowLog.setQtyCurrent(orderDetl.getQty());
+                flowLog.setQtyChanged(0.0D);
+                flowLog.setUserId(getUserId());
+                flowLog.setAppeTime(now);
+                if (!flowLogService.insert(flowLog)) {
+                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
                 }
             }
         }
@@ -852,15 +956,15 @@
             Integer proSts = 0;
             Row row = sheet.getRow(i);
             //鍗曟嵁绫诲瀷
-            String docName =  dataFormatter.formatCellValue(row.getCell(0));
+            String docName =  dataFormatter.formatCellValue(row.getCell(0)).trim();
             //鍗曟嵁缂栧彿
-            String uuid = dataFormatter.formatCellValue(row.getCell(1));
+            String uuid = dataFormatter.formatCellValue(row.getCell(1)).trim();
             //鐗╂枡鍙�
-            String matnr = dataFormatter.formatCellValue(row.getCell(2));
+            String matnr = dataFormatter.formatCellValue(row.getCell(2)).trim();
             //閿�鍞崟鍙�
-            String csocode = dataFormatter.formatCellValue(row.getCell(3));
+            String csocode = dataFormatter.formatCellValue(row.getCell(3)).trim();
             //鑷敱椤�
-            String isocode = dataFormatter.formatCellValue(row.getCell(4));
+            String isocode = dataFormatter.formatCellValue(row.getCell(4)).trim();
             // 鏁伴噺
             if(Cools.isEmpty(dataFormatter.formatCellValue(row.getCell(5)))){
                 continue;

--
Gitblit v1.9.1