From 7c1af4c63e66754f0868c1a501f4895f9cbc9213 Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期五, 15 十一月 2024 09:29:12 +0800
Subject: [PATCH] 双单位

---
 src/main/java/com/zy/asrs/controller/OrderController.java |  313 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 294 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 438228d..df58107 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -8,11 +8,13 @@
 import com.core.common.*;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.AgvMobileStartPakin;
 import com.zy.asrs.entity.param.OrderDomainParam;
 import com.zy.asrs.entity.result.WrkTraceVo;
 import com.zy.asrs.service.*;
 import com.zy.common.model.DetlDto;
 import com.zy.common.web.BaseController;
+import lombok.Synchronized;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.DataFormatter;
@@ -54,6 +56,50 @@
     private MatService matService;
     @Autowired
     private AgvLocDetlService agvLocDetlService;
+    @Autowired
+    private FlowLogService flowLogService;
+
+    @GetMapping("/doc/type/list")
+    @Transactional
+    @ManagerAuth(memo = "鍏ュ簱鍗曟嵁绫诲瀷")
+    @Synchronized
+    public R docTypeList(){
+        List<DocType> result = new ArrayList<>();
+        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakin", 1));
+        List<Long> unDocIds = new ArrayList<>();
+        unDocIds.add(19L);
+        unDocIds.add(30L);
+        unDocIds.add(32L);
+        unDocIds.add(36L);
+        for (DocType pakin : pakins) {
+            if (!unDocIds.contains(pakin.getDocId())) {
+                result.add(pakin);
+            }
+        }
+        return R.ok().add(result);
+    }
+
+    @GetMapping("/doc/type/out/list")
+    @Transactional
+    @ManagerAuth(memo = "鍑哄簱鍗曟嵁绫诲瀷")
+    @Synchronized
+    public R docTypeOutList(){
+        List<DocType> result = new ArrayList<>();
+        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakout", 1));
+        List<Long> unDocIds = new ArrayList<>();
+        unDocIds.add(18L);
+        unDocIds.add(31L);
+        unDocIds.add(33L);
+        unDocIds.add(34L);
+        unDocIds.add(35L);
+        unDocIds.add(37L);
+        for (DocType pakin : pakins) {
+            if (!unDocIds.contains(pakin.getDocId())) {
+                result.add(pakin);
+            }
+        }
+        return R.ok().add(result);
+    }
 
     @RequestMapping(value = "/order/nav/list/auth")
     @ManagerAuth
@@ -166,6 +212,68 @@
 //        return R.ok(orderDetlService.selectPage(new Page<>(curr, limit), wrapper));
     }
 
+    @RequestMapping(value = "/order/detls/pakin")
+    @ManagerAuth
+    public R orderDetlsIn(@RequestParam(defaultValue = "1")Integer curr,
+                        @RequestParam(defaultValue = "100")Integer limit,
+                        @RequestParam(required = false)String orderByField,
+                        @RequestParam(required = false)String orderByType,
+                        @RequestParam(required = false)Long docType,
+                        @RequestParam Map<String, Object> param){
+        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
+        param.remove("docType");
+        excludeTrash(param);
+        convert(param, wrapper);
+//        return R.ok(orderDetlService.getPakoutPage(toPage(curr, limit, param, OrderDetl.class)));
+        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakin", 1));
+        List<Long> docIds = new ArrayList<>();
+        List<Long> unDocIds = new ArrayList<>();
+        unDocIds.add(19L);
+        unDocIds.add(30L);
+        unDocIds.add(32L);
+        unDocIds.add(36L);
+        for (DocType pakin : pakins) {
+            if (!unDocIds.contains(pakin.getDocId())) {
+                docIds.add(pakin.getDocId());
+            }
+        }
+
+        if (docIds.size() > 0) {
+            if (docType > 0) {
+                wrapper.in("source",docType);
+            } else {
+                wrapper.in("source",docIds);
+            }
+
+        } else {
+            wrapper.in("source",0);
+        }
+
+        return R.ok(orderDetlService.selectPage(new Page<>(curr, limit), wrapper));
+    }
+
+    @RequestMapping(value = "/order/wait/detls/pakin/page/auth")
+    @ManagerAuth
+    public R waitOrderDetls(@RequestParam(defaultValue = "1")Integer curr,
+                        @RequestParam(defaultValue = "100")Integer limit,
+                        @RequestParam(required = false)String orderByField,
+                        @RequestParam(required = false)String orderByType,
+                        @RequestParam Map<String, Object> param){
+        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
+        excludeTrash(param);
+        convert(param, wrapper);
+//        return R.ok(orderDetlService.getPakoutPage(toPage(curr, limit, param, OrderDetl.class)));
+        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakin", 1));
+        List<Long> docIds = new ArrayList<>();
+        for (DocType pakin : pakins) {
+            if (pakin.getDocId() == 36) {
+                docIds.add(pakin.getDocId());
+            }
+        }
+        wrapper.in("source",docIds);
+        return R.ok(orderDetlService.selectPage(new Page<>(curr, limit), wrapper));
+    }
+
     //  鎵�鏈夊叆搴撹鍗曟槑缁�
     @RequestMapping(value = "/order/bcp/detls/pakin/page/auth")
     @ManagerAuth
