From ba09c6c753de16da201e4d04ff77c549358c9fc3 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期四, 30 五月 2024 08:55:06 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java                |   23 +++
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/mapper/OrderDetlMapper.java            |    6 +
 zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickMatParam.java             |   20 +++
 zy-asrs-common/src/main/resources/mapper/wms/OrderDetlMapper.xml                           |   47 +++++++
 zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickConfirmParam.java         |   16 ++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java                 |  206 ++++++++++++++++++++++++++++++++++
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderDetlService.java          |    6 +
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java                  |    5 
 zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderDetlServiceImpl.java |   14 ++
 9 files changed, 338 insertions(+), 5 deletions(-)

diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickConfirmParam.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickConfirmParam.java
new file mode 100644
index 0000000..39f0afc
--- /dev/null
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickConfirmParam.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.common.domain.param;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class PickConfirmParam {
+
+    private String locNo;
+
+    private Integer staNo;
+
+    private List<PickMatParam> list;
+
+}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickMatParam.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickMatParam.java
new file mode 100644
index 0000000..24f7008
--- /dev/null
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/domain/param/PickMatParam.java
@@ -0,0 +1,20 @@
+package com.zy.asrs.common.domain.param;
+
+import lombok.Data;
+
+@Data
+public class PickMatParam {
+
+    private String matnr;
+
+    private String batch;
+
+    private String orderNo;
+
+    private Long orderId;
+
+    private Double count;
+
+    private Double useCount;
+
+}
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
index 417cba5..7a900d3 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/entity/OrderDetl.java
@@ -57,9 +57,12 @@
     @ApiModelProperty(value= "鏁伴噺")
     private Double anfme;
 
-    @ApiModelProperty(value= "")
+    @ApiModelProperty(value= "宸插畬鎴愭暟閲�")
     private Double qty;
 
+    @ApiModelProperty(value= "浣滀笟鏁伴噺")
+    private Double workQty;
+
     /**
      * 鍟嗗搧缂栫爜
      */
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/mapper/OrderDetlMapper.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/mapper/OrderDetlMapper.java
index 56add91..12976fb 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/mapper/OrderDetlMapper.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/mapper/OrderDetlMapper.java
@@ -19,10 +19,16 @@
 
     OrderDetl selectItem(@Param("orderId") Long orderId, @Param("matnr") String matnr, @Param("batch") String batch);
 
+    OrderDetl selectItem2(@Param("orderNo") String orderNo, @Param("matnr") String matnr, @Param("batch") String batch);
+
     IPage<OrderDetl> getPakoutPage(Page<OrderDetl> page ,Map<String, Object> map);
 
     int increase(@Param("orderId") Long orderId, @Param("hostId") Long hostId, @Param("matnr") String matnr, @Param("batch") String batch, @Param("qty") Double qty);
 
     int decrease(@Param("orderNo") String orderNo, @Param("hostId") Long hostId, @Param("matnr") String matnr, @Param("batch") String batch, @Param("qty") Double qty);
 
+    int increaseQtyByOrderNo(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty);
+
+    int increaseWorkQtyByOrderNo(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty);
+
 }
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderDetlService.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderDetlService.java
index 291af59..7a0b814 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderDetlService.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/OrderDetlService.java
@@ -10,10 +10,16 @@
 
     OrderDetl selectItem(Long orderId, String matnr, String batch);
 
+    OrderDetl selectItem(String orderNo, String matnr, String batch);
+
     IPage<OrderDetl> getPakoutPage(Integer curr, Integer limit, Map<String, Object> map);
 
     boolean increase(Long orderId, Long hostId, String matnr, String batch, Double qty);
 
     boolean decrease(String orderNo, Long hostId, String matnr, String batch, Double qty);
 
+    boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty);
+
+    boolean increaseWorkQtyByOrderNo(String orderNo, String matnr, String batch, Double qty);
+
 }
diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderDetlServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderDetlServiceImpl.java
index 6bbe5dd..8b66a4f 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderDetlServiceImpl.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/OrderDetlServiceImpl.java
@@ -19,6 +19,11 @@
     }
 
     @Override
+    public OrderDetl selectItem(String orderNo, String matnr, String batch) {
+        return this.baseMapper.selectItem2(orderNo, matnr, batch);
+    }
+
+    @Override
     public IPage<OrderDetl> getPakoutPage(Integer curr, Integer limit, Map<String, Object> map) {
         Page<OrderDetl> page = new Page<>(curr, limit);
         return this.baseMapper.getPakoutPage(page, map);
@@ -39,4 +44,13 @@
         }
     }
 
+    @Override
+    public boolean increaseQtyByOrderNo(String orderNo, String matnr, String batch, Double qty) {
+        return this.baseMapper.increaseQtyByOrderNo(orderNo, matnr, batch, qty) > 0;
+    }
+
+    @Override
+    public boolean increaseWorkQtyByOrderNo(String orderNo, String matnr, String batch, Double qty) {
+        return this.baseMapper.increaseWorkQtyByOrderNo(orderNo, matnr, batch, qty) > 0;
+    }
 }
diff --git a/zy-asrs-common/src/main/resources/mapper/wms/OrderDetlMapper.xml b/zy-asrs-common/src/main/resources/mapper/wms/OrderDetlMapper.xml
index e8a6247..05fb103 100644
--- a/zy-asrs-common/src/main/resources/mapper/wms/OrderDetlMapper.xml
+++ b/zy-asrs-common/src/main/resources/mapper/wms/OrderDetlMapper.xml
@@ -39,6 +39,21 @@
         </choose>
     </select>
 
+    <select id="selectItem2" resultType="com.zy.asrs.common.wms.entity.OrderDetl">
+        select * from wms_order_detl
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+    </select>
+
     <select id="getPakoutPage" resultType="com.zy.asrs.common.wms.entity.OrderDetl">
         select
         mod.*
@@ -86,4 +101,36 @@
         </choose>
     </update>
 
+    <update id="increaseQtyByOrderNo">
+        update wms_order_detl
+        set qty = qty + #{qty}
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+    </update>
+
+    <update id="increaseWorkQtyByOrderNo">
+        update wms_order_detl
+        set work_qty = work_qty + #{qty}
+        where 1=1
+        and order_no = #{orderNo}
+        and matnr = #{matnr}
+        <choose>
+            <when test="batch != null and batch != ''">
+                and batch = #{batch}
+            </when>
+            <otherwise>
+                and (batch IS NULL OR batch = '')
+            </otherwise>
+        </choose>
+    </update>
+
 </mapper>
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
index 7a47c72..a9c372d 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/MobileController.java
@@ -1,10 +1,16 @@
 package com.zy.asrs.wms.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zy.asrs.common.domain.dto.LocDetlDto;
 import com.zy.asrs.common.domain.dto.WrkDto;
 import com.zy.asrs.common.domain.entity.MobileAdjustResult;
+import com.zy.asrs.common.domain.entity.StaDesc;
+import com.zy.asrs.common.domain.enums.WorkNoType;
 import com.zy.asrs.common.domain.param.MobileAdjustParam;
+import com.zy.asrs.common.domain.param.PickConfirmParam;
+import com.zy.asrs.common.domain.param.PickMatParam;
 import com.zy.asrs.common.openapi.entity.param.CombParam;
+import com.zy.asrs.common.sys.service.StaDescService;
 import com.zy.asrs.common.web.BaseController;
 import com.zy.asrs.common.wms.entity.*;
 import com.zy.asrs.common.wms.service.*;
@@ -47,6 +53,16 @@
     private RolePermissionService rolePermissionService;
     @Autowired
     private PermissionService permissionService;
+    @Autowired
+    private LocMastService locMastService;
+    @Autowired
+    private StaDescService staDescService;
+    @Autowired
+    private OrderDetlService orderDetlService;
+    @Autowired
+    private CommonService commonService;
+    @Autowired
+    private MatService matService;
 
     @RequestMapping("/pda/WarehouseIn")
     @ManagerAuth
