From 58c3822e07fb22e60fb820cd1766118317a2345b Mon Sep 17 00:00:00 2001 From: liuhanqing Date: Thu, 31 Jul 2025 13:37:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E5=88=A9=E6=9E=B6=20=E5=85=A5?= =?UTF-8?q?=E5=BA=93=E5=87=BA=E5=BA=93=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/ToWcsApiController.java | 6 +-- .../api/controller/ToWmsApiController.java | 34 +++++++++------- .../com/ruoyi/api/service/IToWcsService.java | 6 ++- .../com/ruoyi/api/service/IToWmsService.java | 3 +- .../api/service/impl/ToWcsServiceImpl.java | 39 ++++++++++++++----- .../api/service/impl/ToWmsServiceImpl.java | 21 +++++++++- .../service/impl/MydoJobServiceImpl.java | 2 +- .../ruoyi/log/service/IRequestLogService.java | 4 +- .../service/impl/RequestLogServiceImpl.java | 21 ++++++++-- .../service/impl/TagTaskServiceImpl.java | 27 ++++++++++--- .../com/ruoyi/pda/service/PdaServiceImp.java | 23 ++++++++--- .../resources/i18n/messages_en_US.properties | 1 + .../resources/mapper/job/MydoJobMapper.xml | 6 +-- .../mapper/out/OutStockoutDetailMapper.xml | 11 +++--- .../mapper/out/OutStockoutFinishMapper.xml | 11 +++--- .../mapper/out/OutStockoutMapper.xml | 1 + ruoyi-ui/src/lang/zh.js | 3 +- ruoyi-ui/src/views/in/stockIn/index.vue | 2 +- 18 files changed, 156 insertions(+), 65 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWcsApiController.java b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWcsApiController.java index c0a0d8d..bde8387 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWcsApiController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWcsApiController.java @@ -30,9 +30,9 @@ public class ToWcsApiController { /** * 推送CTU流利架空料箱入库任务 */ - @PostMapping("/pushInMydoJob") - public void pushInMydoJob(String trayCode) { - toWcsService.pushInMydoJob(trayCode); + @Scheduled(fixedDelay=10000) + public void pushInMydoJob() { + toWcsService.pushInMydoJob(); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWmsApiController.java b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWmsApiController.java index 5ffe8ca..45558ec 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWmsApiController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/ToWmsApiController.java @@ -27,11 +27,20 @@ public class ToWmsApiController { /** * 入库任务请求 */ - @PostMapping("/requestEnter") - public AjaxResult requestEnter(@RequestBody MydoJob mydoJob) { - AjaxResult ajaxResult = toWmsService.requestEnter(mydoJob); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "InJob"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + @PostMapping("/requestEnterByTrayCode") + public AjaxResult requestEnterByTrayCode(@RequestBody MydoJob mydoJob) { + AjaxResult ajaxResult = toWmsService.requestEnterByTrayCode(mydoJob); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "InJobByTrayCode",ajaxResult); + requestLogService.insertRequestLog(requestLog); + return ajaxResult; + } + /** + * 入库任务请求 + */ + @PostMapping("/requestEnterByEnterId") + public AjaxResult requestEnterByEnterId(@RequestBody MydoJob mydoJob) { + AjaxResult ajaxResult = toWmsService.requestEnterByEnterId(mydoJob); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "InJobByEnterId",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } @@ -42,8 +51,7 @@ public class ToWmsApiController { @PostMapping("/startSignal") public AjaxResult startSignal(@RequestBody MydoJob mydoJob) { AjaxResult ajaxResult = toWmsService.startSignal(mydoJob); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "startSignal"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "startSignal",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } @@ -62,8 +70,7 @@ public class ToWmsApiController { @PostMapping("/jobFinish") public AjaxResult jobFinish(@RequestBody WmsJobRequest wmsJobRequest) { AjaxResult ajaxResult = toWmsService.jobFinish(wmsJobRequest); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(wmsJobRequest), "jobFinish"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(wmsJobRequest), "jobFinish",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } @@ -74,8 +81,7 @@ public class ToWmsApiController { @PostMapping("/reAssign") public AjaxResult reAssign(@RequestBody MydoJob mydoJob) { AjaxResult ajaxResult = toWmsService.reAssign(mydoJob); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "reAssign"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "reAssign",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } @@ -86,8 +92,7 @@ public class ToWmsApiController { @PostMapping("/reMaterial") public AjaxResult reMaterial(@RequestBody MydoJob mydoJob) { AjaxResult ajaxResult = toWmsService.reMaterial(mydoJob); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "reMaterial"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "reMaterial",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } @@ -100,8 +105,7 @@ public class ToWmsApiController { @PostMapping("/getJob") public AjaxResult getJob(@RequestBody MydoJob mydoJob) { AjaxResult ajaxResult = toWmsService.getJob(mydoJob); - RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "getJob"); - requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); + RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(mydoJob), "getJob",ajaxResult); requestLogService.insertRequestLog(requestLog); return ajaxResult; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWcsService.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWcsService.java index 1fcb16a..cdaa065 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWcsService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWcsService.java @@ -5,6 +5,8 @@ import com.ruoyi.api.domain.WmsJobRequest; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.job.mydojob.domain.MydoJob; +import java.util.HashMap; + /** * 作业统计 Service 接口 */ @@ -15,5 +17,7 @@ public interface IToWcsService { AjaxResult pushAgvMoveJob(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest); - void pushInMydoJob(String trayCode); + void pushInMydoJob(); + + AjaxResult outMydojobMakeSure(HashMap outMydojobMakeSureParam); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWmsService.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWmsService.java index c62e6a6..6f4275f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWmsService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IToWmsService.java @@ -11,7 +11,8 @@ import java.util.Map; */ public interface IToWmsService { - AjaxResult requestEnter(MydoJob mydoJob); + AjaxResult requestEnterByTrayCode(MydoJob mydoJob); + AjaxResult requestEnterByEnterId(MydoJob mydoJob); AjaxResult jobFinish(WmsJobRequest wmsJobRequest); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWcsServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWcsServiceImpl.java index d9ed9e5..280cfcf 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWcsServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWcsServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.api.service.impl; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjUtil; import cn.hutool.core.util.StrUtil; @@ -27,6 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; /** @@ -39,9 +41,10 @@ public class ToWcsServiceImpl implements IToWcsService { @Autowired private IMydoJobService mydoJobService; - public static final String PUSH_OUT_MYDO_JOB = "http://localhost:8081/agv/api/receiveOutMydoJob"; - public static final String PUSH_IN_MYDO_JOB = "http://localhost:8081/agv/api/receiveInMydoJob"; - public static final String PUSH_AGV_MOVE_JOB = "http://localhost:8081/agv/api/receiveAgvMoveJob"; + public static final String PUSH_OUT_MYDO_JOB = "http://localhost:8081/wcs2Wms/api/receiveOutMydoJob"; + public static final String PUSH_IN_MYDO_JOB = "http://localhost:8081/agv/wcs2Wms/api/receiveInMydoJob"; + public static final String PUSH_AGV_MOVE_JOB = "http://localhost:8081/api/receiveAgvMoveJob"; + public static final String OUT_MYDOJOB_MS = "http://localhost:8081/wcs2Wms/api/outMydojobMakesure"; @Override @@ -75,14 +78,30 @@ public class ToWcsServiceImpl implements IToWcsService { } @Override - public void pushInMydoJob(String trayCode) { - MydoJob mydoJob = mydoJobService.selectMydoJobByTrayCode(trayCode); - if (ObjUtil.isNotNull(mydoJob)){ - RequestLog requestLog = requestLogService.getRequestLog(PUSH_IN_MYDO_JOB, JSONUtil.toJsonStr(mydoJob), "推送出库任务"); - if ("1".equals(requestLog.getIsSuccessful())){ - mydoJob.setStatus("2"); - mydoJobService.updateMydoJob(mydoJob); + public void pushInMydoJob() { + MydoJob mydoJobParam = new MydoJob(); + mydoJobParam.setInOrOut("1"); + mydoJobParam.setStatus("1"); + mydoJobParam.setExitId("fluent"); + mydoJobParam.setEntranceId("fluent"); + List mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); + if (CollUtil.isNotEmpty(mydoJobs)){ + for (MydoJob mydoJob : mydoJobs) { + RequestLog requestLog = requestLogService.getRequestLog(PUSH_IN_MYDO_JOB, JSONUtil.toJsonStr(mydoJob), "推送出库任务"); + if ("1".equals(requestLog.getIsSuccessful())){ + mydoJob.setStatus("2"); + mydoJobService.updateMydoJob(mydoJob); + } } } } + + @Override + public AjaxResult outMydojobMakeSure(HashMap outMydojobMakeSureParam) { + RequestLog requestLog = requestLogService.getRequestLog(OUT_MYDOJOB_MS, JSONUtil.toJsonStr(outMydojobMakeSureParam), "推送出库任务"); + if ("1".equals(requestLog.getIsSuccessful())){ + return AjaxResult.success(); + } + return AjaxResult.error(requestLog.getDuration()); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWmsServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWmsServiceImpl.java index 19fb15f..7050165 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWmsServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ToWmsServiceImpl.java @@ -77,8 +77,7 @@ public class ToWmsServiceImpl implements IToWmsService { @Override - - public AjaxResult requestEnter(MydoJob param) { + public AjaxResult requestEnterByTrayCode(MydoJob param) { MydoJob mydoJobParam = new MydoJob(); mydoJobParam.setTrayCode(param.getTrayCode()); List mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); @@ -95,6 +94,24 @@ public class ToWmsServiceImpl implements IToWmsService { return AjaxResult.success(mydoJob); } + @Override + public AjaxResult requestEnterByEnterId(MydoJob param) { + MydoJob mydoJobParam = new MydoJob(); + mydoJobParam.setEntranceId(param.getEntranceId()); + List mydoJobs = mydoJobService.selectMydoJobListApi(mydoJobParam); + if(mydoJobs.isEmpty()){ + return AjaxResult.warn(MessageUtils.message("warn.message")); + } + MydoJob mydoJob = mydoJobs.get(0); + if ("1".equals(mydoJob.getExecutionPhase())){ + mydoJob.setExecutionPhase("2"); + mydoJob.setTrayCode(param.getTrayCode()); + mydoJob.setStatus("2"); + mydoJobService.updateMydoJob(mydoJob); + } + return AjaxResult.success(mydoJob); + } + @Override public AjaxResult jobFinish(WmsJobRequest wmsJobRequest) { MydoJob mydoJobParam = new MydoJob(); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/job/mydojob/service/impl/MydoJobServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/job/mydojob/service/impl/MydoJobServiceImpl.java index 8fa51ec..8385190 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/job/mydojob/service/impl/MydoJobServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/job/mydojob/service/impl/MydoJobServiceImpl.java @@ -231,7 +231,7 @@ public class MydoJobServiceImpl implements IMydoJobService { BasWarehouse basWarehouse = basWarehouseService.selectBasWarehouseByWarehouseId(job.getWarehouseId()); if("2".equals(basWarehouse.getWarehouseType())) { if ("1".equals(job.getStatus()) || "2".equals(job.getStatus())) { - return AjaxResult.warn(MessageUtils.message("warn.message1")); + return AjaxResult.warn(MessageUtils.message("warn.message13")); } } if ("1".equals(job.getInOrOut()) || "4".equals(job.getInOrOut())) { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/log/service/IRequestLogService.java b/ruoyi-admin/src/main/java/com/ruoyi/log/service/IRequestLogService.java index 8568034..ff41182 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/log/service/IRequestLogService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/log/service/IRequestLogService.java @@ -1,6 +1,8 @@ package com.ruoyi.log.service; import java.util.List; + +import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.log.domain.RequestLog; /** @@ -74,5 +76,5 @@ public interface IRequestLogService * @param remark * @return */ - public RequestLog getRequestLog(String param, String remark); + public RequestLog getRequestLog(String param, String remark, AjaxResult ajaxResult); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/log/service/impl/RequestLogServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/log/service/impl/RequestLogServiceImpl.java index a30bda4..6f20afb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/log/service/impl/RequestLogServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/log/service/impl/RequestLogServiceImpl.java @@ -10,6 +10,7 @@ import cn.hutool.core.util.IdUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.ruoyi.common.core.domain.AjaxResult; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.log.mapper.RequestLogMapper; @@ -23,6 +24,7 @@ import com.ruoyi.log.service.IRequestLogService; * @date 2025-07-02 */ @Service +@Slf4j public class RequestLogServiceImpl implements IRequestLogService { @Autowired @@ -61,7 +63,12 @@ public class RequestLogServiceImpl implements IRequestLogService @Override public int insertRequestLog(RequestLog requestLog) { - return requestLogMapper.insertRequestLog(requestLog); + if (requestLog.getIsSuccessful().equals("1")){ + return requestLogMapper.insertRequestLog(requestLog); + }else { + log.error("请求失败:" + requestLog.getErrorDetails()); + return 0; + } } /** @@ -138,7 +145,7 @@ public class RequestLogServiceImpl implements IRequestLogService requestLog.setIsSuccessful("0"); requestLog.setResponseStatus("0"); } finally { - requestLogMapper.insertRequestLog(requestLog); + insertRequestLog(requestLog); } return requestLog; } @@ -149,7 +156,7 @@ public class RequestLogServiceImpl implements IRequestLogService * @return requestLog */ @Override - public RequestLog getRequestLog(String param, String remark) { + public RequestLog getRequestLog(String param, String remark,AjaxResult ajaxResult) { RequestLog requestLog = new RequestLog(); requestLog.setRequestTime(DateUtil.formatDateTime(new Date())); requestLog.setRequestBody(param); @@ -159,7 +166,13 @@ public class RequestLogServiceImpl implements IRequestLogService requestLog.setRequestMethod("post"); requestLog.setResponseTime(DateUtil.formatDateTime(new Date())); requestLog.setDuration(Convert.toStr(DateUtil.between(Convert.toDate(requestLog.getRequestTime()), Convert.toDate(requestLog.getResponseTime()), DateUnit.MS))); - requestLog.setIsSuccessful("1"); + requestLog.setResponseStatus("1"); + if (ajaxResult.isSuccess()){ + requestLog.setIsSuccessful("1"); + }else { + requestLog.setIsSuccessful("0"); + } + requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); return requestLog; } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/out/tagTask/service/impl/TagTaskServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/out/tagTask/service/impl/TagTaskServiceImpl.java index 1113a18..a40ec84 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/out/tagTask/service/impl/TagTaskServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/out/tagTask/service/impl/TagTaskServiceImpl.java @@ -18,6 +18,8 @@ import com.ruoyi.bas.tag.domain.BasTag; import com.ruoyi.bas.tag.service.IBasTagService; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.text.Convert; +import com.ruoyi.job.mydojob.domain.MydoJob; +import com.ruoyi.job.mydojob.service.IMydoJobService; import com.ruoyi.out.tagTask.domain.ExecuteSocket; import com.ruoyi.pda.domain.TrayCodeMakeSure; import com.ruoyi.pda.domain.TrayCodeMsg; @@ -46,6 +48,8 @@ public class TagTaskServiceImpl implements ITagTaskService { private IBasTagService basTagService; @Autowired private PdaService pdaService; + @Autowired + private IMydoJobService mydoJobService; private HashMap tagSockteMap = new HashMap<>(); @@ -242,12 +246,23 @@ public class TagTaskServiceImpl implements ITagTaskService { String type = s.substring(4, 6);//指令类型 01是下发成功反馈 12是拍灭绿灯指令 if ("12".equals(type)) { //12为 绿色拍灯指令 - //生成agv空料箱入库作业 - TrayCodeMsg trayCodeMsg = new TrayCodeMsg(); - trayCodeMsg.setTrayCode(IdUtil.fastSimpleUUID()); - trayCodeMsg.setWarehouseId("02"); - trayCodeMsg.setEntranceId(basTag.getPickAdd()); - pdaService.emptyBoxIn(trayCodeMsg); + MydoJob mydoJobParam = new MydoJob(); + mydoJobParam.setInOrOut("1"); + mydoJobParam.setExitId("fluent"); + List mydoJobs = mydoJobService.selectMydoJobList(mydoJobParam); + if (CollUtil.isEmpty(mydoJobs)){ + //生成agv空料箱入库作业 + TrayCodeMsg trayCodeMsg = new TrayCodeMsg(); + trayCodeMsg.setTrayCode(IdUtil.fastSimpleUUID()); + trayCodeMsg.setWarehouseId("02"); + trayCodeMsg.setEntranceId(basTag.getPickAdd()); + pdaService.emptyBoxIn(trayCodeMsg); + }else { + MydoJob mydoJob = mydoJobs.get(0); + mydoJob.setEntranceId(basTag.getPickAdd()); + mydoJobService.updateMydoJob(mydoJob); + } + } } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java index 3056223..0f053fd 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/pda/service/PdaServiceImp.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.api.service.IToWcsService; import com.ruoyi.bas.cargoSpace.domain.BasCargoSpace; import com.ruoyi.bas.cargoSpace.service.IBasCargoSpaceService; import com.ruoyi.bas.container.domain.BasContainer; @@ -102,6 +103,8 @@ public class PdaServiceImp implements PdaService { private IBasWarehouseService basWarehouseService; @Autowired private IBasContainerService basContainerService; + @Autowired + private IToWcsService iToWcsService; /** * 空托盘入库 @@ -306,15 +309,14 @@ public class PdaServiceImp implements PdaService { List currentMydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(mydoJobDetailParam); boolean flag = currentMydoJobDetails.stream().allMatch(mydoJobDetail -> mydoJobDetail.getPickQuantity().equals(mydoJobDetail.getOutQuantity())); if (flag) { - - deleteTagTask(trayCodeMakeSure, basWarehouse); - HashMap map = new HashMap<>(); map.put("v_tray_code", trayCodeMakeSure.getTrayCode()); map.put("v_type", "1"); pdaMapper.outMakeSure(map); String result = map.get("v_result").toString(); if ("10".equals(result)) { + //通知wcs 出库确认 + deleteTagTask(trayCodeMakeSure, basWarehouse); return AjaxResult.success(map.get("v_resultmsg").toString()); } else { return AjaxResult.warn(map.get("v_resultmsg").toString()); @@ -383,7 +385,7 @@ public class PdaServiceImp implements PdaService { List currentMydoJobDetails = mydoJobDetailService.selectMydoJobDetailList(mydoJobDetailParam); boolean flag = currentMydoJobDetails.stream().allMatch(mydoJobDetail -> mydoJobDetail.getPickQuantity().equals(mydoJobDetail.getOutQuantity())); if (flag) { - deleteTagTask(trayCodeMakeSure, basWarehouse); + HashMap map = new HashMap<>(); @@ -392,6 +394,7 @@ public class PdaServiceImp implements PdaService { pdaMapper.outMakeSure(map); String result = map.get("v_result").toString(); if ("10".equals(result)) { + deleteTagTask(trayCodeMakeSure, basWarehouse); return AjaxResult.success(map.get("v_resultmsg").toString()); } else { return AjaxResult.warn(map.get("v_resultmsg").toString()); @@ -434,12 +437,13 @@ public class PdaServiceImp implements PdaService { } List mydoJobDetails = mydoJobDetailService.selectMydoJobDetailListByJobId(mydoJob.getJobId()); if (mydoJobDetails.stream().allMatch(x -> "1".equals(x.getSpare3()))) { - deleteTagTask(trayCodeMakeSure, basWarehouse); + HashMap map = new HashMap<>(); map.put("v_tray_code", trayCodeMakeSure.getTrayCode()); pdaMapper.checkMakeSure(map); String result = map.get("v_result").toString(); if ("10".equals(result)) { + deleteTagTask(trayCodeMakeSure, basWarehouse); return AjaxResult.success(map.get("v_resultmsg").toString()); } else { return AjaxResult.warn(map.get("v_resultmsg").toString()); @@ -476,6 +480,8 @@ public class PdaServiceImp implements PdaService { private void deleteTagTask(TrayCodeMakeSure trayCodeMakeSure, BasWarehouse basWarehouse) { if ("2".equals(basWarehouse.getWarehouseType())) { BasTag basTag = basTagService.selectBasTagByTrayCode(trayCodeMakeSure.getTrayCode()); + basTag.setTrayCode(""); + basTagService.updateBasTag(basTag); //删除电子标签 TagTask param = new TagTask(); param.setTagId(basTag.getId()); @@ -485,6 +491,13 @@ public class PdaServiceImp implements PdaService { .map(TagTask::getId) .toArray(Long[]::new)); } + //通知wcs出库确认成功 + HashMap outMydojobMakeSureParam = new HashMap<>(); + outMydojobMakeSureParam.put("trayCode", trayCodeMakeSure.getTrayCode()); + AjaxResult ajaxResult = iToWcsService.outMydojobMakeSure(outMydojobMakeSureParam); + if (!ajaxResult.isSuccess()){ + throw new RuntimeException(ajaxResult.toString()); + } } } diff --git a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties index 9c8843a..9e81bb5 100644 --- a/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties +++ b/ruoyi-admin/src/main/resources/i18n/messages_en_US.properties @@ -50,6 +50,7 @@ table.result.success=查询成功 #warn message warn.message=任务不存在 warn.message1=任务已开始 +warn.message13=任务未开始 warn.message2=子任务不存在 warn.message3=暂不支持的任务类型 warn.message4=单据不存在 diff --git a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml index 455cfe6..c85d3e4 100644 --- a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml @@ -79,8 +79,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and mj.in_or_out = #{inOrOut} and mj.start_time like concat('%', #{startTime}, '%') and mj.finish_time like concat('%', #{finishTime}, '%') - and mj.entrance_id = #{entranceId} - and mj.exit_id = #{exitId} + and mj.entrance_id like concat('%',#{entranceId},'%') + and mj.exit_id like concat('%', #{exitId}, '%') and mj.class_id = #{classId} and mj.warehouse_id = #{warehouseId} and mj.fault_flag = #{faultFlag} @@ -216,7 +216,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + and stockout_detail_id = #{stockoutDetailId} and stockout_guid = #{stockoutGuid} and stockout_id = #{stockoutId} @@ -95,7 +95,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and d.print_date = #{printDate} - + - \ No newline at end of file + diff --git a/ruoyi-admin/src/main/resources/mapper/out/OutStockoutFinishMapper.xml b/ruoyi-admin/src/main/resources/mapper/out/OutStockoutFinishMapper.xml index 98e346a..b66d614 100644 --- a/ruoyi-admin/src/main/resources/mapper/out/OutStockoutFinishMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/out/OutStockoutFinishMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -32,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + - \ No newline at end of file + diff --git a/ruoyi-admin/src/main/resources/mapper/out/OutStockoutMapper.xml b/ruoyi-admin/src/main/resources/mapper/out/OutStockoutMapper.xml index f4abf34..220b98a 100644 --- a/ruoyi-admin/src/main/resources/mapper/out/OutStockoutMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/out/OutStockoutMapper.xml @@ -67,6 +67,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + order by o.create_date desc