From 873f0e8c1bad2dc77affd40d381919ac26317d39 Mon Sep 17 00:00:00 2001
From: 18516761980 <56479841@qq.com>
Date: 星期二, 21 六月 2022 15:29:37 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/luxiaotao1123/zy-asrs into hylyasrs

---
 src/main/webapp/static/js/pack/pack.js                           |    2 
 src/main/webapp/static/js/orderDetl/orderDetl.js                 |    2 
 src/main/java/com/zy/asrs/controller/WaitPakinController.java    |   22 
 src/main/webapp/views/order/order.html                           |   10 
 src/main/java/com/zy/asrs/service/OrderDetlService.java          |    2 
 src/main/webapp/static/js/order/out.js                           |    4 
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java      |   37 
 src/main/java/com/zy/asrs/entity/WrkDetl.java                    |    4 
 src/main/webapp/static/js/adjDetl/adjDetl.js                     |    2 
 src/main/java/com/zy/asrs/entity/ViewWorkInBean.java             |    2 
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java    |    6 
 src/main/webapp/static/js/common.js                              |    2 
 src/main/webapp/static/js/pakStore/pakStore.js                   |    2 
 src/main/webapp/views/pack/pack.html                             |    4 
 src/main/java/com/zy/asrs/entity/Pack.java                       |    4 
 src/main/java/com/zy/asrs/entity/WrkDetlLog.java                 |    4 
 src/main/java/com/zy/asrs/controller/OrderController.java        |   33 
 src/main/java/com/zy/asrs/entity/OrderDetl.java                  |    4 
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java      |   55 +
 src/main/webapp/static/js/pakStore/stockAdjust.js                |    2 
 src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java            |    4 
 src/main/java/com/zy/asrs/entity/ViewStayTimeBean.java           |    2 
 src/main/resources/mapper/OrderDetlMapper.xml                    |   18 
 /dev/null                                                        | 1732 --------------------------------------------------
 src/main/java/com/zy/asrs/entity/WaitPakinLog.java               |    2 
 src/main/java/com/zy/asrs/entity/WaitPakin.java                  |    2 
 src/main/java/com/zy/asrs/entity/LocDetl.java                    |    4 
 src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java |    5 
 src/main/webapp/static/js/order/order.js                         |   27 
 src/main/webapp/views/order/out.html                             |    4 
 src/main/webapp/views/orderDetl/orderDetl.html                   |    4 
 src/main/java/com/zy/asrs/entity/AdjDetl.java                    |    4 
 32 files changed, 191 insertions(+), 1,820 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 26ecbbe..8063a13 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -7,13 +7,9 @@
 import com.core.annotations.ManagerAuth;
 import com.core.common.*;
 import com.core.exception.CoolException;
-import com.zy.asrs.entity.DocType;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.OrderDomainParam;
-import com.zy.asrs.service.DocTypeService;
-import com.zy.asrs.service.OrderDetlService;
-import com.zy.asrs.service.OrderService;
+import com.zy.asrs.service.*;
 import com.zy.common.model.DetlDto;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -33,6 +29,10 @@
     private SnowflakeIdWorker snowflakeIdWorker;
     @Autowired
     private DocTypeService docTypeService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private WaitPakinService waitPakinService;
 
     @RequestMapping(value = "/order/nav/list/auth")
     @ManagerAuth
@@ -90,7 +90,12 @@
     @Transactional
     public R formAdd(@RequestBody OrderDomainParam param){
         if(Cools.isEmpty(param.getOrderNo())){
-            param.setOrderNo("HAND" + snowflakeIdWorker.nextId());
+            String prefix = "";
+            DocType docType = docTypeService.selectById(param.getDocType());
+            if(!Cools.isEmpty(docType)){
+                prefix = docType.getPakin() == 1 ? "RK" : "CK";
+            }
+            param.setOrderNo(prefix + snowflakeIdWorker.nextId());
         }
         Order order = orderService.selectByNo(param.getOrderNo());
         if (order != null) {
@@ -217,10 +222,6 @@
     }
 
 
-
-
-
-
     // ------------------------------------------------------------------------------------------------
 
     @RequestMapping(value = "/order/{id}/auth")
@@ -262,6 +263,16 @@
         if (Cools.isEmpty(order) || null == order.getId()){
             return R.error();
         }
+
+        //璁㈠崟瀹岀粨鍓嶏紝鍒ゆ柇鏄惁瀛樺湪浣滀笟涓暟鎹紝瀛樺湪鍒欎笉鑳藉畬缁�
+        if(order.getSettle() == 4){
+            int wrkCount = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("order_no",order.getOrderNo()));
+            int pakinCount = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("order_no",order.getOrderNo()));
+            if (wrkCount > 0 || pakinCount > 0) {
+                throw new CoolException("瀛樺湪浣滀笟涓暟鎹紝涓嶈兘瀹岀粨銆傝妫�鏌ュ叆搴撻�氱煡妗e拰宸ヤ綔妗�");
+            }
+        }
+
         order.setUpdateBy(getUserId());
         order.setUpdateTime(new Date());
         if (!orderService.updateById(order)) {
diff --git a/src/main/java/com/zy/asrs/controller/WaitPakinController.java b/src/main/java/com/zy/asrs/controller/WaitPakinController.java
index 9898dde..7d994d8 100644
--- a/src/main/java/com/zy/asrs/controller/WaitPakinController.java
+++ b/src/main/java/com/zy/asrs/controller/WaitPakinController.java
@@ -11,9 +11,14 @@
 import com.core.common.DateUtils;
 import com.core.common.R;
 import com.zy.asrs.entity.WaitPakin;
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.service.OrderDetlService;
 import com.zy.asrs.service.WaitPakinService;
+import com.zy.asrs.service.WrkMastService;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.ArrayList;
@@ -26,6 +31,10 @@
 
     @Autowired
     private WaitPakinService waitPakinService;
+    @Autowired
+    private OrderDetlService orderDetlService;
+    @Autowired
+    private WrkMastService wrkMastService;
 
     @RequestMapping(value = "/waitPakin/{id}/auth")
     @ManagerAuth
@@ -82,13 +91,24 @@
 
     @RequestMapping(value = "/waitPakin/delete/auth")
     @ManagerAuth
+    @Transactional
     public R delete(@RequestParam String param){
         List<WaitPakin> list = JSONArray.parseArray(param, WaitPakin.class);
         if (Cools.isEmpty(list)){
-            return R.error();
+            return R.error("鏁版嵁涓虹┖");
         }
         for (WaitPakin entity : list){
+            List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("barcode", entity.getZpallet()));
+            if(!Cools.isEmpty(wrkMasts) || wrkMasts.size() > 0){
+                return R.error("鏉$爜宸茬敓鎴愬叆搴撳伐浣滄。锛岀姝㈠垹闄�");
+            }
             waitPakinService.delete(new EntityWrapper<>(entity));
+            //璁㈠崟鍏宠仈锛屼慨鏀硅鍗曚綔涓氭暟閲�
+            if (!Cools.isEmpty(entity.getOrderNo())) {
+                if (!orderDetlService.decrease(entity.getOrderNo(), entity.getMatnr(), entity.getBatch(), entity.getAnfme())) {
+                    return R.error("璁㈠崟鏁版嵁鍥炴粴澶辫触");
+                }
+            }
         }
         return R.ok();
     }
diff --git a/src/main/java/com/zy/asrs/entity/AdjDetl.java b/src/main/java/com/zy/asrs/entity/AdjDetl.java
index b9b0f9b..7d4c75a 100644
--- a/src/main/java/com/zy/asrs/entity/AdjDetl.java
+++ b/src/main/java/com/zy/asrs/entity/AdjDetl.java
@@ -44,9 +44,9 @@
     private String matnr;
 
     /**
-     * 搴忓垪鐮�
+     * 鎵瑰彿
      */
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     /**
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index ef2b85b..0556824 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -43,8 +43,8 @@
     @ExcelProperty("鍟嗗搧鍚嶇О")
     private String maktx;
 
-    @ApiModelProperty(value= "搴忓垪鐮�")
-    @ExcelProperty("搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
+    @ExcelProperty("鎵瑰彿")
     private String batch;
 
     @ApiModelProperty(value= "鍗曟嵁缂栧彿")
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index da61de9..311979d 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -84,9 +84,9 @@
     private String maktx;
 
     /**
-     * 搴忓垪鐮�
+     * 鎵瑰彿
      */
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     /**
diff --git a/src/main/java/com/zy/asrs/entity/Pack.java b/src/main/java/com/zy/asrs/entity/Pack.java
index 686c8bd..c63e1f7 100644
--- a/src/main/java/com/zy/asrs/entity/Pack.java
+++ b/src/main/java/com/zy/asrs/entity/Pack.java
@@ -49,9 +49,9 @@
     private String matnr;
 
     /**
-     * 搴忓垪鐮�
+     * 鎵瑰彿
      */
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     /**
diff --git a/src/main/java/com/zy/asrs/entity/ViewStayTimeBean.java b/src/main/java/com/zy/asrs/entity/ViewStayTimeBean.java
index 93815de..0a172e0 100644
--- a/src/main/java/com/zy/asrs/entity/ViewStayTimeBean.java
+++ b/src/main/java/com/zy/asrs/entity/ViewStayTimeBean.java
@@ -44,7 +44,7 @@
 	@ApiModelProperty(value= "鍟嗗搧鍚嶇О")
 	private String maktx;
 
-	@ApiModelProperty(value= "搴忓垪鐮�")
+	@ApiModelProperty(value= "鎵瑰彿")
 	private String batch;
 
 	@ApiModelProperty(value= "鍗曟嵁缂栧彿")
diff --git a/src/main/java/com/zy/asrs/entity/ViewWorkInBean.java b/src/main/java/com/zy/asrs/entity/ViewWorkInBean.java
index 15a23ed..a4947ff 100644
--- a/src/main/java/com/zy/asrs/entity/ViewWorkInBean.java
+++ b/src/main/java/com/zy/asrs/entity/ViewWorkInBean.java
@@ -55,7 +55,7 @@
 	@ApiModelProperty(value= "鍟嗗搧鍚嶇О")
 	private String maktx;
 
-	@ApiModelProperty(value= "搴忓垪鐮�")
+	@ApiModelProperty(value= "鎵瑰彿")
 	private String batch;
 
 	@ApiModelProperty(value= "鍗曟嵁缂栧彿")
diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java
index 78185ae..21a45ed 100644
--- a/src/main/java/com/zy/asrs/entity/WaitPakin.java
+++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java
@@ -33,7 +33,7 @@
     @ApiModelProperty(value= "鍟嗗搧鍚嶇О")
     private String maktx;
 
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     @ApiModelProperty(value= "鍗曟嵁缂栧彿")
diff --git a/src/main/java/com/zy/asrs/entity/WaitPakinLog.java b/src/main/java/com/zy/asrs/entity/WaitPakinLog.java
index 34cade8..2d0e335 100644
--- a/src/main/java/com/zy/asrs/entity/WaitPakinLog.java
+++ b/src/main/java/com/zy/asrs/entity/WaitPakinLog.java
@@ -32,7 +32,7 @@
     @ApiModelProperty(value= "鍟嗗搧鍚嶇О")
     private String maktx;
 
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     @ApiModelProperty(value= "鍗曟嵁缂栧彿")
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java
index 39ea4d5..349a127 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetl.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -59,9 +59,9 @@
     private String maktx;
 
     /**
-     * 搴忓垪鐮�
+     * 鎵瑰彿
      */
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     /**
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetlLog.java b/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
index c3879d1..0383b98 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
@@ -58,9 +58,9 @@
     private String maktx;
 
     /**
-     * 搴忓垪鐮�
+     * 鎵瑰彿
      */
