From f0ba5c148658d539a357670ea9f30a4be879c8e6 Mon Sep 17 00:00:00 2001 From: pang.jiabao <pang_jiabao@163.com> Date: 星期六, 10 五月 2025 11:45:46 +0800 Subject: [PATCH] 修改账号角色bug修改 --- src/main/java/com/zy/asrs/task/TaskReportScheduler.java | 66 ++++++++++++++++++++------------- 1 files changed, 40 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/TaskReportScheduler.java b/src/main/java/com/zy/asrs/task/TaskReportScheduler.java index 60e64f4..4be7aab 100644 --- a/src/main/java/com/zy/asrs/task/TaskReportScheduler.java +++ b/src/main/java/com/zy/asrs/task/TaskReportScheduler.java @@ -2,11 +2,14 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; +import com.core.common.Cools; +import com.core.common.DateUtils; import com.core.exception.CoolException; -import com.zy.asrs.domain.enums.TaskStatusType; import com.zy.asrs.entity.TaskWrkReport; import com.zy.asrs.entity.TaskWrkReportLog; +import com.zy.asrs.entity.wms.WmsFeedback; import com.zy.asrs.service.ApiLogService; import com.zy.asrs.service.TaskWrkReportLogService; import com.zy.asrs.service.TaskWrkReportService; @@ -19,7 +22,7 @@ import org.springframework.stereotype.Component; import java.io.IOException; -import java.util.HashMap; +import java.util.Date; /** * 瀹氭椂灏嗕换鍔�(瀹屾垚銆佸彇娑�)杞垚鏃ュ織 @@ -41,51 +44,52 @@ @Value("${wms.url}") private String wmsUrl; - @Value("${wms.TaskExecCallback}") + @Value("${wms.taskExecCallback}") private String TaskExecCallback; - @Scheduled(cron = "0/3 * * * * ? ") - public void execute() throws IOException { - Page<TaskWrkReport> taskWrkReportPage = taskWrkReportService.selectPage(new Page<>(0, 10)); + @Scheduled(cron = "0/5 * * * * ? ") + public synchronized void execute() throws IOException { + Page<TaskWrkReport> taskWrkReportPage = taskWrkReportService.selectPage(new Page<>(0, 100), new EntityWrapper<TaskWrkReport>().orderBy("create_time", true)); if (taskWrkReportPage.getRecords() != null) { + //鏂板涓�涓繃婊ゆ満鍒� for (TaskWrkReport taskWrk : taskWrkReportPage.getRecords()) { - HashMap<String, Object> headParam = new HashMap<>(); - if (taskWrk.getStatus().equals(TaskStatusType.OVER.id) || taskWrk.getStatus() == 7) {//瀹屾垚 - headParam.put("Result", 1); - } else if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) { - headParam.put("Result", 2); - } + WmsFeedback wmsFeedback = getWmsFeedback(taskWrk); String response = ""; - Boolean bool = false; + boolean bool = false; try { - headParam.put("TaskNo", taskWrk.getTaskNo()); log.info("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms={}", taskWrk); response = new HttpHandler.Builder() // .setHeaders(headParam) .setUri(wmsUrl) .setPath(TaskExecCallback) - .setJson(JSON.toJSONString(headParam)) + .setJson(JSON.toJSONString(wmsFeedback)) .build() .doPost(); - JSONObject jsonObject = JSON.parseObject(response); - TaskWrkReportLog taskWrkLog = new TaskWrkReportLog(); - Synchro.Copy(taskWrk, taskWrkLog); - if (!taskWrkReportLogService.insert(taskWrkLog)) { - throw new CoolException("杞巻鍙叉。澶辫触" + taskWrkLog); + if (!Cools.isEmpty(response)) { + JSONObject jsonObject = JSON.parseObject(response); + if (Integer.parseInt(String.valueOf(jsonObject.get("code"))) == 200) { + TaskWrkReportLog taskWrkLog = new TaskWrkReportLog(); + Synchro.Copy(taskWrk, taskWrkLog); + taskWrkLog.setId(null); + if (!taskWrkReportLogService.insert(taskWrkLog)) { + throw new CoolException("杞巻鍙叉。澶辫触" + taskWrkLog); + } + if (!taskWrkReportService.deleteById(taskWrk)) { + throw new CoolException("浠诲姟妗e垹闄ゅけ璐�" + taskWrkLog); + } + bool = true; + } } - if (!taskWrkReportService.deleteById(taskWrk)) { - throw new CoolException("浠诲姟妗e垹闄ゅけ璐�" + taskWrkLog); - } - bool = true; + } catch (Exception e) { log.error("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms澶辫触{},杩斿洖鍊�={}", taskWrk, response); } finally { - apiLogService.save("wcs瀹屾垚鎴栬�呭彇娑堜换鍔′笂鎶ms" + apiLogService.save("浠诲姟鐘舵�佷笂鎶�" , wmsUrl + TaskExecCallback , null , "127.0.0.1" - , JSON.toJSONString(headParam) + , JSON.toJSONString(wmsFeedback) , response , bool ); @@ -95,4 +99,14 @@ } + + private WmsFeedback getWmsFeedback(TaskWrkReport taskWrk) { + WmsFeedback feedback = new WmsFeedback(); + feedback.setBarcode(taskWrk.getBarcode()); + feedback.setReportTime(DateUtils.convert(new Date())); + feedback.setIoType(taskWrk.getIoType()); + feedback.setTaskNo(taskWrk.getTaskNo()); + feedback.setStatus(taskWrk.getStatus()); + return feedback; + } } -- Gitblit v1.9.1