From bc48a855d98e360042a7e2fff5594a91a82578c6 Mon Sep 17 00:00:00 2001 From: taisheng <taisheng@qq.com> Date: 星期四, 24 七月 2025 16:16:33 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/OpenController.java | 67 +++++++++++++++++++++++++++++++++ 1 files changed, 66 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java index 991c51a..d41633b 100644 --- a/src/main/java/com/zy/asrs/controller/OpenController.java +++ b/src/main/java/com/zy/asrs/controller/OpenController.java @@ -7,13 +7,16 @@ import com.core.common.Cools; import com.core.common.R; import com.core.exception.CoolException; +import com.zy.asrs.domain.enums.TaskStatusType; import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; +import com.zy.common.utils.HttpHandler; import com.zy.common.web.BaseController; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -47,20 +50,82 @@ @Autowired private BasCrnErrorService basCrnErrorService; + @Value("${agv.url}") + private String agvUrl; + @Value("${agv.bindPodAndBerth}") + private String bindPodAndBerth; + private static final boolean auth = true; public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ add("ea1f0459efc02a79f046f982767939ae"); }}; - //agv涓婃姤 + //AGV涓婃姤 @PostMapping("/agvReport") public R agvReport(@RequestBody HashMap<String, Object> param) { String taskCode = param.get("taskCode").toString(); System.out.println(JSON.toJSONString(param)); + + TaskWrk taskWrk = taskWrkService.selectByTaskNo(taskCode); + if(taskWrk == null) { + return R.error("浠诲姟涓嶅瓨鍦�"); + } + + if (taskWrk.getTargetPoint().equals("0900601")) { + HashMap<String, Object> requestParam = new HashMap<>(); + + int nextInt = new Random().nextInt(100); + requestParam.put("reqCode", taskWrk.getTaskNo() + "-" + nextInt); + requestParam.put("podCode", param.get("podCode")); + requestParam.put("positionCode", taskWrk.getTargetPoint()); + requestParam.put("indBind", 0); + + String response = null; + boolean requestStatus = false; + try { + log.info("WCS瑙g粦AGV璐ф灦={}", taskWrk); + response = new HttpHandler.Builder() + .setUri(agvUrl) + .setPath(bindPodAndBerth) + .setJson(JSON.toJSONString(requestParam)) + .build() + .doPost(); + JSONObject jsonObject = JSON.parseObject(response); + if (jsonObject.get("code").equals("0")) { + requestStatus = true; + } + } catch (Exception e) { + log.error("WCS娲惧彂浠诲姟缁橝GV澶辫触{},杩斿洖鍊�={}", taskWrk, response); + } finally { + apiLogService.save("WCS娲惧彂浠诲姟缁橝GV" + , agvUrl + bindPodAndBerth + , null + , "127.0.0.1" + , JSON.toJSONString(requestParam) + , response + , requestStatus + ); + } + } + + taskWrk.setStatus(TaskStatusType.COMPLETE.id); + taskWrk.setModiTime(new Date()); + taskWrk.setBarcode(param.get("podCode").toString()); + taskWrkService.updateById(taskWrk); return R.ok(); } + //鐢熸垚AGV浠诲姟 + @PostMapping("/generateAgvTask") + public R generateAgvTask(@RequestBody GenerateAgvTaskParam param) { + boolean generated = openService.generateAgvTask(param); + if(generated) { + return R.ok(); + } + return R.error(); + } + //鍒涘缓浠诲姟 @PostMapping("/taskCreate") @Transactional -- Gitblit v1.9.1