From 7ec958c241902d29dbffe9f81376b71a8458148e Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期一, 13 一月 2025 16:07:21 +0800 Subject: [PATCH] 优化订单同步逻辑及库位查找 --- src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java | 10 ++++++---- src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java | 33 +++++++++++++++++++++++++-------- 2 files changed, 31 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java index 7dea374..22b7f22 100644 --- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java @@ -145,13 +145,15 @@ } } if (!Cools.isEmpty(agvWrkMast.getSourceLocNo())) { - agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo()); + agvLocMast = agvLocMastService.selectById(agvWrkMast.getSourceLocNo()); if (agvLocMast != null) { pltType = agvLocMast.getPltType(); } } - agvWrkMast.setPltType(pltType); - log.info("浠撳簱缂栫爜锛歿}",agvWrkMast.getPltType()); + if (pltType != null) { + agvWrkMast.setPltType(pltType); + } + log.info("宸ヤ綔鍙�--{},浠撳簱缂栫爜锛歿}", agvWrkMast.getWrkNo(), agvWrkMast.getPltType()); } agvWrkMast.setModiTime(new Date()); //淇敼宸ヤ綔妗g姸鎬佷负207.搴撳瓨鏇存柊瀹屾垚 @@ -771,7 +773,7 @@ iteam.setLineNo(orderDetl.getItemNum()); iteam.setSupplierCode(order.getSalesman()); iteam.setUnit(agvWrkDetl.getUnit()); - + iteam.setRemark(agvWrkDetl.getThreeCode()); iteams.add(iteam); mesBuyPakinReportParam.setCode(orderNo); diff --git a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java index 1ee74bd..d66fbfc 100644 --- a/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/OrderSyncHandler.java @@ -3,17 +3,13 @@ import cn.hutool.core.util.NumberUtil; 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.DateUtils; import com.core.exception.CoolException; -import com.zy.asrs.entity.DocType; -import com.zy.asrs.entity.Order; -import com.zy.asrs.entity.OrderDetl; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.ReportErpParam; -import com.zy.asrs.service.ApiLogService; -import com.zy.asrs.service.DocTypeService; -import com.zy.asrs.service.OrderDetlService; -import com.zy.asrs.service.OrderService; +import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; import com.zy.common.utils.HttpHandler; @@ -45,6 +41,15 @@ private ApiLogService apiLogService; @Autowired private DocTypeService docTypeService; + + @Autowired + private AgvWrkDetlLogService agvWrkDetlLogService; + + @Autowired + private AgvWrkMastService agvWrkMastService; + + @Autowired + private AgvLocMastService agvLocMastService; @Value("${spring.profiles.active}") private String active; @@ -104,7 +109,19 @@ } } if (Cools.isEmpty(order.getPltType())) { - return; + List<AgvWrkDetlLog> agvWrkDetlLogs = agvWrkDetlLogService.selectList(new EntityWrapper<AgvWrkDetlLog>().eq("order_no", order.getOrderNo()).eq("io_type", 1)); + if (!Cools.isEmpty(agvWrkDetlLogs)) { + AgvWrkMast agvWrkMast = agvWrkMastService.selectById(agvWrkDetlLogs.get(0).getWrkNo()); + if (agvWrkMast != null) { + AgvLocMast agvLocMast = agvLocMastService.selectById(agvWrkMast.getLocNo()); + if (agvLocMast != null) { + order.setPltType(agvLocMast.getPltType()); + } + } + } + if (Cools.isEmpty(order.getPltType())) { + return; + } } if (Cools.isEmpty(order.getInTime())) { order.setInTime(DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmsssss_F)); -- Gitblit v1.9.1