From b7380ff70bcc962494cd6640fcc3eac21aaab0a1 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期四, 15 一月 2026 08:09:29 +0800
Subject: [PATCH] 1.自动下发出库任务给wcs 2.wcs申请入库

---
 src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java                   |  139 ++++++
 src/main/java/com/zy/asrs/task/WorkMastScheduler.java                         |   27 +
 src/main/java/com/zy/asrs/controller/MobileController.java                    |   22 -
 src/main/java/com/zy/common/web/WcsController.java                            |    6 
 src/main/java/com/zy/asrs/service/OpenService.java                            |    6 
 /dev/null                                                                     |  261 -------------
 src/main/java/com/zy/asrs/task/handler/AutomaticallyIssueWCSTasksHandler.java |   83 ++-
 src/main/java/com/zy/common/web/param/SearchLocParam.java                     |   15 
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java                 |  366 ------------------
 src/main/java/com/zy/asrs/task/WorkLogScheduler.java                          |   28 -
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java                   |  179 --------
 src/main/resources/application.yml                                            |    6 
 src/main/java/com/zy/asrs/service/MobileService.java                          |    3 
 src/main/java/com/zy/asrs/task/AutomaticallyIssueWCSTasksScheduler.java       |    5 
 14 files changed, 238 insertions(+), 908 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index eb449cd..8489065 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -246,34 +246,12 @@
         return R.ok("缁勬墭鎴愬姛");
     }
 
-    @RequestMapping("/comb/agv/auth")
-    @ManagerAuth(memo = "缁勬墭")
-    public R combAgv(@RequestBody CombParam combParam){
-//        mobileService.comb(combParam, getUserId());
-        mobileService.combAgv(combParam, getUserId());
-        return R.ok("缁勬墭鎴愬姛");
-    }
-
     @RequestMapping("/combAuto/auth")
     @ManagerAuth(memo = "缁勬墭")
     public R combAuto(@RequestBody CombParam combParam){
 //        mobileService.comb(combParam, getUserId());
         mobileService.comb(combParam, getUserId());
         return R.ok("缁勬墭鎴愬姛");
-    }
-
-    @RequestMapping("/combAuto/wcs/auth")
-//    @ManagerAuth(memo = "缁勬墭")
-    public R combAutoWcs(@RequestBody CombParam combParam){
-//        mobileService.comb(combParam, getUserId());
-        mobileService.combAuto(combParam, 7777L);
-        return R.ok("缁勬墭鎴愬姛");
-    }
-
-    @RequestMapping("/AgvUnlockLoc/wcs/auth")
-    public R agvUnlockLoc(@RequestBody AgvUnlockLoc agvUnlockLoc){
-        mobileService.agvUnlockLoc(agvUnlockLoc);
-        return R.ok("绂诲簱鎴愬姛");
     }
 
     @RequestMapping("/kitting/query/auth")
diff --git a/src/main/java/com/zy/asrs/service/MobileService.java b/src/main/java/com/zy/asrs/service/MobileService.java
index a295796..77dc08f 100644
--- a/src/main/java/com/zy/asrs/service/MobileService.java
+++ b/src/main/java/com/zy/asrs/service/MobileService.java
@@ -45,9 +45,6 @@
      * 缁勬墭
      */
     void comb(CombParam param, Long userId);
