From 40ada0315f79eaaa30dce2f246878b3ea0d7493b Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期六, 20 十二月 2025 12:49:48 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/WorkService.java                         |    1 
 src/main/webapp/static/js/pakStore/locCheckOut.js                          |    2 
 src/main/webapp/views/pakStore/locCheckOut.html                            |   19 ++
 src/main/resources/mapper/LocDetlMapper.xml                                |    6 +
 src/main/webapp/views/pakStore/locDetlQuery.html                           |   21 ++-
 src/main/java/com/zy/common/web/WcsController.java                         |    5 
 src/main/java/com/zy/asrs/entity/result/FindLocNoAttributeVo.java          |    9 +
 src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java |    1 
 src/main/webapp/views/order/order.html                                     |    2 
 src/main/java/com/zy/common/web/param/SearchLocParam.java                  |    1 
 src/main/webapp/views/pakStore/locDetlCheckQuery.html                      |   41 ++++--
 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java                |  189 +++++++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/entity/param/StockOutParam.java                  |    1 
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java              |   18 --
 src/main/webapp/static/js/pakStore/turnOver.js                             |    6 
 src/main/webapp/static/js/common.js                                        |    2 
 src/main/java/com/zy/common/service/CommonService.java                     |   11 +
 src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java    |    3 
 18 files changed, 283 insertions(+), 55 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
index 27e99b4..c4f4655 100644
--- a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java
@@ -14,6 +14,7 @@
 
     // 鍑虹珯鍙�
     private Integer outSite;
+    private Integer outStaArea;
 
     // 鐗╂枡缂栧彿闆嗗悎
     private List<LocDetl> locDetls;
diff --git a/src/main/java/com/zy/asrs/entity/result/FindLocNoAttributeVo.java b/src/main/java/com/zy/asrs/entity/result/FindLocNoAttributeVo.java
index 2dc27e4..f25f2a3 100644
--- a/src/main/java/com/zy/asrs/entity/result/FindLocNoAttributeVo.java
+++ b/src/main/java/com/zy/asrs/entity/result/FindLocNoAttributeVo.java
@@ -17,6 +17,7 @@
     private String boxType1 = "1";
     private String boxType2 = "1";
     private String boxType3 = "1";
+    private Integer outArea;
 
     public FindLocNoAttributeVo() {
     }
@@ -199,6 +200,14 @@
         this.standby3 = standby3;
     }
 
+    public Integer getOutArea() {
+        return outArea;
+    }
+
+    public void setOutArea(Integer outArea) {
+        this.outArea = outArea;
+    }
+
 
     public boolean beSimilar(LocDetl locDetl){
         return (this.matnr.equals(locDetl.getMatnr())
diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java
index 8d34c6e..81f3c89 100644
--- a/src/main/java/com/zy/asrs/service/WorkService.java
+++ b/src/main/java/com/zy/asrs/service/WorkService.java
@@ -39,6 +39,7 @@
      * @param ioType 鍏ュ嚭搴撶被鍨�
      */
     void stockOut(BasDevp staNo, List<LocDetlDto> locDetls, IoWorkType ioWorkType, Long userId);
+    void stockOut(BasDevp staNo, Integer outStaArea, List<LocDetlDto> locDetls, IoWorkType ioWorkType, Long userId);
 
     void stockOut(BasDevp staNo, TaskDto taskDto, Long userId);
 
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index d338c1e..8228748 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -921,26 +921,10 @@
         String orderNo = null;
         for (CombParam.CombMat combMat : param.getCombMats()) {
             if(combMat.getSupplier().equals("1")){
-//                List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
-//                        .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
-//                        .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
-//                        .eq("standby3", combMat.getStandby3()).eq("box_type2","BU-00001"));//1鏃舵绱㈠拰寰�
-//                if (orderDetlPakins.size() > 0) {
-//                    orderNo = orderDetlPakins.get(0).getOrderNo();
-//                    combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
-//                    combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
-//                    combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
-//                    combMat.setMemo(orderDetlPakins.get(0).getMemo());
-//                    combMat.setSupp(orderDetlPakins.get(0).getSupp());
-//                    combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
-//                    combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
-//                } else {
-//                    throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
-//                }
                 List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
                         .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
                         .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
-                        .eq("standby3", combMat.getStandby3()).eq("box_type2","shyucheng.test"));
+                        .eq("standby3", combMat.getStandby3()).eq("box_type2","BU-00001"));//1鏃舵绱㈠拰寰�
                 if (orderDetlPakins.size() > 0) {
                     orderNo = orderDetlPakins.get(0).getOrderNo();
                     combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index 8ee4377..7ae931d 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -487,7 +487,194 @@
             }catch (Exception e){}
         }
     }
