From f934f933155b4c65a17d18176f4a2fbf95e68535 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 28 五月 2025 08:33:01 +0800
Subject: [PATCH] 13

---
 src/main/java/com/zy/asrs/service/OrderService.java                  |    8 
 src/main/java/com/zy/nc/vo/ic_generalout_b.java                      |    9 
 src/main/java/com/zy/common/model/enumUtils/OrderInAndOutType.java   |  162 ++++-
 src/main/resources/mapper/asrs/OrderDetlMapper.xml                   |   73 ++
 src/main/webapp/views/order/order.html                               |   14 
 src/main/webapp/views/store/store.html                               |   65 ++
 src/main/java/com/zy/nc/task/PlanOrderTask.java                      |   11 
 src/main/java/com/zy/asrs/entity/StoreType.java                      |   14 
 src/main/java/com/zy/asrs/entity/param/OrderDomainParam.java         |    7 
 src/main/java/com/zy/common/model/DetlDto.java                       |    1 
 src/main/java/com/zy/nc/entity/NccSaleXsfhmxWms.java                 |   29 +
 src/main/java/com/zy/nc/util/OutUtil.java                            |   12 
 src/main/java/com/zy/asrs/controller/OrderController.java            |   18 
 src/main/java/com/zy/asrs/entity/OrderDetl.java                      |    2 
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java          |   50 +
 src/main/webapp/static/js/store/store.js                             |  460 +++++++++++++++++++
 src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java           |   42 +
 src/main/java/com/zy/asrs/controller/MobileController.java           |    2 
 src/main/webapp/static/js/staDesc/staDesc.js                         |    2 
 src/main/java/com/zy/asrs/entity/Order.java                          |    3 
 src/main/webapp/static/js/basWrkIotype/basWrkIotype.js               |    6 
 src/main/resources/mapper/asrs/LocDetlMapper.xml                     |   50 +-
 src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java |   78 ++
 src/main/java/com/zy/asrs/controller/StoreTypeController.java        |   19 
 src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java         |   15 
 src/main/java/com/zy/nc/util/NcResultMessage.java                    |    7 
 src/main/java/com/zy/asrs/mapper/OrderMapper.java                    |   10 
 src/main/webapp/static/js/order/order.js                             |    4 
 src/main/resources/mapper/asrs/OrderMapper.xml                       |    2 
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java          |    4 
 src/main/java/com/zy/asrs/controller/StoreController.java            |  160 ++++++
 src/main/resources/mapper/asrs/OrderDetlPakoutMapper.xml             |   73 ++
 32 files changed, 1,243 insertions(+), 169 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index fd3c763..b77a512 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -241,7 +241,7 @@
         MatParam matParam = new MatParam();
         Synchro.Copy(mat, matParam);
         matParam.setBatch(nccJcQilibcBarcodeflowWms.getVbatchcode());
-        matParam.setAnfme(nccJcQilibcBarcodeflowWms.getNastnum() == null ? 0.0D : nccJcQilibcBarcodeflowWms.getNastnum().doubleValue());
+        matParam.setAnfme(nccJcQilibcBarcodeflowWms.getAsnnum() == null ? 0.0D : nccJcQilibcBarcodeflowWms.getAsnnum().doubleValue());
         return R.ok().add(matParam);
     }
 
diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 90ba253..2404729 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -125,11 +125,11 @@
                 param.getOrderNo(),    // 璁㈠崟缂栧彿
                 DateUtils.convert(now),    // 鍗曟嵁鏃ユ湡
                 param.getDocType(),    // 鍗曟嵁绫诲瀷
-                null,    // 椤圭洰缂栧彿
-                null,    //
+                param.getItemId(),    // 椤圭洰缂栧彿
+                param.getItemName(),    //
                 null,    // 璋冩嫧椤圭洰缂栧彿
-                null,    // 鍒濆绁ㄦ嵁鍙�
-                null,    // 绁ㄦ嵁鍙�
+                param.getDefNumber(),    // 鍒濆绁ㄦ嵁鍙�
+                param.getCstmr(),    // 绁ㄦ嵁鍙�
                 null,    // 瀹㈡埛缂栧彿
                 null,    // 瀹㈡埛
                 null,    // 鑱旂郴鏂瑰紡
@@ -169,6 +169,7 @@
                 OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(), orderDetl.getBrand(), orderDetl.getStandby1(), orderDetl.getStandby2(), orderDetl.getStandby3(),
                         orderDetl.getBoxType1(), orderDetl.getBoxType2(), orderDetl.getBoxType3());
                 item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
+                item.setStandby1(param.getDefNumber());
                 if (!orderDetlService.updateById(item)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
                 }
@@ -182,6 +183,7 @@
                 orderDetl.setUpdateTime(now);
                 orderDetl.setStatus(1);
                 orderDetl.setQty(0.0D);
+                orderDetl.setStandby1(param.getDefNumber());
                 orderDetl.setPakinPakoutStatus(status);
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
@@ -202,10 +204,14 @@
         Date now = new Date();
         Long userId = getUserId();
         // 淇敼涓绘。