@@ -292,4 +308,194 @@
         return R.ok("鐩樼偣鎴愬姛");
     }
 
+    @RequestMapping("/loc/f/list")
+    @ManagerAuth(memo = "鑾峰彇鍦ㄥ簱搴撲綅")
+    public R locNoF(@RequestParam(required = false) String locNo){
+        LambdaQueryWrapper<LocMast> wrapper = new LambdaQueryWrapper<LocMast>()
+                .eq(LocMast::getLocSts, "F")
+                .eq(LocMast::getHostId, getHostId());
+        if (!Cools.isEmpty(locNo)) {
+            wrapper.like(LocMast::getLocNo, locNo);
+        }
+        List<LocMast> list = locMastService.list(wrapper);
+        return R.ok().add(list);
+    }
+
+    @RequestMapping("/pick/sta/list")
+    @ManagerAuth(memo = "鑾峰彇骞舵澘绔�")
+    public R pickSta(){
+        List<StaDesc> list = staDescService.list(new LambdaQueryWrapper<StaDesc>()
+                .eq(StaDesc::getTypeNo, 104)
+                .eq(StaDesc::getHostId, getHostId()));
+        return R.ok().add(list);
+    }
+
+    @RequestMapping("/pick/mat/list")
+    @ManagerAuth(memo = "鑾峰彇骞舵澘鐗╂枡")
+    public R pickMats(@RequestParam(required = false) String matnr){
+        List<DocType> docTypes = docTypeService.list(new LambdaQueryWrapper<DocType>().like(DocType::getDocName, "鍏ュ簱"));
+        ArrayList<Long> typeList = new ArrayList<>();
+        for (DocType docType : docTypes) {
+            typeList.add(docType.getDocId());
+        }
+
+        LambdaQueryWrapper<Order> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(Order::getStatus, 1);
+        wrapper.eq(Order::getHostId, getHostId());
+        wrapper.in(Order::getDocType, typeList);
+        List<Order> orders = orderService.list(wrapper);
+
+        ArrayList<Long> orderIds = new ArrayList<>();
+        for (Order order : orders) {
+            orderIds.add(order.getId());
+        }
+
+        //鎼滅储鏄庣粏
+        LambdaQueryWrapper<OrderDetl> wrapper1 = new LambdaQueryWrapper<>();
+        wrapper1.eq(OrderDetl::getStatus, 1);
+        wrapper1.eq(OrderDetl::getHostId, getHostId());
+        wrapper1.in(OrderDetl::getOrderId, orderIds);
+        if (!Cools.isEmpty(matnr)) {
+            wrapper1.like(OrderDetl::getMatnr, matnr);
+        }
+
+        List<OrderDetl> list = orderDetlService.list(wrapper1);
+
+        ArrayList<PickMatParam> maps = new ArrayList<>();
+        for (OrderDetl orderDetl : list) {
+            //鍓╀綑鍙敤鏁伴噺
+            double count = orderDetl.getAnfme() - orderDetl.getWorkQty();
+            if (count <= 0) {
+                continue;
+            }
+
+            PickMatParam matParam = new PickMatParam();
+            matParam.setMatnr(orderDetl.getMatnr());
+            matParam.setBatch(orderDetl.getBatch());
+            matParam.setOrderNo(orderDetl.getOrderNo());
+            matParam.setOrderId(orderDetl.getOrderId());
+            matParam.setCount(count);
+            maps.add(matParam);
+        }
+        return R.ok().add(maps);
+    }
+
+    @RequestMapping("/pick/in")
+    @ManagerAuth(memo = "骞舵澘鍏ュ簱")
+    @Transactional
+    public R pickConfirm(@RequestBody PickConfirmParam param){
+        LocMast locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>()
+                .eq(LocMast::getLocNo, param.getLocNo())
+                .eq(LocMast::getHostId, getHostId()));
+        if (!locMast.getLocSts().equals("F")) {
+            return R.error("搴撲綅鐘舵�佷笉鏄湪搴�");
+        }
+
+        StaDesc staDesc = staDescService.getOne(new LambdaQueryWrapper<StaDesc>()
+                .eq(StaDesc::getTypeNo, 104)
+                .eq(StaDesc::getStnNo, param.getStaNo())
+                .eq(StaDesc::getHostId, getHostId()));
+        if (staDesc == null) {
+            return R.error("绔欑偣涓嶅瓨鍦�");
+        }
+
+        //妫�楠屼紶鍙傛槸鍚﹀拰璁㈠崟鏄庣粏鍖归厤
+        for (PickMatParam matParam : param.getList()) {
+            LambdaQueryWrapper<OrderDetl> wrapper = new LambdaQueryWrapper<OrderDetl>()
+                    .eq(OrderDetl::getOrderNo, matParam.getOrderNo())
+                    .eq(OrderDetl::getHostId, getHostId())
+                    .eq(OrderDetl::getStatus, 1)
+                    .eq(OrderDetl::getMatnr, matParam.getMatnr());
+            if (!Cools.isEmpty(matParam.getBatch())) {
+                wrapper.eq(OrderDetl::getBatch, matParam.getBatch());
+            }
+            OrderDetl orderDetl = orderDetlService.getOne(wrapper);
+            if (orderDetl == null) {
+                return R.error("鐗╂枡鏁版嵁涓嶅瓨鍦�");
+            }
+
+            //鍓╀綑鍙敤鏁伴噺
+            double count = orderDetl.getAnfme() - orderDetl.getWorkQty();
+            if (matParam.getCount() != count) {
+                return R.error("鐗╂枡鏁版嵁宸茶繃鏈�");
+            }
+
+            if (matParam.getUseCount() > count) {
+                return R.error("鍙敤鏁伴噺涓嶈冻");
+            }
+        }
+
+        Date now = new Date();
+        // 鐢熸垚宸ヤ綔鍙�
+        int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(104));
+        // 鐢熸垚宸ヤ綔妗�
+        WrkMast wrkMast = new WrkMast();
+        wrkMast.setWrkNo(workNo);
+        wrkMast.setIoTime(now);
+        wrkMast.setWrkSts(101L); // 宸ヤ綔鐘舵�侊細101.鐢熸垚鍑哄簱
+        wrkMast.setIoType(104); // 鍏ュ嚭搴撶姸鎬�
+        wrkMast.setIoPri(13D); // 浼樺厛绾э細13
+        wrkMast.setSourceStaNo(staDesc.getDeviceStn()); // 婧愮珯
+        wrkMast.setStaNo(staDesc.getStnNo()); // 鐩爣绔�
+        wrkMast.setSourceLocNo(param.getLocNo()); // 婧愬簱浣�
+        wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+        wrkMast.setPicking("Y"); // 鎷f枡
+        wrkMast.setExitMk("N"); // 閫�鍑�
+        wrkMast.setEmptyMk("N"); // 绌烘澘
+        wrkMast.setBarcode(locMast.getBarcode());
+        wrkMast.setAppeUser(String.valueOf(getUserId())); // 鎿嶄綔浜哄憳鏁版嵁
+        wrkMast.setAppeTime(now);
+        wrkMast.setModiUser(String.valueOf(getUserId()));
+        wrkMast.setModiTime(now);
+        wrkMast.setHostId(getHostId());
+        wrkMast.setCrnNo(staDesc.getDeviceNo());
+        if (!wrkMastService.save(wrkMast)) {
+            throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鍑哄簱搴撲綅鍙凤細" + param.getLocNo());
+        }
+        // 鐢熸垚宸ヤ綔妗f槑缁�
+        for (PickMatParam matParam : param.getList()) {
+            LambdaQueryWrapper<Mat> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(Mat::getHostId, getHostId());
+            wrapper.eq(Mat::getStatus, 1);
+            wrapper.eq(Mat::getMatnr, matParam.getMatnr());
+            Mat mat = matService.getOne(wrapper);
+            if (mat == null) {
+                throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐ワ紝鐗╂枡淇℃伅涓嶅瓨鍦細" + matParam.getMatnr());
+            }
+
+            WrkDetl wrkDetl = new WrkDetl();
+            wrkDetl.sync(mat);
+            wrkDetl.setOrderNo(matParam.getOrderNo());
+            wrkDetl.setWrkNo(workNo);
+            wrkDetl.setIoTime(now);
+            wrkDetl.setAnfme(matParam.getUseCount()); // 鏁伴噺
+            wrkDetl.setAppeTime(now);
+            wrkDetl.setAppeUser(getUserId());
+            wrkDetl.setModiTime(now);
+            wrkDetl.setModiUser(getUserId());
+            wrkDetl.setHostId(getHostId());
+            wrkDetl.setWrkMastId(wrkMast.getId());
+            if (!wrkDetlService.save(wrkDetl)) {
+                throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+            }
+
+            //鏇存柊璁㈠崟宸ヤ綔鏁伴噺
+            orderDetlService.increaseWorkQtyByOrderNo(matParam.getOrderNo(), matParam.getMatnr(), matParam.getBatch(), matParam.getUseCount());
+        }
+        // 淇敼搴撲綅鐘舵��:   F.鍦ㄥ簱 ====>>> R.鍑哄簱棰勭害/P.鎷f枡/鐩樼偣/骞舵澘鍑哄簱涓�
+        locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, param.getLocNo()).eq(LocMast::getHostId, getHostId()));
+        if (locMast.getLocSts().equals("F")) {
+            locMast.setLocSts("P");
+            locMast.setModiUser(getUserId());
+            locMast.setModiTime(now);
+            if (!locMastService.updateById(locMast)) {
+                throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細" + param.getLocNo());
+            }
+        } else {
+            throw new CoolException(param.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+        }
+
+        return R.ok();
+    }
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
index 5c4b383..64b2fe6 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/task/handler/WorkMastHandler.java
@@ -1,10 +1,7 @@
 package com.zy.asrs.wms.task.handler;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.zy.asrs.common.wms.entity.LocDetl;