+    @Override
+    @Transactional
+    public void stockOut(BasDevp staNo,Integer outStaArea, List<LocDetlDto> locDetlDtos, IoWorkType ioWorkType, Long userId) {
+        Date now = new Date();
+        // 鍚堝苟鍚岀被椤�
+        Set<String> locNos = new HashSet<>();
+        List<OutLocDto> dtos = new ArrayList<>();
+        for (LocDetlDto locDetlDto : locDetlDtos) {
+            String locNo = locDetlDto.getLocDetl().getLocNo();
+            if (locNos.contains(locNo)) {
+                for (OutLocDto dto : dtos) {
+                    if (dto.getLocNo().equals(locNo)) {
+                        dto.getLocDetlDtos().add(locDetlDto);
+                        break;
+                    }
+                }
+            } else {
+                locNos.add(locNo);
+                dtos.add(new OutLocDto(locNo, locDetlDto));
+            }
+        }
+        Config configAutoMPArea = configService.selectConfigByCode("AutoMPArea");
 
+        Integer ioType = null;
+        // 鐢熸垚宸ヤ綔妗�
+        for (OutLocDto dto : dtos) {
+            // 鍒ゆ柇鍏ュ嚭搴撶被鍨嬶細101.鍏ㄦ澘鍑哄簱 or 103.鎷f枡鍑哄簱
+            if (ioWorkType == null) {
+                ioType = dto.isAll() ? 101 : 103;
+            } else if (ioWorkType.equals(IoWorkType.CHECK_OUT)) {
+                ioType = 107;
+            }
+            assert ioType != null;
+            // 鑾峰彇搴撲綅
+            LocMast locMast = locMastService.selectById(dto.getLocNo());
+
+            Integer outSta = staNo.getDevNo();
+//            //2鍙峰爢鍨涙満鍏ㄦ澘鍑哄簱绔欐寚瀹氫负204绔欙紝鎷f枡绔欐寚瀹氫负202
+//            if(locMast.getCrnNo()==2){
+//                outSta = ioType == 101 ? 204 : 202;
+//            }
+
+            // 鑾峰彇璺緞
+            StaDesc staDesc = staDescService.queryCrnStn(ioType, locMast.getCrnNo(), outSta);
+//            if(ioType.equals(107)){
+//                staDesc = staDescService.queryCrnStnCheck(ioType, locMast.getCrnNo(), outSta);
+//            }
+
+            // 鐢熸垚宸ヤ綔鍙�
+            int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType));
+            // 鐢熸垚宸ヤ綔妗�
+            WrkMast wrkMast = new WrkMast();
+            wrkMast.setWrkNo(workNo);
+            wrkMast.setIoTime(now);
+            wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+            wrkMast.setIoType(ioType); // 鍏ュ嚭搴撶姸鎬�
+            wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+            wrkMast.setCrnNo(locMast.getCrnNo());
+            wrkMast.setSourceStaNo(staDesc.getCrnStn()); // 婧愮珯
+            wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
+            wrkMast.setSourceLocNo(dto.getLocNo()); // 婧愬簱浣�
+            wrkMast.setBarcode(locMast.getBarcode());
+            wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+            wrkMast.setPicking("N"); // 鎷f枡
+            wrkMast.setExitMk("N"); // 閫�鍑�
+            wrkMast.setEmptyMk("N"); // 绌烘澘
+            wrkMast.setCtnKind(outStaArea);//
+            wrkMast.setLinkMis("N");
+            wrkMast.setBarcode(locMast.getBarcode());
+            wrkMast.setTakeNone("0");  //0闈炶嚜鍔�
+
+            List<BasAgvWrkDetl> basAgvWrkDetls = null;
+            List<BasAgvLocDetl> basAgvLocDetls = null;
+            try{
+                if (Boolean.parseBoolean(configAutoMPArea.getValue())){
+                    if (wrkMast.getStaNoAgvSign()){
+                        if (ioType==101){
+                            // 鍏ㄦ澘鍑哄簱
+                            basAgvLocDetls = new ArrayList<>();
+                        } else {
+                            // 鎷f枡鍑哄簱
+                            basAgvWrkDetls = new ArrayList<>();
+                        }
+                        wrkMast.setTakeNone("1"); //绛夊緟涓嬪彂
+                    } else {
+                        wrkMast.setTakeNone("3");  //鏃犻渶AGV鎼繍
+                    }
+                }
+            } catch (Exception e) {}  //閰嶇疆椤逛笉瀛樺湪锛屼笉鍋氬鐞�
+            wrkMast.setAppeUser(userId); // 鎿嶄綔浜哄憳鏁版嵁
+            wrkMast.setAppeTime(now);
+            wrkMast.setModiUser(userId);
+            wrkMast.setModiTime(now);
+            if (!wrkMastService.insert(wrkMast)) {
+                throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細"+dto.getLocNo());
+            }
+
+            // 鐢熸垚宸ヤ綔妗f槑缁�
+            for (LocDetlDto detlDto : dto.getLocDetlDtos()) {
+                if (detlDto.getCount()==null || detlDto.getCount() <= 0.0D) {continue;}
+                WrkDetl wrkDetl = new WrkDetl();
+                wrkDetl.sync(detlDto.getLocDetl());
+                wrkDetl.setOrderNo(""); // 鎵嬪姩鍑哄簱涓嶉渶瑕佸甫鍑哄簱瀛樹腑鐨勫崟鎹紪鍙�
+                wrkDetl.setWrkNo(workNo);
+                wrkDetl.setIoTime(now);
+                Double anfme = ioType==101?detlDto.getLocDetl().getAnfme():detlDto.getCount();
+                wrkDetl.setAnfme(anfme); // 鏁伴噺
+                wrkDetl.setAppeTime(now);
+                wrkDetl.setAppeUser(userId);
+                wrkDetl.setModiTime(now);
+                wrkDetl.setModiUser(userId);
+
+                try{
+                    if (basAgvWrkDetls != null){
+                        BasAgvWrkDetl basAgvWrkDetl = new BasAgvWrkDetl();
+                        basAgvWrkDetl.sync(wrkDetl);
+                        basAgvWrkDetls.add(basAgvWrkDetl);
+                    }
+                } catch (Exception e) {}  //閰嶇疆椤逛笉瀛樺湪锛屼笉鍋氬鐞�
+
+                if (!wrkDetlService.insert(wrkDetl)) {
+                    throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+                }
+            }
+//            if(locMastRgv !=null){
+//                if (Boolean.parseBoolean(config.getValue()) && locMastRgv.getLocNo() != null && ioType != 107) {  //鑻ユ湁绌哄簱浣嶄笖閰嶇疆鍏佽鍒欑粦瀹氬叾澶囨枡搴撲綅鍙�
+//                    //淇敼agv澶囨枡鍖虹姸鎬�
+//                    if(locMastRgv.getLocSts().equals("O") && ioType != 107){
+//                        locMastRgv.setLocSts("S");
+//                        locMastRgv.setModiUser(userId);
+//                        locMastRgv.setModiTime(now);
+//                        if (!locMastService.updateById(locMastRgv)) {
+//                            throw new CoolException("棰勭害agv澶囨枡鍖哄簱浣嶇姸鎬佸け璐ワ紝搴撲綅鍙凤細"+locMastRgv.getLocNo());
+//                        }
+//                    }
+//                }
+//            }
+
+            // 淇敼搴撲綅鐘舵��:   F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害/P.鎷f枡/鐩樼偣/骞舵澘鍑哄簱涓�
+            locMast = locMastService.selectById(dto.getLocNo());
+            if (locMast.getLocSts().equals("F")) {
+
+                try{
+                    if (basAgvLocDetls != null){
+                        List<LocDetl> locDetlList = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
+                        for (LocDetl locDetl : locDetlList) {
+                            BasAgvLocDetl basAgvLocDetl = new BasAgvLocDetl();
+                            basAgvLocDetl.sync(locDetl);
+                            basAgvLocDetls.add(basAgvLocDetl);
+                        }
+                    }
+                } catch (Exception e) {}  //閰嶇疆椤逛笉瀛樺湪锛屼笉鍋氬鐞�
+
+                locMast.setLocSts(ioType==101?"R":"P");
+                locMast.setModiUser(userId);
+                locMast.setModiTime(now);
+                if (!locMastService.updateById(locMast)) {
+                    throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+dto.getLocNo());
+                }
+            } else {
+                log.error(dto.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+                throw new CoolException(dto.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+            }
+
+            try{
+                // 澧炲姞AGV搴撳瓨涓浆鏁伴噺
+                if (basAgvLocDetls != null){
+                    for (BasAgvLocDetl basAgvLocDetl : basAgvLocDetls) {
+                        try{
+                            basAgvLocDetlService.insert(basAgvLocDetl);
+                        } catch (Exception e){
+                            log.error("澧炲姞AGV搴撳瓨涓浆鏁伴噺澶辫触");
+                        }
+                    }
+                }
+                if (basAgvWrkDetls != null){
+                    for (BasAgvWrkDetl basAgvWrkDetl : basAgvWrkDetls) {
+                        try{
+                            basAgvWrkDetlService.insert(basAgvWrkDetl);
+                        } catch (Exception e){
+                            log.error("澧炲姞AGV搴撳瓨涓浆鏁伴噺澶辫触");
+                        }
+                    }
+                }
+
+            }catch (Exception e){}
+        }
+    }
     @Override
     @Transactional
     public void stockOut(BasDevp staNo, TaskDto taskDto, Long userId) {
@@ -884,7 +1071,7 @@
             LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlDtos.get(0).getLocDetl().getLocNo()));
             if (locMast.getLocSts().equals("F")){
                 // 鍚姩鍑哄簱寮�濮� 107.鐩樼偣鍑哄簱
-                stockOut(staNo, locDetlDtos, IoWorkType.CHECK_OUT, userId);
+                stockOut(staNo,param.getOutStaArea(), locDetlDtos, IoWorkType.CHECK_OUT, userId);
             }else {
                 throw new CoolException("鎵�閫夊簱浣嶅瓨鍦ㄧ姸鎬佷笉涓篎鐨勫簱浣嶏紝搴撲綅鍙凤細"+locMast.getLocNo()+" 銆佸綋鍓嶇姸鎬侊細"+locMast.getLocSts()+"-"+locMast.getLocSts$());
             }
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
index a64f5fc..bb0380e 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -1530,7 +1530,7 @@
                             for (int k = 0; k < billEntryArray.size(); k++) {
                                 JSONObject entry = billEntryArray.getJSONObject(k);
                                 String matnr = entry.getString("material_number"); //鐗╂枡缂栫爜锛屽唴閮⊿KU
-                                Double anfmeBox = entry.getDouble("eap7_integerfield");//绠辨暟
+                                Double anfmeBox = 0.0;//绠辨暟
                                 Double anfme = entry.getDouble("completqty");//涓暟
                                 Double totalNumItems = entry.getDouble("eap7_decimalfield1");//鎬讳欢鏁�
                                 Double totalVolume = entry.getDouble("eap7_decimalfield2");//鎬讳綋绉�
@@ -1556,6 +1556,7 @@
                                             "鍟嗗搧涓嶅瓨鍦細" + matnr, false);
                                     continue;
                                 }