-        if (!param.getDocType().equals(order.getDocType()) || param.getItemId() != order.getItemId()) {
+        if (!param.getDocType().equals(order.getDocType()) || param.getItemId() != order.getItemId() || param.getDefNumber() != order.getDefNumber()) {
             order.setDocType(param.getDocType());
             order.setUpdateBy(userId);
             order.setUpdateTime(now);
+            order.setItemId(param.getItemId());
+            order.setItemName(param.getItemName());
+            order.setDefNumber(param.getDefNumber());
+            order.setNumber(param.getCstmr());
             if (!orderService.updateById(order)) {
                 throw new CoolException("淇敼璁㈠崟绫诲瀷澶辫触");
             }
@@ -240,7 +246,7 @@
                 orderDetl.setUpdateTime(now);
                 orderDetl.setStatus(1);
                 orderDetl.setQty(0.0D);
-                orderDetl.setStandby1(param.getItemId());
+                orderDetl.setStandby1(param.getDefNumber());
                 if (!orderDetlService.insert(orderDetl)) {
                     throw new CoolException("淇濆瓨璁㈠崟鏄庣粏妗eけ璐�");
                 }
diff --git a/src/main/java/com/zy/asrs/controller/StoreController.java b/src/main/java/com/zy/asrs/controller/StoreController.java
new file mode 100644
index 0000000..6355af4
--- /dev/null
+++ b/src/main/java/com/zy/asrs/controller/StoreController.java
@@ -0,0 +1,160 @@
+package com.zy.asrs.controller;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.annotations.ManagerAuth;
+import com.core.common.BaseRes;
+import com.core.common.Cools;
+import com.core.common.DateUtils;
+import com.core.common.R;
+import com.zy.asrs.entity.BasWrkIotype;
+import com.zy.asrs.entity.StoreType;
+import com.zy.asrs.service.StoreTypeService;
+import com.zy.common.web.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+@RestController
+public class StoreController extends BaseController {
+
+    @Autowired
+    private StoreTypeService storeTypeService;
+
+    @RequestMapping(value = "/store/{id}/auth")
+    @ManagerAuth
+    public R get(@PathVariable("id") Long id) {
+        return R.ok(storeTypeService.selectById(String.valueOf(id)));
+    }
+
+    @RequestMapping(value = "/store/list/auth")
+    @ManagerAuth
+    public R list(@RequestParam(defaultValue = "1") Integer curr,
+                  @RequestParam(defaultValue = "10") Integer limit,
+                  @RequestParam(required = false) String orderByField,
+                  @RequestParam(required = false) String orderByType,
+                  @RequestParam Map<String, Object> param) {
+        excludeTrash(param);
+        EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+        convert(param, wrapper);
+        if (!Cools.isEmpty(orderByField)) {
+            wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+        }
+        return R.ok(storeTypeService.selectPage(new Page<>(curr, limit), wrapper));
+    }
+
+    private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) {
+        for (Map.Entry<String, Object> entry : map.entrySet()) {
+            String val = String.valueOf(entry.getValue());
+            if (val.contains(RANGE_TIME_LINK)) {
+                String[] dates = val.split(RANGE_TIME_LINK);
+                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
+            } else {
+                wrapper.like(entry.getKey(), val);
+            }
+        }
+    }
+
+    @RequestMapping(value = "/store/edit/auth")
+    @ManagerAuth
+    public R edit(@RequestParam(required = false) String param) {
+        if (Cools.isEmpty(param)) {
+            return R.error();
+        }
+        StoreType storeType = storeTypeService.selectById(param);
+        storeType.setOwn(1);
+        storeTypeService.updateById(storeType);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/store/edit2/auth")
+    @ManagerAuth
+    public R edit2(@RequestParam(required = false) String param) {
+        if (Cools.isEmpty(param)) {
+            return R.error();
+        }
+        StoreType storeType = storeTypeService.selectById(param);
+        storeType.setOwn(0);
+        storeTypeService.updateById(storeType);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/store/add/auth")
+    @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬫坊鍔�")
+    public R add(StoreType basWrkIotype) {
+        basWrkIotype.setUpdateBy(getUserId());
+        basWrkIotype.setUpdateTime(new Date());
+        basWrkIotype.setCreateBy(getUserId());
+        basWrkIotype.setCreateTime(new Date());
+        storeTypeService.insert(basWrkIotype);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/store/update/auth")
+    @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬩慨鏀�")
+    public R update(StoreType basWrkIotype) {
+        if (Cools.isEmpty(basWrkIotype) || null == basWrkIotype.getStoreId()) {
+            return R.error();
+        }
+        basWrkIotype.setUpdateBy(getUserId());
+        basWrkIotype.setUpdateTime(new Date());
+        storeTypeService.updateById(basWrkIotype);
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/store/delete/auth")
+    @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪垹闄�")
+    public R delete(@RequestParam String param) {
+        List<StoreType> list = JSONArray.parseArray(param, StoreType.class);
+        if (Cools.isEmpty(list)) {
+            return R.error();
+        }
+        for (StoreType entity : list) {
+            storeTypeService.delete(new EntityWrapper<>(entity));
+        }
+        return R.ok();
+    }
+
+    @RequestMapping(value = "/store/export/auth")
+    @ManagerAuth(memo = "鍏ュ嚭搴撶被鍨嬪鍑�")
+    public R export(@RequestBody JSONObject param) {
+        List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class);
+        EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+        Map<String, Object> map = excludeTrash(param.getJSONObject("basWrkIotype"));
+        convert(map, wrapper);
+        List<StoreType> list = storeTypeService.selectList(wrapper);
+        return R.ok(exportSupport(list, fields));
+    }
+
+    @RequestMapping(value = "/store/auth")
+    @ManagerAuth
+    public R query(String condition) {
+        EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+        wrapper.like("io_desc", condition);
+        Page<StoreType> page = storeTypeService.selectPage(new Page<>(0, 20), wrapper);
+        List<Map<String, Object>> result = new ArrayList<>();
+        for (StoreType basWrkIotype : page.getRecords()) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("id", basWrkIotype.getStoreId());
+            map.put("value", basWrkIotype.getStoreName());
+            result.add(map);
+        }
+        return R.ok(result);
+    }
+
+    @RequestMapping(value = "/store/check/column/auth")
+    @ManagerAuth
+    public R query(@RequestBody JSONObject param) {
+        Wrapper<StoreType> wrapper = new EntityWrapper<StoreType>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val"));
+        if (null != storeTypeService.selectOne(wrapper)) {
+            return R.parse(BaseRes.REPEAT).add(getComment(BasWrkIotype.class, String.valueOf(param.get("key"))));
+        }
+        return R.ok();
+    }
+
+}
diff --git a/src/main/java/com/zy/asrs/controller/StoreTypeController.java b/src/main/java/com/zy/asrs/controller/StoreTypeController.java
index 2df1ce6..ab36b61 100644
--- a/src/main/java/com/zy/asrs/controller/StoreTypeController.java
+++ b/src/main/java/com/zy/asrs/controller/StoreTypeController.java
@@ -114,7 +114,24 @@
         for (StoreType docType : page.getRecords()) {
             Map<String, Object> map = new HashMap<>();
             map.put("id", docType.getStoreId());
-            map.put("value",  docType.getStoreName());
+            map.put("value", docType.getStoreName());
+            result.add(map);
+        }
+        return R.ok(result);
+    }
+
+    @RequestMapping(value = "/storeTypeQuery2/auth")
+    @ManagerAuth
+    public R query2(String condition) {
+        EntityWrapper<StoreType> wrapper = new EntityWrapper<>();
+        wrapper.like("store_name", condition).eq("own", 1);
+        wrapper.eq("status", 1);
+        Page<StoreType> page = storeTypeService.selectPage(new Page<>(0, 10000), wrapper);
+        List<Map<String, Object>> result = new ArrayList<>();
+        for (StoreType docType : page.getRecords()) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("id", docType.getStoreId());
+            map.put("value", docType.getStoreName());
             result.add(map);
         }
         return R.ok(result);
diff --git a/src/main/java/com/zy/asrs/entity/Order.java b/src/main/java/com/zy/asrs/entity/Order.java
index a195612..3c52da2 100644
--- a/src/main/java/com/zy/asrs/entity/Order.java
+++ b/src/main/java/com/zy/asrs/entity/Order.java
@@ -78,7 +78,6 @@
     private String allotItemId;
 
 
-
     /**
      * 鍒濆绁ㄦ嵁鍙凤紝鍏ュ簱浠撳簱id
      */
@@ -270,6 +269,8 @@
     @ApiModelProperty(value = "澶囨敞")
     private String memo;
 
+    private String remark;
+
     /**
      * 鐘舵�� 1: 杩涜涓�  0: 鍒濆  2:宸插畬鎴�
      */
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index 336d879..b5b028e 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -156,7 +156,7 @@
     /**
      * 鍘傚
      */
-    @ApiModelProperty(value= "鍘傚")
+    @ApiModelProperty(value= "浠撳簱缂栫爜")
     private String manu;
 
     /**
diff --git a/src/main/java/com/zy/asrs/entity/StoreType.java b/src/main/java/com/zy/asrs/entity/StoreType.java
index 09446d8..99578f1 100644
--- a/src/main/java/com/zy/asrs/entity/StoreType.java
+++ b/src/main/java/com/zy/asrs/entity/StoreType.java
@@ -81,4 +81,18 @@
     private String memo;
 
 
+    public String getOwn$() {
+        if (null == this.own) {
+            return "鍚�";
+        }
+        switch (this.own) {
+            case 0:
+                return "鍚�";
+            case 1:
+                return "鏄�";
+            default:
+                return "鍚�";
+        }
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/entity/param/OrderDomainParam.java b/src/main/java/com/zy/asrs/entity/param/OrderDomainParam.java
index 49aebbc..28ba34b 100644
--- a/src/main/java/com/zy/asrs/entity/param/OrderDomainParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/OrderDomainParam.java
@@ -3,6 +3,7 @@
 import com.zy.asrs.entity.OrderDetl;
 import com.zy.asrs.entity.OrderDetlPakin;
 import com.zy.asrs.entity.OrderDetlPakout;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
@@ -23,6 +24,12 @@
 
     private String itemName;
 
+    private String defNumber;
+
+
+    private String cstmr;
+
+
     private List<OrderDetl> orderDetlList;
     private List<OrderDetlPakin> orderDetlPakinList;
     private List<OrderDetlPakout> orderDetlPakoutList;
diff --git a/src/main/java/com/zy/asrs/mapper/OrderMapper.java b/src/main/java/com/zy/asrs/mapper/OrderMapper.java
index aa54685..4d8cab7 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderMapper.java
@@ -12,20 +12,24 @@
 @Repository
 public interface OrderMapper extends BaseMapper<Order> {
 
-    int updateSettle(@Param("orderId")Long orderId, @Param("settle")Long settle, @Param("userId")Long userId);
+    int updateSettle(@Param("orderId") Long orderId, @Param("settle") Long settle, @Param("userId") Long userId);
 
-    int updateSettleStep(@Param("orderId")Long orderId, @Param("settle")Long settle, @Param("userId")Long userId, @Param("step")Integer step);
+    int updateSettleStep(@Param("orderId") Long orderId, @Param("settle") Long settle, @Param("userId") Long userId, @Param("step") Integer step, @Param("memo") String memo, @Param("remark") String remark);
 
 
     List<Order> selectComplete();
+
     List<Order> selectComplete1();
+
     List<Order> selectComplete99();
+
     List<Order> selectComplete8();
 
     int addToLogTable(Order order);
 
-    List<Order> selectorderNoL(@Param("orderNo")String orderNo);
+    List<Order> selectorderNoL(@Param("orderNo") String orderNo);
 
     Order selectOrderMoveStatus();
+
     Order selectOrderMoveStatusInitial();
 }
diff --git a/src/main/java/com/zy/asrs/service/OrderService.java b/src/main/java/com/zy/asrs/service/OrderService.java
index 632ea83..0591117 100644
--- a/src/main/java/com/zy/asrs/service/OrderService.java
+++ b/src/main/java/com/zy/asrs/service/OrderService.java
@@ -1,7 +1,7 @@
 package com.zy.asrs.service;
 
-import com.zy.asrs.entity.Order;
 import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.Order;
 import com.zy.asrs.entity.OrderDetl;
 import com.zy.asrs.entity.WrkDetl;
 import com.zy.asrs.entity.WrkMast;
@@ -18,7 +18,7 @@
 
     boolean updateSettle(Long orderId, Long settle, Long userId);
 
-    boolean updateSettleStep(Long orderId, Long settle, Long userId, Integer step);
+    boolean updateSettleStep(Long orderId, Long settle, Long userId, Integer step, String memo, String remark);
 
     void checkComplete(String orderNo);
 
@@ -27,8 +27,11 @@
     void remove(Long orderId);
 
     List<Order> selectComplete();
+
     List<Order> selectComplete1();
+
     List<Order> selectComplete99();
+
     List<Order> selectComplete8();
 
     boolean addToLogTable(Order order);
@@ -36,6 +39,7 @@
     List<Order> selectorderNoL(String orderNo);
 
     Order selectOrderMoveStatus();
+
     Order selectOrderMoveStatusInitial();
 
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 7976cd9..6438fa8 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -232,9 +232,9 @@
             if (orderPakout.getSettle() > 1L) {
                 throw new CoolException(param.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
             }
-            orderService.remove(orderPakout.getId());
             Order order = orderService.selectByNo(param.getOrderNo());
-            orderPakoutService.remove(order.getId());
+            orderService.remove(order.getId());
+            orderPakoutService.remove(orderPakout.getId());
         }
         DocType docType = docTypeService.selectOrAdd(param.getOrderType(), Boolean.FALSE);
         Date now = new Date();
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
index 7a688cd..e8693dc 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.service.impl;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.common.SnowflakeIdWorker;
@@ -11,7 +12,6 @@
 import com.zy.asrs.mapper.OrderDetlMapper;
 import com.zy.asrs.mapper.OrderMapper;
 import com.zy.asrs.service.*;
-import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.zy.common.model.DetlDto;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -66,8 +66,8 @@
     }
 
     @Override
-    public boolean updateSettleStep(Long orderId, Long settle, Long userId, Integer step) {
-        return this.baseMapper.updateSettleStep(orderId, settle, userId,step) > 0;
+    public boolean updateSettleStep(Long orderId, Long settle, Long userId, Integer step, String memo, String remark) {
+        return this.baseMapper.updateSettleStep(orderId, settle, userId, step, memo, remark) > 0;
     }
 
     @Override
@@ -121,8 +121,8 @@
         try {
             List<DetlDto> detlDtos = new ArrayList<>();
             wrkDetls.forEach(wrkDetl -> {
-                detlDtos.add(new DetlDto(wrkDetl.getMatnr(), wrkDetl.getBatch(),wrkDetl.getBrand(),wrkDetl.getStandby1(),wrkDetl.getStandby2(),wrkDetl.getStandby3(),
-                        wrkDetl.getBoxType1(),wrkDetl.getBoxType2(),wrkDetl.getBoxType3(), wrkDetl.getAnfme()));
+                detlDtos.add(new DetlDto(wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme()));
             });
             String orderNo = "HAND" + snowflakeIdWorker.nextId();
             if (pakin) {
@@ -152,11 +152,11 @@
             }
             for (DetlDto detlDto : detlDtos) {
                 // 淇敼璁㈠崟鏄庣粏鏁伴噺
-                if (!orderDetlService.increase(order.getId(), detlDto.getMatnr(), detlDto.getBatch(),detlDto.getBrand(),detlDto.getStandby1(),detlDto.getStandby2(),detlDto.getStandby3(),detlDto.getBoxType1(),detlDto.getBoxType2(),detlDto.getBoxType3(), detlDto.getAnfme())) {
+                if (!orderDetlService.increase(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getBrand(), detlDto.getStandby1(), detlDto.getStandby2(), detlDto.getStandby3(), detlDto.getBoxType1(), detlDto.getBoxType2(), detlDto.getBoxType3(), detlDto.getAnfme())) {
                     throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
                 }
                 // 淇敼璁㈠崟浣滀笟鏁伴噺
-                if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(),detlDto.getBrand(),detlDto.getStandby1(),detlDto.getStandby2(),detlDto.getStandby3(),detlDto.getBoxType1(),detlDto.getBoxType2(),detlDto.getBoxType3(), detlDto.getAnfme())) {
+                if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getBrand(), detlDto.getStandby1(), detlDto.getStandby2(), detlDto.getStandby3(), detlDto.getBoxType1(), detlDto.getBoxType2(), detlDto.getBoxType3(), detlDto.getAnfme())) {
                     throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触");
                 }
             }
@@ -209,6 +209,7 @@
     public Order selectOrderMoveStatus() {
         return this.baseMapper.selectOrderMoveStatus();
     }
+
     @Override
     public Order selectOrderMoveStatusInitial() {
         return this.baseMapper.selectOrderMoveStatusInitial();
diff --git a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
index e668565..5115f87 100644
--- a/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ReportToThirdServiceImpl.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.service.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
@@ -68,15 +69,30 @@
         NcResultMessage response = null;
         Object process1 = null;
         Object process2 = null;
+        String memo = order.getMemo();
+        String remark = "";
         try {
             switch (order.getDocType$().toString()) {
-                case "閿�鍞彂璐�":
-                    process1 = processXSFH(orderDetls);
+                case "閿�鍞��璐�":
+                    process1 = processXSFH(orderDetls, true);
                     //鍙戦�佽姹�
                     response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
                         log.info("閿�鍞彂璐esponse:{}", response);
                         step = 10;
+                    } else {
+                        remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
+                    }
+                    break;
+                case "閿�鍞彂璐�":
+                    process1 = processXSFH(orderDetls, false);
+                    //鍙戦�佽姹�
+                    response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, saveRefDelivery, JSONObject.toJSONString(process1));
+                    if (!Cools.isEmpty(response) && response.isSuccess()) {
+                        log.info("閿�鍞彂璐esponse:{}", response);
+                        step = 10;
+                    } else {
+                        remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                     }
                     break;
                 case "杞簱-鍏ュ簱":
@@ -86,6 +102,8 @@
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
                         log.info("杞簱-鍏ュ簱response:{}", response);
                         step = 10;
+                    } else {
+                        remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                     }
                     break;
                 case "閲囪喘鍒拌揣":
@@ -97,11 +115,13 @@
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
                         log.info("閲囪喘鍒拌揣response:{}", response);
                         step = 10;
+                    } else {
+                        remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                     }
                     break;
                 case "杞簱-鍑哄簱":
                     if (step == 1) {
-                        process2 = processGENERALOUT2(orderDetls);
+                        process2 = processGENERALOUT2(orderDetls, memo);
                         List<Object> zkck2 = new ArrayList<>();
                         zkck2.add(process2);
                         //鍙戦�佽姹�
@@ -109,6 +129,8 @@
                         if (!Cools.isEmpty(response) && response.isSuccess()) {
                             log.info("杞簱-鍑哄簱2response:{}", response);
                             step = 10;
+                        } else {
+                            remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                         }
                     } else {
                         process1 = processZKCK(order, orderDetls);
@@ -117,9 +139,11 @@
                         //鍙戦�佽姹�
                         response = SendUtil.sendDataToNc(SendUtil.token, nyncIp + ":" + port, whstrans, JSONObject.toJSONString(zkck1));
                         if (!Cools.isEmpty(response) && response.isSuccess()) {
+                            step = 1;
                             log.info("杞簱-鍑哄簱1response:{}", response);
+                            memo = response.getData().toString();
 
-                            process2 = processGENERALOUT2(orderDetls);
+                            process2 = processGENERALOUT2(orderDetls, memo);
                             List<Object> zkck2 = new ArrayList<>();
                             zkck2.add(process2);
                             //鍙戦�佽姹�
@@ -127,9 +151,9 @@
                             if (!Cools.isEmpty(response) && response.isSuccess()) {
                                 log.info("杞簱-鍑哄簱2response:{}", response);
                                 step = 10;
+                            } else {
+                                remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                             }
-                        } else {
-                            step = 1;
                         }
                     }
                     break;
@@ -140,6 +164,8 @@
                     if (!Cools.isEmpty(response) && response.isSuccess()) {
                         log.info("闆嗗洟鍐呴儴璋冩嫧response:{}", response);
                         step = 10;
+                    } else {
+                        remark = response.getMessage() + "--" + response.getErrorStack().substring(0, 100);
                     }
                     break;
                 default:
@@ -152,7 +178,7 @@
                 }
             } else if (step != 0) {
                 // 淇敼璁㈠崟鐘舵�� 鍋氭爣璁�
-                if (!orderService.updateSettleStep(order.getId(), 4L, null, step)) {
+                if (!orderService.updateSettleStep(order.getId(), 4L, null, step, memo, remark)) {
                     throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
                 }
             }
@@ -166,7 +192,7 @@
     }
 
 
-    private Object processXSFH(List<OrderDetl> orderDetls) {
+    private Object processXSFH(List<OrderDetl> orderDetls, Boolean flag) {
         //缁勮瀵硅薄鏁版嵁
         Map<String, Object> data = new HashMap<String, Object>();
         SaleOutHeadVO saleOutHeadVO = new SaleOutHeadVO();
@@ -192,7 +218,7 @@
                 saleOutHeadVO.setVdef14(nccSaleXsfhmxWms.getVdef14());
             }
             saleOutBodyVO.setVbatchcode(orderDetl.getBatch());
-            saleOutBodyVO.setNshouldnum(orderDetl.getAnfme());
+            saleOutBodyVO.setNshouldnum(flag ? -orderDetl.getAnfme() : orderDetl.getAnfme());
             saleOutBodyVO.setNnum(orderDetl.getQty());
             saleOutBodyVOList.add(saleOutBodyVO);
         }
@@ -260,7 +286,7 @@
         Map<String, Object> data = new HashMap<String, Object>();
         WhsTransBillHeaderVO whsTransBillHeaderVO = new WhsTransBillHeaderVO();
         whsTransBillHeaderVO.setPk_org("FYT");
-        whsTransBillHeaderVO.setCwarehouseid(order.getItemId());
+        whsTransBillHeaderVO.setCotherwhid(order.getItemId());
         whsTransBillHeaderVO.setCtrantypeid("4K-01");
         WhsTransBillBodyVO whsTransBillBodyVO = null;
         List<WhsTransBillBodyVO> whsTransBillBodyVOS = new ArrayList<>();
@@ -273,7 +299,7 @@
             whsTransBillBodyVO.setCmaterialoid(orderDetl.getMatnr());
             whsTransBillBodyVO.setVbatchcode(orderDetl.getBatch());
             //}
-            whsTransBillHeaderVO.setCotherbizid(orderDetl.getStandby1());
+            whsTransBillHeaderVO.setCwarehouseid(orderDetl.getStandby1());
             whsTransBillBodyVOS.add(whsTransBillBodyVO);
         }
         data.put("WhsTransBillHeaderVO", whsTransBillHeaderVO);
@@ -298,7 +324,6 @@
                 NccCgCgdhdWms nccCgCgdhdWms = JSONObject.parseObject(remark, NccCgCgdhdWms.class);
                 ic_purchasein_h.setCvendorid(nccCgCgdhdWms.getGysbm());
                 ic_purchasein_h.setCtrantypeid(nccCgCgdhdWms.getDhlxbm());
-
 
                 ic_purchasein_b.setCsourcebillbid(nccCgCgdhdWms.getPkArriveorderB());
                 ic_purchasein_b.setCsourcebillhid(nccCgCgdhdWms.getPkArriveorder());
@@ -331,7 +356,7 @@
             String remark = orderDetl.getRemark();
             if (!Cools.isEmpty(remark)) {
                 NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class);
-                generalout_b.setMaterialvid(orderDetl.getMatnr());
+                generalout_b.setCmaterialvid(orderDetl.getMatnr());
                 generalout_b.setNshouldassistnum(orderDetl.getQty());
                 generalout_b.setVbatchcode(orderDetl.getBatch());
             }
@@ -347,7 +372,16 @@
      * @param orderDetls
      * @return
      */
-    private Object processGENERALOUT2(List<OrderDetl> orderDetls) {
+    private Object processGENERALOUT2(List<OrderDetl> orderDetls, String memo) {
+        Object o = JSONObject.parseArray(memo).get(0);
+        JSONObject jsonObject = JSONObject.parseObject(o.toString());
+        String cspecialhid = JSONObject.parseObject(jsonObject.getString("ic.WhsTransBillHeaderVO")).getString("cspecialhid");
+        List<String> s = new ArrayList<>();
+        JSONArray objects = JSONObject.parseArray(jsonObject.getString("ic.WhsTransBillBodyVO"));
+        for (int i = 0; i < objects.size(); i++) {
+            s.add(objects.getJSONObject(i).getString("cspecialbid"));
+        }
+
         //缁勮瀵硅薄鏁版嵁
         Map<String, Object> data = new HashMap<String, Object>();
         ic_generalout_h generalout_h = new ic_generalout_h();
@@ -355,15 +389,15 @@
         generalout_h.setCwarehouseid("6101");
         ic_generalout_b generalout_b = null;
         List<ic_generalout_b> ic_purchasein_bs = new ArrayList<>();
-        for (OrderDetl orderDetl : orderDetls) {
+        for (int i = 0; i < orderDetls.size(); i++) {
+            OrderDetl orderDetl = orderDetls.get(i);
             generalout_b = new ic_generalout_b();
-            String remark = orderDetl.getRemark();
-            if (!Cools.isEmpty(remark)) {
-                NccSaleXsfhmxWms nccSaleXsfhmxWms = JSONObject.parseObject(remark, NccSaleXsfhmxWms.class);
-                generalout_b.setMaterialvid(orderDetl.getMatnr());
-                generalout_b.setNshouldassistnum(orderDetl.getQty());
-                generalout_b.setVbatchcode(orderDetl.getBatch());
-            }
+            generalout_b.setCsourcebillbid(s.get(i));
+            generalout_b.setCsourcetype("4K-01");
+            generalout_b.setCsourcebillhid(cspecialhid);
+            generalout_b.setCmaterialvid(orderDetl.getMatnr());
+            generalout_b.setNshouldassistnum(orderDetl.getQty());
+            generalout_b.setVbatchcode(orderDetl.getBatch());
             ic_purchasein_bs.add(generalout_b);
         }
         data.put("ic_generalout_h", generalout_h);
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 caa84f5..918da4f 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -126,15 +126,18 @@
                                         wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         if (orderDetlPakin == null) {
                             orderDetlPakin = orderDetlPakinService.selectItem
-                                    (wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(),
+                                    (wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null,
                                             wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
                                             wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         }
                         try {
                             if (!Cools.isEmpty(orderDetlPakin)) {
-                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
-                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
-                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+//                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+//                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+//                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakin.getOrderNo(), orderDetlPakin.getMatnr(),
+                                        orderDetlPakin.getBatch(), orderDetlPakin.getBrand(), orderDetlPakin.getStandby1(), orderDetlPakin.getStandby2(), orderDetlPakin.getStandby3(),
+                                        orderDetlPakin.getBoxType1(), orderDetlPakin.getBoxType2(), orderDetlPakin.getBoxType3(), orderDetlPakin.getAnfme())) {
 //                                    exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
 //                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -231,14 +234,18 @@
                                         wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         if (orderDetlPakin == null) {
                             orderDetlPakin = orderDetlPakinService.selectItem
-                                    (wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+                                    (wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
                                             wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         }
                         try {
                             if (!Cools.isEmpty(orderDetlPakin)) {
-                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
-                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
-                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+//                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+//                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+//                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+
+                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakin.getOrderNo(), orderDetlPakin.getMatnr(),
+                                        orderDetlPakin.getBatch(), orderDetlPakin.getBrand(), orderDetlPakin.getStandby1(), orderDetlPakin.getStandby2(), orderDetlPakin.getStandby3(),
+                                        orderDetlPakin.getBoxType1(), orderDetlPakin.getBoxType2(), orderDetlPakin.getBoxType3(), orderDetlPakin.getAnfme())) {
 //                                    exceptionHandle("鎷f枡鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
 //                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -301,9 +308,13 @@
                         OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(), wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         try {
                             if (!Cools.isEmpty(orderDetlPakin)) {
-                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
-                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
-                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+//                                if (!orderDetlPakinService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+//                                        orderDetlPakin.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+//                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+
+                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakin.getOrderNo(), orderDetlPakin.getMatnr(),
+                                        orderDetlPakin.getBatch(), orderDetlPakin.getBrand(), orderDetlPakin.getStandby1(), orderDetlPakin.getStandby2(), orderDetlPakin.getStandby3(),
+                                        orderDetlPakin.getBoxType1(), orderDetlPakin.getBoxType2(), orderDetlPakin.getBoxType3(), orderDetlPakin.getAnfme())) {
                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                                     return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
                                 }
@@ -341,9 +352,12 @@
                             OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
                                     wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                             if (!Cools.isEmpty(orderDetlPakout)) {
-                                if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
-                                        orderDetlPakout.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
-                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+//                                if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+//                                        orderDetlPakout.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+//                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(),
+                                        orderDetlPakout.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(),
+                                        orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3(), orderDetlPakout.getAnfme())) {
                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                                     return FAIL.setMsg("鐩樼偣鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getSourceLocNo() + "]");
                                 }
@@ -450,14 +464,14 @@
                         OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
                                 wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         if (orderDetlPakout == null) {
-                            orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+                            orderDetlPakout = orderDetlPakoutService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), null, wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
                                     wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3());
                         }
                         try {
                             if (!Cools.isEmpty(orderDetlPakout)) {
-                                if (!orderDetlPakoutService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
-                                        orderDetlPakout.getBatch(), wrkDetl.getBrand(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
-                                        wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme())) {
+                                if (!orderDetlPakoutService.increaseQtyByOrderNo(orderDetlPakout.getOrderNo(), orderDetlPakout.getMatnr(),
+                                        orderDetlPakout.getBatch(), orderDetlPakout.getBrand(), orderDetlPakout.getStandby1(), orderDetlPakout.getStandby2(), orderDetlPakout.getStandby3(),
+                                        orderDetlPakout.getBoxType1(), orderDetlPakout.getBoxType2(), orderDetlPakout.getBoxType3(), orderDetlPakout.getAnfme())) {
 //                                    exceptionHandle("鍏ㄦ澘鍑哄簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触锛沎workNo={0}],[locNo={1}]",
 //                                            wrkMast.getWrkNo(), wrkMast.getLocNo());
                                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
diff --git a/src/main/java/com/zy/common/model/DetlDto.java b/src/main/java/com/zy/common/model/DetlDto.java
index c13a6ad..97895a5 100644
--- a/src/main/java/com/zy/common/model/DetlDto.java
+++ b/src/main/java/com/zy/common/model/DetlDto.java
@@ -21,6 +21,7 @@
 
     private String remark;
 
+
     private String batch = "";
     private String brand = "";
     private String standby1 = "";
diff --git a/src/main/java/com/zy/common/model/enumUtils/OrderInAndOutType.java b/src/main/java/com/zy/common/model/enumUtils/OrderInAndOutType.java
index 7998654..650c6cf 100644
--- a/src/main/java/com/zy/common/model/enumUtils/OrderInAndOutType.java
+++ b/src/main/java/com/zy/common/model/enumUtils/OrderInAndOutType.java
@@ -8,6 +8,7 @@
 import com.zy.asrs.service.OrderPakinService;
 import com.zy.asrs.service.OrderPakoutService;
 import com.zy.asrs.utils.OrderTransFormationUtil;
+import com.zy.nc.util.OutUtil;
 import lombok.Setter;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -21,9 +22,10 @@
  * Created by IX on 2024/12/16
  */
 public enum OrderInAndOutType {
-    PAKIN{
+    PAKIN {
         @Transactional
-        public void implement() {}
+        public void implement() {
+        }
 
         @Transactional
         public void query(String orderNo) {
@@ -32,6 +34,7 @@
                 throw new CoolException(orderNo + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
             }
         }
+
         @Transactional
         public Order selectByNo(String orderNo) {
             OrderPakin orderPakin = orderPakinService.selectByNo(orderNo);
@@ -40,29 +43,35 @@
             }
             return OrderTransFormationUtil.transformationOrderPakin(orderPakin);
         }
+
         @Transactional
         public List<Order> selectBySettle(Long settle) {
             List<OrderPakin> orderPakinList = orderPakinService.selectBySettle(settle);
             return OrderTransFormationUtil.transformationOrderListPakin(orderPakinList);
         }
+
         @Transactional
         public List<OrderDetl> selectByOrderId(Long orderId) {
             List<OrderDetlPakin> orderDetlPakinList = orderDetlPakinService.selectByOrderId(orderId);
             return OrderTransFormationUtil.transformationOrderDetlListPakin(orderDetlPakinList);
         }
+
         @Transactional
         public List<OrderDetl> selectWorkingDetls(Long orderId) {
             List<OrderDetlPakin> orderDetlPakinList = orderPakinService.selectWorkingDetls(orderId);
             return OrderTransFormationUtil.transformationOrderDetlListPakin(orderDetlPakinList);
         }
+
         @Transactional
         public void checkComplete(String orderNo) {
             orderPakinService.checkComplete(orderNo);
         }
+
         @Transactional
         public boolean saveHandlerOrder(Boolean pakin, WrkMast wrkMast, List<WrkDetl> wrkDetls) {
-            return orderPakinService.saveHandlerOrder(pakin,wrkMast,wrkDetls);
+            return orderPakinService.saveHandlerOrder(pakin, wrkMast, wrkDetls);
         }
+
         @Transactional
         public void insertOrder(Order order) {
             OrderPakin orderPakin = new OrderPakin();
@@ -71,6 +80,7 @@
                 throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void insertOrderDetl(Order order, OrderDetl orderDetl) {
             OrderPakin orderPakin = orderPakinService.selectByNo(order.getOrderNo());
@@ -82,12 +92,14 @@
                 throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void updateOrder(Long id, Long settle, Long userId) {
             if (!orderPakinService.updateSettle(id, settle, userId)) {
                 throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
             }
         }
+
         @Transactional
         public void updateOrderDetl(Order order, OrderDetl orderDetl) {
             OrderPakin orderPakin = orderPakinService.selectByNo(order.getOrderNo());
@@ -99,14 +111,16 @@
                 throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void remove(Long orderId) {
-            try{
+            try {
                 orderPakinService.remove(orderId);
-            } catch (Exception e){
+            } catch (Exception e) {
                 throw new CoolException("鍒犻櫎鍗曟嵁澶辫触");
             }
         }
+
         @Transactional
         public List<Order> selectComplete() {
             List<OrderPakin> orderPakinList = orderPakinService.selectComplete();
@@ -145,51 +159,58 @@
 
         @Transactional
         public OrderDetl selectItem(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
             return OrderTransFormationUtil.transformationOrderDetlPakin(orderDetlPakin);
         }
 
         @Transactional
         public OrderDetl selectItem(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
             return OrderTransFormationUtil.transformationOrderDetlPakin(orderDetlPakin);
         }
 
         @Transactional
         public OrderDetl findByLook(List<OrderDetl> orderDetls, Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
             List<OrderDetlPakin> orderDetlPakins = OrderTransFormationUtil.transformationDetlListPakin(orderDetls);
-            OrderDetlPakin orderDetlPakin = orderDetlPakinService.findByLook(orderDetlPakins, orderId, matnr,batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderDetlPakin orderDetlPakin = orderDetlPakinService.findByLook(orderDetlPakins, orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
             return OrderTransFormationUtil.transformationOrderDetlPakin(orderDetlPakin);
         }
+
         @Transactional
         public boolean increase(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakinService.increase(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
+            return orderDetlPakinService.increase(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
+
         @Transactional
         public boolean decrease(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakinService.decrease(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
+            return orderDetlPakinService.decrease(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
+
         @Transactional
         public boolean modifyStatus(Long orderId, Integer status) {
             return orderDetlPakinService.modifyStatus(orderId, status);
         }
+
         @Transactional
         public boolean addToLogTableOrderDetl(OrderDetl orderDetl) {
             OrderDetlPakin orderDetlPakin = OrderTransFormationUtil.transformationDetlPakin(orderDetl);
             return orderDetlPakinService.addToLogTable(orderDetlPakin);
         }
+
         @Transactional
         public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakinService.increaseQtyByOrderNo(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
+            return orderDetlPakinService.increaseQtyByOrderNo(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
+
         @Transactional
         public boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty) {
-            return orderDetlPakinService.increaseWorkQty(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, workQty);
+            return orderDetlPakinService.increaseWorkQty(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, workQty);
         }
     },
-    PAKOUT{
+    PAKOUT {
         @Transactional
-        public void implement() {}
+        public void implement() {
+        }
 
         @Transactional
         public void query(String orderNo) {
@@ -198,6 +219,7 @@
                 throw new CoolException(orderNo + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
             }
         }
+
         @Transactional
         public Order selectByNo(String orderNo) {
             OrderPakout orderPakout = orderPakoutService.selectByNo(orderNo);
@@ -206,29 +228,35 @@
             }
             return OrderTransFormationUtil.transformationOrderPakout(orderPakout);
         }
+
         @Transactional
         public List<Order> selectBySettle(Long settle) {
             List<OrderPakout> orderPakoutList = orderPakoutService.selectBySettle(settle);
             return OrderTransFormationUtil.transformationOrderListPakout(orderPakoutList);
         }
+
         @Transactional
         public List<OrderDetl> selectByOrderId(Long orderId) {
             List<OrderDetlPakout> orderDetlPakoutList = orderDetlPakoutService.selectByOrderId(orderId);
             return OrderTransFormationUtil.transformationOrderDetlListPakout(orderDetlPakoutList);
         }
+
         @Transactional
         public List<OrderDetl> selectWorkingDetls(Long orderId) {
             List<OrderDetlPakout> orderDetlPakoutList = orderPakoutService.selectWorkingDetls(orderId);
             return OrderTransFormationUtil.transformationOrderDetlListPakout(orderDetlPakoutList);
         }
+
         @Transactional
         public void checkComplete(String orderNo) {
             orderPakoutService.checkComplete(orderNo);
         }
+
         @Transactional
         public boolean saveHandlerOrder(Boolean Pakout, WrkMast wrkMast, List<WrkDetl> wrkDetls) {
-            return orderPakoutService.saveHandlerOrder(Pakout,wrkMast,wrkDetls);
+            return orderPakoutService.saveHandlerOrder(Pakout, wrkMast, wrkDetls);
         }
+
         @Transactional
         public void insertOrder(Order order) {
             OrderPakout orderPakout = new OrderPakout();
@@ -237,6 +265,7 @@
                 throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void insertOrderDetl(Order order, OrderDetl orderDetl) {
             OrderPakout orderPakout = orderPakoutService.selectByNo(order.getOrderNo());
@@ -248,12 +277,14 @@
                 throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void updateOrder(Long id, Long settle, Long userId) {
             if (!orderPakoutService.updateSettle(id, settle, userId)) {
                 throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
             }
         }
+
         @Transactional
         public void updateOrderDetl(Order order, OrderDetl orderDetl) {
             OrderPakout orderPakout = orderPakoutService.selectByNo(order.getOrderNo());
@@ -265,11 +296,12 @@
                 throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
         }
+
         @Transactional
         public void remove(Long orderId) {
-            try{
+            try {
                 orderPakoutService.remove(orderId);
-            } catch (Exception e){
+            } catch (Exception e) {
                 throw new CoolException("鍒犻櫎鍗曟嵁澶辫触");
             }
         }
@@ -313,54 +345,72 @@
 
         @Transactional
         public OrderDetl selectItem(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderPakout orderPakout = orderPakoutService.selectById(orderId);
+            OrderDetlPakout orderDetlPakout;
+            if (OutUtil.rule(orderPakout.getDocType$())) {
+                orderDetlPakout = orderDetlPakoutService.selectItem(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            } else {
+                orderDetlPakout = orderDetlPakoutService.selectItem(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            }
             return OrderTransFormationUtil.transformationOrderDetlPakout(orderDetlPakout);
         }
 
         @Transactional
         public OrderDetl selectItem(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderPakout orderPakout = orderPakoutService.selectByNo(orderNo);
+            OrderDetlPakout orderDetlPakout;
+            if (OutUtil.rule(orderPakout.getDocType$())) {
+                orderDetlPakout = orderDetlPakoutService.selectItem(orderNo, matnr, null, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            } else {
+                orderDetlPakout = orderDetlPakoutService.selectItem(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            }
             return OrderTransFormationUtil.transformationOrderDetlPakout(orderDetlPakout);
         }
 
         @Transactional
         public OrderDetl findByLook(List<OrderDetl> orderDetls, Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
             List<OrderDetlPakout> orderDetlPakouts = OrderTransFormationUtil.transformationDetlListPakout(orderDetls);
-            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.findByLook(orderDetlPakouts, orderId, matnr,batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
+            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.findByLook(orderDetlPakouts, orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
             return OrderTransFormationUtil.transformationOrderDetlPakout(orderDetlPakout);
         }
+
         @Transactional
         public boolean increase(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakoutService.increase(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
+            return orderDetlPakoutService.increase(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
+
         @Transactional
         public boolean decrease(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakoutService.decrease(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
+            return orderDetlPakoutService.decrease(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
+
         @Transactional
         public boolean modifyStatus(Long orderId, Integer status) {
             return orderDetlPakoutService.modifyStatus(orderId, status);
         }
+
         @Transactional
         public boolean addToLogTableOrderDetl(OrderDetl orderDetl) {
             OrderDetlPakout orderDetlPakout = OrderTransFormationUtil.transformationDetlPakout(orderDetl);
             return orderDetlPakoutService.addToLogTable(orderDetlPakout);
         }
+
         @Transactional
         public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
-            return orderDetlPakoutService.increaseQtyByOrderNo(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, qty);
-        }
-        @Transactional
-        public boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty) {
-            return orderDetlPakoutService.increaseWorkQty(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3, workQty);
+            return orderDetlPakoutService.increaseQtyByOrderNo(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, qty);
         }
 
+        @Transactional
+        public boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty) {
+            return orderDetlPakoutService.increaseWorkQty(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3, workQty);
+        }
 
 
     },
-    PAKALL{
+    PAKALL {
         @Transactional
-        public void implement() {}
+        public void implement() {
+        }
 
         @Transactional
         public void query(String orderNo) {
@@ -369,6 +419,7 @@
                 throw new CoolException(orderNo + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
             }
         }
+
         @Transactional
         public Order selectByNo(String orderNo) {
             OrderPakin orderPakin = orderPakinService.selectByNo(orderNo);
@@ -377,53 +428,63 @@
                 if (Cools.isEmpty(orderPakout)) {
                     return null;
                 }
-                return OrderTransFormationUtil.transformationOrder(null,orderPakout);
+                return OrderTransFormationUtil.transformationOrder(null, orderPakout);
             }
-            return OrderTransFormationUtil.transformationOrder(orderPakin,null);
+            return OrderTransFormationUtil.transformationOrder(orderPakin, null);
 
         }
+
         @Transactional
         public List<Order> selectBySettle(Long settle) {
             List<OrderPakin> orderPakinList = orderPakinService.selectBySettle(settle);
             List<OrderPakout> orderPakoutList = orderPakoutService.selectBySettle(settle);
-            return OrderTransFormationUtil.transformationOrderList(orderPakinList,orderPakoutList);
+            return OrderTransFormationUtil.transformationOrderList(orderPakinList, orderPakoutList);
         }
+
         @Transactional
         public List<OrderDetl> selectByOrderId(Long orderId) {
             List<OrderDetlPakin> orderDetlPakinList = orderDetlPakinService.selectByOrderId(orderId);
             List<OrderDetlPakout> orderDetlPakoutList = orderDetlPakoutService.selectByOrderId(orderId);
-            return OrderTransFormationUtil.transformationOrderDetlList(orderDetlPakinList,orderDetlPakoutList);
+            return OrderTransFormationUtil.transformationOrderDetlList(orderDetlPakinList, orderDetlPakoutList);
         }
+
         @Transactional
         public List<OrderDetl> selectWorkingDetls(Long orderId) {
             List<OrderDetlPakin> orderDetlPakinList = orderPakinService.selectWorkingDetls(orderId);
             List<OrderDetlPakout> orderDetlPakoutList = orderPakoutService.selectWorkingDetls(orderId);
-            return OrderTransFormationUtil.transformationOrderDetlList(orderDetlPakinList,orderDetlPakoutList);
+            return OrderTransFormationUtil.transformationOrderDetlList(orderDetlPakinList, orderDetlPakoutList);
         }
+
         @Transactional
         public void checkComplete(String orderNo) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�403");
         }
+
         @Transactional
         public boolean saveHandlerOrder(Boolean Pakout, WrkMast wrkMast, List<WrkDetl> wrkDetls) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�407");
         }
+
         @Transactional
         public void insertOrder(Order order) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�411");
         }
+
         @Transactional
         public void insertOrderDetl(Order order, OrderDetl orderDetl) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�415");
         }
+
         @Transactional
         public void updateOrder(Long id, Long settle, Long userId) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�419");
         }
+
         @Transactional
         public void updateOrderDetl(Order order, OrderDetl orderDetl) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�423");
         }
+
         @Transactional
         public void remove(Long orderId) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�427");
@@ -434,7 +495,7 @@
         public List<Order> selectComplete8() {
             List<OrderPakin> orderPakinList = orderPakinService.selectComplete8();
             List<OrderPakout> orderPakoutList = orderPakoutService.selectComplete8();
-            return OrderTransFormationUtil.transformationOrderList(orderPakinList,orderPakoutList);
+            return OrderTransFormationUtil.transformationOrderList(orderPakinList, orderPakoutList);
         }
 
         @Transactional
@@ -446,68 +507,74 @@
         public List<Order> selectOrderNoL(String orderNo) {
             List<OrderPakin> orderPakinList = orderPakinService.selectorderNoL(orderNo);
             List<OrderPakout> orderPakoutList = orderPakoutService.selectorderNoL(orderNo);
-            return OrderTransFormationUtil.transformationOrderList(orderPakinList,orderPakoutList);
+            return OrderTransFormationUtil.transformationOrderList(orderPakinList, orderPakoutList);
         }
 
         @Transactional
         public Order selectOrderMoveStatus() {
             OrderPakin orderPakin = orderPakinService.selectOrderMoveStatus();
             OrderPakout orderPakout = orderPakoutService.selectOrderMoveStatus();
-            return OrderTransFormationUtil.transformationOrder(orderPakin,orderPakout);
+            return OrderTransFormationUtil.transformationOrder(orderPakin, orderPakout);
         }
 
         @Transactional
         public Order selectOrderMoveStatusInitial() {
             OrderPakin orderPakin = orderPakinService.selectOrderMoveStatusInitial();
             OrderPakout orderPakout = orderPakoutService.selectOrderMoveStatusInitial();
-            return OrderTransFormationUtil.transformationOrder(orderPakin,orderPakout);
+            return OrderTransFormationUtil.transformationOrder(orderPakin, orderPakout);
         }
 
         @Transactional
         public List<Order> selectComplete() {
             List<OrderPakin> orderPakinList = orderPakinService.selectComplete();
             List<OrderPakout> orderPakoutList = orderPakoutService.selectComplete();
-            return OrderTransFormationUtil.transformationOrderList(orderPakinList,orderPakoutList);
+            return OrderTransFormationUtil.transformationOrderList(orderPakinList, orderPakoutList);
         }
 
         @Transactional
         public OrderDetl selectItem(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
-            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderId, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
-            return OrderTransFormationUtil.transformationOrderDetl(orderDetlPakin,orderDetlPakout);
+            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderId, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            return OrderTransFormationUtil.transformationOrderDetl(orderDetlPakin, orderDetlPakout);
         }
 
         @Transactional
         public OrderDetl selectItem(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
-            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
-            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderNo, matnr, batch,brand,standby1,standby2,standby3,boxType1,boxType2,boxType3);
-            return OrderTransFormationUtil.transformationOrderDetl(orderDetlPakin,orderDetlPakout);
+            OrderDetlPakin orderDetlPakin = orderDetlPakinService.selectItem(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            OrderDetlPakout orderDetlPakout = orderDetlPakoutService.selectItem(orderNo, matnr, batch, brand, standby1, standby2, standby3, boxType1, boxType2, boxType3);
+            return OrderTransFormationUtil.transformationOrderDetl(orderDetlPakin, orderDetlPakout);
         }
 
         @Transactional
         public OrderDetl findByLook(List<OrderDetl> orderDetls, Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�487");
         }
+
         @Transactional
         public boolean increase(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�491");
         }
+
         @Transactional
         public boolean decrease(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�495");
         }
+
         @Transactional
         public boolean modifyStatus(Long orderId, Integer status) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�499");
         }
+
         @Transactional
         public boolean addToLogTableOrderDetl(OrderDetl orderDetl) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�503");
         }
+
         @Transactional
         public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double qty) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�507");
         }
+
         @Transactional
         public boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty) {
             throw new CoolException("姝ゆ柟娉曟棤鐢紒璇峰ソ濂藉啓绋嬪簭锛侊紒锛�511");
@@ -590,9 +657,10 @@
         OrderPakoutService orderPakoutService;
         @Autowired
         OrderDetlPakoutService orderDetlPakoutService;
+
         @PostConstruct
-        public void postConstruct(){
-            for(OrderInAndOutType orderInAndOutType : EnumSet.allOf(OrderInAndOutType.class)){
+        public void postConstruct() {
+            for (OrderInAndOutType orderInAndOutType : EnumSet.allOf(OrderInAndOutType.class)) {
                 orderInAndOutType.setOrderPakinService(orderPakinService);
                 orderInAndOutType.setOrderDetlPakinService(orderDetlPakinService);
                 orderInAndOutType.setOrderPakoutService(orderPakoutService);
diff --git a/src/main/java/com/zy/nc/entity/NccSaleXsfhmxWms.java b/src/main/java/com/zy/nc/entity/NccSaleXsfhmxWms.java
index 2f08159..f9751b8 100644
--- a/src/main/java/com/zy/nc/entity/NccSaleXsfhmxWms.java
+++ b/src/main/java/com/zy/nc/entity/NccSaleXsfhmxWms.java
@@ -1,9 +1,9 @@
 package com.zy.nc.entity;
 
-import com.baomidou.mybatisplus.annotations.TableField;
+import java.math.BigDecimal;
+
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
-import java.math.BigDecimal;
 import lombok.Data;
 
 /**
@@ -418,10 +418,22 @@
      * 
      */
     private String vdef4;
+
     /**
-     *
+     * 
      */
     private String wmsMemo;
+
+    /**
+     * 
+     */
+    private String fhckbm;
+
+    /**
+     * 
+     */
+    private String fhckmc;
+
     @Override
     public boolean equals(Object that) {
         if (this == that) {
@@ -514,7 +526,10 @@
             && (this.getVdef3() == null ? other.getVdef3() == null : this.getVdef3().equals(other.getVdef3()))
             && (this.getVdef14() == null ? other.getVdef14() == null : this.getVdef14().equals(other.getVdef14()))
             && (this.getVdef8() == null ? other.getVdef8() == null : this.getVdef8().equals(other.getVdef8()))
-            && (this.getVdef4() == null ? other.getVdef4() == null : this.getVdef4().equals(other.getVdef4()));
+            && (this.getVdef4() == null ? other.getVdef4() == null : this.getVdef4().equals(other.getVdef4()))
+            && (this.getWmsMemo() == null ? other.getWmsMemo() == null : this.getWmsMemo().equals(other.getWmsMemo()))
+            && (this.getFhckbm() == null ? other.getFhckbm() == null : this.getFhckbm().equals(other.getFhckbm()))
+            && (this.getFhckmc() == null ? other.getFhckmc() == null : this.getFhckmc().equals(other.getFhckmc()));
     }
 
     @Override
@@ -602,6 +617,9 @@
         result = prime * result + ((getVdef14() == null) ? 0 : getVdef14().hashCode());
         result = prime * result + ((getVdef8() == null) ? 0 : getVdef8().hashCode());
         result = prime * result + ((getVdef4() == null) ? 0 : getVdef4().hashCode());
+        result = prime * result + ((getWmsMemo() == null) ? 0 : getWmsMemo().hashCode());
+        result = prime * result + ((getFhckbm() == null) ? 0 : getFhckbm().hashCode());
+        result = prime * result + ((getFhckmc() == null) ? 0 : getFhckmc().hashCode());
         return result;
     }
 
@@ -692,6 +710,9 @@
         sb.append(", vdef14=").append(vdef14);
         sb.append(", vdef8=").append(vdef8);
         sb.append(", vdef4=").append(vdef4);
+        sb.append(", wmsMemo=").append(wmsMemo);
+        sb.append(", fhckbm=").append(fhckbm);
+        sb.append(", fhckmc=").append(fhckmc);
         sb.append("]");
         return sb.toString();
     }
diff --git a/src/main/java/com/zy/nc/task/PlanOrderTask.java b/src/main/java/com/zy/nc/task/PlanOrderTask.java
index c7d116d..2ed9808 100644
--- a/src/main/java/com/zy/nc/task/PlanOrderTask.java
+++ b/src/main/java/com/zy/nc/task/PlanOrderTask.java
@@ -6,13 +6,11 @@
 import com.zy.nc.entity.*;
 import com.zy.nc.service.*;
 import com.zy.nc.task.handler.PlanOrderHandler;
-import com.zy.system.service.impl.ConfigServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
-import java.util.Arrays;
 import java.util.List;
 
 @Slf4j
@@ -54,7 +52,12 @@
             if (wmsFlag == null || wmsFlag.isEmpty()) {
                 return;
             }
-            ReturnT<String> returnT = planOrderHandler.start1(wmsFlag);
+            ReturnT<String> returnT;
+            if (wmsFlag.get(0).getNastnum().doubleValue() > 0) {
+                returnT = planOrderHandler.start1(wmsFlag);
+            } else {
+                returnT = planOrderHandler.start1In(wmsFlag);
+            }
             if (!returnT.isSuccess()) {
                 for (NccSaleXsfhmxWms wms : wmsFlag) {
                     wms.setWmsMemo(returnT.getMsg());
@@ -178,7 +181,7 @@
     public void execute4() {
         List<String> strings = nccCkPddWmsService.selectPdd();
         for (String string : strings) {
-            List<NccCkPddWms> wmsFlag = nccCkPddWmsService.selectList(new EntityWrapper<NccCkPddWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("FBILLFLAG",4).eq("hdr", 0).eq("bdr", 0));
+            List<NccCkPddWms> wmsFlag = nccCkPddWmsService.selectList(new EntityWrapper<NccCkPddWms>().eq("vbillcode", string).ne("wms_flag", 1).eq("FBILLFLAG", 4).eq("hdr", 0).eq("bdr", 0));
             ReturnT<String> returnT = planOrderHandler.start4(wmsFlag);
             if (!returnT.isSuccess()) {
                 for (NccCkPddWms wms : wmsFlag) {
diff --git a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
index 6ac3409..5dd1c51 100644
--- a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
+++ b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
@@ -1,7 +1,6 @@
 package com.zy.nc.task.handler;
 
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
 import com.zy.asrs.entity.InventoryCheckOrder;
@@ -66,14 +65,15 @@
     public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) {
         try {
             OpenOrderPakoutParam param = new OpenOrderPakoutParam();
-            param.setOrderType("閿�鍞彂璐�");
             DetlDto detlDto;
             List<DetlDto> orderDetails = new ArrayList<>();
             long i = 1;
             for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) {
+                param.setOrderType("閿�鍞彂璐�");
                 detlDto = new DetlDto();
                 detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
                 detlDto.setAnfme(nccSaleXsfhmxWms.getNastnum().doubleValue());
+                detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm());
                 detlDto.setLineNumber(i);
                 detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
                 orderDetails.add(detlDto);
@@ -87,7 +87,43 @@
             nccSaleXsfhmxWmsService.updateBatchById(wmsFlag);
         } catch (Exception e) {
             e.printStackTrace();
-            TransactionAspectSupport. currentTransactionStatus().setRollbackOnly();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return FAIL.setMsg(e.getMessage());
+        }
+        return SUCCESS;
+    }
+
+    /**
+     * 鍙戣揣
+     *
+     * @return
+     */
+    public ReturnT<String> start1In(List<NccSaleXsfhmxWms> wmsFlag) {
+        try {
+            OpenOrderPakinParam param = new OpenOrderPakinParam();
+            DetlDto detlDto;
+            List<DetlDto> orderDetails = new ArrayList<>();
+            long i = 1;
+            for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) {
+                param.setOrderType("閿�鍞��璐�");
+                detlDto = new DetlDto();
+                detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
+                detlDto.setAnfme(nccSaleXsfhmxWms.getNastnum().doubleValue());
+                detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm());
+                detlDto.setLineNumber(i);
+                detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
+                orderDetails.add(detlDto);
+                log.info("NccSaleXsfhmxWms鏁版嵁:{}", JSONObject.toJSON(nccSaleXsfhmxWms));
+                i++;
+                nccSaleXsfhmxWms.setWmsFlag(1);
+                param.setOrderNo(nccSaleXsfhmxWms.getVbillcode());
+            }
+            param.setOrderDetails(orderDetails);
+            openService.pakinOrderCreate(param);
+            nccSaleXsfhmxWmsService.updateBatchById(wmsFlag);
+        } catch (Exception e) {
+            e.printStackTrace();
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return FAIL.setMsg(e.getMessage());
         }
         return SUCCESS;
diff --git a/src/main/java/com/zy/nc/util/NcResultMessage.java b/src/main/java/com/zy/nc/util/NcResultMessage.java
index 14868c3..8a4fc41 100644
--- a/src/main/java/com/zy/nc/util/NcResultMessage.java
+++ b/src/main/java/com/zy/nc/util/NcResultMessage.java
@@ -1,5 +1,8 @@
 package com.zy.nc.util;
 
+import lombok.Data;
+
+@Data
 public class NcResultMessage {
 
     private boolean success;
@@ -8,6 +11,10 @@
 
     private String code;
 
+    private String message;
+
+    private String errorStack;
+
     private String errorMessage;
 
     public boolean isSuccess() {
diff --git a/src/main/java/com/zy/nc/util/OutUtil.java b/src/main/java/com/zy/nc/util/OutUtil.java
new file mode 100644
index 0000000..4d12f2b
--- /dev/null
+++ b/src/main/java/com/zy/nc/util/OutUtil.java
@@ -0,0 +1,12 @@
+package com.zy.nc.util;
+
+public class OutUtil {
+    public static Boolean rule(String rule) {
+        switch (rule) {
+            case "閿�鍞彂璐�":
+                return true;
+            default:
+                return false;
+        }
+    }
+}
diff --git a/src/main/java/com/zy/nc/vo/ic_generalout_b.java b/src/main/java/com/zy/nc/vo/ic_generalout_b.java
index 605c180..d8ec03f 100644
--- a/src/main/java/com/zy/nc/vo/ic_generalout_b.java
+++ b/src/main/java/com/zy/nc/vo/ic_generalout_b.java
@@ -5,7 +5,7 @@
 @Data
 public class ic_generalout_b {
 
-    private String materialvid;
+    private String cmaterialvid;
     private Double nshouldassistnum;
     private String ncostprice;
     /**
@@ -13,4 +13,11 @@
      */
     private String vbatchcode;
 
+    private String csourcebillbid;
+
+    private String  csourcetype;
+
+    private String   csourcebillhid;
+
+
 }
diff --git a/src/main/resources/mapper/asrs/LocDetlMapper.xml b/src/main/resources/mapper/asrs/LocDetlMapper.xml
index 958190a..1ac6295 100644
--- a/src/main/resources/mapper/asrs/LocDetlMapper.xml
+++ b/src/main/resources/mapper/asrs/LocDetlMapper.xml
@@ -119,72 +119,74 @@
             </otherwise>
         </choose>
     </sql>
+
     <sql id="batchSeqA">
         <choose>
             <when test="batch != null and batch != ''">
                 and a.batch = #{batch}
             </when>
-            <otherwise>
-                and (a.batch IS NULL OR a.batch = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.batch IS NULL OR a.batch = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="brand != null and brand != ''">
                 and a.brand = #{brand}
             </when>
-            <otherwise>
-                and (a.brand IS NULL OR a.brand = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.brand IS NULL OR a.brand = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="standby1 != null and standby1 != ''">
                 and a.standby1 = #{standby1}
             </when>
-            <otherwise>
-                and (a.standby1 IS NULL OR a.standby1 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.standby1 IS NULL OR a.standby1 = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="standby2 != null and standby2 != ''">
                 and a.standby2 = #{standby2}
             </when>
-            <otherwise>
-                and (a.standby2 IS NULL OR a.standby2 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.standby2 IS NULL OR a.standby2 = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="standby3 != null and standby3 != ''">
                 and a.standby3 = #{standby3}
             </when>
-            <otherwise>
-                and (a.standby3 IS NULL OR a.standby3 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.standby3 IS NULL OR a.standby3 = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="boxType1 != null and boxType1 != ''">
                 and a.box_type1 = #{boxType1}
             </when>
-            <otherwise>
-                and (a.box_type1 IS NULL OR a.box_type1 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.box_type1 IS NULL OR a.box_type1 = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="boxType2 != null and boxType2 != ''">
                 and a.box_type2 = #{boxType2}
             </when>
-            <otherwise>
-                and (a.box_type2 IS NULL OR a.box_type2 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.box_type2 IS NULL OR a.box_type2 = '')-->
+<!--            </otherwise>-->
         </choose>
         <choose>
             <when test="boxType3 != null and boxType3 != ''">
                 and a.box_type3 = #{boxType3}
             </when>
-            <otherwise>
-                and (a.box_type3 IS NULL OR a.box_type3 = '')
-            </otherwise>
+<!--            <otherwise>-->
+<!--                and (a.box_type3 IS NULL OR a.box_type3 = '')-->
+<!--            </otherwise>-->
         </choose>
     </sql>
+
     <sql id="batchSeqNew">
         <choose>
             <when test="batch != null and batch != ''">
diff --git a/src/main/resources/mapper/asrs/OrderDetlMapper.xml b/src/main/resources/mapper/asrs/OrderDetlMapper.xml
index f18898e..a202634 100644
--- a/src/main/resources/mapper/asrs/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/asrs/OrderDetlMapper.xml
@@ -57,14 +57,71 @@
     </resultMap>
 
     <sql id="standbyAll">
-        and batch = #{batch}
-        and brand = #{brand}
-        and standby1 = #{standby1}
-        and standby2 = #{standby2}
-        and standby3 = #{standby3}
-        and box_type1 = #{boxType1}
-        and box_type2 = #{boxType2}
-        and box_type3 = #{boxType3}
+
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="brand != null and brand != ''">
+                and brand = #{brand}
+            </when>
+            <otherwise>
+                and (brand IS NULL OR brand = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby1 != null and standby1 != ''">
+                and standby1 = #{standby1}
+            </when>
+            <otherwise>
+                and (standby1 IS NULL OR standby1 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby2 != null and standby2 != ''">
+                and standby2 = #{standby2}
+            </when>
+            <otherwise>
+                and (standby2 IS NULL OR standby2 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby3 != null and standby3 != ''">
+                and standby3 = #{standby3}
+            </when>
+            <otherwise>
+                and (standby3 IS NULL OR standby3 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType1 != null and boxType1 != ''">
+                and box_type1 = #{boxType1}
+            </when>
+            <otherwise>
+                and (box_type1 IS NULL OR box_type1 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType2 != null and boxType2 != ''">
+                and box_type2 = #{boxType2}
+            </when>
+            <otherwise>
+                and (box_type2 IS NULL OR box_type2 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType3 != null and boxType3 != ''">
+                and box_type3 = #{boxType3}
+            </when>
+            <otherwise>
+                and (box_type3 IS NULL OR box_type3 = '')
+            </otherwise>
+        </choose>
     </sql>
     <sql id="standbyAllMemo">
         --         and line_number = #{lineNumber}
diff --git a/src/main/resources/mapper/asrs/OrderDetlPakoutMapper.xml b/src/main/resources/mapper/asrs/OrderDetlPakoutMapper.xml
index 7f70401..b9df3d0 100644
--- a/src/main/resources/mapper/asrs/OrderDetlPakoutMapper.xml
+++ b/src/main/resources/mapper/asrs/OrderDetlPakoutMapper.xml
@@ -56,14 +56,71 @@
     </resultMap>
 
     <sql id="standbyAll">
-        and batch = #{batch}
-        and brand = #{brand}
-        and standby1 = #{standby1}
-        and standby2 = #{standby2}
-        and standby3 = #{standby3}
-        and box_type1 = #{boxType1}
-        and box_type2 = #{boxType2}
-        and box_type3 = #{boxType3}
+
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="brand != null and brand != ''">
+                and brand = #{brand}
+            </when>
+            <otherwise>
+                and (brand IS NULL OR brand = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby1 != null and standby1 != ''">
+                and standby1 = #{standby1}
+            </when>
+            <otherwise>
+                and (standby1 IS NULL OR standby1 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby2 != null and standby2 != ''">
+                and standby2 = #{standby2}
+            </when>
+            <otherwise>
+                and (standby2 IS NULL OR standby2 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="standby3 != null and standby3 != ''">
+                and standby3 = #{standby3}
+            </when>
+            <otherwise>
+                and (standby3 IS NULL OR standby3 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType1 != null and boxType1 != ''">
+                and box_type1 = #{boxType1}
+            </when>
+            <otherwise>
+                and (box_type1 IS NULL OR box_type1 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType2 != null and boxType2 != ''">
+                and box_type2 = #{boxType2}
+            </when>
+            <otherwise>
+                and (box_type2 IS NULL OR box_type2 = '')
+            </otherwise>
+        </choose>
+        <choose>
+            <when test="boxType3 != null and boxType3 != ''">
+                and box_type3 = #{boxType3}
+            </when>
+            <otherwise>
+                and (box_type3 IS NULL OR box_type3 = '')
+            </otherwise>
+        </choose>
     </sql>
     <sql id="standbyAllMemo">
         --         and line_number = #{lineNumber}
diff --git a/src/main/resources/mapper/asrs/OrderMapper.xml b/src/main/resources/mapper/asrs/OrderMapper.xml
index b797d4e..0e7eee1 100644
--- a/src/main/resources/mapper/asrs/OrderMapper.xml
+++ b/src/main/resources/mapper/asrs/OrderMapper.xml
@@ -60,6 +60,8 @@
         set settle = #{settle}
         ,update_time = getdate()
         ,step = #{step}
+        ,memo = #{memo}
+        ,remark = #{remark}
         <if test="userId != null">
             ,update_by = #{userId}
         </if>
diff --git a/src/main/webapp/static/js/basWrkIotype/basWrkIotype.js b/src/main/webapp/static/js/basWrkIotype/basWrkIotype.js
index 723120b..b14df92 100644
--- a/src/main/webapp/static/js/basWrkIotype/basWrkIotype.js
+++ b/src/main/webapp/static/js/basWrkIotype/basWrkIotype.js
@@ -89,7 +89,7 @@
                     maxmin: true,
                     area: ['500px', top.detailHeight],
                     shadeClose: false,
-                    content: 'basWrkIotype_detail.html',
+                    content: 'store_detail.html',
                     success: function(layero, index){
                         layer.getChildFrame('#data-detail-submit-edit', index).hide();
                     	clearFormVal(layer.getChildFrame('#detail', index));
@@ -184,7 +184,7 @@
                     maxmin: true,
                     area: [top.detailWidth, top.detailHeight],
                     shadeClose: false,
-                    content: 'basWrkIotype_detail.html',
+                    content: 'store_detail.html',
                     success: function(layero, index){
                         setFormVal(layer.getChildFrame('#detail', index), data, true);
                         top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true);
@@ -203,7 +203,7 @@
                     maxmin: true,
                     area: ['500px', top.detailHeight],
                     shadeClose: false,
-                    content: 'basWrkIotype_detail.html',
+                    content: 'store_detail.html',
                     success: function(layero, index){
                         layer.getChildFrame('#data-detail-submit-save', index).hide();
                         setFormVal(layer.getChildFrame('#detail', index), data, false);
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index 11e6d0e..f2b8448 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -47,7 +47,7 @@
             {align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160},
             {field: 'createTime$', title: '鍒涘缓鏃堕棿', minWidth: 200, width: 200},
             {field: 'settle$', align: 'center', title: '鐘舵��', templet: '#settleTpl',  minWidth: 160, width: 160},
-            {field: 'memo', align: 'center',title: '澶囨敞', hide: true},
+            {field: 'remark', align: 'center',title: '澶囨敞'},
             {align: 'center', title: '鎿嶄綔', toolbar: '#operate', width: 180}
         ]],
         request: {
@@ -213,6 +213,8 @@
                             orderNo: data.field.orderNo,
                             itemId: Number(data.field.itemId),
                             itemName: data.field.itemName,
+                            defNumber: Number(data.field.defNumber),
+                            cstmr: data.field.cstmr,
                             orderDetlList: nList
                         }),
                         contentType:'application/json;charset=UTF-8',
diff --git a/src/main/webapp/static/js/staDesc/staDesc.js b/src/main/webapp/static/js/staDesc/staDesc.js
index db50df2..422bce2 100644
--- a/src/main/webapp/static/js/staDesc/staDesc.js
+++ b/src/main/webapp/static/js/staDesc/staDesc.js
@@ -309,7 +309,7 @@
                        maxmin: true,
                        area: [top.detailWidth, top.detailHeight],
                        shadeClose: true,
-                       content: '../basWrkIotype/basWrkIotype_detail.html',
+                       content: '../basWrkIotype/store_detail.html',
                        success: function(layero, index){
                            $.ajax({
                                url: baseUrl+"/basWrkIotype/"+ param +"/auth",
diff --git a/src/main/webapp/static/js/store/store.js b/src/main/webapp/static/js/store/store.js
new file mode 100644
index 0000000..29a739a
--- /dev/null
+++ b/src/main/webapp/static/js/store/store.js
@@ -0,0 +1,460 @@
+var pageCurr;
+layui.use(['table','laydate', 'form'], function(){
+    var table = layui.table;
+    var $ = layui.jquery;
+    var layer = layui.layer;
+    var layDate = layui.laydate;
+    var form = layui.form;
+
+    // 鏁版嵁娓叉煋
+    tableIns = table.render({
+        elem: '#basWrkIotype',
+        headers: {token: localStorage.getItem('token')},
+        url: baseUrl+'/store/list/auth',
+        page: true,
+        limit: 16,
+        limits: [16, 30, 50, 100, 200, 500],
+        // skin: 'line',
+        even: true,
+        toolbar: '#toolbar',
+        cellMinWidth: 50,
+        cols: [[
+            {type: 'checkbox', fixed: 'left'}
+//            ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80}
+            ,{field: 'storeId', align: 'center',sort:true,title: '浠撳簱缂栫爜'}
+            // ,{field: 'ioPri', align: 'center',title: '涓昏'}
+            ,{field: 'storeName', align: 'center',title: '浠撳簱鍚嶇О'}
+            ,{field: 'own$', align: 'center',title: '鏄惁涓篧MS浠撳簱'}
+            // ,{field: 'appeUser$', align: 'center',title: '鍒涘缓鑰�',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'}
+            // ,{field: 'appeTime$', align: 'center',title: '娣诲姞鏃堕棿'}
+
+            ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:150}
+        ]],
+        request: {
+            pageName: 'curr',
+            pageSize: 'limit'
+        },
+        parseData: function (res) {
+            return {
+                'code': res.code,
+                'msg': res.msg,
+                'count': res.data.total,
+                'data': res.data.records
+            }
+        },
+        response: {
+            statusCode: 200
+        },
+        done: function(res, curr, count) {
+            if (res.code === 403) {
+                top.location.href = baseUrl+"/";
+            }
+            pageCurr=curr;
+            limit();
+        }
+    });
+
+    // 鐩戝惉鎺掑簭浜嬩欢
+    table.on('sort(basWrkIotype)', function (obj) {
+        var searchData = {};
+        $.each($('#search-box [name]').serializeArray(), function() {
+            searchData[this.name] = this.value;
+        });
+        searchData['orderByField'] = obj.field;
+        searchData['orderByType'] = obj.type;
+        tableIns.reload({
+            where: searchData,
+            page: {
+                curr: 1
+            },
+            done: function (res, curr, count) {
+                if (res.code === 403) {
+                    top.location.href = baseUrl+"/";
+                }
+                pageCurr=curr;
+                limit();
+            }
+        });
+    });
+
+    // 鐩戝惉澶村伐鍏锋爮浜嬩欢
+    table.on('toolbar(basWrkIotype)', function (obj) {
+        var checkStatus = table.checkStatus(obj.config.id);
+        switch(obj.event) {
+
+            case 'refreshData':
+                tableIns.reload({
+                    page: {
+                        curr: pageCurr
+                    }
+                });
+                limit();
+                break;
+            case 'deleteData':
+                var data = checkStatus.data;
+                if (data.length === 0){
+                    layer.msg('璇烽�夋嫨鏁版嵁');
+                } else {
+                    layer.confirm('纭畾鍒犻櫎'+(data.length===1?'姝�':data.length)+'鏉℃暟鎹悧', function(){
+                        $.ajax({
+                            url: baseUrl+"/store/delete/auth",
+                            headers: {'token': localStorage.getItem('token')},
+                            data: {param: JSON.stringify(data)},
+                            method: 'POST',
+                            traditional:true,
+                            success: function (res) {
+                                if (res.code === 200){
+                                    layer.closeAll();
+                                    tableReload(false);
+                                } else if (res.code === 403){
+                                    top.location.href = baseUrl+"/";
+                                } else {
+                                    layer.msg(res.msg)
+                                }
+                            }
+                        })
+                    });
+                }
+                break;
+            case 'exportData':
+                layer.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
+                    var titles=[];
+                    var fields=[];
+                    obj.config.cols[0].map(function (col) {
+                        if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
+                            titles.push(col.title);
+                            fields.push(col.field);
+                        }
+                    });
+                    var exportData = {};
+                    $.each($('#search-box [name]').serializeArray(), function() {
+                        exportData[this.name] = this.value;
+                    });
+                    var param = {
+                        'basWrkIotype': exportData,
+                        'fields': fields
+                    };
+                    $.ajax({
+                        url: baseUrl+"/store/export/auth",
+                        headers: {'token': localStorage.getItem('token')},
+                        data: JSON.stringify(param),
+                        dataType:'json',
+                        contentType:'application/json;charset=UTF-8',
+                        method: 'POST',
+                        success: function (res) {
+                            layer.closeAll();
+                            if (res.code === 200) {
+                                table.exportFile(titles,res.data,'xls');
+                            } else if (res.code === 403) {
+                                top.location.href = baseUrl+"/";
+                            } else {
+                                layer.msg(res.msg)
+                            }
+                        }
+                    });
+                });
+                break;
+        }
+    });
+
+    // 鐩戝惉琛屽伐鍏蜂簨浠�
+    table.on('tool(basWrkIotype)', function(obj){
+        var data = obj.data;
+        switch (obj.event) {
+            // 璇︽儏
+            case 'detail':
+                layer.open({
+                    type: 2,
+                    title: '璇︽儏',
+                    maxmin: true,
+                    area: [top.detailWidth, top.detailHeight],
+                    shadeClose: false,
+                    content: 'store_detail.html',
+                    success: function(layero, index){
+                        setFormVal(layer.getChildFrame('#detail', index), data, true);
+                        top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true);
+                        layer.getChildFrame('#data-detail-submit-save,#prompt', index).hide();
+                        layer.getChildFrame('#data-detail-submit-edit', index).hide();
+                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
+                        layero.find('iframe')[0].contentWindow.layui.form.render('select');
+                    }
+                });
+                break;
+            // 缂栬緫
+            case 'edit':
+                if (!data){
+                    layer.msg('璇烽�夋嫨鏁版嵁');
+                } else {
+                    layer.confirm('纭畾璁剧疆鎴怶MS浠撳簱鍚�', function(){
+                        $.ajax({
+                            url: baseUrl+"/store/edit/auth",
+                            headers: {'token': localStorage.getItem('token')},
+                            data: {param: data.storeId},
+                            method: 'POST',
+                            traditional:true,
+                            success: function (res) {
+                                if (res.code === 200){
+                                    layer.closeAll();
+                                    tableReload(false);
+                                } else if (res.code === 403){
+                                    top.location.href = baseUrl+"/";
+                                } else {
+                                    layer.msg(res.msg)
+                                }
+                            }
+                        })
+                    });
+                }
+                break;
+            case 'edit2':
+                if (!data){
+                    layer.msg('璇烽�夋嫨鏁版嵁');
+                } else {
+                    layer.confirm('纭畾璁剧疆鎴怶MS浠撳簱鍚�', function(){
+                        $.ajax({
+                            url: baseUrl+"/store/edit2/auth",
+                            headers: {'token': localStorage.getItem('token')},
+                            data: {param: data.storeId},
+                            method: 'POST',
+                            traditional:true,
+                            success: function (res) {
+                                if (res.code === 200){
+                                    layer.closeAll();
+                                    tableReload(false);
+                                } else if (res.code === 403){
+                                    top.location.href = baseUrl+"/";
+                                } else {
+                                    layer.msg(res.msg)
+                                }
+                            }
+                        })
+                    });
+                }
+                break;
+            case 'modiUser':
+                var param = top.reObject(data).modiUser;
+                if (param === undefined) {
+                    layer.msg("鏃犳暟鎹�");
+                } else {
+                   layer.open({
+                       type: 2,
+                       title: '淇敼璇︽儏',
+                       maxmin: true,
+                       area: [top.detailWidth, top.detailHeight],
+                       shadeClose: false,
+                       content: '../user/user_detail.html',
+                       success: function(layero, index){
+                           $.ajax({
+                               url: baseUrl+"/user/"+ param +"/auth",
+                               headers: {'token': localStorage.getItem('token')},
+                               method: 'GET',
+                               success: function (res) {
+                                   if (res.code === 200){
+                                       setFormVal(layer.getChildFrame('#detail', index), res.data, true);
+                                       top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true);
+                                       layer.getChildFrame('#password,#createTime\\$,#status', index).parent().parent().hide();
+                                       layer.getChildFrame('#data-detail-submit,#prompt', index).hide();
+                                       layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
+                                       layero.find('iframe')[0].contentWindow.layui.form.render('select');
+                                   } else if (res.code === 403){
+                                       parent.location.href = "/";
+                                   }else {
+                                       layer.msg(res.msg)
+                                   }
+                               }
+                           })
+                       }
+                   });
+                }
+                break;
+            case 'appeUser':
+                var param = top.reObject(data).appeUser;
+                if (param === undefined) {
+                    layer.msg("鏃犳暟鎹�");
+                } else {
+                   layer.open({
+                       type: 2,
+                       title: '鍒涜鎯�',
+                       maxmin: true,
+                       area: [top.detailWidth, top.detailHeight],
+                       shadeClose: false,
+                       content: '../user/user_detail.html',
+                       success: function(layero, index){
+                           $.ajax({
+                               url: baseUrl+"/user/"+ param +"/auth",
+                               headers: {'token': localStorage.getItem('token')},
+                               method: 'GET',
+                               success: function (res) {
+                                   if (res.code === 200){
+                                       setFormVal(layer.getChildFrame('#detail', index), res.data, true);
+                                       top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true);
+                                       layer.getChildFrame('#data-detail-submit', index).hide();
+                                       layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
+                                       layero.find('iframe')[0].contentWindow.layui.form.render('select');
+                                   } else if (res.code === 403){
+                                       parent.location.href = "/";
+                                   }else {
+                                       layer.msg(res.msg)
+                                   }
+                               }
+                           })
+                       }
+                   });
+                }
+                break;
+
+        }
+    });
+
+    // 鏁版嵁淇濆瓨鍔ㄤ綔
+    form.on('submit(save)', function () {
+        if (banMsg != null){
+            layer.msg(banMsg);
+            return;
+        }
+        method("add");
+    });
+
+    // 鏁版嵁淇敼鍔ㄤ綔
+    form.on('submit(edit)', function () {
+        method("update")
+    });
+
+    function method(name){
+        var index = layer.load(1, {
+            shade: [0.5,'#000'] //0.1閫忔槑搴︾殑鑳屾櫙
+        });
+        var data = {
+//            id: $('#id').val(),
+            ioType: $('#ioType').val(),
+            ioPri: $('#ioPri').val(),
+            ioDesc: $('#ioDesc').val(),
+            modiUser: $('#modiUser').val(),
+            modiTime: top.strToDate($('#modiTime\\$').val()),
+            appeUser: $('#appeUser').val(),
+            appeTime: top.strToDate($('#appeTime\\$').val()),
+
+        };
+        $.ajax({
+            url: baseUrl+"/basWrkIotype/"+name+"/auth",
+            headers: {'token': localStorage.getItem('token')},
+            data: top.reObject(data),
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200){
+                    parent.layer.closeAll();
+                    tableReload(true);
+                    $("#data-detail :input").each(function () {
+                        $(this).val("");
+                    });
+                } else if (res.code === 403){
+                    top.location.href = baseUrl+"/";
+                }else {
+                    layer.msg(res.msg)
+                }
+                layer.close(index);
+            }
+        })
+    }
+
+    // 鎼滅储鏍忔悳绱簨浠�
+    form.on('submit(search)', function (data) {
+        pageCurr = 1;
+        tableReload(false);
+    });
+
+    // 鎼滅储鏍忛噸缃簨浠�
+    form.on('submit(reset)', function (data) {
+        pageCurr = 1;
+        clearFormVal($('#search-box'));
+        tableReload(false);
+    });
+
+    // 鏃堕棿閫夋嫨鍣�
+    layDate.render({
+        elem: '#modiTime\\$',
+        type: 'datetime'
+    });
+    layDate.render({
+        elem: '#appeTime\\$',
+        type: 'datetime'
+    });
+
+
+});
+
+// 鍏抽棴鍔ㄤ綔
+$(document).on('click','#data-detail-close', function () {
+    parent.layer.closeAll();
+});
+
+function tableReload(child) {
+    var searchData = {};
+    $.each($('#search-box [name]').serializeArray(), function() {
+        searchData[this.name] = this.value;
+    });
+    (child ? parent.tableIns : tableIns).reload({
+        where: searchData,
+        page: {
+            curr: pageCurr
+        },
+        done: function (res, curr, count) {
+            if (res.code === 403) {
+                top.location.href = baseUrl+"/";
+            }
+            pageCurr=curr;
+            if (res.data.length === 0 && count !== 0) {
+                tableIns.reload({
+                    where: searchData,
+                    page: {
+                        curr: pageCurr-1
+                    }
+                });
+                pageCurr -= 1;
+            }
+            limit(child);
+        }
+    });
+}
+
+function setFormVal(el, data, showImg) {
+    for (var val in data) {
+        var find = el.find(":input[id='" + val + "']");
+        find.val(data[val]);
+        if (showImg){
+            var next = find.next();
+            if (next.get(0)){
+                if (next.get(0).localName === "img") {
+                    find.hide();
+                    next.attr("src", data[val]);
+                    next.show();
+                }
+            }
+        }
+    }
+}
+
+function clearFormVal(el) {
+    $(':input', el)
+        .val('')
+        .removeAttr('checked')
+        .removeAttr('selected');
+}
+
+function detailScreen(index) {
+    var detail = layer.getChildFrame('#data-detail', index);
+    var height = detail.height()+60;
+    if (height > ($(window).height()*0.9)) {
+        height = ($(window).height()*0.9);
+    }
+    layer.style(index, {
+//        top: (($(window).height()-height)/3)+"px",
+        height: height+'px'
+    });
+}
+
+$('body').keydown(function () {
+    if (event.keyCode === 13) {
+        $("#search").click();
+    }
+});
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index 42323ba..c254d3c 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -160,6 +160,18 @@
             </div>
         </div>
         <div class="layui-form-item">
+            <label class="layui-form-label">鍑哄簱浠撳簱锛�</label>
+            <div class="layui-input-block cool-auto-complete">
+                <input class="layui-input" name="defNumber" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" style="display: none">
+                <input id="cstmr" name="cstmr" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ュ崟鎹被鍨�" onfocus=this.blur() lay-verType="tips" lay-verify="required">
+                <div class="cool-auto-complete-window">
+                    <input class="cool-auto-complete-window-input" data-key="storeTypeQuery2BystoreType" onkeyup="autoLoad(this.getAttribute('data-key'))">
+                    <select class="cool-auto-complete-window-select" data-key="storeTypeQuery2BystoreTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
+                    </select>
+                </div>
+            </div>
+        </div>
+        <div class="layui-form-item">
             <label class="layui-form-label">鍏ュ簱浠撳簱锛�</label>
             <div class="layui-input-block cool-auto-complete">
                 <input class="layui-input" name="itemId" placeholder="璇疯緭鍏ュ叆搴撲粨搴�" style="display: none">
@@ -322,7 +334,7 @@
 <script type="text/javascript" src="../../static/js/echarts/echarts.min.js" charset="utf-8"></script>
 <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
 <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
-<script type="text/javascript" src="../../static/js/order/order.js?v=6" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/order/order.js?v=9" charset="utf-8"></script>
 
 <script type="text/template" id="docTypeTpl">
     <option value="">閫夋嫨绫诲瀷</option>
diff --git a/src/main/webapp/views/store/store.html b/src/main/webapp/views/store/store.html
new file mode 100644
index 0000000..51c4ca8
--- /dev/null
+++ b/src/main/webapp/views/store/store.html
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <title></title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+    <link rel="stylesheet" href="../../static/css/common.css" media="all">
+</head>
+<body>
+
+<!-- 鎼滅储鏍� -->
+<div id="search-box" class="layui-form layui-card-header">
+    <div class="layui-inline">
+        <div class="layui-input-inline">
+            <input class="layui-input" type="text" name="store_name" placeholder="浠撳簱鍚嶇О" autocomplete="off">
+        </div>
+    </div>
+    <div class="layui-inline">
+        <div class="layui-input-inline">
+            <select name="own" class="layui-input">
+                <option value="">璇烽�夋嫨</option>
+                <option value="1">鏄�</option>
+                <option value="0">鍚�</option>
+            </select>
+        </div>
+    </div>
+
+    <!-- 寰呮坊鍔� -->
+    <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block">
+        <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储
+        </button>
+        <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆
+        </button>
+    </div>
+</div>
+
+<!-- 琛ㄦ牸 -->
+<table class="layui-hide" id="basWrkIotype" lay-filter="basWrkIotype"></table>
+<script type="text/html" id="toolbar">
+    <div class="layui-btn-container">
+        <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
+        <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">瀵煎嚭</button>
+    </div>
+</script>
+
+<script type="text/html" id="operate">
+    <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">璁剧疆</a>
+    <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit2">鍙栨秷</a>
+</script>
+
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/store/store.js?v=3" charset="utf-8"></script>
+
+<iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe>
+
+</body>
+</html>
+

--
Gitblit v1.9.1