From b93dbb8f077b5415a0002c66973b716f874f1953 Mon Sep 17 00:00:00 2001
From: tjx <t2856754968@163.com>
Date: 星期三, 29 十月 2025 10:37:12 +0800
Subject: [PATCH] 更新为正式环境配置

---
 src/main/java/com/gs/xiaomi/dto/BCS101Response.java       |   30 ++++++++++
 src/main/java/com/gs/xiaomi/dto/BCS101ResponseHeader.java |   14 ++++
 src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java   |   50 +++++++++++++---
 src/main/java/com/gs/xiaomi/dto/BCS101ResponseBody.java   |   40 +++++++++++++
 4 files changed, 125 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/gs/xiaomi/dto/BCS101Response.java b/src/main/java/com/gs/xiaomi/dto/BCS101Response.java
new file mode 100644
index 0000000..df99634
--- /dev/null
+++ b/src/main/java/com/gs/xiaomi/dto/BCS101Response.java
@@ -0,0 +1,30 @@
+package com.gs.xiaomi.dto;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class BCS101Response {
+
+    @JsonProperty("header")
+    private BCS101ResponseHeader header;
+
+    @JsonProperty("body")
+    private BCS101ResponseBody body;
+
+    /**
+     * 鍒ゆ柇鍝嶅簲鏄惁鎴愬姛
+     * @return true琛ㄧず鎴愬姛(code=200), false琛ㄧず澶辫触
+     */
+    public boolean isSuccess() {
+        return header != null && header.getCode() != null && header.getCode() == 200;
+    }
+
+    /**
+     * 鑾峰彇閿欒鎻忚堪淇℃伅
+     * @return 閿欒鎻忚堪
+     */
+    public String getErrorDesc() {
+        return header != null ? header.getDesc() : "鏈煡閿欒";
+    }
+}
diff --git a/src/main/java/com/gs/xiaomi/dto/BCS101ResponseBody.java b/src/main/java/com/gs/xiaomi/dto/BCS101ResponseBody.java
new file mode 100644
index 0000000..bb51dd1
--- /dev/null
+++ b/src/main/java/com/gs/xiaomi/dto/BCS101ResponseBody.java
@@ -0,0 +1,40 @@
+package com.gs.xiaomi.dto;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class BCS101ResponseBody {
+
+    @JsonProperty("snList")
+    private List<String> snList;
+
+    @JsonProperty("reelList")
+    private List<String> reelList;
+
+    @JsonProperty("cartonList")
+    private List<String> cartonList;
+
+    @JsonProperty("currentPage")
+    private Integer currentPage;
+
+    @JsonProperty("pageSize")
+    private Integer pageSize;
+
+    @JsonProperty("totalPage")
+    private Integer totalPage;
+
+    @JsonProperty("productionOrder")
+    private String productionOrder;
+
+    @JsonProperty("productionLine")
+    private String productionLine;
+
+    @JsonProperty("productionTime")
+    private String productionTime;
+
+    @JsonProperty("productionQty")
+    private Integer productionQty;
+}
diff --git a/src/main/java/com/gs/xiaomi/dto/BCS101ResponseHeader.java b/src/main/java/com/gs/xiaomi/dto/BCS101ResponseHeader.java
new file mode 100644
index 0000000..9c75db4
--- /dev/null
+++ b/src/main/java/com/gs/xiaomi/dto/BCS101ResponseHeader.java
@@ -0,0 +1,14 @@
+package com.gs.xiaomi.dto;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+@Data
+public class BCS101ResponseHeader {
+
+    @JsonProperty("code")
+    private Integer code;
+
+    @JsonProperty("desc")
+    private String desc;
+}
diff --git a/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java b/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java
index 0620eac..3758e7c 100644
--- a/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java
+++ b/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java
@@ -1,13 +1,22 @@
 package com.gs.xiaomi;
 
 import cn.hutool.crypto.digest.DigestUtil;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.gs.xiaomi.dto.BCS101Request;
+import com.gs.xiaomi.dto.BCS101Response;
 import com.gs.xiaomi.dto.NumbericalDto;
+import com.gs.xiaomi.entity.DeliveryMain;
 import com.gs.xiaomi.service.BCS101ApiService;
+import com.gs.xiaomi.service.DeliveryMainService;
 import com.gs.xiaomi.service.Xm104Service;
 import org.junit.jupiter.api.Test;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
+
+import java.io.IOException;
+import java.util.List;
+import java.util.stream.Collectors;
 
 @SpringBootTest
 class XiaomiApplicationTests {
@@ -17,6 +26,9 @@
 
     @Autowired
     private BCS101ApiService bcs101ApiService;
+
+    @Autowired
+    private DeliveryMainService deliveryMainService;
 
     @Test
     void contextLoads() throws Exception {
@@ -43,16 +55,36 @@
 
     @Test
     void testBCS101ApiService() throws Exception {
-        // 鍒涘缓娴嬭瘯璇锋眰鍙傛暟
-        BCS101Request request = new BCS101Request();
-        request.setSupplierId("177301");
-        request.setDocNo("9316692708");
-        request.setDocType("ASNGR");
-        request.setPageNo(1);
-        request.setPageSize(1000);
 
-        String bcs101Data = bcs101ApiService.getBCS101Data(request);
-        System.out.println(bcs101Data);
+        List<DeliveryMain> list = deliveryMainService.list();
 
+        List<String> collect = list.stream().map(DeliveryMain::getZzasn).collect(Collectors.toList());
+
+        collect.forEach(s->{
+            // 鍒涘缓娴嬭瘯璇锋眰鍙傛暟
+            BCS101Request request = new BCS101Request();
+            request.setSupplierId("177301");
+            request.setDocNo("9316692708");
+            request.setDocType("ASNGR");
+            request.setPageNo(1);
+            request.setPageSize(1000);
+
+            // 璋冪敤API鑾峰彇鍘熷JSON瀛楃涓�
+            String bcs101Data = null;
+            try {
+                bcs101Data = bcs101ApiService.getBCS101Data(request);
+            } catch (IOException e) {
+                throw new RuntimeException(e);
+            }
+            System.out.println("鍘熷鍝嶅簲: " + bcs101Data);
+
+            // 瑙f瀽JSON涓築CS101Response瀵硅薄
+            ObjectMapper objectMapper = new ObjectMapper();
+            try {
+                BCS101Response response = objectMapper.readValue(bcs101Data, BCS101Response.class);
+            } catch (JsonProcessingException e) {
+                throw new RuntimeException(e);
+            }
+        });
     }
 }

--
Gitblit v1.9.3