From db06b944e7886832d20b8e3ae62b2cb70bcba30f Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期五, 17 四月 2026 13:59:50 +0800
Subject: [PATCH] lsh#订单完结

---
 asrs-schedule/src/main/java/com/vincent/rsf/schedule/api/service/impl/ReportMsgServiceImpl.java |   72 ++++++++++++++++++++++++++++++++++++
 1 files changed, 72 insertions(+), 0 deletions(-)

diff --git a/asrs-schedule/src/main/java/com/vincent/rsf/schedule/api/service/impl/ReportMsgServiceImpl.java b/asrs-schedule/src/main/java/com/vincent/rsf/schedule/api/service/impl/ReportMsgServiceImpl.java
index 635c1a8..863abeb 100644
--- a/asrs-schedule/src/main/java/com/vincent/rsf/schedule/api/service/impl/ReportMsgServiceImpl.java
+++ b/asrs-schedule/src/main/java/com/vincent/rsf/schedule/api/service/impl/ReportMsgServiceImpl.java
@@ -222,6 +222,78 @@
     }
 
     /**
+     * 涓婃姤宸插畬鎴愯鍗曪紙鏂伴摼璺紝Order鏍煎紡锛�
+     * @author Ryan
+     * @date 2025/10/28
+     * @param orderData Order鏍煎紡鐨凧SON鏁版嵁
+     * @return com.vincent.rsf.framework.common.R
+     */
+    @Override
+    public R uploadReportOrdersNew(JSONObject orderData) {
+        if (Objects.isNull(orderData)) {
+            throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+        String rcsUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.REPORT_ORDERS_NEW;
+        log.info("涓婃姤宸插畬鎴愯鍗曪紙鏂伴摼璺級锛歿}锛� 璇锋眰鍙傛暟锛� {}", rcsUrl, orderData.toJSONString());
+        HttpHeaders headers = new HttpHeaders();
+        headers.add("Content-Type", "application/json");
+        headers.add("api-version", "v2.0");
+
+        HttpEntity httpEntity = new HttpEntity(orderData, headers);
+        ResponseEntity<String> exchange = restTemplate.exchange(rcsUrl, HttpMethod.POST, httpEntity, String.class);
+        log.info("涓婃姤宸插畬鎴愯鍗曪紙鏂伴摼璺級锛岃繑鍥炵粨鏋滐細 {}", exchange);
+        if (Objects.isNull(exchange.getBody())) {
+            throw new CoolException("淇敼澶辫触锛侊紒");
+        } else {
+            ObjectMapper objectMapper = new ObjectMapper();
+            objectMapper.coercionConfigDefaults().setCoercion(CoercionInputShape.EmptyString, CoercionAction.AsEmpty);
+            try {
+                CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class);
+                if (result.getCode() == 200) {
+                    return R.ok().add(result.getData());
+                } else {
+                    return R.ok(result.getMsg()).add(result.getData());
+                }
+            } catch (JsonProcessingException e) {
+                throw new CoolException(e.getMessage());
+            }
+        }
+    }
+
+    /**
+     * 瑙﹀彂rsf-open-api涓婃姤ERP
+     * @return com.vincent.rsf.framework.common.R
+     */
+    @Override
+    public R triggerErpReport() {
+        String rcsUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.REPORT_ORDERS_ERP;
+        log.info("瑙﹀彂ERP涓婃姤锛歿}", rcsUrl);
+        HttpHeaders headers = new HttpHeaders();
+        headers.add("Content-Type", "application/json");
+        headers.add("api-version", "v2.0");
+
+        HttpEntity httpEntity = new HttpEntity(headers);
+        try {
+            ResponseEntity<String> exchange = restTemplate.exchange(rcsUrl, HttpMethod.POST, httpEntity, String.class);
+            log.info("瑙﹀彂ERP涓婃姤锛岃繑鍥炵粨鏋滐細 {}", exchange);
+            if (Objects.isNull(exchange.getBody())) {
+                return R.ok("鏃犺繑鍥炵粨鏋�");
+            }
+            ObjectMapper objectMapper = new ObjectMapper();
+            objectMapper.coercionConfigDefaults().setCoercion(CoercionInputShape.EmptyString, CoercionAction.AsEmpty);
+            CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class);
+            if (result.getCode() == 200) {
+                return R.ok().add(result.getData());
+            } else {
+                return R.ok(result.getMsg()).add(result.getData());
+            }
+        } catch (Exception e) {
+            log.error("瑙﹀彂ERP涓婃姤澶辫触", e);
+            return R.ok("瑙﹀彂ERP涓婃姤澶辫触锛�" + e.getMessage());
+        }
+    }
+
+    /**
      * 鐩樼偣搴撳瓨鏁版嵁淇敼
      * @param params
      * @return

--
Gitblit v1.9.1