-    void combAuto(CombParam param, Long userId);
-    void combAgv(CombParam param, Long userId);
-    void agvUnlockLoc(AgvUnlockLoc agvUnlockLoc);
 
     /**
      * 榻愬鍏ュ簱鏌ヨ
diff --git a/src/main/java/com/zy/asrs/service/OpenService.java b/src/main/java/com/zy/asrs/service/OpenService.java
index 65ac122..e8cfe03 100644
--- a/src/main/java/com/zy/asrs/service/OpenService.java
+++ b/src/main/java/com/zy/asrs/service/OpenService.java
@@ -51,14 +51,8 @@
     void taskArmWorkspaceStatus(TaskArmWorkspaceStatusParam param);
     boolean TaskArmLocStatus(ArmOKParam param);
     void taskArmWorkOrderStatus(OrderArmEndParam param);
-    boolean TaskArmWorkOrderSign(OrderArmEndParam param);
-    boolean TaskAgvReport(TaskAgvReportParam param);
-    boolean taskAgvCreate(TaskAgvCreateParam param);
     List<AgvLocListDetlParam> getAgvLocList(AgvLocListParam param);
     boolean bindCtnrAndBin(bindCtnrAndBinParam param);
-    boolean agvApplicationPassedTheGrating(ArmAgvGratingParam param);
-    boolean agvApplicationPassedTheGrating(AgvGoTheArnParam param);
-    boolean agvBindAndBin(String taskNo);
     boolean taskArmOrderResult(OrderArmEndParam param);
     List<PickWrkDetlListParam> getPickList(PdaPickListParam param);
 
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 8121973..26dc432 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -24,7 +24,6 @@
 import com.zy.common.model.enums.WorkNoType;
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.HttpHandler;
-import com.zy.erp.kingdee.utils.PostMesDataUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -706,334 +705,6 @@
         }
     }
 
-    @Override
-    @Transactional
-    public void combAgv(CombParam param, Long userId) {
-        if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
-            throw new CoolException(BaseRes.PARAM);
-        }
-//        if(param.getCombMats().size()>1){
-//            throw new CoolException("璇锋彁鍙栦竴涓晢鍝侊紝鎴栬�呭埛鏂伴噸鏂扮粍鎵橈紒");
-//        }
-        // 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁
-        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
-                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
-            throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱");
-        }
-
-        if(param.getBarcode().length()!=6){
-            throw new CoolException("鏉$爜闀垮害涓嶆槸6浣�===>>" + param.getBarcode());
-        }
-//        if (param.getCombMats().size()>1){
-//            throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode());
-//        }
-
-        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
-        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
-        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode()));
-        LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",param.getLocNo()));
-        if (countLoc > 0 || countWrk > 0 || countwait > 0) {
-            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode());
-        }
-
-
-        Date now = new Date();
-        boolean allEmpty = true;
-        if (param.getCombMats() != null) {
-            for (CombParam.CombMat mat : param.getCombMats()) {
-                if (!Cools.isEmpty(mat.getOrderNo())) {
-                    allEmpty = false;
-                    break;
-                }
-            }
-        }
-        // 鏃犲崟缁勬墭
-        if (allEmpty) {
-
-            // 鐢熸垚鍏ュ簱閫氱煡妗�
-            List<DetlDto> detlDtos = new ArrayList<>();
-            param.getCombMats().forEach(elem -> {
-                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                        elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3(),  elem.getAnfme());
-                detlDto.setMemo(elem.getMemo());
-                detlDto.setSupp(elem.getSupp());
-                detlDto.setManu(elem.getManu());
-                detlDto.setSuppCode(elem.getSuppCode());
-                if (DetlDto.has(detlDtos, detlDto)) {
-                    DetlDto one = DetlDto.findDto(detlDtos, detlDto);
-                    assert one != null;
-                    one.setAnfme(one.getAnfme() + detlDto.getAnfme());
-                } else {
-                    detlDtos.add(detlDto);
-                }
-            });
-
-
-            for (DetlDto detlDto : detlDtos) {
-                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
-                if (Cools.isEmpty(mat)) {
-                    throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
-                }
-                WaitPakin waitPakin = new WaitPakin();
-                waitPakin.sync(mat);
-                waitPakin.setBatch(detlDto.getBatch());
-                waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
-                waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
-                waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
-                waitPakin.setStatus("Y");    // 鐘舵��
-                waitPakin.setAppeUser(userId);
-                waitPakin.setAppeTime(now);
-                waitPakin.setModiUser(userId);
-                waitPakin.setModiTime(now);
-                waitPakin.setMemo(detlDto.getMemo());
-                waitPakin.setSupp(detlDto.getSupp());
-                waitPakin.setSuppCode(detlDto.getSuppCode());
-                waitPakin.setManu(detlDto.getManu());
-                waitPakin.setStandby1(detlDto.getStandby1());
-                waitPakin.setStandby2(detlDto.getStandby2());
-                waitPakin.setStandby3(detlDto.getStandby3());
-                waitPakin.setBoxType1(detlDto.getBoxType1());
-                waitPakin.setBoxType2(detlDto.getBoxType2());
-                waitPakin.setBoxType3(detlDto.getBoxType3());
-                if (!waitPakinService.insert(waitPakin)) {
-                    throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
-                }
-            }
-            // 鍏宠仈缁勬墭
-        } else {
-//            Order order = orderService.selectByNo(param.getOrderNo());
-            Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, param.getCombMats().get(0).getOrderNo());
-            if (Cools.isEmpty(order) || order.getSettle() > 2) {
-                throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
-            }
-            // 鐢熸垚鍏ュ簱閫氱煡妗�
-            List<DetlDto> detlDtos = new ArrayList<>();
-            param.getCombMats().forEach(elem -> {
-
-                // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
-//                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
-                OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                        elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3());
-                if (elem.getAnfme() > orderDetl.getEnableQty()) {
-                    throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�");
-                }
-                OrderInAndOutUtil.increaseWorkQty(Boolean.TRUE,order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                        elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3(), elem.getAnfme());
-                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                        elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3(),  elem.getAnfme());
-                detlDto.setMemo(elem.getMemo());
-                detlDto.setSupp(elem.getSupp());
-                detlDto.setManu(elem.getManu());
-                detlDto.setSuppCode(elem.getSuppCode());
-                if (DetlDto.has(detlDtos, detlDto)) {
-                    DetlDto one = DetlDto.findDto(detlDtos, detlDto);
-                    assert one != null;
-                    one.setAnfme(one.getAnfme() + detlDto.getAnfme());
-                } else {
-                    detlDtos.add(detlDto);
-                }
-            });
-            for (DetlDto detlDto : detlDtos) {
-                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
-                if (Cools.isEmpty(mat)) {
-                    throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
-                }
-                WaitPakin waitPakin = new WaitPakin();
-                waitPakin.sync(mat);
-                waitPakin.setOrderNo(order.getOrderNo());   // 鍗曟嵁缂栧彿
-                waitPakin.setBatch(detlDto.getBatch());     // 搴忓垪鐮�
-                waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
-                waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
-                waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
-                waitPakin.setStatus("Y");    // 鐘舵��
-                waitPakin.setAppeUser(userId);
-                waitPakin.setAppeTime(now);
-                waitPakin.setModiUser(userId);
-                waitPakin.setModiTime(now);
-                waitPakin.setMemo(detlDto.getMemo());
-                waitPakin.setSupp(detlDto.getSupp());
-                waitPakin.setSuppCode(detlDto.getSuppCode());
-                waitPakin.setManu(detlDto.getManu());
-                waitPakin.setStandby1(detlDto.getStandby1());
-                waitPakin.setStandby2(detlDto.getStandby2());
-                waitPakin.setStandby3(detlDto.getStandby3());
-                waitPakin.setBoxType1(detlDto.getBoxType1());
-                waitPakin.setBoxType2(detlDto.getBoxType2());
-                waitPakin.setBoxType3(detlDto.getBoxType3());
-                if (!waitPakinService.insert(waitPakin)) {
-                    throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
-                }
-            }
-
-            BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-            BasAgvLocNo basAgvLocNoSou = basAgvLocNoService.selectOne(new EntityWrapper<BasAgvLocNo>().eq("loc_no", param.getLocNo()));
-            AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam();
-            agvBindCtnrAndBinParam.setCtnrCode(param.getBarcode());
-            agvBindCtnrAndBinParam.setCtnrTyp("1");
-            agvBindCtnrAndBinParam.setStgBinCode(basAgvLocNoSou.getAgvLocNo());
-            agvBindCtnrAndBinParam.setReqCode(String.valueOf(System.currentTimeMillis()));
-            agvBindCtnrAndBinParam.setIndBind("1");
-            ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV瀹瑰櫒缁戝畾",
-                    AgvConstant.AGV_URL+"/"+AgvConstant.AGV_1LBind,AgvConstant.getAGVADAPTOR(1), agvBindCtnrAndBinParam);
-            if(resultBind.getCode() != 200){
-                throw new CoolException("agv鍏ュ簱缁戝畾澶辫触");
-            }
-            locMast.setBarcode(param.getBarcode());
-            locMast.setLocSts("R");
-            if(!locMastService.updateById(locMast)){
-                throw new CoolException("鏂板agv鍏ュ簱浠诲姟澶辫触");
-            }
-            OrderInAndOutUtil.updateOrder(Boolean.TRUE,order.getId(), 2L, userId);
-        }
-    }
-
-    @Override
-    @Transactional
-    public void
-    combAuto(CombParam param, Long userId) {
-        if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
-            throw new CoolException(BaseRes.PARAM);
-        }
-//        if(param.getCombMats().size()>1){
-//            throw new CoolException("璇锋彁鍙栦竴涓晢鍝侊紝鎴栬�呭埛鏂伴噸鏂扮粍鎵橈紒");
-//        }
-        // 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁
-        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
-                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
-            throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱");
-        }
-
-        if(param.getBarcode().length()!=6){
-            throw new CoolException("鏉$爜闀垮害涓嶆槸6浣�===>>" + param.getBarcode());
-        }
-//        if (param.getCombMats().size()>1){
-//            throw new CoolException("涓嶅厑璁告贩鏂�===>>" + param.getBarcode());
-//        }
-
-        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
-        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
-        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode()));
-        if (countLoc > 0 || countWrk > 0 || countwait > 0) {
-            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode());
-        }
-
-        Date now = new Date();
-        boolean result = false;
-        String orderNo = null;
-        String orderNo1 = null;
-        for (CombParam.CombMat combMat : param.getCombMats()) {
-            if(combMat.getSupplier().equals("1")){
-                List<OrderDetlPakin> orderDetlPakins2 = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
-                        .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
-                        .eq("box_type2","BU-00001"));
-                if (orderDetlPakins2.size() > 0) {
-                    orderNo1 = orderDetlPakins2.get(0).getOrderNo();
-                } else {
-                    throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
-                }
-                result = true;
-            }
-            //0
-            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"));
-            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());
-            }
-        }
-
-
-
-//        Order order = orderService.selectByNo(param.getOrderNo());
-        Order order = OrderInAndOutUtil.selectByNo(Boolean.TRUE, orderNo);
-        if (Cools.isEmpty(order) || order.getSettle() > 2) {
-            throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
-        }
-        Order order1 = orderService.selectByNo(orderNo);
-        if (Cools.isEmpty(order1) || order1.getSettle() > 2) {
-            throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
-        }
-        if(result){
-            order1.setPayType(1);//  y->h
-            order1.setSalesman(orderNo1);
-            orderService.updateById(order1);
-        }
-        // 鐢熸垚鍏ュ簱閫氱煡妗�
-        List<DetlDto> detlDtos = new ArrayList<>();
-        param.getCombMats().forEach(elem -> {
-            // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
-//                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
-            OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                    elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3());
-            if (elem.getAnfme() > orderDetl.getEnableQty()) {
-                throw new CoolException(orderDetl.getMatnr() + "鍏ュ簱鏁伴噺涓嶅悎娉�");
-            }
-            // 淇敼璁㈠崟浣滀笟鏁伴噺
-//                if (!orderDetlService.increaseWorkQty(order.getId(), elem.getMatnr(), elem.getBatch(), elem.getAnfme())) {
-//                    throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触");
-//                }
-            OrderInAndOutUtil.increaseWorkQty(Boolean.TRUE,order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                    elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3(), elem.getAnfme());
-            DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
-                    elem.getBoxType1(),elem.getBoxType2(),elem.getBoxType3(),  elem.getAnfme());
-            detlDto.setMemo(elem.getMemo());
-            detlDto.setSupp(elem.getSupp());
-            detlDto.setManu(elem.getManu());
-            detlDto.setSuppCode(elem.getSuppCode());
-            if (DetlDto.has(detlDtos, detlDto)) {
-                DetlDto one = DetlDto.findDto(detlDtos, detlDto);
-                assert one != null;
-                one.setAnfme(one.getAnfme() + detlDto.getAnfme());
-            } else {
-                detlDtos.add(detlDto);
-            }
-        });
-        for (DetlDto detlDto : detlDtos) {
-            Mat mat = matService.selectByMatnr(detlDto.getMatnr());
-            if (Cools.isEmpty(mat)) {
-                throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
-            }
-            WaitPakin waitPakin = new WaitPakin();
-            waitPakin.sync(mat);
-            waitPakin.setOrderNo(orderNo);   // 鍗曟嵁缂栧彿
-            waitPakin.setBatch(detlDto.getBatch());     // 搴忓垪鐮�
-            waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
-            waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
-            waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
-            waitPakin.setStatus("Y");    // 鐘舵��
-            waitPakin.setAppeUser(userId);
-            waitPakin.setAppeTime(now);
-            waitPakin.setModiUser(userId);
-            waitPakin.setModiTime(now);
-            waitPakin.setMemo(detlDto.getMemo());
-            waitPakin.setSupp(detlDto.getSupp());
-            waitPakin.setSuppCode(detlDto.getSuppCode());
-            waitPakin.setManu(detlDto.getManu());
-            waitPakin.setStandby1(detlDto.getStandby1());
-            waitPakin.setStandby2(detlDto.getStandby2());
-            waitPakin.setStandby3(detlDto.getStandby3());
-            waitPakin.setBoxType1(detlDto.getBoxType1());
-            waitPakin.setBoxType2(detlDto.getBoxType2());
-            waitPakin.setBoxType3(detlDto.getBoxType3());
-            if (!waitPakinService.insert(waitPakin)) {
-                throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
-            }
-        }
-//            orderService.updateSettle(order.getId(), 2L, userId);
-        OrderInAndOutUtil.updateOrder(Boolean.TRUE,order.getId(), 2L, userId);
-
-
-    }
 
     @Override
     @Transactional
@@ -1680,42 +1351,5 @@
         } else {
             throw new CoolException(locDetl.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
         }
-    }
-    @Override
-    public void agvUnlockLoc(AgvUnlockLoc agvUnlockLoc){
-        Date now = new Date();
-        if(agvUnlockLoc.getFloorNo().equals(1)){
-            LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
-            if(locMast != null){
-                locMast.setLocSts("O");
-                locMast.setBarcode("");
-                locMast.setIoTime(now);
-                locMast.setModiTime(now);
-                if (!locMastService.updateById(locMast)) {
-                    throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
-                }
-            }
-        }else{
-            LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
-            AgvBindCtnrAndBinTwoParam agvBindCtnrAndBinTwoParam = new AgvBindCtnrAndBinTwoParam();
-            agvBindCtnrAndBinTwoParam.setReqCode(String.valueOf(snowflakeIdWorker.nextId()));
-            agvBindCtnrAndBinTwoParam.setPodcode(agvUnlockLoc.getPodcode());
-            agvBindCtnrAndBinTwoParam.setPositionCode(agvUnlockLoc.getPositionCode());
-            agvBindCtnrAndBinTwoParam.setIndBind("0");;
-            ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV搴撲綅瑙g粦",
-                    AgvConstant.AGV_URL+"/"+AgvConstant.AGV_hikRpcService,AgvConstant.getAGVADAPTOR(2), agvBindCtnrAndBinTwoParam);
-            if (resultBind.getCode()!=1){
-                if(locMast != null){
-                    locMast.setLocSts("O");
-                    locMast.setBarcode("");
-                    locMast.setIoTime(now);
-                    locMast.setModiTime(now);
-                    if (!locMastService.updateById(locMast)) {
-                        throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
-                    }
-                }
-            }
-        }
-
     }
 }
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 b3f4727..c9f1035 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -23,7 +23,6 @@
 import com.zy.common.service.CommonService;
 import com.zy.common.utils.HttpHandler;
 import com.zy.common.utils.NodeUtils;
-import com.zy.erp.kingdee.utils.PostMesDataUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -838,95 +837,6 @@
 
     @Override
     @Transactional
-    public boolean TaskArmWorkOrderSign(OrderArmEndParam param) {
-        BasArmMastSign basArmMastSignNew = basArmMastSignService.selectOne(
-                new EntityWrapper<BasArmMastSign>()
-                        .eq("order_no", param.getOrderNo())
-                        .eq("create_time", param.getBindingTags())
-                        .eq("status", 0)
-        );
-        if (Cools.isEmpty(basArmMastSignNew)) {
-            return false;
-        }
-        return true;
-    }
-
-    @Override
-    @Transactional
-    public boolean TaskAgvReport(TaskAgvReportParam param) {
-        BasAgvMast basAgvMast = basAgvMastService.selectOne(new EntityWrapper<BasAgvMast>().eq("task_no", param.getTaskNo()));
-        if (Cools.isEmpty(basAgvMast)) {
-            return false;
-        }
-        basAgvMast.setStatus(2);
-        basAgvMastService.updateById(basAgvMast);
-        return true;
-    }
-
-    @Override
-    @Transactional
-    public boolean taskAgvCreate(TaskAgvCreateParam param) {
-        // 鍙傛暟妫�鏌�
-        if (param == null) {
-            throw new CoolException("鍙傛暟涓嶈兘涓虹┖");
-        }
-        BasAgvMast basAgvMast = new BasAgvMast();
-
-        Long ts = basAgvMast.getTimestamp();
-        if (ts == null) {
-            throw new CoolException("timestamp 鐢熸垚澶辫触");
-        }
-
-        String barcode = String.valueOf(ts);
-        if (barcode.length() > 16) {
-            barcode = barcode.substring(0, 16);
-        }
-        basAgvMast.setBarcode(barcode);
-
-        String locNo = null;
-        String staNo = null;
-        basAgvMast.setTaskNo(commonService.getWorkNo(0));
-        basAgvMast.setSourceStaNo(param.getSourceStaNo());
-        basAgvMast.setStaNo(param.getStaNo());
-        basAgvMast.setSourceLocNo(param.getSourceLocNo());
-        basAgvMast.setLocNo(param.getLocNo());
-        basAgvMast.setPriority(1L);
-        basAgvMast.setStatus(0);
-        basAgvMast.setAppeTime(new Date());
-        basAgvMast.setModiTime(new Date());
-        basAgvMast.setIoType(param.getIoType());
-        basAgvMast.setFloorNo(param.getFloorNo());
-        switch (basAgvMast.getIoType()) {
-            // AGV搴撲綅==銆嬭緭閫佺嚎绔欑偣  0
-            // AGV搴撲綅==銆婣GV搴撲綅  1
-            // 杈撻�佺嚎绔欑偣==銆婣GV搴撲綅  2
-            // 杈撻�佺嚎绔欑偣==銆嬭緭閫佺嚎绔欑偣  3
-            case 0:
-            case 1:
-                locNo = param.getSourceLocNo();
-                break;
-            case 2:
-            case 3:
-                staNo = param.getSourceStaNo().toString();
-                break;
-        }
-        basAgvMastService.insert(basAgvMast);
-
-        bindCtnrAndBinParam bindParam = new bindCtnrAndBinParam();
-        bindParam.setBarcode(basAgvMast.getBarcode());
-        bindParam.setIndBind("1");
-        bindParam.setFloorNo(basAgvMast.getFloorNo());
-        bindParam.setLocNo(locNo);
-        bindParam.setStaNo(staNo);
-        if (bindCtnrAndBin(bindParam)) {
-            return true;
-        } else {
-            throw new CoolException("鏈兘缁戝畾");
-        }
-    }
-
-    @Override
-    @Transactional
     public List<PickWrkDetlListParam> getPickList(PdaPickListParam param) {
         List<WrkDetl> wrkDetls = wrkDetlService.findByBarcode(param.getBarcode());
         List<PickWrkDetlListParam> result = new ArrayList<>();
@@ -1060,95 +970,6 @@
         return true;
     }
 
-
-    @Override
-    @Transactional
-    public boolean agvApplicationPassedTheGrating(ArmAgvGratingParam arm) {
-        ReturnT<String> result = new PostMesDataUtils().postMesDataArmGrating("鍏夋爡璇锋眰涓嬪彂锛�", ArmConstant.getArmUrl(arm.getArmNo()), ArmConstant.ARM_ADAPTOR_GRATING_AGVENTER, arm);
-        if (result.getCode() == 200) {
-            return true;
-        }
-        return false;
-    }
-
-    @Override
-    @Transactional
-    public boolean agvApplicationPassedTheGrating(AgvGoTheArnParam param) {
-        String URL = "http://10.10.10.200:8181/rcms/services/rest/hikRpcService"; // AGV鎺ュ彛鍦板潃
-        String AGVPath = "continueTask"; // 鎺ュ彛璺緞
-        AgvGoParam agvGoParam = new AgvGoParam();
-        agvGoParam.setCode("0");
-        agvGoParam.setMessage("缁х画鎵ц");
-        agvGoParam.setReqCode(param.getReqCode());
-        agvGoParam.setTaskCode(param.getTaskCode());
-        ReturnT<String> result = new PostMesDataUtils().postMesDataArmGrating("鍏夋爡涓嬪彂鍚庣户缁换鍔★細", URL, AGVPath, agvGoParam);
-        if (result.getCode() == 200) {
-            return true;
-        }
-        return false;
-    }
-
-    @Override
-    @Transactional
-    public boolean agvBindAndBin(String taskNo) {
-        String URL = "http://10.10.10.200:8181"; // AGV鎺ュ彛鍦板潃
-        String AGVPath = "rcms/services/rest/hikRpcService/bindCtnrAndBin"; // 鎺ュ彛璺緞
-        BasAgvMast basAgvMast = basAgvMastService.selectOne(new EntityWrapper<BasAgvMast>().eq("task_no", taskNo));
-        if (Cools.isEmpty(basAgvMast)) {
-            return false;
-        }
-        if (basAgvMast.getFloorNo() == 1) {
-            BasAgvLocNoService basAgvLocNoService = SpringUtils.getBean(BasAgvLocNoService.class);
-            BasAgvLocNo basAgvLocNoEnd = basAgvLocNoService.selectOne(
-                    new EntityWrapper<BasAgvLocNo>().eq("sta_no", basAgvMast.getStaNo())
-            );
-            BasAgvLocNo locNo = basAgvLocNoService.selectOne(
-                    new EntityWrapper<BasAgvLocNo>().eq("loc_no", basAgvMast.getLocNo())
-            );
-            String binCode = basAgvLocNoEnd != null
-                    ? basAgvLocNoEnd.getAgvLocNo()
-                    : (locNo != null ? locNo.getAgvLocNo() : null);
-            if (Cools.isEmpty(basAgvMast)) {
-                return false;
-            }
-            String ctnrCode = basAgvMast.getBarcode().length() > 1 ? basAgvMast.getBarcode() : basAgvMast.getTimestamp().toString();
-            AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam();
-            agvBindCtnrAndBinParam.setReqCode(basAgvMast.getTaskNo() + "-" + System.currentTimeMillis());
-            agvBindCtnrAndBinParam.setCtnrCode(ctnrCode);
-            agvBindCtnrAndBinParam.setCtnrTyp("1");
-            agvBindCtnrAndBinParam.setStgBinCode(binCode);
-            agvBindCtnrAndBinParam.setIndBind("0");
-            ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV瀹瑰櫒瑙g粦", URL, AGVPath, agvBindCtnrAndBinParam);
-            if (resultBind.getCode() == 200) {
-                basAgvMast.setStatus(4);
-                basAgvMastService.updateById(basAgvMast);
-                return true;
-            }
-            return false;
-        } else {
-            if (basAgvMast != null
-                    && basAgvMast.getIoType() != null
-                    && (basAgvMast.getIoType() == 0)
-                    && (Objects.equals(basAgvMast.getSourceStaNo(), 2033) || Objects.equals(basAgvMast.getStaNo(), 2034)
-                    || Objects.equals(basAgvMast.getStaNo(), 4003) || Objects.equals(basAgvMast.getSourceStaNo(), 4006))) {
-                AgvBindCtnrAndBinTwoParam agvBindCtnrAndBinTwoParam = new AgvBindCtnrAndBinTwoParam();
-                agvBindCtnrAndBinTwoParam.setReqCode(String.valueOf(snowflakeIdWorker.nextId()));
-                agvBindCtnrAndBinTwoParam.setPodcode(basAgvMast.getBarcode());
-                agvBindCtnrAndBinTwoParam.setPositionCode(basAgvMast.getStaNo().toString());
-                agvBindCtnrAndBinTwoParam.setIndBind("0");
-                ;
-                ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV瀹瑰櫒瑙g粦",
-                        AgvConstant.AGV_URL + "/" + AgvConstant.AGV_hikRpcService, AgvConstant.getAGVADAPTOR(2), agvBindCtnrAndBinTwoParam);
-                if (resultBind.getCode() != 1) {
-                    basAgvMast.setStatus(4);
-                    basAgvMastService.updateById(basAgvMast);
-                    return true;
-                }
-            }
-        }
-        return false;
-
-    }
 
     @Override
     @Transactional
diff --git a/src/main/java/com/zy/asrs/task/AutomaticallyIssueWCSTasksScheduler.java b/src/main/java/com/zy/asrs/task/AutomaticallyIssueWCSTasksScheduler.java
index 0a2c7a9..f177901 100644
--- a/src/main/java/com/zy/asrs/task/AutomaticallyIssueWCSTasksScheduler.java
+++ b/src/main/java/com/zy/asrs/task/AutomaticallyIssueWCSTasksScheduler.java
@@ -24,7 +24,10 @@
 
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute(){
-        List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData();
+        List<WrkMast> wrkMasts = wrkMastService.selectList(
+                new com.baomidou.mybatisplus.mapper.EntityWrapper<WrkMast>()
+                        .eq("wrk_sts", 11)
+        );
         if (wrkMasts.isEmpty()) {
             return;
         }
diff --git a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
index 98d61d4..62ac520 100644
--- a/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkLogScheduler.java
@@ -48,32 +48,4 @@
         }
     }
 
-    @Scheduled(cron = "0/5 * * * * ? ")
-    private void executeArm(){
-        List<BasArmMast> basArmMastList = basArmMastService.selectList(new EntityWrapper<BasArmMast>().eq("status", 6));
-        if (basArmMastList.isEmpty()) {
-            return;
-        }
-        for (BasArmMast basArmMast : basArmMastList) {
-            ReturnT<String> result = workLogHandler.startArm(basArmMast);
-            if (!result.isSuccess()) {
-                log.error("ARM宸ヤ綔妗id={}]鍘嗗彶妗e鐞嗗け璐�", basArmMast.getId());
-            }
-        }
-    }
-
-    @Scheduled(cron = "0/10 * * * * ? ")
-    private void executeAgv(){
-        List<BasAgvMast> basAgvstList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 4));
-        if (basAgvstList.isEmpty()) {
-            return;
-        }
-        for (BasAgvMast basAgvMast : basAgvstList) {
-            ReturnT<String> result = workLogHandler.startAgv(basAgvMast);
-            if (!result.isSuccess()) {
-                log.error("AGV宸ヤ綔妗id={}]鍘嗗彶妗e鐞嗗け璐�", basAgvMast.getId());
-            }
-        }
-    }
-
 }
diff --git a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
index 10bffd4..9a9065f 100644
--- a/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WorkMastScheduler.java
@@ -26,6 +26,33 @@
     @Autowired
     private WorkMastHandler workMastHandler;
 
+    /**
+     * wcs涓婃姤浠诲姟瀹屾垚鍚庯紝灏嗕换鍔′笂鎶ョ粰erp
+     * 2.鍏ュ簱涓婃姤
+     * 13.鍑哄簱涓婃姤
+     */
+    @Scheduled(cron = "0/3 * * * * ? ")
+    private void execute1(){
+        List<WrkMast> wrkMasts = wrkMastService.selectList(
+                new com.baomidou.mybatisplus.mapper.EntityWrapper<WrkMast>()
+                        .in("wrk_sts", 2, 13)
+        );
+        if (wrkMasts.isEmpty()) {
+            return;
+        }
+        for (WrkMast wrkMast : wrkMasts) {
+            ReturnT<String> returnT = workMastHandler.start1(wrkMast);
+            if (!returnT.isSuccess()) {
+                wrkMast.setUpdMk("X");
+                wrkMast.setErrorMemo(returnT.getMsg());
+                wrkMast.setErrorTime(new Date());
+                if (!wrkMastService.updateById(wrkMast)) {
+                    log.error("宸ヤ綔妗workNo={}]鏍囪寰呭鐞嗗け璐�", wrkMast.getWrkNo());
+                }
+            }
+        }
+    }
+
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute(){
         List<WrkMast> wrkMasts = wrkMastService.selectToBeCompleteData();
diff --git a/src/main/java/com/zy/asrs/task/handler/AutomaticallyIssueWCSTasksHandler.java b/src/main/java/com/zy/asrs/task/handler/AutomaticallyIssueWCSTasksHandler.java
index 76018f9..b47a30e 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutomaticallyIssueWCSTasksHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutomaticallyIssueWCSTasksHandler.java
@@ -57,48 +57,75 @@
             if (toSend.isEmpty()) {
                 return SUCCESS;
             }
-            List<Map<String, Object>> tasks = new ArrayList<>();
+
+            Map<String, List<WrkMast>> groupByUserNo = new HashMap<>();
             for (WrkMast m : toSend) {
-                Map<String, Object> t = new HashMap<>();
-                t.put("taskNo", String.valueOf(m.getWrkNo()));
-                t.put("staNo", String.valueOf(m.getStaNo()));
-                t.put("locNo", m.getSourceLocNo());
-                if (m.getIoPri() != null) {
-                    t.put("taskPri", m.getIoPri().intValue());
+                String key = m.getUserNo();
+                if (key == null || key.trim().isEmpty()) {
+                    key = "_NO_USER_";
                 }
-                t.put("seq",m.getPltType());
-                t.put("orderId",m.getUserNo());
-                tasks.add(t);
+                List<WrkMast> list = groupByUserNo.get(key);
+                if (list == null) {
+                    list = new ArrayList<>();
+                    groupByUserNo.put(key, list);
+                }
+                list.add(m);
             }
-            Map<String, Object> payload = new HashMap<>();
-            payload.put("tasks", tasks);
 
-            String response = new HttpHandler.Builder()
-                    .setUri(urlValue)
-                    .setPath(createOutTaskValue)
-                    .setHttps(urlValue != null && urlValue.startsWith("https://"))
-                    .setTimeout(10, TimeUnit.SECONDS)
-                    .setJson(JSON.toJSONString(payload))
-                    .build()
-                    .doPost();
+            List<WrkMast> successList = new ArrayList<>();
+            boolean hasError = false;
 
-            JSONObject jsonObject = JSON.parseObject(response == null ? "{}" : response);
-            Integer code = jsonObject.getInteger("code");
-            if (code == null || !Objects.equals(code, 200)) {
-                log.error("WCS涓嬪彂鍑哄簱浠诲姟澶辫触, url:{}, path:{}, request:{}, response:{}",
-                        urlValue, createOutTaskValue, JSON.toJSONString(payload), response);
+            for (Map.Entry<String, List<WrkMast>> entry : groupByUserNo.entrySet()) {
+                List<Map<String, Object>> tasks = new ArrayList<>();
+                for (WrkMast m : entry.getValue()) {
+                    Map<String, Object> t = new HashMap<>();
+                    t.put("taskNo", String.valueOf(m.getWrkNo()));
+                    t.put("staNo", String.valueOf(m.getStaNo()));
+                    t.put("locNo", m.getSourceLocNo());
+                    if (m.getIoPri() != null) {
+                        t.put("taskPri", m.getIoPri().intValue());
+                    }
+                    t.put("batchSeq", m.getPltType());
+                    if (m.getUserNo() != null) {
+                        t.put("batch", m.getUserNo());
+                    }
+                    tasks.add(t);
+                }
+                Map<String, Object> payload = new HashMap<>();
+                payload.put("tasks", tasks);
+
+                String response = new HttpHandler.Builder()
+                        .setUri(urlValue)
+                        .setPath(createOutTaskValue)
+                        .setHttps(urlValue != null && urlValue.startsWith("https://"))
+                        .setTimeout(10, TimeUnit.SECONDS)
+                        .setJson(JSON.toJSONString(payload))
+                        .build()
+                        .doPost();
+
+                JSONObject jsonObject = JSON.parseObject(response == null ? "{}" : response);
+                Integer code = jsonObject.getInteger("code");
+                if (code == null || !Objects.equals(code, 200)) {
+                    hasError = true;
+                    log.error("WCS涓嬪彂鍑哄簱浠诲姟澶辫触, url:{}, path:{}, userNo:{}, request:{}, response:{}",
+                            urlValue, createOutTaskValue, entry.getKey(), JSON.toJSONString(payload), response);
+                    continue;
+                }
+                successList.addAll(entry.getValue());
+            }
+
+            if (successList.isEmpty()) {
                 return FAIL.setMsg("WCS涓嬪彂鍑哄簱浠诲姟澶辫触");
             }
 
             Date now = new Date();
-            for (WrkMast m : toSend) {
+            for (WrkMast m : successList) {
                 m.setUpdMk("WCS_SENT");
                 m.setModiTime(now);
                 m.setWrkSts(12L);
             }
-            // 寤惰繜娉ㄥ叆锛岄伩鍏嶅惊鐜緷璧�
             WrkMastService wrkMastService = com.core.common.SpringUtils.getBean(WrkMastService.class);
-            for (WrkMast m : toSend) {
+            for (WrkMast m : successList) {
                 try {
                     wrkMastService.updateById(m);
                 } catch (Exception ignore) {}
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 164d81d..7e2a3df 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -9,6 +9,7 @@
 import com.zy.asrs.task.core.ReturnT;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
@@ -24,6 +25,15 @@
 @Service
 @Transactional
 public class WorkMastHandler extends AbstractHandler<String> {
+
+    @Value("${erp.address.URL}")
+    private String erpBaseUrl;
+
+    @Value("${erp.address.Inaddress}")
+    private String erpInAddress;
+
+    @Value("${erp.address.Outaddress}")
+    private String erpOutAddress;
 
     @Autowired
     private WrkMastService wrkMastService;
@@ -570,4 +580,133 @@
         return SUCCESS;
     }
 
+    /**
+     * wcs涓婃姤浠诲姟瀹屾垚鍚庯紝灏嗕换鍔′笂鎶ョ粰erp
+     * 2.鍏ュ簱涓婃姤
+     * 13.鍑哄簱涓婃姤
+     */
+    public ReturnT<String> start1(WrkMast wrkMast) {
+        // 2.鍏ュ簱涓婃姤
+        if (wrkMast.getWrkSts() == 2) {
+            return ErpdoIn(wrkMast);
+            // 13.鍑哄簱涓婃姤
+        } else  if (wrkMast.getWrkSts() == 13) {
+            return ErpdoOut(wrkMast);
+        }
+        return SUCCESS;
+    }
+
+    private ReturnT<String> ErpdoOut(WrkMast wrkMast){
+        try {
+            com.zy.common.utils.HttpHandler.Builder builder = new com.zy.common.utils.HttpHandler.Builder();
+            if (Cools.isEmpty(erpBaseUrl) || Cools.isEmpty(erpOutAddress)) {
+                return FAIL.setMsg("ERP鍑哄簱涓婃姤鍦板潃鏈厤缃甗erp.address.URL / erp.address.Outaddress]");
+            }
+            java.util.List<WrkDetl> wrkDetls = wrkDetlService.selectList(
+                    new com.baomidou.mybatisplus.mapper.EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())
+            );
+            if (wrkDetls == null || wrkDetls.isEmpty()) {
+                return FAIL.setMsg("ERP鍑哄簱涓婃姤澶辫触, 鏈壘鍒板伐浣滄槑缁哰workNo=" + wrkMast.getWrkNo() + "]");
+            }
+
+            java.util.Map<String, Object> payload = new java.util.HashMap<>();
+            payload.put("palletId", wrkMast.getBarcode());
+            payload.put("anfme", wrkDetls.get(0).getAnfme());
+            payload.put("locId", wrkMast.getSourceLocNo());
+            payload.put("weight", wrkMast.getScWeight());
+            payload.put("photos", new java.util.ArrayList<String>());
+            if (wrkMast.getModiTime() != null) {
+                payload.put("createTime", new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(wrkMast.getModiTime()));
+            } else {
+                payload.put("createTime", new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date()));
+            }
+            payload.put("BizNo", String.valueOf(wrkDetls.get(0).getThreeCode()));
+
+            String uri = erpBaseUrl;
+            String response = builder
+                    .setUri(uri)
+                    .setPath(erpOutAddress)
+                    .setHttps(uri != null && uri.startsWith("https://"))
+                    .setTimeout(10, java.util.concurrent.TimeUnit.SECONDS)
+                    .setJson(com.alibaba.fastjson.JSON.toJSONString(payload))
+                    .build()
+                    .doPost();
+
+            com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSON.parseObject(response == null ? "{}" : response);
+            Integer code = jsonObject.getInteger("code");
+            if (code == null || code != 0) {
+                String msg = jsonObject.getString("msg");
+                return FAIL.setMsg(Cools.isEmpty(msg) ? "ERP鍑哄簱涓婃姤澶辫触" : msg);
+            }
+            wrkMast.setWrkSts(wrkMast.getWrkSts() + 1);
+            wrkMast.setModiTime(new java.util.Date());
+            if (!wrkMastService.updateById(wrkMast)) {
+                return FAIL.setMsg("ERP鍑哄簱涓婃姤鎴愬姛浣嗘洿鏂板伐浣滅姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "]");
+            }
+        } catch (Exception e) {
+            return FAIL.setMsg(e.getMessage());
+        }
+        return SUCCESS;
+    }
+
+    private ReturnT<String> ErpdoIn(WrkMast wrkMast){
+        try {
+            com.zy.common.utils.HttpHandler.Builder builder = new com.zy.common.utils.HttpHandler.Builder();
+            if (Cools.isEmpty(erpBaseUrl) || Cools.isEmpty(erpInAddress)) {
+                return FAIL.setMsg("ERP鍏ュ簱涓婃姤鍦板潃鏈厤缃甗erp.address.URL / erp.address.Inaddress]");
+            }
+
+            java.util.Map<String, Object> payload = new java.util.HashMap<>();
+            payload.put("palletId", wrkMast.getBarcode());
+            java.util.List<WrkDetl> wrkDetls = wrkDetlService.selectList(
+                    new com.baomidou.mybatisplus.mapper.EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())
+            );
+            if (wrkDetls == null || wrkDetls.isEmpty()) {
+                return FAIL.setMsg("ERP鍏ュ簱涓婃姤澶辫触, 鏈壘鍒板伐浣滄槑缁哰workNo=" + wrkMast.getWrkNo() + "]");
+            }
+            double anfme = 0D;
+            for (WrkDetl d : wrkDetls) {
+                if (d != null && d.getAnfme() != null) {
+                    anfme += d.getAnfme();
+                }
+            }
+            payload.put("anfme", anfme);
+            payload.put("locId", wrkMast.getLocNo());
+            payload.put("weight", wrkMast.getScWeight());
+            payload.put("photos", new java.util.ArrayList<String>());
+            if (wrkMast.getModiTime() != null) {
+                payload.put("createTime", new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(wrkMast.getModiTime()));
+            } else {
+                payload.put("createTime", new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new java.util.Date()));
+            }
+            payload.put("BizNo", String.valueOf(wrkDetls.get(0).getThreeCode()));
+
+            String uri = erpBaseUrl;
+
+            String response = builder
+                    .setUri(uri)
+                    .setPath(erpInAddress)
+                    .setHttps(uri != null && uri.startsWith("https://"))
+                    .setTimeout(10, java.util.concurrent.TimeUnit.SECONDS)
+                    .setJson(com.alibaba.fastjson.JSON.toJSONString(payload))
+                    .build()
+                    .doPost();
+
+            com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSON.parseObject(response == null ? "{}" : response);
+            Integer code = jsonObject.getInteger("code");
+            if (code == null || code != 0) {
+                String msg = jsonObject.getString("msg");
+                return FAIL.setMsg(Cools.isEmpty(msg) ? "ERP鍏ュ簱涓婃姤澶辫触" : msg);
+            }
+            wrkMast.setWrkSts(wrkMast.getWrkSts() + 1);
+            wrkMast.setModiTime(new java.util.Date());
+            if (!wrkMastService.updateById(wrkMast)) {
+                return FAIL.setMsg("ERP鍏ュ簱涓婃姤鎴愬姛浣嗘洿鏂板伐浣滅姸鎬佸け璐�; [workNo=" + wrkMast.getWrkNo() + "]");
+            }
+        } catch (Exception e) {
+            return FAIL.setMsg(e.getMessage());
+        }
+        return SUCCESS;
+    }
+
 }
diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index 0a11612..c9d23a5 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -56,14 +56,11 @@
     @ResponseBody
     public synchronized R getLocNo(@RequestBody SearchLocParam param) {
         log.info("鏀跺埌WCS鍏ュ簱鎺ュ彛璇锋眰====>>鍏ュ弬:{}", param);
-        if (Cools.isEmpty(param.getIoType())) {
-            return R.error("鍏ュ嚭搴撶被鍨嬩笉鑳戒负绌�");
-        }
         if (Cools.isEmpty(param.getSourceStaNo())) {
             return R.error("婧愮珯缂栧彿涓嶈兘涓虹┖");
         }
         List<WaitPakin> waitPakins = null;
-        if (param.getIoType() == 1) {
+
             if (Cools.isEmpty(param.getBarcode())) {
                 return R.error("鏉$爜涓嶈兘涓虹┖");
             }
@@ -80,7 +77,6 @@
             if (countLoc > 0 || countWrk > 0) {
                 return R.error(CodeRes.EXIST_500);
             }
-        }
         if (Cools.isEmpty(param.getLocType1())){
             return R.error("楂樹綆妫�娴嬩俊鍙蜂笉鑳戒负绌�");
         }
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 a5ed144..ccdd3c4 100644
--- a/src/main/java/com/zy/common/web/param/SearchLocParam.java
+++ b/src/main/java/com/zy/common/web/param/SearchLocParam.java
@@ -2,20 +2,23 @@
 
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * Created by vincent on 2020/10/30
  */
 @Data
 public class SearchLocParam {
-
-    private Integer ioType;
-
-    private Integer sourceStaNo;
-
     private String barcode;
-    private Integer outArea;
+    private Integer sourceStaNo;
+    private List<Integer> rowList;
 
     // 搴撲綅瑙勬牸锛� 0:鏈煡, 1:浣庡簱浣�, 2:楂樺簱浣嶏級
     private Short locType1;
 
+    private Integer ioType;
+    private Integer outArea;
+
+
+
 }
diff --git a/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java b/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java
deleted file mode 100644
index 044c3e2..0000000
--- a/src/main/java/com/zy/erp/kingdee/entity/param/LoginParam.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.zy.erp.kingdee.entity.param;
-
-import lombok.Data;
-
-@Data
-public class LoginParam {
-    //鏈嶅姟绔�
-    private String appId;
-
-    //璐﹀彿瀵嗛挜
-    private String appSecret;
-
-    //璐︽埛id
-    private String accountId;
-
-    //
-    private String tenantid;
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/entity/param/MatLoadParam.java b/src/main/java/com/zy/erp/kingdee/entity/param/MatLoadParam.java
deleted file mode 100644
index 8841de8..0000000
--- a/src/main/java/com/zy/erp/kingdee/entity/param/MatLoadParam.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package com.zy.erp.kingdee.entity.param;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-
-import java.util.ArrayList;
-import java.util.Date;
-
-@Data
-public class MatLoadParam {
-
-    // id 瀛楁锛屽寘鍚涓� id
-    private ArrayList<String> id;
-
-    // 缂栫爜瀛楁锛屽寘鍚涓紪鐮�
-    private ArrayList<String> number;
-
-    // 鍒涘缓缁勭粐缂栫爜锛屽寘鍚涓粍缁囩紪鐮�
-    private ArrayList<String> createorgNumber;
-
-    // 鍒涘缓璧峰鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private Date startCreatetime;
-
-    // 鍒涘缓鎴鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private Date endCreatetime;
-
-    // 淇敼璧峰鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private Date startModifytime;
-
-    // 淇敼鎴鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private Date endModifytime;
-
-    // 瀹℃牳璧峰鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
-    private Date startApprovedate;
-
-    // 瀹℃牳鎴鏃ユ湡
-    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
-    private Date endApprovedate;
-
-    // 鏁版嵁鐘舵�� [A:鏆傚瓨, B:宸叉彁浜�, C:宸插鏍竇锛屽寘鍚涓姸鎬�
-    private ArrayList<String> status;
-
-    // 鍒嗛〉鍙傛暟锛屽垎椤垫暟閲�
-    private Integer pageSize;
-
-    // 鍒嗛〉鍙傛暟锛屾煡璇㈤〉鐮�
-    private Integer pageNo;
-
-    public MatLoadParam() {
-        this.pageSize = 10; // 榛樿鍒嗛〉鏁伴噺
-        this.pageNo = 1;    // 榛樿鏌ヨ椤电爜
-    }
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
deleted file mode 100644
index b6779d6..0000000
--- a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package com.zy.erp.kingdee.enums;
-
-public enum KingDeeUtilType {
-    BD_MATERIAL(0, "鐗╂枡妗f","BD_MATERIAL","","","",1),
-    BD_RRGANIZATION(2, "渚涘簲鍟�","BD_RRGANIZATION","","","",1),
-    PUR_RECEIVEBIll(3, "鏀舵枡鍗�","PUR_RECEIVEBIll","","","",1),
-    SAL_OUTSTOCK(7, "閿�鍞嚭搴撳崟","SAL_OUTSTOCK","FRealQty","","",0),
-//    STK_MisDelivery(19, "鍏朵粬鍑哄簱鍗�","STK_MisDelivery","FQty","","",0),
-//    STK_MISCELLANEOUS(18, "鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS","FQty","鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS",1),
-
-    SAL_RETURNSTOCK(9, "閿�鍞��璐у崟","SAL_RETURNSTOCK","","","",1),
-    PRD_PickMtrl(10, "鐢熶骇棰嗘枡鍗�","PRD_PickMtrl","","","",0),
-    PRD_ReturnMtrl(12, "鐢熶骇閫�鏂欏崟","PRD_ReturnMtrl","","","",1),
-    PRD_FeedMtrl(14, "鐢熶骇琛ユ枡鍗�","PRD_FeedMtrl","","","",0),
-    PRD_MORPT(16, "鐢熶骇姹囨姤鍗�","PRD_MORPT","","鐢熶骇鍏ュ簱鍗�","",1),
-    OUI_RECEIVEBIll(24, "濮斿鍏ュ簱鍗�","OUI_RECEIVEBIll","","","",1),
-
-    //    PUR_MRB(2, "閲囪喘閫�鏂欏崟","PUR_MRB","FRMREALQTY","","",1),
-//    STK_TransferDirect(6, "鐩存帴璋冩嫧鍗�","STK_TransferDirect","","FQty","",1),
-//    STK_StockCountGain(7, "鐩樼泩鍗�","STK_StockCountGain","FGainQty","","",1),
-//    STK_StockCountLoss(8, "鐩樹簭鍗�","STK_StockCountLoss","FLossQty","","",1),
-//    STK_MisDelivery(9, "鍏朵粬鍑哄簱鍗�","STK_MisDelivery","FQty","","",1),
-//    SP_PickMtrl(10, "绠�鍗曠敓浜ч鏂欏崟","SP_PickMtrl","FActualQty","","",1),
-//    SP_ReturnMtrl(11, "绠�鍗曠敓浜ч��鏂欏崟","SP_ReturnMtrl","FQty","","",1),
-//    SAL_RETURNSTOCK(13, "閿�鍞��璐у崟","SAL_RETURNSTOCK","FRealQty","","",1),
-//    SAL_DELIVERYNOTICE(14, "鍙戣揣閫氱煡鍗�","SAL_DELIVERYNOTICE","FQty","閿�鍞嚭搴撳崟","SAL_OUTSTOCK",0),
-//    STK_MISCELLANEOUS(15, "鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS","FQty","鍏朵粬鍏ュ簱鍗�","STK_MISCELLANEOUS",1),
-//    BD_Supplier(16, "渚涘簲鍟�","BD_Supplier","","","",1),
-//    PUR_ReceiveBill(17, "鏀舵枡閫氱煡鍗�","PUR_ReceiveBill","FPOQTY","閲囪喘鍏ュ簱鍗�","STK_InStock",1),
-//    PRD_INSTOCK(19, "鐢熶骇鍏ュ簱鍗�","PRD_INSTOCK","","","",1),
-//    SAL_RETURNNOTICE(20, "閫�璐ч�氱煡鍗�","SAL_RETURNNOTICE","FBaseJunkedQty","閿�鍞��璐у崟","SAL_RETURNSTOCK",1),
-    STK_imSaloutbill(23, "姹囨姤杞嚭搴撳崟","STK_imSaloutbill","","","",0),
-    ;
-    public Integer id;
-    public String desc;
-    public String formId;
-    public String anfme;
-    public String correspondingName;
-    public String correspondingFormId;
-    public Integer pakIn;
-
-    KingDeeUtilType(Integer id, String desc,String formId,String anfme,String correspondingName,String correspondingFormId,int pakIn){
-        this.id = id;
-        this.desc = desc;
-        this.formId = formId;
-        this.anfme = anfme;
-        this.correspondingName = correspondingName;
-        this.correspondingFormId = correspondingFormId;
-        this.pakIn = pakIn;   //1鍏ュ簱  0鍑哄簱
-    }
-    public static KingDeeUtilType getByFormId(String formId) {
-        if (formId == null) return null;
-        for (KingDeeUtilType type : values()) {
-            if (formId.equals(type.formId)) {
-                return type;
-            }
-        }
-        return null;
-    }
-    public static KingDeeUtilType get(Short id) {
-        if (null == id) {
-            return null;
-        }
-        for (KingDeeUtilType type : KingDeeUtilType.values()) {
-            if (type.id.equals(id.intValue())) {
-                return type;
-            }
-        }
-        return null;
-    }
-
-    public static KingDeeUtilType get(String desc) {
-        if (null == desc) {
-            return null;
-        }
-        for (KingDeeUtilType type : KingDeeUtilType.values()) {
-            if (type.desc.equals(desc)) {
-                return type;
-            }
-        }
-        return null;
-    }
-
-    public static KingDeeUtilType get(KingDeeUtilType type) {
-        if (null == type) {
-            return null;
-        }
-        for (KingDeeUtilType crnLiftPosType : KingDeeUtilType.values()) {
-            if (crnLiftPosType == type) {
-                return crnLiftPosType;
-            }
-        }
-        return null;
-    }
-}
diff --git a/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java b/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java
deleted file mode 100644
index 3373421..0000000
--- a/src/main/java/com/zy/erp/kingdee/utils/KingDeeUtil.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.zy.erp.kingdee.utils;
-
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.Date;
-
-public class KingDeeUtil {
-
-    //瀵圭編鍥芥椂闂磋繘琛岃浆鎹�
-    public static Date KingDeeDate(String jsonArrayDate) throws ParseException {
-        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-
-        DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
-        DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
-        LocalDateTime dateTime = LocalDateTime.parse(jsonArrayDate, formatter);
-        String format = dateFormat.format(dateTime);
-        return sdf.parse(format);
-    }
-
-
-
-}
diff --git a/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java b/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java
deleted file mode 100644
index dbe63b2..0000000
--- a/src/main/java/com/zy/erp/kingdee/utils/PostMesDataUtils.java
+++ /dev/null
@@ -1,261 +0,0 @@
-package com.zy.erp.kingdee.utils;
-
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.core.common.Cools;
-import com.core.common.SpringUtils;
-import com.core.exception.CoolException;
-import com.zy.asrs.entity.ApiLog;
-import com.zy.asrs.service.ApiLogService;
-import com.zy.asrs.task.AbstractHandler;
-import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.utils.HttpHandler;
-import lombok.extern.slf4j.Slf4j;
-
-import java.util.Date;
-import java.util.Map;
-
-@Slf4j
-public class PostMesDataUtils extends AbstractHandler<String> {
-
-    public ReturnT<String> postMesData(String name, String URL, String mesPath, Object combParam){
-//        if (true){
-//            System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-//            return SUCCESS;
-//        }
-        if(combParam != null){
-            String response = "";
-            boolean success = false;
-            try {
-//                Map<String, Object> map = new HashMap<>()
-//                map.put("appkey","ea1f0459efc02a79f046f982767939ae");
-                response = new HttpHandler.Builder()
-//                        .setHeaders(map)
-                        .setUri(URL)
-                        .setPath(mesPath)
-                        .setJson(JSON.toJSONString(combParam))
-                        .build()
-                        .doPost();
-                System.out.println("response:"+response);
-                JSONObject jsonObject = JSON.parseObject(response);
-
-                if (jsonObject.getInteger("code").equals(200)) {
-                    success = true;
-                } else {
-                    log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-                    throw new CoolException("涓婃姤"+name);
-                }
-            } catch (Exception e) {
-                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-//                      TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                return FAIL.setMsg(e.getMessage());
-            } finally {
-                try {
-                    // 淇濆瓨鎺ュ彛鏃ュ織
-                    ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
-                    apiLogService.save(
-                            "涓婃姤"+name,
-                            URL +"/"+ mesPath,
-                            null,
-                            "127.0.0.1",
-                            JSON.toJSONString(combParam),
-                            response,
-                            success
-                    );
-                } catch (Exception e) {
-                    log.error("", e); }
-            }
-        }
-        return SUCCESS;
-    }
-
-    public ReturnT<String> postMesData(String name, String URL, String mesPath, Object combParam,Map<String, Object> map){
-//        if (true){
-//            System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-//            return SUCCESS;
-//        }
-        if(combParam != null){
-            String response = "";
-            boolean success = false;
-            try {
-//                Map<String, Object> map = new HashMap<>();
-//                map.put("appkey","ea1f0459efc02a79f046f982767939ae");
-                response = new HttpHandler.Builder()
-                        .setHeaders(map)
-                        .setUri(URL)
-                        .setPath(mesPath)
-                        .setJson(JSON.toJSONString(combParam))
-                        .build()
-                        .doPost();
-                System.out.println("response:"+response);
-                JSONObject jsonObject = JSON.parseObject(response);
-
-                if (jsonObject.getInteger("code").equals(200)) {
-                    success = true;
-                } else {
-                    log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-                    throw new CoolException("涓婃姤"+name);
-                }
-            } catch (Exception e) {
-                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-//                      TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                return FAIL.setMsg(e.getMessage());
-            } finally {
-                try {
-                    // 淇濆瓨鎺ュ彛鏃ュ織
-                    ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
-                    apiLogService.save(
-                            "涓婃姤"+name,
-                            URL +"/"+ mesPath,
-                            null,
-                            "127.0.0.1",
-                            JSON.toJSONString(combParam),
-                            response,
-                            success
-                    );
-                } catch (Exception e) {
-                    log.error("", e); }
-            }
-        }
-        return SUCCESS;
-    }
-
-    public ReturnT<String> postMesDataArmGrating(String name, String URL, String mesPath, Object combParam){
-//        if (true){
-//            System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-//            return SUCCESS;
-//        }
-        if(combParam != null){
-            String response = "";
-            boolean success = false;
-            try {
-//                Map<String, Object> map = new HashMap<>()
-//                map.put("appkey","ea1f0459efc02a79f046f982767939ae");
-                response = new HttpHandler.Builder()
-//                        .setHeaders(map)
-                        .setUri(URL)
-                        .setPath(mesPath)
-                        .setJson(JSON.toJSONString(combParam))
-                        .build()
-                        .doPost();
-                System.out.println("response:"+response);
-                JSONObject jsonObject = JSON.parseObject(response);
-
-                if (jsonObject.getInteger("code").equals(0)) {
-                    success = true;
-                } else {
-                    log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-                    throw new CoolException(name);
-                }
-            } catch (Exception e) {
-                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-//                      TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                return FAIL.setMsg(e.getMessage());
-            } finally {
-                try {
-                    if (success){
-                        // 淇濆瓨鎺ュ彛鏃ュ織
-                        ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
-                        apiLogService.save(
-                                name,
-                                URL +"/"+ mesPath,
-                                null,
-                                "127.0.0.1",
-                                JSON.toJSONString(combParam),
-                                response,
-                                success
-                        );
-                    } else {
-                        postMesDataCallApiLogSave(response,success,name, URL, mesPath, combParam);
-                    }
-                } catch (Exception e) {
-                    log.error("", e); }
-            }
-        }
-        return SUCCESS;
-    }
-    public ReturnT<String> postMesDataAgvGrating(String name, String URL, String mesPath, Object combParam){
-//        if (true){
-//            System.out.println("name:"+name+",URL:"+URL+",mesPath:"+mesPath+",combParam:"+combParam);
-//            return SUCCESS;
-//        }
-        if(combParam != null){
-            String response = "";
-            boolean success = false;
-            try {
-//                Map<String, Object> map = new HashMap<>()
-//                map.put("appkey","ea1f0459efc02a79f046f982767939ae");
-                response = new HttpHandler.Builder()
-//                        .setHeaders(map)
-                        .setUri(URL)
-                        .setPath(mesPath)
-                        .setJson(JSON.toJSONString(combParam))
-                        .build()
-                        .doPost();
-                System.out.println("response:"+response);
-                JSONObject jsonObject = JSON.parseObject(response);
-
-                if (jsonObject.getInteger("code").equals(200)) {
-                    success = true;
-                } else {
-                    log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-                    throw new CoolException(name);
-                }
-            } catch (Exception e) {
-                log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", URL+"/"+mesPath, JSON.toJSONString(combParam), response);
-//                      TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-                return FAIL.setMsg(e.getMessage());
-            } finally {
-                try {
-                    if (success){
-                        // 淇濆瓨鎺ュ彛鏃ュ織
-                        ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
-                        apiLogService.save(
-                                name,
-                                URL +"/"+ mesPath,
-                                null,
-                                "127.0.0.1",
-                                JSON.toJSONString(combParam),
-                                response,
-                                success
-                        );
-                    } else {
-                        postMesDataCallApiLogSave(response,success,name, URL, mesPath, combParam);
-                    }
-                } catch (Exception e) {
-                    log.error("", e); }
-            }
-        }
-        return SUCCESS;
-    }
-
-    public void postMesDataCallApiLogSave(String response,boolean success,String name, String URL, String mesPath, Object combParam) {
-        ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class);
-
-        ApiLog apiLog = apiLogService.selectOne(new EntityWrapper<ApiLog>()
-                .eq("namespace", name)
-                .eq("response", response)
-                .eq("url", URL +"/"+ mesPath)
-                .eq("result", success? 1:0)
-                .orderBy("create_time", false)
-        );
-
-        if (!Cools.isEmpty(apiLog)){
-            long parseLong = Long.parseLong(apiLog.getTimestamp());
-            if (new Date().getTime()-parseLong<5*1000*60){
-                return;
-            }
-        }
-        // 淇濆瓨鎺ュ彛鏃ュ織
-        apiLogService.save(
-                name,
-                URL +"/"+ mesPath,
-                null,
-                "127.0.0.1",
-                JSON.toJSONString(combParam),
-                response,
-                success
-        );
-    }
-}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 179e900..5d4c25a 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -94,10 +94,10 @@
   #  鍦板潃
   address:
     URL: https://shyucheng.test.kdgalaxy.com
-    #鐧诲綍鍦板潃
-    loginaddress: /kapi/oauth2/getToken
+    #鍏ュ簱涓婃姤
+    Inaddress: /kapi/oauth2/getToken
     #鍟嗗搧妗f鍦板潃
-    mataddress: /kapi/v2/eap7/basedata/bd_material/batchQuery
+    Outaddress: /kapi/v2/eap7/basedata/bd_material/batchQuery
 
 #wcs浠诲姟涓嬪彂
 wcs:

--
Gitblit v1.9.1