From 8688b44b9e0c7403f6eca6180d30b38889d6e775 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期二, 15 四月 2025 16:12:29 +0800 Subject: [PATCH] 切换端口,暴露接口 --- src/main/java/com/gs/xiaomi/controller/KMController.java | 35 +++++++++++ src/main/java/com/gs/xiaomi/dto/NumbericalDto.java | 16 +++++ src/main/java/com/gs/xiaomi/service/XM104Service.java | 34 +++++++++- src/main/java/com/gs/xiaomi/config/ResultMessage.java | 39 +++++++++++++ src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java | 9 +++ src/main/resources/application.yml | 2 6 files changed, 129 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/gs/xiaomi/config/ResultMessage.java b/src/main/java/com/gs/xiaomi/config/ResultMessage.java new file mode 100644 index 0000000..0e7b83d --- /dev/null +++ b/src/main/java/com/gs/xiaomi/config/ResultMessage.java @@ -0,0 +1,39 @@ +package com.gs.xiaomi.config; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ResultMessage { + + private static final int SUCCESS = 200; + private static final int ERROR = 500; + + private int code; + + private String message; + + private int successful; + + private String data; + + public static ResultMessage ok() { + return new ResultMessage(SUCCESS, null, 0, "鎺ユ敹鎴愬姛"); + } + + public static ResultMessage ok(String data) { + return new ResultMessage(SUCCESS, null, 0, data); + } + + public static ResultMessage error(Exception e) { + return new ResultMessage(ERROR, e.getMessage(), 1, "鎺ユ敹澶辫触"); + } + + public static ResultMessage error(String message) { + return new ResultMessage(ERROR, message, 1, "鎺ユ敹澶辫触"); + } +} diff --git a/src/main/java/com/gs/xiaomi/controller/KMController.java b/src/main/java/com/gs/xiaomi/controller/KMController.java new file mode 100644 index 0000000..6b395e3 --- /dev/null +++ b/src/main/java/com/gs/xiaomi/controller/KMController.java @@ -0,0 +1,35 @@ +package com.gs.xiaomi.controller; + + +import com.gs.xiaomi.config.ResultMessage; +import com.gs.xiaomi.dto.NumbericalDto; +import com.gs.xiaomi.service.XM104Service; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("Numerical") +@RequiredArgsConstructor +@CrossOrigin(origins = "*") //璺ㄥ煙璇锋眰 +public class KMController { + + + private final XM104Service xm104Service; + + @PostMapping("/manualSynByASN") + public ResultMessage setCode(@RequestBody NumbericalDto barcode) { + + if (barcode.getAsn() == null) { + return ResultMessage.error("ASN鍙蜂负绌�"); + } + + try { + if (!xm104Service.manualSynchronization(barcode)) { + return ResultMessage.error("鍚屾澶辫触"); + } + return ResultMessage.ok(); + } catch (Exception e) { + return ResultMessage.error(e); + } + } +} diff --git a/src/main/java/com/gs/xiaomi/dto/NumbericalDto.java b/src/main/java/com/gs/xiaomi/dto/NumbericalDto.java new file mode 100644 index 0000000..22dbda0 --- /dev/null +++ b/src/main/java/com/gs/xiaomi/dto/NumbericalDto.java @@ -0,0 +1,16 @@ +package com.gs.xiaomi.dto; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class NumbericalDto { + + private String asn; + + private String date; +} diff --git a/src/main/java/com/gs/xiaomi/service/XM104Service.java b/src/main/java/com/gs/xiaomi/service/XM104Service.java index 50a23c2..cf60c9d 100644 --- a/src/main/java/com/gs/xiaomi/service/XM104Service.java +++ b/src/main/java/com/gs/xiaomi/service/XM104Service.java @@ -38,16 +38,25 @@ private final LogisticsPackageService logisticsPackageService; public void getDb() { - String format = DateUtil.format(new Date(), "yyyy-MM-dd"); + getXM104Save(format); + } + + private void getXM104Save(String format) { + + BizDocument doc = new BizDocument(); + doc.setBizDate(format); + doc.setLifnr(DataAcquisitionConfiguration.LIFNR); + + getXM104(doc); + } + + private void getXM104(BizDocument doc) { ZfmWsApiRequest req = new ZfmWsApiRequest(); req.setIvCode(DataAcquisitionConfiguration.IV_CODEXM104); req.setIvEvent(""); req.setIvFlag(""); - BizDocument doc = new BizDocument(); - doc.setBizDate("2025-04-01"); - doc.setLifnr(DataAcquisitionConfiguration.LIFNR); req.setIvInfo(doc); req.setIvPass(DataAcquisitionConfiguration.getIvPass(DataAcquisitionConfiguration.IV_CODEXM104)); req.setIvUser(DataAcquisitionConfiguration.IV_USER); @@ -96,7 +105,6 @@ log.error("銆愯鍙栧垪琛ㄥ紓甯搞�戝弬鏁�: {} 寮傚父: {}", JSON.toJSONString(req), e.getMessage(), e); throw new RuntimeException(e); } - } private BizDocumentResult getDeliveryNo(ZfmWsApiRequest request) throws Exception { @@ -164,4 +172,20 @@ }); } + + public boolean manualSynchronization(NumbericalDto numbericalDto) { + try { + String[] asns = numbericalDto.getAsn().split(","); + for (String asn : asns) { + BizDocument doc = new BizDocument(); + doc.setLifnr(DataAcquisitionConfiguration.LIFNR); + doc.setZzasn(asn); + getXM104(doc); + } + return true; + } catch (Exception e) { + log.error("銆愭墜鍔ㄨ鍙朅SN寮傚父銆� 寮傚父: {}", e.getMessage(), e); + return false; + } + } } \ No newline at end of file diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 5c90de1..74b8bb9 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 9095 + port: 9096 spring: datasource: diff --git a/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java b/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java index cc8dbe1..81ed733 100644 --- a/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java +++ b/src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java @@ -15,4 +15,13 @@ void contextLoads() throws Exception { xm104Service.getDb(); } + + @Test + void test() { + String str = ",,"; + String[] parts = str.split(","); + for (String part : parts) { + System.out.println(part); + } + } } -- Gitblit v1.9.3