+                                anfmeBox = anfme/mat.getSafeQty();
                                 // ========= 鏄庣粏鍘婚噸 =========
                                 List<OrderDetl> orderDetls =
                                         orderDetlService.selectByOrderId(order.getId());
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
index e5023ae..dea2057 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
@@ -223,7 +223,6 @@
                         }
                     }
                 }
-
                 order.setSettle(8L); // 鏇存柊鐘舵�佷负宸蹭笂鎶ュ鏍� 9->8
                 orderService.updateById(order);
             } else {
diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index 1a57be5..0805562 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -1015,7 +1015,7 @@
         StaDesc staDesc = null;
         BasDevp staNo = null;
 
-        if (Utils.BooleanWhsTypeSta(rowLastno, staDescId)) {
+//        if (Utils.BooleanWhsTypeSta(rowLastno, staDescId)) {
             // 鑾峰彇鐩爣绔�
 //            wrapper = new EntityWrapper<StaDesc>()
 //                    .eq("type_no", staDescId)
@@ -1036,7 +1036,7 @@
 //                }
 //                startupDto.setStaNo(staNo.getDevNo());
 //            }
-        }
+//        }
 
         // 鏇存柊搴撲綅鎺掑彿
         if (Utils.BooleanWhsTypeSta(rowLastno, staDescId) && Cools.isEmpty(locMast)) {
@@ -1047,7 +1047,7 @@
         // 寮�濮嬫煡鎵惧簱浣� ==============================>>
 
         // 1.鎸夎鍒欐煡鎵惧簱浣�
-        if (Cools.isEmpty(locMast)) {
+        if (Cools.isEmpty(locMast) && sourceStaNo != 4006) {
             List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("row1", nearRow)
                     .eq("loc_sts", "O").eq("whs_type", rowLastnoType.getType().longValue())
@@ -1066,6 +1066,11 @@
                 }
             }
         }
+//        else{
+//            if(findLocNoAttributeVo.getOutArea() == 1){
+//
+//            }
+//        }
 
         // 閫掑綊鏌ヨ
         if (Cools.isEmpty(locMast) || !locMast.getLocSts().equals("O")) {
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index f7becb9..61250b6 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -136,7 +136,7 @@
         switch (param.getIoType()) {
             case 1://婊℃墭鐩樺叆搴�
             case 10://绌烘墭鐩樺叆搴�
-                dto = startupFullPutStoreAgv(param.getSourceStaNo(), param.getBarcode(), locTypeDto);
+                dto = startupFullPutStoreAgv(param.getSourceStaNo(), param.getBarcode(), locTypeDto,param.getOutArea());
                 break;
 //                dto = emptyPlateIn(param.getSourceStaNo(), locTypeDto, param.getBarcode());
 //                break;
@@ -362,11 +362,12 @@
      * 鍏ㄦ澘鍏ュ簱AGV
      */
     @Transactional
-    public StartupDto startupFullPutStoreAgv(Integer devpNo, String barcode, LocTypeDto locTypeDto) {
+    public StartupDto startupFullPutStoreAgv(Integer devpNo, String barcode, LocTypeDto locTypeDto,Integer outArea) {
         // 婧愮珯鐐圭姸鎬佹娴�
 //        BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
         // 妫�绱㈠簱浣�
         FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo();
+        findLocNoAttributeVo.setOutArea(outArea);
 //        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(waitPakins.get(0));
         StartupDto dto = commonService.getLocNo( 1, devpNo,findLocNoAttributeVo, locTypeDto);
         // 鏇存柊鐩爣搴撲綅鐘舵��
diff --git a/src/main/java/com/zy/common/web/param/SearchLocParam.java b/src/main/java/com/zy/common/web/param/SearchLocParam.java
index 1a170ce..a5ed144 100644
--- a/src/main/java/com/zy/common/web/param/SearchLocParam.java
+++ b/src/main/java/com/zy/common/web/param/SearchLocParam.java
@@ -13,6 +13,7 @@
     private Integer sourceStaNo;
 
     private String barcode;
+    private Integer outArea;
 
     // 搴撲綅瑙勬牸锛� 0:鏈煡, 1:浣庡簱浣�, 2:楂樺簱浣嶏級
     private Short locType1;
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index e2ab2e7..3d49e1d 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -354,6 +354,12 @@
         <if test="standby2!=null and standby2!='' ">
             and a.standby2 like '%' + #{standby2} + '%'
         </if>
+        <if test="standby3!=null and standby3!='' ">
+            and a.standby3 like '%' + #{standby3} + '%'
+        </if>
+        <if test="boxType3!=null and boxType3!='' ">
+            and a.box_type3 like '%' + #{boxType3} + '%'
+        </if>
     </sql>
 
     <select id="getStockOutPage" resultMap="BaseResultMap">
diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js
index 888d296..65819d4 100644
--- a/src/main/webapp/static/js/common.js
+++ b/src/main/webapp/static/js/common.js
@@ -234,7 +234,7 @@
     ,{field: 'anfme', align: 'center',title: '鏁伴噺', hide: false}
     ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜', hide: false}
 
-    ,{field: 'boxType3', align: 'center',title: '閲囪喘鍗曞彿', hide: true}
+    ,{field: 'boxType3', align: 'center',title: '閲囪喘鍗曞彿', hide: false}
     // ,{field: 'model', align: 'center',title: '浠g爜', hide: true}
     // ,{field: 'color', align: 'center',title: '棰滆壊', hide: true}
     // ,{field: 'brand', align: 'center',title: '鍝佺墝', hide: true}
diff --git a/src/main/webapp/static/js/pakStore/locCheckOut.js b/src/main/webapp/static/js/pakStore/locCheckOut.js
index d2e5b58..61555f0 100644
--- a/src/main/webapp/static/js/pakStore/locCheckOut.js
+++ b/src/main/webapp/static/js/pakStore/locCheckOut.js
@@ -43,11 +43,13 @@
                     layer.msg('璇峰厛娣诲姞鐩樼偣搴撳瓨', {icon: 2});
                 } else {
                     var staNo = $("#staNoSelect").val();
+                    var outStaArea = $("#outboundAreaSelect").val();
                     if (staNo === "" || staNo === null){
                         layer.msg("璇烽�夋嫨鐩樼偣绔�", {icon: 2});
                         return;
                     }
                     let param = {
+                        outStaArea: outStaArea,
                         outSite: staNo,
                         locDetls: locDetlData
                     }
diff --git a/src/main/webapp/static/js/pakStore/turnOver.js b/src/main/webapp/static/js/pakStore/turnOver.js
index 0174c60..7e37ae0 100644
--- a/src/main/webapp/static/js/pakStore/turnOver.js
+++ b/src/main/webapp/static/js/pakStore/turnOver.js
@@ -34,11 +34,11 @@
             ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', sort:true}
             ,{field: 'loc_no', align: 'center',title: '搴撲綅鍙�', sort:true}
             ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: true}
-            ,{field: 'batch', align: 'center',title: '鎵瑰彿', sort:true}
+            // ,{field: 'batch', align: 'center',title: '鎵瑰彿', sort:true}
             ,{field: 'anfme', align: 'center',title: '鏁伴噺',hide: false}
             ,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜',hide: false}
-            ,{field: 'specs', align: 'center',title: '瑙勬牸',hide: true}
-            ,{field: 'weight', align: 'center',title: '閲嶉噺', hide: true}
+            // ,{field: 'specs', align: 'center',title: '瑙勬牸',hide: true}
+            // ,{field: 'weight', align: 'center',title: '閲嶉噺', hide: true}
             ,{field: 'owner$', align: 'center',title: '璐т富', hide: false}
             ,{field: 'payment$', align: 'center',title: '璐х墿褰㈡��', hide: false}
             ,{field: 'supp', align: 'center',title: 'po', hide: false}
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index ae994f4..e9ca8e4 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -101,7 +101,7 @@
 <!--        <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>-->
         <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a>
     {{# } }}
-<!--    <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a>-->
+    <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="del">鍒犻櫎</a>
 
     {{# if (d.settle == 98) { }}
     <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">褰诲簳瀹岀粨</a>
diff --git a/src/main/webapp/views/pakStore/locCheckOut.html b/src/main/webapp/views/pakStore/locCheckOut.html
index 393dfba..9f5c9f0 100644
--- a/src/main/webapp/views/pakStore/locCheckOut.html
+++ b/src/main/webapp/views/pakStore/locCheckOut.html
@@ -22,20 +22,21 @@
             border-radius: 5px;
             box-shadow: 0 0 3px rgba(0,0,0,.3);
         }
-        #staNoSpan {
+        #staNoSpan, #outboundAreaSpan {
             text-align: center;
             display: inline-block;
             width: 100px;
             font-size: 13px;
+            margin-right: 10px; /* 澧炲姞鍙宠竟闂磋窛 */
         }
         .layui-btn-container .layui-form-select {
             display: inline-block;
-            width: 150px;
+            width: 180px; /* 澧炲姞瀹藉害 */
             height: 30px;
         }
         .layui-btn-container .layui-form-select.layui-form-selected {
             display: inline-block;
-            width: 150px;
+            width: 180px; /* 澧炲姞瀹藉害 */
         }
         .layui-btn-container .layui-select-title input {
             font-size: 13px;
@@ -100,7 +101,16 @@
                 <select id="staNoSelect" lay-verify="required">
                     <option value="">璇烽�夋嫨绔欑偣</option>
                 </select>
-                <!-- 2.鍚姩鍑哄簱 -->
+
+                <!-- 2.閫夋嫨鏀捐揣鍖哄煙 -->
+                <span id="outboundAreaSpan">鏀捐揣鍖哄煙锛�</span>
+                <select id="outboundAreaSelect">
+                    <option value="1">1</option>
+                    <option value="2">2</option>
+                    <option value="3">3</option>
+                </select>
+
+                <!-- 3.鍚姩鍑哄簱 -->
                 <button class="layui-btn layui-btn-lg" id="btn-outbound" lay-event="outbound">鐩樼偣鍑哄簱</button>
             </div>
         </div>
@@ -129,4 +139,3 @@
 
 </body>
 </html>
-
diff --git a/src/main/webapp/views/pakStore/locDetlCheckQuery.html b/src/main/webapp/views/pakStore/locDetlCheckQuery.html
index dada33b..0395912 100644
--- a/src/main/webapp/views/pakStore/locDetlCheckQuery.html
+++ b/src/main/webapp/views/pakStore/locDetlCheckQuery.html
@@ -73,28 +73,28 @@
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿"  autocomplete="off">
+                <input class="layui-input" type="text" name="matnr" placeholder="SKU"  autocomplete="off">
             </div>
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <input class="layui-input" type="text" name="specs" placeholder="瑙勬牸"  autocomplete="off">
+                <input class="layui-input" type="text" name="boxType3" placeholder="閲囪喘鍗曞彿"  autocomplete="off">
+            </div>
+        </div>
+        <div class="layui-inline">
+            <div class="layui-input-inline">
+                <input class="layui-input" type="text" name="standby2" placeholder="UPC" autocomplete="off">
             </div>
         </div>
 <!--        <div class="layui-inline">-->
 <!--            <div class="layui-input-inline">-->
-<!--                <input class="layui-input" type="text" name="maktx" placeholder="鐗╂枡鎻忚堪" autocomplete="off">-->
+<!--                <select name="frozen" class="layui-input" type="text" autocomplete="off">-->
+<!--                    <option value="">鍐荤粨鍚�</option>-->
+<!--                    <option value="0">鏈喕缁�</option>-->
+<!--                    <option value="1">宸插喕缁�</option>-->
+<!--                </select>-->
 <!--            </div>-->
 <!--        </div>-->
-        <div class="layui-inline">
-            <div class="layui-input-inline">
-                <select name="frozen" class="layui-input" type="text" autocomplete="off">
-                    <option value="">鍐荤粨鍚�</option>
-                    <option value="0">鏈喕缁�</option>
-                    <option value="1">宸插喕缁�</option>
-                </select>
-            </div>
-        </div>
         <!-- 鏃ユ湡鑼冨洿 -->
         <div class="layui-inline" style="width: 300px">
             <div class="layui-input-inline">
@@ -127,6 +127,23 @@
 
 </body>
 <script>
+    layui.use(['form', 'jquery'], function () {
+        var $ = layui.jquery;
+        var form = layui.form;
+
+        // 閲嶇疆鎸夐挳鍔熻兘
+        $('#reset').on('click', function () {
+            // 閲嶇疆琛ㄥ崟鍐呭
+            $('#search-box')[0].reset();  // 娓呯┖琛ㄥ崟
+            form.render(); // 鏇存柊琛ㄥ崟UI
+
+            // 娓呴櫎鍏朵粬鎺т欢鐨勫�硷紝姣斿鏃ユ湡鑼冨洿
+            $('.layui-laydate-range').val('');
+
+            // 閲嶆柊娓叉煋琛ㄦ牸
+            tableReload();
+        });
+    });
 
     function getCol() {
         let cols = [
diff --git a/src/main/webapp/views/pakStore/locDetlQuery.html b/src/main/webapp/views/pakStore/locDetlQuery.html
index 51186ed..ea97a1d 100644
--- a/src/main/webapp/views/pakStore/locDetlQuery.html
+++ b/src/main/webapp/views/pakStore/locDetlQuery.html
@@ -64,28 +64,33 @@
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿"  autocomplete="off">
+                <input class="layui-input" type="text" name="matnr" placeholder="SKU"  autocomplete="off">
             </div>
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <input class="layui-input" type="text" name="specs" placeholder="瑙勬牸"  autocomplete="off">
+                <input class="layui-input" type="text" name="boxType3" placeholder="閲囪喘鍗曞彿"  autocomplete="off">
             </div>
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <input class="layui-input" type="text" name="maktx" placeholder="鐗╂枡鎻忚堪" autocomplete="off">
+                <input class="layui-input" type="text" name="standby2" placeholder="UPC" autocomplete="off">
             </div>
         </div>
         <div class="layui-inline">
             <div class="layui-input-inline">
-                <select name="frozen" class="layui-input" type="text" autocomplete="off">
-                    <option value="">鍐荤粨鍚�</option>
-                    <option value="0">鏈喕缁�</option>
-                    <option value="1">宸插喕缁�</option>
-                </select>
+                <input class="layui-input" type="text" name="standby1" placeholder="PO" autocomplete="off">
             </div>
         </div>
+<!--        <div class="layui-inline">-->
+<!--            <div class="layui-input-inline">-->
+<!--                <select name="frozen" class="layui-input" type="text" autocomplete="off">-->
+<!--                    <option value="">鍐荤粨鍚�</option>-->
+<!--                    <option value="0">鏈喕缁�</option>-->
+<!--                    <option value="1">宸插喕缁�</option>-->
+<!--                </select>-->
+<!--            </div>-->
+<!--        </div>-->
         <!-- 鏃ユ湡鑼冨洿 -->
         <div class="layui-inline" style="width: 300px">
             <div class="layui-input-inline">

--
Gitblit v1.9.1