-    @ApiModelProperty(value= "搴忓垪鐮�")
+    @ApiModelProperty(value= "鎵瑰彿")
     private String batch;
 
     /**
diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
index cad5da0..51c99ad 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
@@ -31,5 +31,7 @@
 
     int addToLogTable(OrderDetl orderDetl);
 
-    int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double workQty);
+    int increaseQtyByOrderNo(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty);
+
+    int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("workQty")Double workQty);
 }
diff --git a/src/main/java/com/zy/asrs/service/OrderDetlService.java b/src/main/java/com/zy/asrs/service/OrderDetlService.java
index 7becdf2..ecf08d2 100644
--- a/src/main/java/com/zy/asrs/service/OrderDetlService.java
+++ b/src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -26,6 +26,8 @@
 
     boolean addToLogTable(OrderDetl orderDetl);
 
+    boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty);
+
     /**
      * 鍏ュ嚭搴撲换鍔$敓鎴愭椂锛屾洿鏂板崟鎹〃涓綔涓氭暟閲�
      * @param orderId
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 1f67442..11bc041 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -199,7 +199,7 @@
                         // todo 鐩樼偣璁板綍銆佷繚瀛樿皟鏁磋褰�
                         // 淇敼鏄庣粏
                         if (!wrkDetlService.updateAnfme(wrkDetl1.getAnfme(), wrkMast.getWrkNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
-                            throw new CoolException(wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "搴忓垪鐮佷慨鏀规暟閲忓け璐�");
+                            throw new CoolException(wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
                         }
                     }
                     iterator.remove();
@@ -212,7 +212,7 @@
         for (WrkDetl wrkDetl : wrkDetls) {
             // todo 鐩樼偣璁板綍銆佷繚瀛樿皟鏁磋褰�
             if (!wrkDetlService.updateAnfme(-1.0D, wrkMast.getWrkNo(), wrkDetl.getMatnr(), wrkDetl.getBatch())) {
-                throw new CoolException("鍒犻櫎" + wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "搴忓垪鐮佷换鍔℃槑缁嗗け璐�");
+                throw new CoolException("鍒犻櫎" + wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "鎵瑰彿浠诲姟鏄庣粏澶辫触");
             }
         }
 
@@ -229,7 +229,7 @@
             wrkDetl.setAppeTime(now);
             wrkDetl.setAppeUser(userId);
             if (!wrkDetlService.insert(wrkDetl)) {
-                throw new CoolException("娣诲姞" + wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "搴忓垪鐮佷换鍔℃槑缁嗗け璐�");
+                throw new CoolException("娣诲姞" + wrkMast.getWrkNo() + "鐩樼偣浠诲姟锛�" + wrkDetl.getMatnr() + "鍟嗗搧锛�" + wrkDetl.getBatch() + "鎵瑰彿浠诲姟鏄庣粏澶辫触");
             }
         }
 
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
index dc3d7c8..327edbb 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -73,6 +73,11 @@
         return this.baseMapper.addToLogTable(orderDetl) > 0;
     }
 
+    @Override
+    public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty) {
+        return this.baseMapper.increaseQtyByOrderNo(orderNo, matnr, batch, qty) > 0;
+    }
+
     /**
      * 鍏ュ嚭搴撲换鍔$敓鎴愭椂锛屾洿鏂板崟鎹〃涓綔涓氭暟閲�
      * @param orderId
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 319a009..4691203 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -75,6 +75,8 @@
     private RowLastnoService rowLastnoService;
     @Autowired
     private SlaveProperties slaveProperties;
+    @Autowired
+    private WaitPakinService waitPakinService;
 
     @Override
     @Transactional
@@ -631,7 +633,7 @@
                         // todo 鐩樼偣璁板綍
                         // 淇敼搴撳瓨
                         if (!locDetlService.updateAnfme(adjust.getCount(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
-                            throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佷慨鏀规暟閲忓け璐�");
+                            throw new CoolException(locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿淇敼鏁伴噺澶辫触");
                         }
                         // 淇濆瓨璋冩暣璁板綍
                         AdjDetl adjDetl = new AdjDetl();
@@ -656,7 +658,7 @@
         for (LocDetl locDetl : locDetls) {
             // todo 鐩樼偣璁板綍
             if (!locDetlService.updateAnfme(-1.0D, locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch())) {
-                throw new CoolException("鍒犻櫎" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佸簱瀛樻槑缁嗗け璐�");
+                throw new CoolException("鍒犻櫎" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿搴撳瓨鏄庣粏澶辫触");
             }
             // 淇濆瓨璋冩暣璁板綍
             AdjDetl adjDetl = new AdjDetl();
@@ -686,7 +688,7 @@
             locDetl.setAppeUser(userId);
             locDetl.setAppeTime(now);
             if (!locDetlService.insert(locDetl)) {
-                throw new CoolException("娣诲姞" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "搴忓垪鐮佸簱瀛樻槑缁嗗け璐�");
+                throw new CoolException("娣诲姞" + locDetl.getLocNo() + "搴撲綅锛�" + locDetl.getMatnr() + "鍟嗗搧锛�" + locDetl.getBatch() + "鎵瑰彿搴撳瓨鏄庣粏澶辫触");
             }
             // 淇濆瓨璋冩暣璁板綍
             AdjDetl adjDetl = new AdjDetl();
@@ -772,17 +774,28 @@
         } else {
             throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
         }
-        // 璁㈠崟鍏宠仈
-        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
-        for (WrkDetl wrkDetl : wrkDetls) {
-            if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
-                if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
-                    throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
-                }
-                // 鐢熸垚鏂扮殑鍑哄簱浣滀笟
-//                        stockOutRe(wrkMast, wrkDetls);
+
+        //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊
+        if(wrkMast.getIoType() == 1) {
+            WaitPakin waitPakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode()));
+            if (!Cools.isEmpty(waitPakin)) {
+                waitPakin.setIoStatus("N");
+                waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode()));
             }
         }
+
+//        // 璁㈠崟鍏宠仈
+//        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+//        for (WrkDetl wrkDetl : wrkDetls) {
+//            if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
+//                if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
+//                    throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
+//                }
+//                // 鐢熸垚鏂扮殑鍑哄簱浣滀笟
+////                        stockOutRe(wrkMast, wrkDetls);
+//            }
+//        }
+
         // 鍙栨秷鎿嶄綔浜哄憳璁板綍
         wrkMast.setManuType("鎵嬪姩鍙栨秷");
         wrkMast.setModiUser(userId);
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 9b676cf..375b8d2 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -2,10 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
-import com.zy.asrs.entity.LocDetl;
-import com.zy.asrs.entity.LocMast;
-import com.zy.asrs.entity.WrkDetl;
-import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
@@ -36,6 +33,8 @@
     private LocDetlService locDetlService;
     @Autowired
     private WaitPakinService waitPakinService;
+    @Autowired
+    private OrderDetlService orderDetlService;
 
     public ReturnT<String> start(WrkMast wrkMast) {
         // 4.鍏ュ簱瀹屾垚
@@ -105,21 +104,16 @@
                             }
                         }
 
-                        // 鏇存柊鍏ュ簱閫氱煡妗� ioStatus ===>> Y
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
                         try {
-//                            Wrapper<WaitPakin> wrapper = new EntityWrapper<WaitPakin>()
-//                                    .eq("zpallet", wrkDetl.getZpallet())
-//                                    .eq("matnr", wrkDetl.getMatnr())
-//                                    .eq("anfme", wrkDetl.getAnfme());
-//                            if (Cools.isEmpty(wrkDetl.getBatch())) {
-//                                wrapper.eq("batch", wrkDetl.getBatch());
-//                            } else {
-//                                wrapper.isNull("batch").or().eq("batch", "");
-//                            }
-//                            WaitPakin setParam = new WaitPakin();
-//                            setParam.setIoStatus("Y");
-//                            setParam.setModiTime(now);
-//                            waitPakinService.update(setParam, wrapper);
+                            if(!Cools.isEmpty(orderDetl)){
+                                if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        wrkDetl.getBatch(),wrkDetl.getAnfme())){
+                                    exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                }
+                            }
                         } catch (Exception ignore){}
 
                     }
@@ -149,6 +143,19 @@
                                 exceptionHandle("鎷f枡鍏ュ簱 ===>> 淇敼搴撳瓨鏄庣粏鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo());
                             }
                         }
+
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+                        try {
+                            if(!Cools.isEmpty(orderDetl)){
+                                if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        wrkDetl.getBatch(),wrkDetl.getAnfme())){
+                                    exceptionHandle("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                }
+                            }
+                        } catch (Exception ignore){}
+
                     }
                     // 淇敼搴撲綅鐘舵�� Q ====>> F
                     if (locMast.getLocSts().equals("Q")) {
@@ -289,7 +296,17 @@
                         exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 宸ヤ綔鏄庣粏妗d负绌猴紱[workNo={0}]", wrkMast.getWrkNo());
                     }
                     for (WrkDetl wrkDetl : wrkDetls101) {
-                        // todo:luxiaotao 3)淇敼鍑哄簱閫氱煡妗� status ==> Y
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+                        try {
+                            if(!Cools.isEmpty(orderDetl)){
+                                if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        wrkDetl.getBatch(),wrkDetl.getAnfme())){
+                                    exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
+                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
+                                }
+                            }
+                        } catch (Exception ignore){}
                     }
                     // 鍒犻櫎宸ヤ綔妗f簮搴撲綅鐨勫簱瀛樻槑缁�
                     if (!locDetlService.delete(new EntityWrapper<LocDetl>().eq("loc_no", wrkMast.getSourceLocNo()))) {
diff --git a/src/main/resources/UpdateThread.cs b/src/main/resources/UpdateThread.cs
deleted file mode 100644
index 9789b84..0000000
--- a/src/main/resources/UpdateThread.cs
+++ /dev/null
@@ -1,1732 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading;
-using DevComponents.DotNetBar.Controls;
-using System.Windows.Forms;
-using System.Drawing;
-//using com.force.json;
-using System.Data;
-using System.Data.SqlClient;
-
-namespace WCS
-{
-    /// <summary>
-    /// 鍥炴姤澶勭悊绾跨▼
-    /// </summary>
-    class UpdateThread
-    {
-        #region 鐢婚潰涓婂悓姝ユ樉绀烘帶浠�
-        public ListViewEx frmdata;
-        delegate void SetTextCallback(string seq, string Errif, string arg_string);
-        #endregion
-
-        Thread trd = null;
-
-        public UpdateThread()
-        {
-            try
-            {
-                trd = new Thread(new ThreadStart(this.ThreadTask));
-                trd.IsBackground = true;
-                trd.Start();
-            }
-            catch (Exception em)
-            {
-                Common.WriteLogFile("WcsError", "UpdateThread/UpdateThread--鍥炴姤绾跨▼鍚姩鍑洪敊:" + em.Message);
-            }
-        }
-
-        #region 閫氳鍙嶉鍚屾鏄剧ず
-        /// <summary>
-        /// 鏄剧ず澶勭悊淇℃伅
-        /// </summary>
-        /// <param name="text"></param>
-        private void DisplayInfo(string seq, string Errif, string arg_string)
-        {
-            if (frmdata == null)
-            {
-                return;
-            }
-            if (frmdata.InvokeRequired)
-            {
-                try
-                {
-                    SetTextCallback d = new SetTextCallback(DisplayInfo);
-                    frmdata.Invoke(d, new object[] { seq, Errif, arg_string });
-                }
-                catch (Exception em)
-                {
-                    Common.WriteLogFile("WcsError", "UpdateThread/DisplayInfo--鍚屾鍥炴姤淇℃伅澶辫触:" + em.Message);
-                }
-            }
-            else
-            {
-                add_dw_log(seq, Errif, arg_string);
-                if (frmdata.Items.Count > 200)
-                {
-                    frmdata.Items.Clear(); ;
-                }
-            }
-
-        }
-
-        /// <summary>
-        /// 娣诲姞ListView鐣岄潰鏄剧ず
-        /// </summary>
-        /// <param name="le">listview</param>
-        /// <param name="seq">闇�瑕�</param>
-        /// <param name="Errif">寮傚父淇℃伅</param>
-        /// <param name="arg_string">鏄剧ず鍐呭</param>
-        public void add_dw_log(string seq, string Errif, string arg_string)
-        {
-            try
-            {
-                ListViewItem lvi = new ListViewItem();
-                lvi.SubItems[0].Text = "銆�" + DateTime.Now.ToString() + "銆�" + seq + arg_string;
-                if (Errif == "N")
-                {
-                    lvi.ForeColor = Color.Black;
-                }
-                else if (Errif == "E")
-                {
-                    lvi.ForeColor = Color.Red;
-                }
-                else if (Errif == "P")
-                {
-                    lvi.ForeColor = Color.Blue;
-                }
-                frmdata.Items.Add(lvi);
-                frmdata.EnsureVisible(frmdata.Items.Count - 1);
-            }
-            catch (Exception em)
-            {
-                ListViewItem lvi = new ListViewItem();
-                lvi.SubItems[0].Text = "銆�" + DateTime.Now.ToString() + "銆�" + seq + arg_string + "寮傚父锛�" + em.Message;
-                frmdata.Items.Add(lvi);
-                Common.WriteLogFile("WcsError", "UpdateThread/add_dw_log--鍥炴姤娣诲姞鐣岄潰鏄剧ず鍑洪敊:" + em.Message);
-            }
-        }
-        #endregion
-
-        #region 涓氬姟澶勭悊
-        /// <summary>
-        /// 鐢熸垚鍑哄簱宸ヤ綔妗�
-        /// </summary>
-        public void ProcOutToWorkData(string seq)
-        {
-            string ls_locno = "";
-            string ls_error_memo = "", sql = "";
-            int li_wrkno = 0, li_io_type = 0, li_stnNo = 0, li_e_stnNo = 0;
-            DateTime ldt_date = System.DateTime.Now;
-            double d_outQty = 0, d_stkQty = 0;
-            int action = 0, prnstatus = 0;
-
-            DisplayInfo(seq, "N", " --澶勭悊鍑哄簱閫氱煡妗o紝鐢熸垚鍑哄簱宸ヤ綔妗�......");
-
-            try
-            {
-                //鏌ユ壘鏈�鏃╀竴鏉″緟鍑哄簱搴撲綅
-                sql = "select top 1 vlpla from cust_wait_pakout where status<>'Y' and nltyp<>'A01' order by status,modi_time";
-                DataView dvLoc = Common.ExecAsrsSelect(sql);
-                if (dvLoc.Count <= 0)
-                {
-                    return;
-                }
-                foreach (DataRowView drow in dvLoc)
-                {
-                    ls_locno = drow[0].ToString();
-                }
-                if (ls_locno == "")
-                {
-                    return;
-                }
-
-                //鏌ヨ搴撲綅鍙锋槸鍚﹀湪搴撶姸鎬侊紝骞舵煡璇㈡潯鐮佸彿
-                sql = "select loc_no,barcode from asr_loc_mast where loc_no='" + ls_locno + "' and loc_sts='F'";
-                string barcode = "";
-                DataView dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    ls_error_memo = "   " + seq + ".1 搴撲綅" + ls_locno + "涓嶅瓨鍦ㄦ垨闈炲湪搴撶姸鎬侊紝璇锋鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        barcode = drow[1].ToString();
-                    }
-                }
-
-                //鏍规嵁搴撲綅鍙锋煡鎵捐搴撲綅鎵�鏈夊嚭搴撹祫鏂�
-                sql = "select lgnum,tanum,tapos,matnr,maktx,werks,vsolm,meins,bname ";
-                sql += " from cust_wait_pakout where status<>'Y' and nltyp<>'A01' and vlpla='" + ls_locno + "' order by status,modi_time";
-                dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    return;
-                }
-                li_wrkno = Common.GetWrkno(0);
-                string sqlDetl = "", sqlWaitIn = "";
-                foreach (DataRowView drow in dv)
-                {
-                    string lgnum = drow[0].ToString();
-                    string tanum = drow[1].ToString();
-                    string tapos = drow[2].ToString();
-                    string matnr = drow[3].ToString();
-                    string maktx = drow[4].ToString();
-                    string werks = drow[5].ToString();
-                    string vsolm = drow[6].ToString();
-                    string meins = drow[7].ToString();
-                    string bname = drow[8].ToString();
-                    sqlDetl += " insert into asr_wrk_detl(wrk_no,io_time,lgnum,tbnum,tbpos,matnr,maktx,werks,anfme,altme,bname,zpallet) ";
-                    sqlDetl += " values(" + li_wrkno + ",'" + ldt_date + "','" + lgnum + "'," + tanum + "," + tapos + ", ";
-                    sqlDetl += " '" + matnr + "','" + maktx + "','" + werks + "'," + vsolm + ",'" + meins + "','" + bname + "','" + barcode + "');";
-                    sqlWaitIn += " update cust_wait_pakout set status='Y' where lgnum='" + lgnum + "' and tanum=" + tanum + " and tapos=" + tapos + " and vlpla=" + ls_locno + ";";
-                    d_outQty += double.Parse(vsolm);
-                }
-                DisplayInfo("", "P", "   " + seq + ".2 姝e湪澶勭悊寰呭嚭搴撹祫鏂�!搴撲綅:" + ls_locno);
-
-                //鏌ヨ搴撲綅鍙峰搴斿簱瀛樻槑缁嗘�绘暟閲�
-                sql = "select sum(anfme) from asr_loc_detl where loc_no='" + ls_locno + "' ";
-                dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    ls_error_memo = "   " + seq + ".3 搴撲綅" + ls_locno + "娌℃湁搴撳瓨鏄庣粏锛岃妫�鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        d_stkQty += double.Parse(drow[0].ToString());
-                    }
-                }
-
-                int li_crnrow = int.Parse(ls_locno.Substring(0, 2));
-                int li_crnno = (li_crnrow + 1) / 2;
-                string new_loc_sts = "";
-                if (d_outQty < d_stkQty)
-                {
-                    li_io_type = 103;
-                    new_loc_sts = "P";
-                    li_e_stnNo = 4;
-                    li_stnNo = Common.getIoStaNo(li_io_type, li_crnno, li_e_stnNo);
-                    action = 2;         //鍗曠嫭鎵撳嵃
-                    //prnstatus = 0;      //榛樿绛夊緟锛屾嫞鏂欑珯鏇存柊
-                }
-                else if (d_outQty == d_stkQty)
-                {
-                    li_io_type = 101;
-                    new_loc_sts = "R";
-                    li_e_stnNo = 13;
-                    li_stnNo = Common.getIoStaNo(li_io_type, li_crnno, li_e_stnNo);
-                    action = 3;         //鏃㈡墦鍗板張纭
-                    //prnstatus = 0;      //榛樿绛夊緟锛屾嫞鏂欑珯鏇存柊
-                }
-                else
-                {
-                    ls_error_memo = "   " + seq + ".4 搴撲綅" + ls_locno + "閫氱煡鍑哄簱鏁伴噺瓒呭嚭搴撳瓨鏁伴噺锛岃妫�鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-
-                sqlWaitIn = sqlWaitIn.Replace("update cust_wait_pakout set", "update cust_wait_pakout set action=" + action + ",");
-
-                sql = sqlDetl;
-                sql += "insert into asr_wrk_mast(wrk_no,io_time,wrk_sts,io_type,crn_no,io_pri,source_loc_no,sta_no,source_sta_no,barcode) ";
-                sql += " values(" + li_wrkno + ",'" + ldt_date + "',11," + li_io_type + "," + li_crnno + ",13,'" + ls_locno + "', ";
-                sql += " " + li_e_stnNo + "," + li_stnNo + ",'" + barcode + "'); ";
-                sql += " update asr_loc_mast set loc_sts='" + new_loc_sts + "' where loc_no='" + ls_locno + "'; ";
-                sql += sqlWaitIn;
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand(sql, sqlconn);
-                sqlcmd.Transaction = sqltrans;
-                try
-                {
-                    sqlcmd.ExecuteNonQuery();
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".4 鎻掑叆宸ヤ綔涓绘。[asr_wrk_mast]閿欒 !搴撲綅:" + ls_locno + " 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-
-            re:
-                sql = "update cust_wait_pakout set status='X',action=" + action + ",modi_time='" + ldt_date + "' where vlpla='" + ls_locno + "'";
-                bool result = Common.ExecAsrsModify(sql);
-                if (!result)
-                {
-                    ls_error_memo = "   " + seq + ".5 鏇存柊鍑哄簱妗eけ璐�!搴撲綅锛�" + ls_locno;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-            }
-            catch (Exception em)
-            {
-                ls_error_memo = "   " + seq + ".6 澶勭悊寰呭鐞嗘。鐢熸垚鍑哄簱宸ヤ綔妗eけ璐ワ細" + em.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 鐢熸垚搴撲綅璋冩暣宸ヤ綔妗�
-        /// </summary>
-        public void ProcLocToWorkData(string seq)
-        {
-            string ls_slocno = "", ls_dlocno = "";
-            string ls_error_memo = "", sql = "";
-            int li_wrkno = 0, li_io_type = 0, li_stnNo = 0, li_e_stnNo = 0;
-            DateTime ldt_date = System.DateTime.Now;
-            double d_outQty = 0, d_stkQty = 0;
-
-            DisplayInfo(seq, "N", " --澶勭悊鍑哄簱閫氱煡妗o紝鐢熸垚鍑哄簱宸ヤ綔妗�......");
-
-            try
-            {
-                //鏌ユ壘鏈�鏃╀竴鏉″緟鍑哄簱搴撲綅
-                sql = "select top 1 vlpla,nlpla from cust_wait_pakout where status<>'Y' and nltyp='A01' order by status,modi_time";
-                DataView dvLoc = Common.ExecAsrsSelect(sql);
-                if (dvLoc.Count <= 0)
-                {
-                    return;
-                }
-                foreach (DataRowView drow in dvLoc)
-                {
-                    ls_slocno = drow[0].ToString();
-                    ls_dlocno = drow[1].ToString();
-                }
-                if (ls_slocno == "" || ls_dlocno=="")
-                {
-                    ls_error_memo = "   " + seq + ".1 鍑哄簱閫氱煡妗f簮搴撲綅涓虹┖[cust_wait_pakout]閿欒 !搴撲綅:" + ls_slocno;
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-
-                //鏌ヨ鐩爣搴撲綅鐘舵�侊紝濡傛灉涓虹┖琛ㄧず搴撲綅宸茶浆锛屽鏋滃湪搴撹〃绀烘簮搴撲綅鍑哄簱锛岀洰鏍囧簱浣嶅苟鏉匡紝濡傛灉涓嶅湪搴擄紝鍒欐姤璀﹀仠姝㈡墽琛�
-                string loc_sts = "", barcoded = "";
-                sql = "select loc_sts,barcode from asr_loc_mast where loc_no='" + ls_dlocno + "' ";
-                DataView dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    ls_error_memo = "   " + seq + ".2 鐩爣搴撲綅" + ls_dlocno + "涓嶅瓨鍦紝璇锋鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        loc_sts = drow[0].ToString();
-                        barcoded = drow[1].ToString();
-                    }
-                }
-
-                if (loc_sts == "O")
-                { //搴撲綅绉昏浆
-                    sql = "select lgnum,tbnum,tbpos,matnr,maktx,werks,anfme,altme,bname ";
-                    sql += " from asr_loc_detl where loc_no='" + ls_slocno + "' order by matnr,modi_time";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv.Count <= 0)
-                    {
-                        return;
-                    }
-                    li_wrkno = Common.GetWrkno(0);
-                    string sqlDetl = "", sqlWaitIn = "";
-                    foreach (DataRowView drow in dv)
-                    {
-                        string lgnum = drow[0].ToString();
-                        string tanum = drow[1].ToString();
-                        string tapos = drow[2].ToString();
-                        string matnr = drow[3].ToString();
-                        string maktx = drow[4].ToString();
-                        string werks = drow[5].ToString();
-                        string vsolm = drow[6].ToString();
-                        string meins = drow[7].ToString();
-                        string bname = drow[8].ToString();
-                        sqlDetl += " insert into asr_wrk_detl(wrk_no,io_time,lgnum,tbnum,tbpos,matnr,maktx,werks,anfme,altme,bname) ";
-                        sqlDetl += " values(" + li_wrkno + ",'" + ldt_date + "','" + lgnum + "'," + tanum + "," + tapos + ", ";
-                        sqlDetl += " '" + matnr + "','" + maktx + "','" + werks + "'," + vsolm + ",'" + meins + "','" + bname + "');";
-                        sqlWaitIn += " update cust_wait_pakout set status='Y' where nltyp='A01' and vlpla='" + ls_slocno + "' and nlpla='" + ls_dlocno + "';";
-                    }
-                    DisplayInfo("", "P", "   " + seq + ".3 姝e湪澶勭悊寰呭嚭搴撹祫鏂�!搴撲綅:" + ls_slocno);
-
-                    //鏌ヨ搴撲綅鍙锋槸鍚﹀湪搴撶姸鎬侊紝骞舵煡璇㈡潯鐮佸彿
-                    sql = "select loc_no,barcode from asr_loc_mast where loc_no='" + ls_slocno + "' and loc_sts='F'";
-                    string barcode = "";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv.Count <= 0)
-                    {
-                        ls_error_memo = "   " + seq + ".4 婧愬簱浣�" + ls_slocno + "涓嶅瓨鍦ㄦ垨闈炲湪搴撶姸鎬侊紝璇锋鏌�";
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    else
-                    {
-                        foreach (DataRowView drow in dv)
-                        {
-                            barcode = drow[1].ToString();
-                        }
-                    }
-                    int li_crnrow = int.Parse(ls_slocno.Substring(0, 2));
-                    int li_crnno = (li_crnrow + 1) / 2;
-                    li_io_type = 11;
-
-                    sql = sqlDetl;
-                    sql += "insert into asr_wrk_mast(wrk_no,io_time,wrk_sts,io_type,crn_no,io_pri,source_loc_no,loc_no,barcode,empty_mk) ";
-                    sql += " values(" + li_wrkno + ",'" + ldt_date + "',11," + li_io_type + "," + li_crnno + ",13,'" + ls_slocno + "', ";
-                    sql += " '" + ls_dlocno + "','" + barcode + "','N'); ";
-                    sql += " update asr_loc_mast set loc_sts='R' where loc_no='" + ls_slocno + "'; ";
-                    sql += " update asr_loc_mast set loc_sts='S' where loc_no='" + ls_dlocno + "'; ";
-                    sql += sqlWaitIn;
-                    SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                    sqlconn.Open();
-                    SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                    SqlCommand sqlcmd = new SqlCommand(sql, sqlconn);
-                    sqlcmd.Transaction = sqltrans;
-                    try
-                    {
-                        sqlcmd.ExecuteNonQuery();
-                        sqltrans.Commit();
-                    }
-                    catch (SqlException t)
-                    {
-                        sqltrans.Rollback();
-                        //sqlcommon.Close();
-                        ls_error_memo = "   " + seq + ".5 鎻掑叆宸ヤ綔涓绘。[asr_wrk_mast]閿欒 !搴撲綅:" + ls_slocno + " 寮傚父:" + t.Message;
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    finally
-                    {
-                        sqlcmd.Dispose();
-                        sqlconn.Dispose();
-                    }
-                }
-                else if (loc_sts == "F")
-                {//鐩爣搴撲綅骞舵澘
-                    //婧愬簱浣嶅嚭搴�
-                    string sqlDetld = "";
-                    int li_wrknod = 0;
-                    int action = 0;
-                    sql = "select lgnum,tanum,tapos,matnr,maktx,werks,vsolm,meins,bname ";
-                    sql += " from cust_wait_pakout where status<>'Y' and nltyp='A01' and vlpla='" + ls_slocno + "' and nlpla='" + ls_dlocno + "' order by status,modi_time";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv.Count <= 0)
-                    {
-                        return;
-                    }
-                    li_wrkno = Common.GetWrkno(0);
-                    li_wrknod = Common.GetWrkno(0);
-                    string sqlDetl = "", sqlWaitIn = "";
-                    foreach (DataRowView drow in dv)
-                    {
-                        string lgnum = drow[0].ToString();
-                        string tanum = drow[1].ToString();
-                        string tapos = drow[2].ToString();
-                        string matnr = drow[3].ToString();
-                        string maktx = drow[4].ToString();
-                        string werks = drow[5].ToString();
-                        string vsolm = drow[6].ToString();
-                        string meins = drow[7].ToString();
-                        string bname = drow[8].ToString();
-                        sqlDetl += " insert into asr_wrk_detl(wrk_no,io_time,lgnum,tbnum,tbpos,matnr,maktx,werks,anfme,altme,bname) ";
-                        sqlDetl += " values(" + li_wrkno + ",'" + ldt_date + "','" + lgnum + "'," + tanum + "," + tapos + ", ";
-                        sqlDetl += " '" + matnr + "','" + maktx + "','" + werks + "'," + vsolm + ",'" + meins + "','" + bname + "');";
-
-                        sqlDetld += " insert into asr_wrk_detl(wrk_no,io_time,lgnum,tbnum,tbpos,matnr,maktx,werks,anfme,altme,bname) ";
-                        sqlDetld += " values(" + li_wrknod + ",'" + ldt_date + "','" + lgnum + "'," + tanum + "," + tapos + ", ";
-                        sqlDetld += " '" + matnr + "','" + maktx + "','" + werks + "'," + vsolm + ",'" + meins + "','" + bname + "');";
-
-                        sqlWaitIn += " update cust_wait_pakout set status='Y' where lgnum='" + lgnum + "' and tanum=" + tanum + " and tapos=" + tapos + " and vlpla=" + ls_slocno + ";";
-                        d_outQty += double.Parse(vsolm);
-                    }
-                    DisplayInfo("", "P", "   " + seq + ".6 姝e湪澶勭悊寰呭嚭搴撹祫鏂�!搴撲綅:" + ls_slocno);
-
-                    //鏌ヨ搴撲綅鍙锋槸鍚﹀湪搴撶姸鎬侊紝骞舵煡璇㈡潯鐮佸彿
-                    sql = "select loc_no,barcode from asr_loc_mast where loc_no='" + ls_slocno + "' and loc_sts='F'";
-                    string barcode = "";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv.Count <= 0)
-                    {
-                        ls_error_memo = "   " + seq + ".7 婧愬簱浣�" + ls_slocno + "涓嶅瓨鍦ㄦ垨闈炲湪搴撶姸鎬侊紝璇锋鏌�";
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    else
-                    {
-                        foreach (DataRowView drow in dv)
-                        {
-                            barcode = drow[1].ToString();
-                        }
-                    }
-
-                    //鏌ヨ搴撲綅鍙峰搴斿簱瀛樻槑缁嗘�绘暟閲�
-                    sql = "select sum(anfme) from asr_loc_detl where loc_no='" + ls_slocno + "' ";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv.Count <= 0)
-                    {
-                        ls_error_memo = "   " + seq + ".8 搴撲綅" + ls_slocno + "娌℃湁搴撳瓨鏄庣粏锛岃妫�鏌�";
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    else
-                    {
-                        foreach (DataRowView drow in dv)
-                        {
-                            d_stkQty += double.Parse(drow[0].ToString());
-                        }
-                    }
-
-                    int li_crnrow = int.Parse(ls_slocno.Substring(0, 2));
-                    int li_crnno = (li_crnrow + 1) / 2;
-                    string new_loc_sts = "";
-                    if (d_outQty < d_stkQty)
-                    {
-                        li_io_type = 103;
-                        new_loc_sts = "P";
-                        li_e_stnNo = 4;
-                        li_stnNo = Common.getIoStaNo(li_io_type, li_crnno, li_e_stnNo);
-                        action = 2;
-                    }
-                    else if (d_outQty == d_stkQty)
-                    {
-                        li_io_type = 101;
-                        new_loc_sts = "R";
-                        li_e_stnNo = 13;
-                        li_stnNo = Common.getIoStaNo(li_io_type, li_crnno, li_e_stnNo);
-                        action = 3;
-                    }
-                    else
-                    {
-                        ls_error_memo = "   " + seq + ".9 搴撲綅" + ls_slocno + "閫氱煡鍑哄簱鏁伴噺瓒呭嚭搴撳瓨鏁伴噺锛岃妫�鏌�";
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-
-                    int li_crnrowd = int.Parse(ls_dlocno.Substring(0, 2));
-                    int li_crnnod = (li_crnrowd + 1) / 2;
-                    int li_io_typed = 104;
-                    int li_e_stnNod = 4;
-                    int li_stnNod = Common.getIoStaNo(li_io_typed, li_crnnod, li_e_stnNod);
-
-                    sqlWaitIn = sqlWaitIn.Replace("update cust_wait_pakout set", "update cust_wait_pakout set action=" + action + ",");
-
-                    sql = sqlDetl;
-                    sql += "insert into asr_wrk_mast(wrk_no,io_time,wrk_sts,io_type,crn_no,io_pri,source_loc_no,sta_no,source_sta_no,barcode) ";
-                    sql += " values(" + li_wrkno + ",'" + ldt_date + "',11," + li_io_type + "," + li_crnno + ",13,'" + ls_slocno + "', ";
-                    sql += " " + li_e_stnNo + "," + li_stnNo + ",'" + barcode + "'); ";
-                    sql += sqlDetld;
-                    sql += "insert into asr_wrk_mast(wrk_no,io_time,wrk_sts,io_type,crn_no,io_pri,source_loc_no,sta_no,source_sta_no,barcode) ";
-                    sql += " values(" + li_wrknod + ",'" + ldt_date + "',11," + li_io_typed + "," + li_crnnod + ",13,'" + ls_dlocno + "', ";
-                    sql += " " + li_e_stnNod + "," + li_stnNod + ",'" + barcoded + "'); ";
-                    sql += " update asr_loc_mast set loc_sts='" + new_loc_sts + "' where loc_no='" + ls_slocno + "'; ";
-                    sql += " update asr_loc_mast set loc_sts='P' where loc_no='" + ls_dlocno + "'; ";
-                    sql += sqlWaitIn;
-                    SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                    sqlconn.Open();
-                    SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                    SqlCommand sqlcmd = new SqlCommand(sql, sqlconn);
-                    sqlcmd.Transaction = sqltrans;
-                    try
-                    {
-                        sqlcmd.ExecuteNonQuery();
-                        sqltrans.Commit();
-                    }
-                    catch (SqlException t)
-                    {
-                        sqltrans.Rollback();
-                        //sqlcommon.Close();
-                        ls_error_memo = "   " + seq + ".10 鎻掑叆宸ヤ綔涓绘。[asr_wrk_mast]閿欒 !搴撲綅:" + ls_slocno + " 寮傚父:" + t.Message;
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    finally
-                    {
-                        sqlcmd.Dispose();
-                        sqlconn.Dispose();
-                    }
-                }
-                else
-                {
-                    ls_error_memo = "   " + seq + ".11 鐩爣搴撲綅" + ls_dlocno + "涓嶆槸鍦ㄥ簱鎴栫┖搴撲綅鐘舵�侊紝璇锋鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                return;
-
-            re:
-                sql = "update cust_wait_pakout set status='X',modi_time='" + ldt_date + "' where vlpla='" + ls_slocno + "'";
-                bool result = Common.ExecAsrsModify(sql);
-                if (!result)
-                {
-                    ls_error_memo = "   " + seq + ".12 鏇存柊鍑哄簱妗eけ璐�!搴撲綅锛�" + ls_slocno;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-            }
-            catch (Exception em)
-            {
-                ls_error_memo = "   " + seq + ".13 澶勭悊寰呭鐞嗘。鐢熸垚鍑哄簱宸ヤ綔妗eけ璐ワ細" + em.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 鐢熸垚鐩樼偣宸ヤ綔妗�
-        /// </summary>
-        public void ProcCheckToWorkData(string seq)
-        {
-            string ls_locno = "";
-            string ls_error_memo = "", sql = "";
-            int li_wrkno = 0, li_io_type = 0, li_stnNo = 0, li_e_stnNo = 0;
-            DateTime ldt_date = System.DateTime.Now;
-            int type = 1;
-
-            DisplayInfo(seq, "N", " --澶勭悊鐩樼偣閫氱煡妗o紝鐢熸垚鐩樼偣宸ヤ綔妗�......");
-
-            try
-            {
-                //鏌ユ壘鏈�鏃╀竴鏉″緟鍑哄簱搴撲綅
-                sql = "select top 1 lgpla from cust_wait_check where status<>'Y' order by status,modi_time";
-                DataView dvLoc = Common.ExecAsrsSelect(sql);
-                if (dvLoc.Count <= 0)
-                {
-                    return;
-                }
-                foreach (DataRowView drow in dvLoc)
-                {
-                    ls_locno = drow[0].ToString();
-                }
-                if (ls_locno == "")
-                {
-                    return;
-                }
-
-                //鏌ヨ搴撲綅鍙锋槸鍚﹀湪搴撶姸鎬侊紝骞舵煡璇㈡潯鐮佸彿
-                sql = "select loc_no,barcode from asr_loc_mast where loc_no='" + ls_locno + "' and loc_sts='F'";
-                string barcode = "";
-                DataView dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    ls_error_memo = "   " + seq + ".2 搴撲綅" + ls_locno + "涓嶅瓨鍦ㄦ垨闈炲湪搴撶姸鎬侊紝璇锋鏌�";
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        barcode = drow[1].ToString();
-                    }
-                }
-
-                //鏍规嵁搴撲綅鍙锋煡鎵捐搴撲綅鎵�鏈夊嚭搴撹祫鏂�
-                sql = "select a.lgnum,a.ivnum,a.ivpos,b.matnr,b.maktx,b.altme,b.werks ";
-                sql += " from cust_wait_check a, asr_loc_detl b ";
-                sql += " where a.status<>'Y' and a.lgpla='" + ls_locno + "' and a.matnr=b.matnr and lgpla=b.loc_no and io_status='N'";
-                sql += " order by a.status,a.modi_time";
-                dv = Common.ExecAsrsSelect(sql);
-                if (dv == null || dv.Count <= 0)
-                {
-                    sql = "select b.lgnum,b.tbnum,b.tbpos,b.matnr,b.maktx,b.altme,b.werks ";
-                    sql += " from cust_wait_check a, asr_loc_detl b ";
-                    sql += " where a.status<>'Y' and a.lgpla='" + ls_locno + "' and a.lgpla=b.loc_no and io_status='N'";
-                    sql += " order by a.status,a.modi_time";
-                    dv = Common.ExecAsrsSelect(sql);
-                    if (dv == null || dv.Count <= 0)
-                    {
-                        ls_error_memo = "   " + seq + ".3 鏌ヨ搴撳瓨鏄庣粏[asr_loc_detl]娌℃湁 !搴撲綅:" + ls_locno;
-                        DisplayInfo("", "E", ls_error_memo);
-                        goto re;
-                    }
-                    type = 2;
-                    //return;
-                }
-                li_wrkno = Common.GetWrkno(0);
-                string sqlDetl = "", sqlWaitIn = "";
-                foreach (DataRowView drow in dv)
-                {
-                    string lgnum = drow[0].ToString();
-                    string tanum = drow[1].ToString();
-                    string tapos = drow[2].ToString();
-                    string matnr = drow[3].ToString();
-                    string maktx = drow[4].ToString();
-                    string altme = drow[5].ToString();
-                    string werks = drow[6].ToString();
-                    sqlDetl += " insert into asr_wrk_detl(wrk_no,io_time,lgnum,tbnum,tbpos,matnr,maktx,altme,werks,zpallet) ";
-                    sqlDetl += " values(" + li_wrkno + ",'" + ldt_date + "','" + lgnum + "'," + tanum + "," + tapos + ", ";
-                    sqlDetl += " '" + matnr + "','" + maktx + "','" + altme + "','" + werks + "','" + barcode + "');";
-                    if (type == 1)
-                    {
-                        sqlWaitIn += " update cust_wait_check set status='Y' where lgnum='" + lgnum + "' and ivnum=" + tanum + " and ivpos=" + tapos + ";";
-                    }
-                    else
-                    {
-                        sqlWaitIn += " update cust_wait_check set status='Y' where lgpla='" + ls_locno + "';";
-                    }
-                }
-                DisplayInfo("", "P", "   " + seq + ".1 姝e湪澶勭悊寰呯洏鐐硅祫鏂�!搴撲綅:" + ls_locno);
-
-                int li_crnrow = int.Parse(ls_locno.Substring(0, 2));
-                int li_crnno = (li_crnrow + 1) / 2;
-                li_io_type = 107;
-                li_e_stnNo = 4;
-                li_stnNo = Common.getIoStaNo(li_io_type, li_crnno, li_e_stnNo);
-
-                sql = sqlDetl;
-                sql += "insert into asr_wrk_mast(wrk_no,io_time,wrk_sts,io_type,crn_no,io_pri,source_loc_no,sta_no,source_sta_no,barcode) ";
-                sql += " values(" + li_wrkno + ",'" + ldt_date + "',11," + li_io_type + "," + li_crnno + ",13,'" + ls_locno + "', ";
-                sql += " " + li_e_stnNo + "," + li_stnNo + ",'" + barcode + "'); ";
-                sql += " update asr_loc_mast set loc_sts='P' where loc_no='" + ls_locno + "'; ";
-                sql += sqlWaitIn;
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand(sql, sqlconn);
-                sqlcmd.Transaction = sqltrans;
-                try
-                {
-                    sqlcmd.ExecuteNonQuery();
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".3 鎻掑叆宸ヤ綔涓绘。[asr_wrk_mast]閿欒 !搴撲綅:" + ls_locno + " 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                    goto re;
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-
-            re:
-                sql = "update cust_wait_check set status='X',modi_time='" + ldt_date + "' where lgpla='" + ls_locno + "'";
-                bool result = Common.ExecAsrsModify(sql);
-                if (!result)
-                {
-                    ls_error_memo = "   " + seq + ".4 鏇存柊鐩樼偣妗eけ璐�!搴撲綅锛�" + ls_locno;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-            }
-            catch (Exception em)
-            {
-                ls_error_memo = "   " + seq + ".5 澶勭悊鐩樼偣閫氱煡妗g敓鎴愮洏鐐瑰伐浣滄。澶辫触锛�" + em.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 澶勭悊宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负4鍜�14銆�6鐨勮祫鏂欙紝鏇存柊搴撳瓨妗c�佸緟澶勭悊妗�
-        /// </summary>
-        public void ProcWorkMast(string seq)
-        {
-            string ls_error_memo = "", sql = "", ls_barcode = "";
-            int li_wrk_no = 0, li_wrk_sts = 0, li_io_type = 0, li_sta_no = 0, li_source_sta_no = 0;//, li_wrk_model = 1;
-            string ls_loc_no = "", ls_source_loc_no = "";//, ls_wmsId = "", ls_boxId = "";
-            DateTime ldt_date = System.DateTime.Now, ldt_io_time;
-            string ls_sheet_no = "", ls_empty_mk = "", ls_full_mk = "", ls_online_yn = "";
-            int li_io_pri = 0, li_whs_type;
-            DisplayInfo(seq, "N", "--澶勭悊宸ヤ綔妗� (status=4,14)......");
-            try
-            {
-                try
-                {
-                    DataView dv = Common.ExecAsrsSelect("select getdate() from sys_dual");
-                    foreach (System.Data.DataRowView drow in dv)
-                    {
-                        ldt_date = Convert.ToDateTime(drow[0]);
-                    }
-                }
-                catch (SqlException)
-                {
-                    return;
-                }
-                sql = "select wrk_no,sheet_no,wrk_sts,io_type,io_pri,empty_mk," +
-                      " io_time,loc_no,sta_no,source_sta_no,source_loc_no,whs_type,online_yn,barcode" +
-                      " from dbo.asr_wrk_mast where ((wrk_sts = 4 Or wrk_sts = 14 ) and io_type <> 103 and io_type <> 104 and io_type <> 107 ) or (wrk_sts = 2 and io_type=6)" +
-                      " order by upd_mk,io_time,wrk_no";
-                DataView dv_wrkmast = Common.ExecAsrsSelect(sql);
-                if (dv_wrkmast == null || dv_wrkmast.Count < 1)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".1 宸ヤ綔妗� [asr_wrk_mast] 娌℃湁璧勬枡!");
-                    return;
-                }
-                foreach (DataRowView drow_wrkmast in dv_wrkmast)
-                {
-                    li_wrk_no = Convert.ToInt32(drow_wrkmast[0]);
-                    ls_sheet_no = drow_wrkmast[1].ToString();
-                    li_wrk_sts = Convert.ToInt32(drow_wrkmast[2]);
-                    li_io_type = Convert.ToInt32(drow_wrkmast[3]);
-                    li_io_pri = Convert.ToInt32(drow_wrkmast[4]);
-                    ls_empty_mk = drow_wrkmast[5].ToString();
-                    ldt_io_time = Convert.ToDateTime(drow_wrkmast[6]);
-                    ls_loc_no = drow_wrkmast[7].ToString();
-                    li_sta_no = Convert.ToInt32(drow_wrkmast[8]);
-                    li_source_sta_no = Convert.ToInt32(drow_wrkmast[9]);
-                    ls_source_loc_no = drow_wrkmast[10].ToString();
-                    //li_whs_type = Convert.ToInt32(drow_wrkmast[11]);
-                    //ls_full_mk = drow_wrkmast[12].ToString();
-                    ls_online_yn = drow_wrkmast[12].ToString();
-                    ls_barcode = drow_wrkmast[13].ToString();
-
-                    DisplayInfo("", "P", "   " + seq + ".2 澶勭悊宸ヤ綔妗�:" + li_wrk_no.ToString());
-                    SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                    sqlconn.Open();
-                    SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                    if (li_wrk_sts == 4)
-                    {
-                        switch (li_io_type)
-                        {
-                            #region 绌烘墭鐩樺叆搴�
-                            case 10:
-                                sql = "update asr_loc_mast set loc_sts='D',io_time='" + ldt_date + "',modi_time='" + ldt_date + "'";
-                                sql += " where loc_no='" + ls_loc_no + "' and (loc_sts = 'S' Or loc_sts = 'Q')";
-                                SqlCommand cmd_10 = new SqlCommand(sql, sqlconn);
-                                cmd_10.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_10.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_10.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".3 鍏ュ簱锛嶆洿鏂板簱浣嶇姸鎬佸紓甯� [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " 寮傚父:" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 鍏ㄦ澘鍏ュ簱
-                            case 1:
-                                ///妫�鏌ュ簱瀛樻槑缁嗘。鏄惁宸插瓨鍦ㄦ暟鎹�
-                                int li_count1 = 0;
-                                sql = "";
-                                try
-                                {
-                                    li_count1 = Common.ExecAsrsSelect1("select count(*) from asr_loc_detl where loc_no ='" + ls_loc_no + "'");
-
-                                }
-                                catch (Exception em)
-                                {
-                                    ls_error_memo = "   " + seq + ".4 鏌ヨ搴撳瓨鏄庣粏[asr_loc_detl]鍑洪敊!宸ヤ綔鍙�:" + li_wrk_no.ToString() + "!" + em.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-
-                                ///鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗e晢鍝佺紪鍙�
-                                string sqlDetl = "";
-                                string sqlWaitIn = "";
-                                sql = "select lgnum,tbnum,tbpos,zmatid,matnr,maktx,werks,anfme,altme,zpallet,bname from asr_wrk_detl where wrk_no=" + li_wrk_no;
-                                DataView dv_wrkdetl = Common.ExecAsrsSelect(sql);
-                                if (dv_wrkdetl == null || dv_wrkdetl.Count < 1)
-                                {
-                                    DisplayInfo("", "E", "   " + seq + ".5 宸ヤ綔鏄庣粏妗� [asr_wrk_detl] 娌℃湁璧勬枡!");
-                                    return;
-                                }
-                                foreach (DataRowView drow in dv_wrkdetl)
-                                {
-                                    string lgnum = "", tbnum = "", tbpos = "", zmatid = "", matnr = "", maktx = "", werks = "", anfme = "", altme = "", zpallet = "", bname = "";
-                                    lgnum = drow[0].ToString();
-                                    tbnum = drow[1].ToString();
-                                    tbpos = drow[2].ToString();
-                                    zmatid = drow[3].ToString();
-                                    matnr = drow[4].ToString();
-                                    maktx = drow[5].ToString();
-                                    werks = drow[6].ToString();
-                                    anfme = drow[7].ToString();
-                                    altme = drow[8].ToString();
-                                    zpallet = drow[9].ToString();
-                                    bname = drow[10].ToString();
-
-                                    string sqlLocDetl = "select anfme from asr_loc_detl where loc_no='" + ls_loc_no + "' and matnr='" + matnr + "'";
-                                    DataView dvLocDetl = Common.ExecAsrsSelect(sqlLocDetl);
-                                    if (dvLocDetl != null)
-                                    {
-                                        if (dvLocDetl.Count > 0)
-                                        {//搴撳瓨宸叉湁锛屾洿鏂版暟閲�
-                                            sqlDetl = " update asr_loc_detl set anfme=anfme+" + anfme + " where loc_no='" + ls_loc_no + "' and matnr='" + matnr + "'; ";
-                                            Common.ExecAsrsModify(sqlDetl);
-                                        }
-                                        else
-                                        {//搴撳瓨娌℃湁锛屾彃鍏�
-                                            sqlDetl = " insert into asr_loc_detl(loc_no,lgnum,tbnum,tbpos,zmatid,matnr,maktx,werks,anfme,altme,zpallet,bname) ";
-                                            sqlDetl += " values('" + ls_loc_no + "','" + lgnum + "'," + tbnum + "," + tbpos + ",'" + zmatid + "', ";
-                                            sqlDetl += " '" + matnr + "','" + maktx + "','" + werks + "'," + anfme + ",'" + altme + "','" + ls_barcode + "','" + bname + "');";
-                                            Common.ExecAsrsModify(sqlDetl);
-                                        }
-                                    }
-                                    sqlWaitIn += " update cust_wait_pakin set io_status='Y' where lgnum='" + lgnum + "' and tbnum=" + tbnum + " and tbpos=" + tbpos + " and zmatid='" + zmatid + "';";
-                                }
-
-                                ///鏇存柊搴撳瓨淇℃伅锛屾彃鍏ュ簱瀛樻槑缁嗘。锛屽苟鏇存柊搴撳瓨涓绘。
-                                sql = "";
-                                if (li_count1 > 0)
-                                {
-                                    sql += "delete from asr_loc_detl where loc_no ='" + ls_loc_no + "';";
-                                }
-                                sql += " update asr_loc_mast set loc_sts='F',io_time='" + ldt_date + "',modi_time='" + ldt_date + "',barcode='" + ls_barcode + "'";
-                                sql += " where loc_no='" + ls_loc_no + "' and loc_sts = 'S';";
-                                //sql += sqlDetl;
-                                sql += sqlWaitIn;
-
-                                SqlCommand cmd_1 = new SqlCommand(sql, sqlconn);
-                                cmd_1.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_1.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_1.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".6 鍏ュ簱锛嶆洿鏂板簱瀛樺紓甯� [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " !" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 鎷f枡鍐嶅叆搴�
-                            case 53:
-                                ///鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗e晢鍝佺紪鍙�
-                                sqlDetl = "";
-                                sqlWaitIn = "";
-                                sql = "select lgnum,tbnum,tbpos,zmatid,matnr,maktx,werks,anfme,altme,zpallet,bname from asr_wrk_detl where wrk_no=" + li_wrk_no;
-                                DataView dv_wrkdetl53 = Common.ExecAsrsSelect(sql);
-                                if (dv_wrkdetl53 == null || dv_wrkdetl53.Count < 1)
-                                {
-                                    DisplayInfo("", "E", "   " + seq + ".6 宸ヤ綔鏄庣粏妗� [asr_wrk_detl] 娌℃湁璧勬枡!");
-                                    return;
-                                }
-                                foreach (DataRowView drow in dv_wrkdetl53)
-                                {
-                                    string lgnum = "", tbnum = "", tbpos = "", zmatid = "", matnr = "", maktx = "", werks = "", anfme = "", altme = "", zpallet = "", bname = "";
-                                    lgnum = drow[0].ToString();
-                                    tbnum = drow[1].ToString();
-                                    tbpos = drow[2].ToString();
-                                    zmatid = drow[3].ToString();
-                                    matnr = drow[4].ToString();
-                                    maktx = drow[5].ToString();
-                                    werks = drow[6].ToString();
-                                    anfme = drow[7].ToString();
-                                    altme = drow[8].ToString();
-                                    zpallet = drow[9].ToString();
-                                    bname = drow[10].ToString();
-                                    sqlDetl += " update asr_loc_detl set anfme=anfme-" + anfme + " where loc_no='" + ls_loc_no + "' and matnr='" + matnr + "'";
-                                    sqlWaitIn += " update cust_wait_pakout set io_status='Y' where lgnum='" + lgnum + "' and tanum=" + tbnum + " and tapos=" + tbpos + " and matnr=" + matnr + ";";
-                                }
-
-                                ///鏇存柊搴撳瓨淇℃伅锛屾彃鍏ュ簱瀛樻槑缁嗘。锛屽苟鏇存柊搴撳瓨涓绘。
-                                sql = " update asr_loc_mast set loc_sts='F',io_time='" + ldt_date + "',modi_time='" + ldt_date + "',barcode='" + ls_barcode + "'";
-                                sql += " where loc_no='" + ls_loc_no + "' and loc_sts = 'Q';";
-                                sql += sqlDetl;
-                                sql += sqlWaitIn;
-
-                                
-                                SqlCommand cmd_53 = new SqlCommand(sql, sqlconn);
-                                cmd_53.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_53.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_53.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".7 鎷f枡锛嶆洿鏂板簱瀛樺紓甯� [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " !" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 骞舵澘鍐嶅叆搴�
-                            case 54:
-                                ///鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗e晢鍝佺紪鍙�
-                                sqlDetl = "";
-                                sqlWaitIn = "";
-                                sql = "select lgnum,tbnum,tbpos,zmatid,matnr,maktx,werks,anfme,altme,zpallet,bname from asr_wrk_detl where wrk_no=" + li_wrk_no;
-                                DataView dv_wrkdetl54 = Common.ExecAsrsSelect(sql);
-                                if (dv_wrkdetl54 == null || dv_wrkdetl54.Count < 1)
-                                {
-                                    DisplayInfo("", "E", "   " + seq + ".8 宸ヤ綔鏄庣粏妗� [asr_wrk_detl] 娌℃湁璧勬枡!");
-                                    return;
-                                }
-                                foreach (DataRowView drow in dv_wrkdetl54)
-                                {
-                                    string lgnum = "", tbnum = "", tbpos = "", zmatid = "", matnr = "", maktx = "", werks = "", anfme = "", altme = "", zpallet = "", bname = "";
-                                    lgnum = drow[0].ToString();
-                                    tbnum = drow[1].ToString();
-                                    tbpos = drow[2].ToString();
-                                    zmatid = drow[3].ToString();
-                                    matnr = drow[4].ToString();
-                                    maktx = drow[5].ToString();
-                                    werks = drow[6].ToString();
-                                    anfme = drow[7].ToString();
-                                    altme = drow[8].ToString();
-                                    zpallet = drow[9].ToString();
-                                    bname = drow[10].ToString();
-                                    string sql1 = "select anfme from asr_loc_detl where loc_no='" + ls_loc_no + "' and matnr='" + matnr + "'";
-                                    DataView dv_locdetl54 = Common.ExecAsrsSelect(sql1);
-                                    if (dv_locdetl54 != null && dv_locdetl54.Count > 0)
-                                    {
-                                        sqlDetl += " update asr_loc_detl set anfme=anfme+" + anfme + " where loc_no='" + ls_loc_no + "' and matnr='" + matnr + "'";
-                                        //sqlWaitIn += " update cust_wait_pakin set io_status='Y' where matnr=" + matnr + ";";
-                                    }
-                                    else
-                                    {
-                                        sqlDetl += " insert into asr_loc_detl(loc_no,lgnum,tbnum,tbpos,zmatid,matnr,maktx,werks,anfme,altme,zpallet,bname) ";
-                                        sqlDetl += " values('" + ls_loc_no + "','" + lgnum + "'," + tbnum + "," + tbpos + ",'" + zmatid + "', ";
-                                        sqlDetl += " '" + matnr + "','" + maktx + "','" + werks + "'," + anfme + ",'" + altme + "','" + ls_barcode + "','" + bname + "');";
-                                    }
-                                    sqlWaitIn += " update cust_wait_pakout set io_status='Y' where lgnum='" + lgnum + "' and tanum=" + tbnum + " and tapos=" + tbpos + ";";
-                                }
-
-                                ///鏇存柊搴撳瓨淇℃伅锛屾彃鍏ュ簱瀛樻槑缁嗘。锛屽苟鏇存柊搴撳瓨涓绘。
-                                //sql = " update asr_loc_mast set loc_sts='F',io_time='" + ldt_date + "',modi_time='" + ldt_date + "',barcode='" + ls_barcode + "'";
-                                sql = " update asr_loc_mast set loc_sts='F',io_time='" + ldt_date + "',modi_time='" + ldt_date + "' ";
-                                sql += " where loc_no='" + ls_loc_no + "' and loc_sts = 'Q';";
-                                sql += sqlDetl;
-                                sql += sqlWaitIn;
-
-                                SqlCommand cmd_54 = new SqlCommand(sql, sqlconn);
-                                cmd_54.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_54.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_54.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".9 骞舵澘鍐嶅叆搴擄紞鏇存柊搴撳瓨寮傚父 [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " !" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 鐩樼偣鍐嶅叆搴�
-                            case 57:
-                                ///鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗e晢鍝佺紪鍙�
-                                sqlDetl = "";
-                                sqlWaitIn = "";
-                                sql = "select lgnum,tbnum,tbpos,matnr from asr_wrk_detl where wrk_no=" + li_wrk_no;
-                                DataView dv_wrkdetl57 = Common.ExecAsrsSelect(sql);
-                                if (dv_wrkdetl57 == null || dv_wrkdetl57.Count < 1)
-                                {
-                                    DisplayInfo("", "E", "   " + seq + ".10 宸ヤ綔鏄庣粏妗� [asr_wrk_detl] 娌℃湁璧勬枡!");
-                                    return;
-                                }
-                                foreach (DataRowView drow in dv_wrkdetl57)
-                                {
-                                    string lgnum = "", tbnum = "", tbpos = "", matnr = "";
-                                    lgnum = drow[0].ToString();
-                                    tbnum = drow[1].ToString();
-                                    tbpos = drow[2].ToString();
-                                    matnr = drow[3].ToString();
-                                    //sqlWaitIn += " update cust_wait_check set io_status='Y' where lgnum='" + lgnum + "' and ivnum=" + tbnum + " and ivpos=" + tbpos + ";";
-                                }
-                                sqlWaitIn += " update cust_wait_check set io_status='Y' where lgpla='" + ls_loc_no + "';";
-                                ///鏇存柊搴撳瓨淇℃伅锛屾彃鍏ュ簱瀛樻槑缁嗘。锛屽苟鏇存柊搴撳瓨涓绘。
-                                sql = " update asr_loc_mast set loc_sts='F',io_time='" + ldt_date + "',modi_time='" + ldt_date + "',barcode='" + ls_barcode + "'";
-                                sql += " where loc_no='" + ls_loc_no + "' and loc_sts = 'Q';";
-                                sql += sqlDetl;
-                                sql += sqlWaitIn;
-
-                                SqlCommand cmd_57 = new SqlCommand(sql, sqlconn);
-                                cmd_57.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_57.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_57.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".11 鐩樼偣鍐嶅叆搴擄紞鏇存柊搴撳瓨寮傚父 [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " !" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 搴撲綅绉昏浆
-                            case 11:
-                                sql = "";
-                                string ls_loc_sts = "";
-                                if (ls_empty_mk == "N")
-                                {
-                                    ls_loc_sts = "F";
-                                    sql += "Update dbo.asr_loc_detl set loc_no='" + ls_loc_no + "',modi_time='" + ldt_date + "' where loc_no='" + ls_source_loc_no + "';";
-                                }
-                                else
-                                {
-                                    ls_loc_sts = "D";
-                                }
-
-                                sql += " Update dbo.asr_loc_mast set loc_sts='O',barcode='',io_time='" + ldt_date + "'  where loc_no='" + ls_source_loc_no + "'; ";
-                                sql += " Update dbo.asr_loc_mast set loc_sts='" + ls_loc_sts + "',barcode='" + ls_barcode + "',io_time='" + ldt_date + "' where loc_no='" + ls_loc_no + "';";
-                                sql += " update cust_wait_pakout set io_status='Y' where vlpla='" + ls_source_loc_no + "' and nlpla='" + ls_loc_no + "'";
-                                SqlCommand cmd_11 = new SqlCommand(sql, sqlconn);
-                                cmd_11.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_11.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_11.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".12 搴撲綅绉昏浆锛嶆洿鏂板簱瀛樺紓甯� [asr_loc_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + "  搴撲綅鍙�:" + ls_loc_no + " !" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-
-                                break;
-                            #endregion
-                        }
-
-                        sql = "update asr_wrk_mast set wrk_sts=5,modi_time='" + ldt_date + "' where wrk_no=" + li_wrk_no + "; ";
-                        SqlCommand cmd_wrk = new SqlCommand(sql, sqlconn);
-                        cmd_wrk.Transaction = sqltrans;
-                        try
-                        {
-                            cmd_wrk.ExecuteNonQuery();
-                        }
-                        catch (SqlException t)
-                        {
-                            sqltrans.Rollback();
-                            cmd_wrk.Dispose();
-                            sqlconn.Dispose();
-                            ls_error_memo = "   " + seq + ".13 鏇存柊宸ヤ綔鐘舵�佸紓甯� [asr_wrk_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + " 鏃堕棿:" + ldt_date.ToString() + " 寮傚父:" + t.Message;
-                            DisplayInfo("", "E", ls_error_memo);
-                            goto re;
-                        }
-                    }
-                    else if (li_wrk_sts == 14)
-                    {
-                        switch (li_io_type)
-                        {
-                            #region 鍏ㄦ澘鍑哄簱
-                            case 101:
-                                ///鏍规嵁宸ヤ綔鍙凤紝鏌ヨ宸ヤ綔鏄庣粏妗e晢鍝佺紪鍙�
-                                string sqlWaitIn = "";
-                                sql = "select lgnum,tbnum,tbpos,matnr from asr_wrk_detl where wrk_no=" + li_wrk_no;
-                                DataView dv_wrkdetl = Common.ExecAsrsSelect(sql);
-                                if (dv_wrkdetl == null || dv_wrkdetl.Count < 1)
-                                {
-                                    DisplayInfo("", "E", "   " + seq + ".14 宸ヤ綔鏄庣粏妗� [asr_wrk_detl] 娌℃湁璧勬枡!");
-                                    goto re;
-                                }
-                                foreach (DataRowView drow in dv_wrkdetl)
-                                {
-                                    string lgnum = drow[0].ToString();
-                                    string tbnum = drow[1].ToString();
-                                    string tbpos = drow[2].ToString();
-                                    string matnr = drow[3].ToString();
-                                    sqlWaitIn += " update cust_wait_pakout set io_status='Y' where lgnum='" + lgnum + "' and tanum=" + tbnum + " and tapos=" + tbpos + " and vlpla=" + ls_source_loc_no + ";";
-                                }
-
-                                sql = "delete from asr_loc_detl where loc_no ='" + ls_source_loc_no + "';";
-                                sql += " update asr_loc_mast set loc_sts='O',io_time='" + ldt_date + "',barcode=null";
-                                sql += " where loc_no='" + ls_source_loc_no + "' and loc_sts = 'R';";
-                                sql += sqlWaitIn;
-                                SqlCommand cmd_101 = new SqlCommand(sql, sqlconn);
-                                cmd_101.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_101.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_101.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".15 鍑哄簱锛嶆洿鏂板簱浣嶇姸鎬佸紓甯竅asr_loc_mast] !搴撲綅鍙�:" + ls_source_loc_no + " 寮傚父:" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                            #region 绌烘澘鍑哄簱
-                            case 110:
-                                sql = "update asr_loc_mast set loc_sts='O',io_time='" + ldt_date + "'";
-                                sql += " where loc_no='" + ls_source_loc_no + "' and loc_sts = 'R'";
-                                SqlCommand cmd_110 = new SqlCommand(sql, sqlconn);
-                                cmd_110.Transaction = sqltrans;
-                                try
-                                {
-                                    cmd_110.ExecuteNonQuery();
-                                }
-                                catch (SqlException t)
-                                {
-                                    sqltrans.Rollback();
-                                    cmd_110.Dispose();
-                                    sqlconn.Dispose();
-                                    ls_error_memo = "   " + seq + ".16 鍑哄簱锛嶆洿鏂板簱浣嶇姸鎬佸紓甯竅asr_loc_mast] !搴撲綅鍙�:" + ls_source_loc_no + " 寮傚父:" + t.Message;
-                                    DisplayInfo("", "E", ls_error_memo);
-                                    goto re;
-                                }
-                                break;
-                            #endregion
-                        }
-
-                        sql = "update asr_wrk_mast set wrk_sts=15,modi_time='" + ldt_date + "' where wrk_no=" + li_wrk_no + "; ";
-                        SqlCommand cmd_wrk1 = new SqlCommand(sql, sqlconn);
-                        cmd_wrk1.Transaction = sqltrans;
-                        try
-                        {
-                            cmd_wrk1.ExecuteNonQuery();
-                        }
-                        catch (SqlException t)
-                        {
-                            sqltrans.Rollback();
-                            cmd_wrk1.Dispose();
-                            sqltrans.Dispose();
-                            ls_error_memo = "   " + seq + ".17 鏇存柊宸ヤ綔鐘舵�佸紓甯� [asr_wrk_mast] !宸ヤ綔鍙�:" + li_wrk_no.ToString() + " 寮傚父:" + t.Message;
-                            DisplayInfo("", "E", ls_error_memo);
-                            goto re;
-                        }
-                    }
-                    sqltrans.Commit();
-                    sqlconn.Dispose();
-                }
-            }
-            catch (SqlException t)
-            {
-                ls_error_memo = "   " + seq + ".18 澶勭悊宸ヤ綔妗f暟鎹け璐�! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-
-        re:
-            if (ls_error_memo != "")
-            {
-                try
-                {
-                    bool bl = Common.ExecAsrsModify("update dbo.asr_wrk_mast set upd_mk ='X',error_time='" + ldt_date + "',error_memo='" + ls_error_memo + "'  where wrk_no =" + li_wrk_no + "");
-                }
-                catch (SqlException t)
-                {
-                    ls_error_memo = "   " + seq + ".19 鏇存柊宸ヤ綔涓绘。鐘舵�� [asr_wrk_mast] 寮傚父! 宸ヤ綔鍙�:" + li_wrk_no.ToString() + " 鏃堕棿:" + ldt_date.ToString();
-                    DisplayInfo("", "E", ls_error_memo);
-                    return;
-                }
-
-            }
-        }
-
-        /// <summary>
-        /// 澶勭悊宸ヤ綔妗d腑宸ヤ綔鐘舵�佷负5鍜�15鐨勮祫鏂欙紝杞巻鍙叉。
-        /// </summary>
-        public void ProcWorkToLog(string seq)
-        {
-            string ls_error_memo = "";
-            DisplayInfo(seq, "N", "--澶勭悊宸ヤ綔妗h浆鍘嗗彶妗�......");
-            int wrkno = 0;
-            try
-            {
-                string sql = "select top 1 wrk_no from asr_wrk_mast where wrk_sts=5 ";// or wrk_sts=15 or (wrk_sts=15 and io_type=110) ";
-                sql += " or (wrk_sts=15 and ove_mk='Y' and wrk_no not in (select wrk_no from asr_bas_devp))";
-                sql += " or (wrk_sts=15 and dateadd(mi,15,crn_end_time) <= getdate() and wrk_no not in (select wrk_no from asr_bas_devp))";
-                sql += " or (wrk_sts=15 and crn_end_time is null and wrk_no not in (select wrk_no from asr_bas_devp)) ";
-                //sql += " or (wrk_sts=15 and dateadd(day,1,io_time) <= getdate() and crn_end_time is null) ";
-                //sql += " or (wrk_sts=15 and dateadd(hh,1,crn_end_time) <= getdate()) ";
-                //sql += " or (wrk_sts=15 and wrk_no not in (select wrk_no from asr_bas_devp))";
-                sql += " order by io_time,wrk_no asc";
-                DataView dv = Common.ExecAsrsSelect(sql);
-                if (dv.Count <= 0)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".1 宸ヤ綔妗� [asr_wrk_mast] 娌℃湁璧勬枡澶勭悊!");
-                    return;
-                }
-                foreach (DataRowView drow in dv)
-                {
-                    wrkno = int.Parse(drow[0].ToString());
-                }
-                DisplayInfo("", "P", "   " + seq + ".2 姝e湪澶勭悊杞巻鍙叉。" + wrkno);
-
-                sql = "insert into asr_wrk_mast_log select * from asr_wrk_mast where wrk_no=" + wrkno + "; ";
-                //sql += " and wrk_no not in (select wrk_no from dbo.asr_bas_devp) ";
-                //sql += " and wrk_no not in (select wrk_no from dbo.asr_bas_crnp);";
-                sql += " delete from asr_wrk_mast where wrk_no=" + wrkno + "; ";
-                sql += " insert into asr_wrk_detl_log select * from asr_wrk_detl where wrk_no=" + wrkno + "; ";
-                sql += " delete from asr_wrk_detl where wrk_no=" + wrkno + "; ";
-                //sql += " update asr_wrk_mast set wrk_sts=16 where wrk_sts=15 and dateadd(day,1,io_time) <= getdate();";
-                //sql += " and wrk_no not in (select wrk_no from dbo.asr_bas_devp) ";
-                //sql += " and wrk_no not in (select wrk_no from dbo.asr_bas_crnp);";
-
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand();
-                sqlcmd.Transaction = sqltrans;
-                string[] arraySql = sql.Split(';');
-                try
-                {
-                    for (int i = 0; i < arraySql.Length; i++)
-                    {
-                        if (arraySql[i] != "")
-                        {
-                            sqlcmd.CommandText = arraySql[i];
-                            sqlcmd.Connection = sqlconn;
-                            sqlcmd.Transaction = sqltrans;
-                            int result = sqlcmd.ExecuteNonQuery();
-                        }
-                    }
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    ls_error_memo = "   " + seq + ".3 宸ヤ綔妗asr_wrk_mast]杞巻鍙叉。閿欒 ! 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqltrans.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".4 澶勭悊宸ヤ綔妗h浆鍘嗗彶妗eけ璐�! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 澶勭悊鍫嗗灈鏈恒�佽緭閫佹満鍛戒护锛岃浆鍘嗗彶妗�
-        /// </summary>
-        public void ProcDevCommandToLog(string seq)
-        {
-            string ls_error_memo = "";
-            DisplayInfo(seq, "N", "--澶勭悊鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。......");
-            try
-            {
-                string sql = "insert into asr_stk_hplc ";
-                sql += " select * from asr_stk_plcm where dateadd(day,7,appe_time) <= getdate();";
-                sql += " delete from asr_stk_plcm where dateadd(day,7,appe_time) <= getdate();";
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand();
-                sqlcmd.Transaction = sqltrans;
-                string[] arraySql = sql.Split(';');
-                try
-                {
-                    for (int i = 0; i < arraySql.Length; i++)
-                    {
-                        if (arraySql[i] != "")
-                        {
-                            sqlcmd.CommandText = arraySql[i];
-                            sqlcmd.Connection = sqlconn;
-                            sqlcmd.Transaction = sqltrans;
-                            int result = sqlcmd.ExecuteNonQuery();
-                        }
-                    }
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".1 鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。閿欒 ! 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqltrans.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".2 鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。澶辫触! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 杞凡瀹屾垚鐗╂枡淇℃伅鍒板巻鍙叉。
-        /// </summary>
-        public void ProcMatCodeToLog(string seq)
-        {
-            string ls_error_memo = "", mat_no = "";
-            DisplayInfo(seq, "N", "--澶勭悊宸插畬鎴愮墿鏂欐暟鎹浆鍘嗗彶妗�......");
-            try
-            {
-                string condition = " and mat_no not in (select mat_no from asr_loc_detl) and mat_no not in (select mat_no from asr_wrk_detl) ";
-                //condition += " and mat_no not in (select mat_no from cust_wait_pakout) ";
-                string sql0 = " select top 1 mat_no from bas_mat_code where status>1 " + condition + " ;";
-                DataView dv = Common.ExecAsrsSelect(sql0);
-                if (dv.Count <= 0)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".1 鐗╂枡妗� [bas_mat_code] 娌℃湁璧勬枡澶勭悊!");
-                    return;
-                }
-
-                foreach (DataRowView drow in dv)
-                {
-                    mat_no = drow[0].ToString();
-                }
-
-                string sql = "delete from bas_mat_code_log where mat_no='" + mat_no + "';";
-                sql += " insert into bas_mat_code_log ";
-                sql += " select * from bas_mat_code where status>1 " + condition + " ;";
-                sql += " delete from bas_mat_code where status>1 " + condition + " ;";
-                sql += " delete from bas_mat_code where status=0 and dateadd(hh,2,modi_time) <= getdate() " + condition + " ;";
-
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand();
-                sqlcmd.Transaction = sqltrans;
-                string[] arraySql = sql.Split(';');
-                try
-                {
-                    for (int i = 0; i < arraySql.Length; i++)
-                    {
-                        if (arraySql[i] != "")
-                        {
-                            sqlcmd.CommandText = arraySql[i];
-                            sqlcmd.Connection = sqlconn;
-                            sqlcmd.Transaction = sqltrans;
-                            int result = sqlcmd.ExecuteNonQuery();
-                        }
-                    }
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".1 宸插畬鎴愮墿鏂欐暟鎹浆鍘嗗彶妗i敊璇� ! 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".2 宸插畬鎴愮墿鏂欐暟鎹浆鍘嗗彶妗eけ璐�! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 杞凡瀹屾垚寰呭嚭搴撴。淇℃伅鍒板巻鍙叉。
-        /// </summary>
-        public void ProcWaitOutToLog(string seq)
-        {
-            string ls_error_memo = "", sql = "";
-            DisplayInfo(seq, "N", "--澶勭悊宸插畬鎴愬叆/鍑哄簱妗f暟鎹浆鍘嗗彶妗�......");
-            try
-            {
-                string sql0 = " select lgnum,tbnum,tbpos from cust_wait_pakin where io_status='F';";
-                DataView dv = Common.ExecAsrsSelect(sql0);
-                if (dv == null || dv.Count <= 0)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".1 鍏ュ簱妗� [cust_wait_pakin] 娌℃湁璧勬枡澶勭悊!");
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        string lgnum = drow[0].ToString();
-                        string tanum = drow[1].ToString();
-                        string tapos = drow[2].ToString();
-                        sql = "insert into cust_wait_pakin_log ";
-                        sql += " select * from cust_wait_pakin where lgnum='" + lgnum + "' and tbnum=" + tanum + " and tbpos=" + tapos + "; ";
-                        sql += " delete from cust_wait_pakin where lgnum='" + lgnum + "' and tbnum=" + tanum + " and tbpos=" + tapos + "; ";
-                    }
-                }
-
-                sql0 = " select lgnum,tanum,tapos from cust_wait_pakout where io_status='F';";
-                dv = Common.ExecAsrsSelect(sql0);
-                if (dv == null || dv.Count <= 0)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".2 鍑哄簱妗� [cust_wait_pakout] 娌℃湁璧勬枡澶勭悊!");
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        string lgnum = drow[0].ToString();
-                        string tanum = drow[1].ToString();
-                        string tapos = drow[2].ToString();
-                        sql = "insert into cust_wait_pakout_log ";
-                        sql += " select * from cust_wait_pakout where lgnum='" + lgnum + "' and tanum=" + tanum + " and tapos=" + tapos + "; ";
-                        sql += " delete from cust_wait_pakout where lgnum='" + lgnum + "' and tanum=" + tanum + " and tapos=" + tapos + "; ";
-                    }
-                }
-
-                sql0 = " select lgnum,ivnum,ivpos from cust_wait_check where io_status='Y';";
-                dv = Common.ExecAsrsSelect(sql0);
-                if (dv == null || dv.Count <= 0)
-                {
-                    DisplayInfo("", "N", "   " + seq + ".3 鐩樼偣妗� [cust_wait_check] 娌℃湁璧勬枡澶勭悊!");
-                }
-                else
-                {
-                    foreach (DataRowView drow in dv)
-                    {
-                        string lgnum = drow[0].ToString();
-                        string tanum = drow[1].ToString();
-                        string tapos = drow[2].ToString();
-                        sql = "insert into cust_wait_check_log ";
-                        sql += " select * from cust_wait_check where lgnum='" + lgnum + "' and ivnum=" + tanum + " and ivpos=" + tapos + "; ";
-                        sql += " delete from cust_wait_check where lgnum='" + lgnum + "' and ivnum=" + tanum + " and ivpos=" + tapos + "; ";
-                    }
-                }
-
-                if (sql == "")
-                {
-                    return;
-                }
-                SqlConnection sqlconn1 = new SqlConnection(Common.sqlcon);
-                sqlconn1.Open();
-                SqlTransaction sqltrans1 = sqlconn1.BeginTransaction();
-                SqlCommand sqlcmd1 = new SqlCommand();
-                sqlcmd1.Transaction = sqltrans1;
-                string[] arraySql1 = sql.Split(';');
-                try
-                {
-                    for (int i = 0; i < arraySql1.Length; i++)
-                    {
-                        if (arraySql1[i] != "")
-                        {
-                            sqlcmd1.CommandText = arraySql1[i];
-                            sqlcmd1.Connection = sqlconn1;
-                            sqlcmd1.Transaction = sqltrans1;
-                            int result = sqlcmd1.ExecuteNonQuery();
-                        }
-                    }
-                    sqltrans1.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans1.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".1 宸插畬鎴愮墿鏂欐暟鎹浆鍘嗗彶妗i敊璇� ! 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-                finally
-                {
-                    sqlcmd1.Dispose();
-                    sqlconn1.Dispose();
-                }
-
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".2 宸插畬鎴愬嚭搴撴暟鎹浆鍘嗗彶妗eけ璐�! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 鍒犻櫎瓒呰繃鍗婂勾鐨勫巻鍙叉。淇℃伅
-        /// </summary>
-        public void ProcOverYearLog(string seq)
-        {
-            string ls_error_memo = "";
-            DisplayInfo(seq, "N", "--澶勭悊瓒呰繃鍗婂勾鍘嗗彶妗d俊鎭�......");
-            try
-            {
-                string sql = "delete from asr_stk_hplc where dateadd(day,180,appe_time) <= getdate(); ";
-                sql += " delete from sys_tts_mast where dateadd(day,180,modi_time) <= getdate();";
-                sql += " delete from asr_wrk_detl_log where dateadd(day,360,appe_time) <= getdate();";
-                sql += " delete from asr_wrk_mast_log where dateadd(day,360,appe_time) <= getdate();";
-                sql += " delete from cust_wait_pakout_log where dateadd(day,360,appe_time) <= getdate();";
-                sql += " delete from bas_mat_code_log where dateadd(day,360,appe_time) <= getdate();";
-                SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                sqlconn.Open();
-                SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                SqlCommand sqlcmd = new SqlCommand();
-                sqlcmd.Transaction = sqltrans;
-                string[] arraySql = sql.Split(';');
-                try
-                {
-                    for (int i = 0; i < arraySql.Length; i++)
-                    {
-                        if (arraySql[i] != "")
-                        {
-                            sqlcmd.CommandText = arraySql[i];
-                            sqlcmd.Connection = sqlconn;
-                            sqlcmd.Transaction = sqltrans;
-                            int result = sqlcmd.ExecuteNonQuery();
-                        }
-                    }
-                    sqltrans.Commit();
-                }
-                catch (SqlException t)
-                {
-                    sqltrans.Rollback();
-                    //sqlcommon.Close();
-                    ls_error_memo = "   " + seq + ".1 鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。閿欒 ! 寮傚父:" + t.Message;
-                    DisplayInfo("", "E", ls_error_memo);
-                }
-                finally
-                {
-                    sqlcmd.Dispose();
-                    sqltrans.Dispose();
-                    sqlconn.Dispose();
-                }
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".2 鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。澶辫触! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-
-        /// <summary>
-        /// 澶勭悊搴撳瓨妗d腑搴撲綅鐘舵�佷负D O浣嗘槸鏈夋槑缁嗙殑鏁版嵁锛屾竻绌烘槑缁�
-        /// </summary>
-        private void ProcErrorStockData(string seq)
-        {
-            string ls_error_memo = "";
-            string loc_no = "", mat_no = "";
-            DisplayInfo(seq, "N", "--澶勭悊搴撳瓨妗d腑寮傚父搴撳瓨淇℃伅......");
-            try
-            {
-                string sqlDetl = "delete from asr_loc_detl where anfme <= 0;";
-                Common.ExecAsrsModify(sqlDetl);
-
-                string sql = "SELECT a.loc_no,b.matnr FROM asr_loc_mast a,asr_loc_detl b where a.loc_no=b.loc_no ";
-                sql += " and (a.loc_sts='O' or a.loc_sts='D') ";
-
-                DataView dv_stkDetl = Common.ExecAsrsSelect(sql);
-                if (dv_stkDetl == null || dv_stkDetl.Count < 1)
-                {
-                    return;
-                }
-                foreach (DataRowView drow_stkDetl in dv_stkDetl)
-                {
-                    loc_no = drow_stkDetl[0].ToString();
-                    mat_no = drow_stkDetl[1].ToString();
-                    string sql0 = " delete from asr_loc_detl where loc_no='" + loc_no + "'; ";
-                    SqlConnection sqlconn = new SqlConnection(Common.sqlcon);
-                    sqlconn.Open();
-                    SqlTransaction sqltrans = sqlconn.BeginTransaction();
-                    SqlCommand sqlcmd = new SqlCommand();
-                    sqlcmd.Transaction = sqltrans;
-                    string[] arraySql = sql0.Split(';');
-                    try
-                    {
-                        for (int i = 0; i < arraySql.Length; i++)
-                        {
-                            if (arraySql[i] != "")
-                            {
-                                sqlcmd.CommandText = arraySql[i];
-                                sqlcmd.Connection = sqlconn;
-                                sqlcmd.Transaction = sqltrans;
-                                int result = sqlcmd.ExecuteNonQuery();
-                            }
-                        }
-                        sqltrans.Commit();
-                    }
-                    catch (SqlException t)
-                    {
-                        sqltrans.Rollback();
-                        //sqlcommon.Close();
-                        ls_error_memo = "   " + seq + ".1 澶勭悊搴撳瓨妗d腑寮傚父搴撳瓨淇℃伅閿欒 ! 寮傚父:" + t.Message;
-                        DisplayInfo("", "E", ls_error_memo);
-                    }
-                    finally
-                    {
-                        sqlcmd.Dispose();
-                        sqltrans.Dispose();
-                        sqlconn.Dispose();
-                    }
-                }
-                return;
-            }
-            catch (Exception t)
-            {
-                ls_error_memo = "   " + seq + ".2 澶勭悊搴撳瓨妗d腑寮傚父搴撳瓨淇℃伅澶辫触! 寮傚父:" + t.Message;
-                DisplayInfo("", "E", ls_error_memo);
-            }
-        }
-        #endregion
-
-        /// <summary>
-        /// 鍥炴姤涓荤嚎绋�
-        /// </summary>
-        private void ThreadTask()
-        {
-            DisplayInfo("", "N", "---------------绯荤粺杩愯涓�-------------");
-            while (true)
-            {
-                try
-                {
-                    //鐢熸垚鍑哄簱宸ヤ綔妗�
-                    ProcOutToWorkData("1");
-                    ProcLocToWorkData("11");
-
-                    //澶勭悊宸ヤ綔妗g姸鎬�4銆�14銆�6鐨勮祫鏂�
-                    ProcWorkMast("2"); // done
-
-                    //宸ヤ綔妗h浆鍘嗗彶妗� // done
-                    ProcWorkToLog("3");
-
-                    //鍫嗗灈鏈�&PLC鍛戒护杞巻鍙叉。
-                    ProcDevCommandToLog("4"); // done
-
-                    //杞凡瀹屾垚鐗╂枡淇℃伅鍒板巻鍙叉。
-                    //ProcMatCodeToLog("5");
-                    //杞嚭搴撳畬鎴愬緟鍑哄簱妗f暟鎹埌鍘嗗彶妗�
-                    ProcCheckToWorkData("5");
-
-                    //杞嚭搴撳畬鎴愬緟鍑哄簱妗f暟鎹埌鍘嗗彶妗�
-                    ProcWaitOutToLog("6"); // done
-
-                    //鍒犻櫎瓒呰繃鍗婂勾鍘嗗彶妗�
-                    ProcOverYearLog("7"); // done
-
-                    ProcErrorStockData("8"); // done
-
-                    Thread.Sleep(3000);
-                }
-                catch (Exception em)
-                {
-                    Common.WriteLogFile("WcsError", "UpdateThread/ThreadTask--鍥炴姤涓荤嚎绋嬪惊鐜嚭閿�:" + em.Message);
-                }
-            }
-        }
-    }
-}
\ No newline at end of file
diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index b8e55d7..74ebaf0 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -143,7 +143,7 @@
 
     <update id="decrease">
         update man_order_detl
-        set qty = qty - #{qty}
+        set work_qty = work_qty - #{qty}
         where 1=1
         and order_no = #{orderNo}
         and matnr = #{matnr}
@@ -168,6 +168,22 @@
         INSERT INTO man_order_detl_log SELECT * FROM man_order_detl WHERE id = #{id}
     </insert>
 
+    <update id="increaseQtyByOrderNo">
+        update man_order_detl
+        set qty = qty + #{qty}
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+    </update>
+
     <update id="increaseWorkQty">
         update man_order_detl
         set work_qty = work_qty + #{workQty}
diff --git a/src/main/webapp/static/js/adjDetl/adjDetl.js b/src/main/webapp/static/js/adjDetl/adjDetl.js
index eea03f1..cf5c1f8 100644
--- a/src/main/webapp/static/js/adjDetl/adjDetl.js
+++ b/src/main/webapp/static/js/adjDetl/adjDetl.js
@@ -23,7 +23,7 @@
 //             {field: 'adjId', align: 'center',title: '搴忓彿'}
             {field: 'locNo', align: 'center',title: '搴撲綅鍙�'}
             ,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿'}
-            ,{field: 'batch', align: 'center',title: '搴忓垪鐮�'}
+            ,{field: 'batch', align: 'center',title: '鎵瑰彿'}
             // ,{field: 'oriCtns', align: 'center',title: '鍘熺鏁�'}
             ,{field: 'oriQty', align: 'center',title: '鍘熸暟閲�'}
             // ,{field: 'oriWt', align: 'center',title: '鍘熼噸閲�'}
diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js
index a4cc3fc..4645b46 100644
--- a/src/main/webapp/static/js/common.js
+++ b/src/main/webapp/static/js/common.js
@@ -225,7 +225,7 @@
     {field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿', sort:true}
     ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', sort:true}
     ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: false}
-    ,{field: 'batch', align: 'center',title: '鎵瑰彿', width: 300, sort:true}
+    ,{field: 'batch', align: 'center',title: '鎵瑰彿', sort:true}
     ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
     ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜'}
 
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index cde08e5..e277615 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -92,7 +92,7 @@
         } else if (layEvent === 'del') {
             doDel(data.id);
         } else if (layEvent === 'complete') {
-            doModify(data.id, 4);
+            doModify(data.id, data.orderNo, 4);
         } else if (layEvent === 'look') {
             var $a = $(obj.tr).find('a[lay-event="look"]');
             var offset = $a.offset();
@@ -121,7 +121,7 @@
                             {type: 'numbers'},
                             {field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160},
                             {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 160},
-                            {field: 'batch', title: '搴忓垪鐮�'},
+                            {field: 'batch', title: '鎵瑰彿'},
                             {field: 'anfme', title: '鏁伴噺'},
                             {field: 'workQty', title: '浣滀笟鏁伴噺'},
                             {field: 'qty', title: '瀹屾垚鏁伴噺', style: 'font-weight: bold'},
@@ -188,6 +188,10 @@
                             layer.msg('鏄庣粏淇敼鏁伴噺涓嶅悎娉�', {icon: 2});
                             return false;
                         }
+                        if (nList[xi].anfme < nList[xi].workQty){
+                            layer.msg('鏁伴噺涓嶈兘灏忎簬宸蹭綔涓氭暟閲�', {icon: 2});
+                            return false;
+                        }
                     }
                     layer.load(2);
                     $.ajax({
@@ -229,10 +233,10 @@
                         {type: 'numbers', title: '#'},
                         {field: 'matnr', title: '鍟嗗搧缂栫爜', width: 160},
                         {field: 'maktx', title: '鍟嗗搧鍚嶇О', width: 200},
-                        {field: 'batch', title: '搴忓垪鐮�', edit: true},
+                        {field: 'batch', title: '鎵瑰彿', edit: true},
                         {field: 'specs', title: '瑙勬牸'},
                         {field: 'anfme', title: '鏁伴噺(淇敼)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110},
-                        // {field: 'inQty', title: '宸插叆搴撻噺',  minWidth: 100, width: 100},
+                        {field: 'workQty', title: '浣滀笟鏁伴噺',  minWidth: 100, width: 100},
                         // {field: 'unit', title: '鍗曚綅', width: 80},
                         {field: 'memo', title: '澶囨敞' , edit: true},
                         {align: 'center', title: '鎿嶄綔', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right'}
@@ -268,6 +272,10 @@
                     if (layEvent === 'edit') {
                         showEditModel2(data);
                     } else if (layEvent === 'del') {
+                        if(data.workQty > 0){
+                            layer.msg("宸插瓨鍦ㄤ綔涓氭暟閲忥紝涓嶈兘鍒犻櫎", {icon: 2});
+                            return;
+                        }
                         layer.confirm('纭畾瑕佸垹闄ゅ悧锛�', {
                             shade: .1,
                             skin: 'layui-layer-admin'
@@ -295,6 +303,14 @@
                         } else {
                             if (vle <= 0) {
                                 layer.msg("鏁伴噺蹇呴』澶т簬闆�", {icon: 2});
+                                // data[obj.field] = 0;
+                                // insTbSSXM.reload({data: xxDataList});
+                                return false;
+                            }
+                            if(obj.value < data.workQty){
+                                layer.msg("杈撳叆鏁伴噺涓嶈兘灏忎簬浣滀笟涓暟閲�", {icon: 2});
+                                // data[obj.field] = 0;
+                                // insTbSSXM.reload({data: xxDataList});
                                 return false;
                             }
                         }
@@ -419,7 +435,7 @@
     }
 
     // 淇敼璁㈠崟鐘舵��
-    function doModify(orderId, settle) {
+    function doModify(orderId, orderNo, settle) {
         layer.confirm('纭畾瑕佹墜鍔ㄥ畬缁撳悧锛�', {
             shade: .1,
             skin: 'layui-layer-admin'
@@ -433,6 +449,7 @@
                 headers: {'token': localStorage.getItem('token')},
                 data: {
                     id: orderId,
+                    orderNo: orderNo,
                     settle: settle
                 },
                 method: 'POST',
diff --git a/src/main/webapp/static/js/order/out.js b/src/main/webapp/static/js/order/out.js
index 4fddc97..cc84ebe 100644
--- a/src/main/webapp/static/js/order/out.js
+++ b/src/main/webapp/static/js/order/out.js
@@ -32,7 +32,7 @@
             ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', templet: '#orderNoTpl', width: 160}
             ,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栫爜', width: 160}
             ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', width: 200}
-            ,{field: 'batch', align: 'center',title: '搴忓垪鐮�'}
+            ,{field: 'batch', align: 'center',title: '鎵瑰彿'}
             ,{field: 'specs', align: 'center',title: '瑙勬牸'}
             // ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
             // ,{field: 'qty', align: 'center',title: '浣滀笟鏁伴噺', style: 'font-weight: bold'}
@@ -154,7 +154,7 @@
                                     // {type: 'checkbox', merge: ['orderNo']},
                                     {field: 'orderNo', title: '鍗曟嵁缂栧彿', merge: true, align: 'center'},
                                     {field: 'title', title: '鍟嗗搧', merge: true, align: 'center', width: 350},
-                                    {field: 'batch', title: '搴忓垪鐮�', align: 'center'},
+                                    {field: 'batch', title: '鎵瑰彿', align: 'center'},
                                     {field: 'anfme', title: '鏁伴噺', align: 'center', width: 90, style: 'font-weight: bold'},
                                     {field: 'locNo', title: '璐т綅', align: 'center', width: 100, templet: '#locNoTpl'},
                                     {field: 'staNos', align: 'center', title: '鍑哄簱绔�', merge: ['locNo'], templet: '#tbBasicTbStaNos'},
diff --git a/src/main/webapp/static/js/orderDetl/orderDetl.js b/src/main/webapp/static/js/orderDetl/orderDetl.js
index c86b5e2..caef270 100644
--- a/src/main/webapp/static/js/orderDetl/orderDetl.js
+++ b/src/main/webapp/static/js/orderDetl/orderDetl.js
@@ -30,7 +30,7 @@
             ,{field: 'name', align: 'center',title: '鍚嶇О'}
             ,{field: 'specs', align: 'center',title: '瑙勬牸'}
             ,{field: 'model', align: 'center',title: '鍨嬪彿'}
-            ,{field: 'batch', align: 'center',title: '搴忓垪鐮�'}
+            ,{field: 'batch', align: 'center',title: '鎵瑰彿'}
             ,{field: 'unit', align: 'center',title: '鍗曚綅'}
             ,{field: 'barcode', align: 'center',title: '鍟嗗搧鏉$爜'}
             ,{field: 'supplier', align: 'center',title: '渚涘簲鍟�'}
diff --git a/src/main/webapp/static/js/pack/pack.js b/src/main/webapp/static/js/pack/pack.js
index 4780364..7236aae 100644
--- a/src/main/webapp/static/js/pack/pack.js
+++ b/src/main/webapp/static/js/pack/pack.js
@@ -25,7 +25,7 @@
             // ,{field: 'id', align: 'center',title: 'ID'}
             ,{field: 'barcode',title: '鏉$爜'}
             ,{field: 'matnr', align: 'center',title: '鍟嗗搧缂栧彿', minWidth: 250, width: 250}
-            ,{field: 'batch', align: 'center',title: '搴忓垪鐮�', hide: true}
+            ,{field: 'batch', align: 'center',title: '鎵瑰彿', hide: true}
             ,{field: 'settle$', align: 'center',title: '鐘舵��', templet: '#settleTpl',  minWidth: 160, width: 160}
             // ,{field: 'status$', align: 'center',title: '鐘舵��'}
             // ,{field: 'createTime$', align: 'center',title: '娣诲姞鏃堕棿'}
diff --git a/src/main/webapp/static/js/pakStore/pakStore.js b/src/main/webapp/static/js/pakStore/pakStore.js
index dd0f6cb..e782a84 100644
--- a/src/main/webapp/static/js/pakStore/pakStore.js
+++ b/src/main/webapp/static/js/pakStore/pakStore.js
@@ -4,7 +4,7 @@
 function getCol() {
     var cols = [
         {fixed: 'left', field: 'anfme', title: '鏁伴噺锛堝繀濉級', align: 'center', edit:'text', width: 120,  style:'color: blue;font-weight: bold'},
-        {field: 'batch', title: '搴忓垪鐮侊紙閫夊~锛�', align: 'center', edit:'text', width: 200,  style:'color: block;font-weight: bold'}
+        {field: 'batch', title: '鎵瑰彿锛堥�夊~锛�', align: 'center', edit:'text', width: 200,  style:'color: block;font-weight: bold'}
     ];
     cols.push.apply(cols, matCols);
     cols.push({fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width: 80})
diff --git a/src/main/webapp/static/js/pakStore/stockAdjust.js b/src/main/webapp/static/js/pakStore/stockAdjust.js
index 52d8db1..042a8b5 100644
--- a/src/main/webapp/static/js/pakStore/stockAdjust.js
+++ b/src/main/webapp/static/js/pakStore/stockAdjust.js
@@ -7,7 +7,7 @@
     var cols = [
         {fixed: 'left', field: 'count', title: '瀹為檯鏁伴噺', align: 'center', edit:'text', width: 120,  style:'color: blue;font-weight: bold'}
         ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
-        ,{field: 'batch', align: 'center',title: '搴忓垪鐮侊紙缂栬緫锛�', edit: true, style: 'font-weight:bold'}
+        ,{field: 'batch', align: 'center',title: '鎵瑰彿锛堢紪杈戯級', edit: true, style: 'font-weight:bold'}
     ];
     arrRemove(detlCols, "field", "anfme");
     arrRemove(detlCols, "field", "batch");
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index 938579a..f5997c4 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -86,13 +86,13 @@
 </div>
 <!-- 琛ㄦ牸鎿嶄綔鍒� -->
 <script type="text/html" id="operate">
-    {{# if (d.settle == 1 || d.settle == 2) { }}
+    {{# if (d.settle == 0 || d.settle == 1) { }}
         <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
-        {{# if (d.settle == 2) { }}
-            <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">瀹岀粨</a>
-        {{# } }}
+        <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a>
     {{# } }}
-    <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a>
+    {{# if (d.settle == 2) { }}
+    <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">瀹岀粨</a>
+    {{# } }}
 </script>
 <!-- 琛ㄦ牸鎿嶄綔鍒� -->
 <script type="text/html" id="tbLook">
diff --git a/src/main/webapp/views/order/out.html b/src/main/webapp/views/order/out.html
index b3c84f0..7a68bac 100644
--- a/src/main/webapp/views/order/out.html
+++ b/src/main/webapp/views/order/out.html
@@ -107,9 +107,9 @@
                                 </div>
                             </div>
                             <div class="layui-inline">
-                                <label class="layui-form-label">搴忓垪鐮�:</label>
+                                <label class="layui-form-label">鎵瑰彿:</label>
                                 <div class="layui-input-inline">
-                                    <input name="batch" class="layui-input" placeholder="搴忓垪鐮�"/>
+                                    <input name="batch" class="layui-input" placeholder="鎵瑰彿"/>
                                 </div>
                             </div>
 <!--                            <div class="layui-inline">-->
diff --git a/src/main/webapp/views/orderDetl/orderDetl.html b/src/main/webapp/views/orderDetl/orderDetl.html
index 0bed06f..2f890dd 100644
--- a/src/main/webapp/views/orderDetl/orderDetl.html
+++ b/src/main/webapp/views/orderDetl/orderDetl.html
@@ -112,9 +112,9 @@
                     </div>
                 </div>
                 <div class="layui-form-item">
-                    <label class="layui-form-label">搴忓垪鐮�: </label>
+                    <label class="layui-form-label">鎵瑰彿: </label>
                     <div class="layui-input-block">
-                        <input class="layui-input" name="batch" placeholder="璇疯緭鍏ュ簭鍒楃爜">
+                        <input class="layui-input" name="batch" placeholder="璇疯緭鍏ユ壒鍙�">
                     </div>
                 </div>
                 <div class="layui-form-item">
diff --git a/src/main/webapp/views/pack/pack.html b/src/main/webapp/views/pack/pack.html
index d6d5aac..a0acf45 100644
--- a/src/main/webapp/views/pack/pack.html
+++ b/src/main/webapp/views/pack/pack.html
@@ -103,9 +103,9 @@
                     </div>
                 </div>
                 <div class="layui-form-item">
-                    <label class="layui-form-label">搴忓垪鐮�: </label>
+                    <label class="layui-form-label">鎵瑰彿: </label>
                     <div class="layui-input-block">
-                        <input class="layui-input" name="batch" placeholder="璇疯緭鍏ュ簭鍒楃爜">
+                        <input class="layui-input" name="batch" placeholder="璇疯緭鍏ユ壒鍙�">
                     </div>
                 </div>
                 <div class="layui-form-item">

--
Gitblit v1.9.1