From 72c06d5800d3a99dbd7002a6946be749d9264b15 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期四, 26 六月 2025 10:44:26 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/service/impl/ToWmsServiceImpl.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 101 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/ToWmsServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ToWmsServiceImpl.java index 59ee1da..de2b4cd 100644 --- a/src/main/java/com/zy/asrs/service/impl/ToWmsServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/ToWmsServiceImpl.java @@ -3,40 +3,38 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.core.common.Cools; -import com.zy.asrs.entity.TaskWrk; -import com.zy.asrs.entity.TaskWrkReport; +import com.zy.asrs.domain.enums.TaskStatusType; +import com.zy.asrs.domain.enums.WorkNoType; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.wms.StorageEscalationParam; import com.zy.asrs.entity.wms.WmsResult; import com.zy.asrs.service.*; import com.zy.common.service.CommonService; import com.zy.common.utils.HttpHandler; import com.zy.common.utils.Synchro; -import com.zy.core.properties.SlaveProperties; +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 java.io.IOException; import java.util.Date; -@Service +@Slf4j +@Service("toWmsService") public class ToWmsServiceImpl implements ToWmsService { - @Autowired private TaskWrkService taskWrkService; - @Autowired - private SlaveProperties slaveProperties; + + @Autowired private TaskWrkReportService taskWrkReportService; - @Autowired - private StaDescService staDescService; + @Autowired private CommonService commonService; + @Autowired private LocMastService locMastService; - @Autowired - private BasDevpService basDevpService; @Autowired @@ -61,6 +59,9 @@ @Value("${wms.taskStatusFeedbackPath}") private String taskStatusFeedbackPath; + @Value("${wms.executionStatusReport}") + private String executionStatusReport; + @Value("${wms.code}") private String code; @@ -82,7 +83,24 @@ } @Override - public WmsResult getLocNoFromWms(StorageEscalationParam wmsParam) { + public void addReportLog(TaskWrkLog taskWrk) { + TaskWrkReport taskWrkReport = new TaskWrkReport(); + Synchro.Copy(taskWrk, taskWrkReport); + taskWrkReport.setCreateTime(new Date()); + taskWrkReportService.insert(taskWrkReport); + } + + + @Override + public void addReportLog(WrkMast taskWrk) { + TaskWrkReport taskWrkReport = new TaskWrkReport(); + Synchro.Copy(taskWrk, taskWrkReport); + taskWrkReport.setCreateTime(new Date()); + taskWrkReportService.insert(taskWrkReport); + } + + @Override + public TaskWrk getLocNoFromWms(StorageEscalationParam wmsParam) { String response = ""; Boolean success = false; try { @@ -92,19 +110,83 @@ .setJson(JSON.toJSONString(wmsParam)) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - if (!Cools.isEmpty(response) && !Cools.isEmpty(jsonObject.get(code)) && jsonObject.get(code).equals(successCode)) { - WmsResult result = JSON.parseObject(jsonObject.get(data).toString(), WmsResult.class); - return result; + if (!Cools.isEmpty(response)) { + JSONObject jsonObject = JSON.parseObject(response); + if (successCode.equals(jsonObject.get(code).toString())) { + WmsResult result = JSON.parseObject(jsonObject.get(data).toString(), WmsResult.class); + return createInTask(result, wmsParam.getBarcode(), wmsParam.getStationCode()); + } } - } catch (IOException e) { - + } catch (Exception e) { + e.printStackTrace(); + log.info("璇锋眰wms鎶ラ敊锛屽叆鍙傦細{},寮傚父锛歿}",JSON.toJSONString(wmsParam), e.getMessage()); } finally { addApiLog("鍏ュ簱浠诲姟璇锋眰鑾峰彇搴撲綅", wmsUrl + inboundTaskApplyPath, JSON.toJSONString(wmsParam), response, success); } return null; } + @Override + public void executionStatusReport(String taskNo, Integer wrkSts) { + String response = ""; + boolean bool = false; + JSONObject param = new JSONObject(); + try { + log.info("浠诲姟鎵ц鐘舵�佷笂鎶ワ紝浠诲姟鍙凤細{}锛屾墽琛岀姸鎬侊細{}", taskNo,wrkSts); + param.put("taskNo",taskNo); + param.put("wrkSts",wrkSts); + response = new HttpHandler.Builder() + // .setHeaders(headParam) + .setUri(wmsUrl) + .setPath(executionStatusReport) + .setJson(param.toJSONString()) + .build() + .doPost(); + if (!Cools.isEmpty(response)) { + bool = true; + } + + } catch (Exception e) { + log.error("浠诲姟鎵ц鐘舵�佷笂鎶ュ紓甯�" + e); + } finally { + apiLogService.save("浠诲姟鐘舵�佷笂鎶�" + , wmsUrl + executionStatusReport + , null + , "127.0.0.1" + , param.toJSONString() + , response + , bool + ); + } + } + + + private TaskWrk createInTask(WmsResult result, String barcode, Integer startPoint) { + String locNo = result.getLocNo(); + Date now = new Date(); + TaskWrk taskWrk = new TaskWrk(); + int workNo1 = commonService.getWorkNo(WorkNoType.PAKIN.type);//鑾峰彇鍏ュ簱宸ヤ綔鍙� + taskWrk.setTaskNo(result.getTaskNo());//浠诲姟鍙� + taskWrk.setWrkNo(workNo1); + taskWrk.setStatus(TaskStatusType.DISTRIBUTE.id);//浠诲姟鐘舵�侊細娲惧彂 + taskWrk.setCreateTime(now); + taskWrk.setAssignTime(now); + taskWrk.setIoType(1);//浠诲姟绫诲瀷 + taskWrk.setIoPri(13);//浼樺厛绾� + taskWrk.setBarcode(barcode);//鏉$爜 + LocMast locMast = locMastService.selectByLocNo(locNo); + taskWrk.setCrnNo(locMast.getCrnNo()); + taskWrk.setTargetPoint(locNo); + taskWrk.setStartPoint(startPoint + ""); + if (taskWrk.getIoType() == 1) { + taskWrk.setWrkSts(2); + if (!Cools.isEmpty(taskWrk.getTargetPoint())) { + taskWrk.setOriginTargetPoint(taskWrk.getTargetPoint()); + } + } + taskWrkService.insert(taskWrk); + return taskWrk; + } private void addApiLog(String nameSpace, String url, String param, String response, Boolean success) { apiLogService.save(nameSpace, url, null, "127.0.0.1", param, response, success); -- Gitblit v1.9.1