From a750c6ca527c0d209473b8593df679aa6ef58854 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期二, 03 二月 2026 15:07:29 +0800
Subject: [PATCH] lsh#

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/entity/constant/RcsConstant.java |    2 ++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java |   44 ++++++++++++++++++++++++++++++++++++++++++++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java       |    3 ++-
 3 files changed, 48 insertions(+), 1 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/constant/RcsConstant.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/constant/RcsConstant.java
index 9b71729..1527a51 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/constant/RcsConstant.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/constant/RcsConstant.java
@@ -11,6 +11,8 @@
     //涓婃姤璁㈠崟淇℃伅
     public static String REPORT_ORDERS = "/rsf-open-api/erp/report/order";
 
+    public static String REPORT_TASKS = "/rsf-open-api/erp/report/task";
+
     //鐩樼偣搴撳瓨淇敼
     public static String CHECK_LOCITEM_UPDATE = "/rsf-open-api/erp/check/locitem/update";
 
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
index 6360354..c605700 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskStsType.java
@@ -48,7 +48,8 @@
     MISSION_TEMPLATE_WEIGHING_ONE2("1901", "绉伴噸浣滀笟涓瓑寰呬笂鎶ュ畬鎴�"),
 
     MISSION_TEMPLATE_NO_EXECUTE1("9998", "1005.涓嶆墽琛屼换鍔�"),
-    MISSION_TRANSFER("9999", "9999.浠诲姟瀹屾垚涓�"),
+    MISSION_TRANSFER("9999", "9999.浠诲姟涓婃姤涓�"),
+    MISSION_TRANSFER_END("10000", "10000.浠诲姟涓婃姤瀹屾垚锛岀瓑寰呯粨鏉�"),
     ;
 
     public Integer id;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
index af89fb0..b30c361 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -252,6 +252,50 @@
                 return;
             }
             for (Task task : tasks) {
+                /**浠诲姟涓嬪彂鎺ュ彛*/
+                String pubTakUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.REPORT_TASKS;
+
+                /**鍩虹閰嶇疆閾炬帴*/
+                log.info("浠诲姟涓婃姤锛岃姹傚湴鍧�锛� {}锛� 璇锋眰鍙傛暟锛� {}", pubTakUrl, JSONObject.toJSONString(""));
+                HttpHeaders headers = new HttpHeaders();
+                headers.add("Content-Type", "application/json");
+                headers.add("api-version", "v2.0");
+                HttpEntity httpEntity = new HttpEntity(task, headers);
+                ResponseEntity<String> exchange = restTemplate.exchange(pubTakUrl, HttpMethod.POST, httpEntity, String.class);
+                log.info("浠诲姟涓婃姤锛屽搷搴旂粨鏋滐細 {}", exchange);
+                if (Objects.isNull(exchange.getBody())) {
+                    throw new CoolException("浠诲姟涓婃姤澶辫触锛侊紒锛岃繑鍥炲弬鏁颁负绌猴紒锛侊紒");
+                } else {
+                    try {
+                        ObjectMapper objectMapper = new ObjectMapper();
+                        objectMapper.coercionConfigDefaults()
+                                .setCoercion(CoercionInputShape.EmptyString, CoercionAction.AsEmpty);
+                        CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class);
+                        if (result.getCode() == 200) {
+                            task.setTaskStatus( TaskStsType.MISSION_TRANSFER_END.id);
+                            taskService.updateById(task);
+                        }
+                    } catch (JsonProcessingException e) {
+                        throw new CoolException(e.getMessage());
+                    }
+                }
+            }
+//            List<Long> longSet = tasks.stream().map(Task::getId).collect(Collectors.toList());
+//            List<Task> vaildTasks = taskService.list(new LambdaQueryWrapper<Task>().in(Task::getId, longSet));
+//            taskService.complateInTask(vaildTasks);
+        } catch (Exception e) {
+            log.error(e.getMessage());
+        }
+    }
+
+
+    public void completeStock10000() throws Exception {
+        try{
+            List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.MISSION_TRANSFER_END.id));
+            if (tasks.isEmpty()) {
+                return;
+            }
+            for (Task task : tasks) {
                 if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)
                         || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type)
                         || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)

--
Gitblit v1.9.1