啊鑫
2025-04-10 11806f176873ad969294d973209aeeffe6f69194
测试接口
已修改3个文件
32 ■■■■■ 文件已修改
src/main/java/com/gs/xiaomi/config/DataAcquisitionConfiguration.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/gs/xiaomi/service/SoapApiService.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/gs/xiaomi/config/DataAcquisitionConfiguration.java
@@ -11,6 +11,7 @@
    public static final String USER_NAME = "RFCZJXIAOBU";
    public static final String PWD = "ppB9R!He";
    public static final String LIFNR = "177301";
    public static final String XM104_URL = "https://mipoq.p.mi.com/XISOAPAdapter/MessageServlet?senderParty=&senderService=ZJ_XIAOBU_QAS&receiverParty=&receiverService=&interface=SI_ZFM_WS_API_OUT&interfaceNamespace=http://xiaomi.com/srm/b2b";
    public static String getIvPass(String ivCode) {
        return DigestUtil.md5Hex(ivCode + "/" + IV_USER + "/" + IV_PASSKEY).toUpperCase();
src/main/java/com/gs/xiaomi/service/SoapApiService.java
@@ -1,9 +1,11 @@
package com.gs.xiaomi.service;
import com.gs.xiaomi.config.DataAcquisitionConfiguration;
import com.gs.xiaomi.dto.BizDocumentResult;
import com.gs.xiaomi.dto.ZfmWsApiRequest;
import com.gs.xiaomi.util.SoapXmlBuilder;
import com.gs.xiaomi.util.X5StringUtils;
import okhttp3.*;
import org.springframework.stereotype.Service;
@@ -45,12 +47,15 @@
        MediaType mediaType = MediaType.parse("application/xml");
        RequestBody body = RequestBody.create(mediaType, soapXml);
        String s = DataAcquisitionConfiguration.USER_NAME + DataAcquisitionConfiguration.PWD;
        String auth = X5StringUtils.encodeBase64(s);
        Request request = new Request.Builder()
                .url(url)
                .method("POST", body)
//                .addHeader("User-Agent", "Apifox/1.0.0 (https://apifox.com)")
                .addHeader("Content-Type", "application/xml")
                .addHeader("Authorization", "Basic ")
                .addHeader("Authorization", "Basic " + auth)
                .addHeader("Accept", "*/*")
                .addHeader("Host", "mipoq.p.mi.com")
                .addHeader("Connection", "keep-alive")
src/test/java/com/gs/xiaomi/XiaomiApplicationTests.java
@@ -5,8 +5,10 @@
import com.gs.xiaomi.dto.BizDocument;
import com.gs.xiaomi.dto.BizDocumentResult;
import com.gs.xiaomi.dto.ZfmWsApiRequest;
import com.gs.xiaomi.service.SoapApiService;
import com.gs.xiaomi.util.SoapXmlBuilder;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import javax.xml.bind.JAXBContext;
@@ -15,6 +17,9 @@
@SpringBootTest
class XiaomiApplicationTests {
    @Autowired
    private SoapApiService service;
    @Test
    void contextLoads() throws Exception {
@@ -33,6 +38,25 @@
    }
    @Test
    void testService() throws Exception {
        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);
        BizDocumentResult bizDocumentResult = service.callAndParse(DataAcquisitionConfiguration.XM104_URL, req);
        System.out.println(JSON.toJSONString(bizDocumentResult));
    }
    @Test
    void contextLoads2() throws Exception {
        String bodyStr = "<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'>" +
                "  <SOAP:Header/>" +