自动化立体仓库 - WMS系统
lty
2 天以前 d90e27de3e98674625c8571a9ee002b463a1a52c
#MES接口对接
2个文件已修改
77 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -81,17 +81,18 @@
                            log.info("ERP入库上报请求: workNo={}, request={}", wrkMast.getWrkNo(), request);
                            JSONObject res = erpTokenService.stockIn(wrkMast.getBarcode());
                            log.info("ERP入库上报响应: workNo={}, response={}", wrkMast.getWrkNo(), res == null ? null : res.toJSONString());
                            apiLogService.save("erp.stockIn", "erpTokenService.stockIn", null, null, request,
                            apiLogService.save("ERP入库上报", "erpTokenService.stockIn", null, null, request,
                                    res == null ? null : res.toJSONString(),
                                    res != null && Boolean.TRUE.equals(res.getBoolean("success")));
                            if (res != null && Boolean.TRUE.equals(res.getBoolean("success"))) {
                                JSONObject data = res.getJSONObject("data");
                                String tlocation = data == null ? null : data.getString("tlocation");
                                if (!Cools.isEmpty(tlocation) && !Cools.isEmpty(wrkMast.getLocNo())) {
                                if (!Cools.isEmpty(tlocation) && !Cools.isEmpty(wrkMast.getBarcode())) {
                                    List<LocDetl> detls = locDetlService.selectList(new EntityWrapper<LocDetl>()
                                            .eq("loc_no", wrkMast.getLocNo()));
                                            .eq("zpallet", wrkMast.getBarcode()));
                                    if (!Cools.isEmpty(detls)) {
                                        for (LocDetl detl : detls) {
                                            detl.setBatch(tlocation);
                                            detl.setBoxType1(tlocation);
                                            locDetlService.updateById(detl);
                                        }
@@ -127,34 +128,43 @@
            // 出库 --------------------------------------------------------------------------------
            } else if (wrkMast.getWrkSts() == 15) {
                if(wrkMast.getIsSuplus()!=null && wrkMast.getIsSuplus()==1 && wrkMast.getExitMk().equals("Y")){
                if(wrkMast.getExitMk().equals("Y")){
                    List<WrkDetl> wrkDetls1 = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no",wrkMast.getWrkNo()));
                    WrkDetl wrkDetl = wrkDetls1.get(0);
                    String request = "{\"barcode\":\"" + wrkMast.getBarcode() + "\",\"anfme\":" + wrkDetl.getAnfme() + "}";
                    Double anfmeBack = wrkDetl.getAnfme();
                    if(wrkMast.getIsSuplus().equals(0)){
                        anfmeBack = 0.0;
                    }
                    String request = "{\"barcode\":\"" + wrkMast.getBarcode() + "\",\"anfme\":" + anfmeBack + "}";
                    log.info("ERP退料上报请求: workNo={}, request={}", wrkMast.getWrkNo(), request);
                    JSONObject res = erpTokenService.stockBack(wrkMast.getBarcode(),wrkDetl.getAnfme(),"RW");
                    JSONObject res = erpTokenService.stockBack(wrkMast.getBarcode(),anfmeBack,"R002");
                    log.info("ERP退料上报响应: workNo={}, response={}", wrkMast.getWrkNo(), res == null ? null : res.toJSONString());
                    apiLogService.save("erp.stockBack", "erpTokenService.stockBack", null, null, request,
                    apiLogService.save("ERP退料上报", "erpTokenService.stockBack", null, null, request,
                            res == null ? null : res.toJSONString(),
                            res != null && Boolean.TRUE.equals(res.getBoolean("success")));
                    if (res != null && Boolean.TRUE.equals(res.getBoolean("success"))) {
                    LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("zpallet",wrkMast.getBarcode()));
                    if(!Objects.isNull(locDetl)){
                        locDetl.setBatch("R002");
                        locDetl.setBoxType1("R002");
                        locDetlService.updateById(locDetl);
                    }
                }
                    }
                }else if(Objects.isNull(wrkMast.getLocNo())){
                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",wrkMast.getLocNo()).eq("whs_type",2));
                    if(locMast!=null){
                        String request = "{\"barcode\":\"" + wrkMast.getBarcode() + "\"}";
                        log.info("ERP出库上报请求: workNo={}, request={}", wrkMast.getWrkNo(), request);
                        JSONObject res = erpTokenService.stockOut(wrkMast.getBarcode(),"W001");
                        log.info("ERP出库上报响应: workNo={}, response={}", wrkMast.getWrkNo(), res == null ? null : res.toJSONString());
                        apiLogService.save("erp.stockOut", "erpTokenService.stockOut", null, null, request,
                                res == null ? null : res.toJSONString(),
                                res != null && Boolean.TRUE.equals(res.getBoolean("success")));
                        if (res != null && Boolean.TRUE.equals(res.getBoolean("success"))) {
                        }
                    }
                }
//                else if(Objects.isNull(wrkMast.getLocNo())){
//                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",wrkMast.getLocNo()).eq("whs_type",2));
//                    if(locMast!=null){
//                        String request = "{\"barcode\":\"" + wrkMast.getBarcode() + "\"}";
//                        log.info("ERP出库上报请求: workNo={}, request={}", wrkMast.getWrkNo(), request);
//                        JSONObject res = erpTokenService.stockOut(wrkMast.getBarcode(),"W001");
//                        log.info("ERP出库上报响应: workNo={}, response={}", wrkMast.getWrkNo(), res == null ? null : res.toJSONString());
//                        apiLogService.save("erp.stockOut", "erpTokenService.stockOut", null, null, request,
//                                res == null ? null : res.toJSONString(),
//                                res != null && Boolean.TRUE.equals(res.getBoolean("success")));
//                        if (res != null && Boolean.TRUE.equals(res.getBoolean("success"))) {
//
//                        }
//                    }
//                }
                
//                if (!Objects.isNull(wrkMast.getWrkCode())) {
//                    return FAIL;
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -1,5 +1,6 @@
package com.zy.asrs.task.handler;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.exception.CoolException;
@@ -57,7 +58,10 @@
    private WorkService workService;
    @Autowired
    private LocAroundBindService locAroundBindService;
    @Autowired
    private ErpTokenService erpTokenService;
    @Autowired
    private ApiLogService apiLogService;
    public ReturnT<String> start(WrkMast wrkMast) {
        // 4.入库完成
        if (wrkMast.getWrkSts() == 4) {
@@ -627,6 +631,19 @@
                            throw new CoolException("数据错误, 目标工位不存在!!");
                        }
                        bLocNo.setLocType(LocStsType.LOC_STS_TYPE_F.type);
                            String request = "{\"barcode\":\"" + wrkMast.getBarcode() + "\"}";
                            log.info("ERP叫料出库上报请求: workNo={}, request={}", wrkMast.getWrkNo(), request);
                            JSONObject res = erpTokenService.stockOut(wrkMast.getBarcode(),"W001");
                            log.info("ERP叫料出库上报响应: workNo={}, response={}", wrkMast.getWrkNo(), res == null ? null : res.toJSONString());
                            apiLogService.save("ERP叫料出库上报", "erpTokenService.stockOut", null, null, request,
                                    res == null ? null : res.toJSONString(),
                                    res != null && Boolean.TRUE.equals(res.getBoolean("success")));
                            LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("zpallet",wrkMast.getBarcode()));
                            if(!Objects.isNull(locDetl)){
                                locDetl.setBatch("R002");
                                locDetl.setBoxType1("R002");
                                locDetlService.updateById(locDetl);
                            }
                        if (!locAroundBindService.updateById(bLocNo)) {
                            throw new CoolException("工位状态修改失败!!");
                        }