-import com.zy.asrs.common.wms.entity.LocMast;
-import com.zy.asrs.common.wms.entity.WrkDetl;
-import com.zy.asrs.common.wms.entity.WrkMast;
+import com.zy.asrs.common.wms.entity.*;
 import com.zy.asrs.common.wms.service.*;
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.wms.task.AbstractHandler;
@@ -36,6 +33,8 @@
     private LocDetlService locDetlService;
     @Autowired
     private WaitPakinService waitPakinService;
+    @Autowired
+    private OrderDetlService orderDetlService;
 
     public ReturnT<String> start(WrkMast wrkMast) {
         // 99.鍏ュ簱瀹屾垚
@@ -192,6 +191,22 @@
                                 exceptionHandle("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr());
                             }
                         }
+
+                        // 鏇存柊璁㈠崟瀹屾垚鏁伴噺
+                        OrderDetl orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+                        if (orderDetl == null) {
+                            orderDetl = orderDetlService.selectItem(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch());
+                        }
+                        try {
+                            if(!Cools.isEmpty(orderDetl)){
+                                if(!orderDetlService.increaseQtyByOrderNo(wrkDetl.getOrderNo(), wrkDetl.getMatnr(),
+                                        orderDetl.getBatch(),wrkDetl.getAnfme())){
+                                    TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                                    return FAIL.setMsg("骞舵澘鍏ュ簱 ===>> 鏇存柊璁㈠崟瀹屾垚鏁伴噺澶辫触; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]");
+                                }
+                            }
+                        } catch (Exception ignore){}
+
                     }
                     // 淇敼搴撲綅鐘舵�� Q ====>> F
                     if (locMast.getLocSts().equals("Q")) {

--
Gitblit v1.9.1