@@ -215,6 +323,32 @@
         }
         return R.ok(page);
     }
+    @RequestMapping(value = "/order/backStocks/detls/pakin/page/auth")
+    @ManagerAuth
+    public R backStocksOrderDetls(@RequestParam(defaultValue = "1")Integer curr,
+                             @RequestParam(defaultValue = "100")Integer limit,
+                             @RequestParam(required = false)String orderByField,
+                             @RequestParam(required = false)String orderByType,
+                             @RequestParam Map<String, Object> param){
+        EntityWrapper<OrderDetl> wrapper = new EntityWrapper<>();
+        excludeTrash(param);
+        convert(param, wrapper);
+//        return R.ok(orderDetlService.getPakoutPage(toPage(curr, limit, param, OrderDetl.class)));
+        List<DocType> pakins = docTypeService.selectList(new EntityWrapper<DocType>().eq("pakout", 1));
+        List<Long> docIds = new ArrayList<>();
+        for (DocType pakin : pakins) {
+            if (pakin.getDocId() == 17) {
+                docIds.add(pakin.getDocId());
+            }
+        }
+        wrapper.in("source",docIds);
+        Page<OrderDetl> page = orderDetlService.selectPage(new Page<>(curr, limit), wrapper);
+        for (OrderDetl record : page.getRecords()) {
+            Double sumAnfme = agvLocDetlService.getSumAnfmeback(record.getMatnr(), record.getThreeCode(),1);
+            record.setStock(sumAnfme == null ? 0 : sumAnfme);
+        }
+        return R.ok(page);
+    }
 
     @RequestMapping(value = "/order/detl/all/auth")
     @ManagerAuth
@@ -227,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("鍗曟嵁缂栧彿宸插瓨鍦�");
         }
@@ -279,15 +414,41 @@
             if (orderDetl.getProcessSts() == 1) {
                 flag = true;
             }
+            if (param.getDocType() != 32) {
+                orderDetl.setProcessSts(3);
+            }
             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);
+                if (!Cools.isEmpty(orderDetl.getThreeCode())){
+                    orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
+                }
                 orderDetl.setOrderId(order.getId());
                 orderDetl.setOrderNo(order.getOrderNo());
                 orderDetl.setSource(param.getDocType().intValue());
@@ -300,6 +461,25 @@
                 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("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+//                }
             }
         }
         if (param.getDocType().intValue() == 32) {
@@ -346,13 +526,16 @@
             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け璐�");
                     }
                 } else {
                     dbList.add(dto);
+                    if (!Cools.isEmpty(orderDetl.getThreeCode())){
+                        orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
+                    }
                     orderDetl.setOrderId(order.getId());
                     orderDetl.setOrderNo(order.getOrderNo());
                     orderDetl.setSource(33);
@@ -416,13 +599,16 @@
                     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け璐�");
                         }
                     } else {
                         dbList.add(dto);
+                        if (!Cools.isEmpty(orderDetl.getThreeCode())){
+                            orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
+                        }
                         orderDetl.setOrderId(order.getId());
                         orderDetl.setOrderNo(order.getOrderNo());
                         orderDetl.setSource(35);
@@ -435,11 +621,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("璁㈠崟娣诲姞鎴愬姛");
     }
 
@@ -448,6 +656,8 @@
     @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("璁㈠崟涓嶅瓨鍦�");
         }
@@ -471,17 +681,51 @@
         // 2.閲嶇粍鏁版嵁
         List<DetlDto> list = new ArrayList<>();
         for (OrderDetl orderDetl : param.getOrderDetlList()) {
-            DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
+            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) {
+                    List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>()
+                            .eq("matnr", orderDetl.getMatnr())
+                            .eq("order_no", orderDetl.getOrderNo())
+                            .eq("process_sts", 3));
+                    for (AgvLocDetl agvLocDetl : agvLocDetls) {
+                        agvLocDetl.setProcessSts(1);
+                        agvLocDetlService.updateById(agvLocDetl);
+                    }
+                }
                 list.add(dto);
+                if (!Cools.isEmpty(orderDetl.getThreeCode())){
+                    orderDetl.setThreeCode(orderDetl.getThreeCode().trim());
+                }
                 orderDetl.setOrderId(order.getId());
                 orderDetl.setOrderNo(order.getOrderNo());
+                orderDetl.setSource(docType);
                 orderDetl.setCreateBy(getUserId());
                 orderDetl.setCreateTime(now);
                 orderDetl.setUpdateBy(getUserId());
@@ -491,6 +735,25 @@
                 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("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+//                }
             }
         }
         return R.ok("璁㈠崟淇敼鎴愬姛");
@@ -705,15 +968,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;
@@ -746,20 +1009,22 @@
                         proSts = 3;
                     }
                 }
+            } else {
+                proSts = 3;
             }
 
-
+            String odNo = uuid;
             if(docType.getPakin() == 1){
-                uuid += "_I";
+                odNo += "_I";
             }else {
-                uuid += "_O";
+                odNo += "_O";
             }
 
-            Order order = orderService.selectByNo(uuid);
+            Order order = orderService.selectByNo(odNo);
             if (null == order) {
                 order = new Order(
                         String.valueOf(snowflakeIdWorker.nextId()),    // 缂栧彿[闈炵┖]
-                        uuid,    // 璁㈠崟缂栧彿
+                        odNo,    // 璁㈠崟缂栧彿
                         null,    // 鍗曟嵁鏃ユ湡
                         docType.getDocId(),    // 鍗曟嵁绫诲瀷
                         null,    // 椤圭洰缂栧彿
@@ -797,6 +1062,11 @@
                     throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃閲嶆柊瀵煎叆锛�");
                 }
             }else {
+                //  鏈夊師璁㈠崟鍦ㄧ殑鎯呭喌
+                DocType orderType = docTypeService.selectById(order.getDocType());
+                if (!orderType.getDocName().equals(docName)) {
+                    throw new CoolException("鏂拌鍗曪細" + uuid + " 涓庣郴缁熷唴鐨勮鍗曞彿鐩稿悓锛屽崟鎹被鍨嬩笉鍚屻�傝纭鏂拌鍗曞崟鎹被鍨嬶紒");
+                }
                 order.setSettle(order.getSettle() == 1L ? 1L : 2L );
                 orderService.updateById(order);
             }
@@ -823,13 +1093,16 @@
                     throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃閲嶆柊瀵煎叆锛�");
                 }
             } else {
+                if (anfme < 0)  {
+                    throw new CoolException("璁㈠崟鏁伴噺涓嶅厑璁镐负璐熸暟锛�");
+                }
                 if(!orderDetlService.increaseAnfme(order.getId(), matnr, null, anfme,csocode,isocode)) {
                     throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃閲嶆柊瀵煎叆锛�");
                 }
             }
             // 鐢熸垚璋冩嫧鍗�
             if (docType.getDocId().intValue() == 32) {
-                String dbUuid = "DB" + uuid;
+                String dbUuid = "DB" + odNo;
                 Order order2 = orderService.selectByNo(dbUuid);
                 if (null == order2) {
                     order2 = new Order(
@@ -872,7 +1145,7 @@
                         throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃閲嶆柊瀵煎叆锛�");
                     }
                 }else {
-                    order2.setSettle(order.getSettle() == 1L ? 1L : 2L );
+                    order2.setSettle(order2.getSettle() == 1L ? 1L : 2L );
                     orderService.updateById(order2);
                 }
 
@@ -893,6 +1166,7 @@
                     orderDetl2.setDeadTime(isocode);
                     orderDetl2.setStatus(1);
                     orderDetl2.setQty(0.0D);
+                    orderDetl2.setProcessSts(proSts);
                     if (!orderDetlService.insert(orderDetl2)) {
                         throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃閲嶆柊瀵煎叆锛�");
                     }
@@ -906,7 +1180,7 @@
             // 宸ュ簭涓�1锛氬緟鍔犲伐 鐢熸垚鍔犲伐鍗�
             if (proSts == 1) {
                 if (docType.getDocId().intValue() == 32) {
-                    String dbUuid = "JG" + uuid;
+                    String dbUuid = "JG" + odNo;
                     Order order3 = orderService.selectByNo(dbUuid);
                     if (null == order3) {
                         order3 = new Order(
@@ -949,7 +1223,7 @@
                             throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃閲嶆柊瀵煎叆锛�");
                         }
                     }else {
-                        order3.setSettle(order.getSettle() == 1L ? 1L : 2L );
+                        order3.setSettle(order3.getSettle() == 1L ? 1L : 2L );
                         orderService.updateById(order3);
                     }
 
@@ -970,6 +1244,7 @@
                         orderDetl3.setDeadTime(isocode);
                         orderDetl3.setStatus(1);
                         orderDetl3.setQty(0.0D);
+                        orderDetl3.setProcessSts(proSts);
                         if (!orderDetlService.insert(orderDetl3)) {
                             throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃閲嶆柊瀵煎叆锛�");
                         }

--
Gitblit v1.9.1