From 59859155cfb453861a0dbca0d7758d155cc2b53a Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期五, 15 八月 2025 23:09:26 +0800
Subject: [PATCH] art: MES提供WMS调用的WebService接口修改

---
 src/main/java/org/jeecg/modules/wms/dto/ReceiveWMSScanItemListResponse.java |   18 ++++++
 src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java |   37 ++++++++++++
 /dev/null                                                                   |   22 -------
 src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java  |    2 
 src/main/java/org/jeecg/modules/wms/request/ReceiveWMSScanItemList.java     |   18 ++++++
 src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java       |   20 +++---
 src/main/java/org/jeecg/modules/wms/service/MESWebServiceSoap.java          |   26 ++++++++
 src/main/java/org/jeecg/modules/wms/config/WebServiceServerConfig.java      |   15 ++---
 8 files changed, 117 insertions(+), 41 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/wms/config/WebServiceServerConfig.java b/src/main/java/org/jeecg/modules/wms/config/WebServiceServerConfig.java
index 17ee53b..bc5f335 100644
--- a/src/main/java/org/jeecg/modules/wms/config/WebServiceServerConfig.java
+++ b/src/main/java/org/jeecg/modules/wms/config/WebServiceServerConfig.java
@@ -4,8 +4,8 @@
 import org.apache.cxf.bus.spring.SpringBus;
 import org.apache.cxf.jaxws.EndpointImpl;
 import org.apache.cxf.transport.servlet.CXFServlet;
-import org.jeecg.modules.wms.service.ReceiveWMSScanItemListService;
-import org.jeecg.modules.wms.service.impl.ReceiveWMSScanItemListServiceImpl;
+import org.jeecg.modules.wms.service.MESWebServiceSoap;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.web.servlet.ServletRegistrationBean;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
@@ -15,6 +15,8 @@
 
 @Configuration
 public class WebServiceServerConfig {
+    @Autowired
+    private MESWebServiceSoap webServiceSoap;
 
     @Bean(name = Bus.DEFAULT_BUS_ID)
     public Bus springBus() {
@@ -27,16 +29,11 @@
     }
 
     @Bean
-    public ReceiveWMSScanItemListService receiveWMSScanItemListService() {
-        return new ReceiveWMSScanItemListServiceImpl();
-    }
-
-    @Bean
     public Endpoint endpoint() {
         // 鍙傛暟浜岋紝鏄疭EI瀹炵幇绫诲璞�
-        Endpoint endpoint = new EndpointImpl(this.springBus(), this.receiveWMSScanItemListService());
+        Endpoint endpoint = new EndpointImpl(this.springBus(), webServiceSoap);
         // 鍙戝竷鏈嶅姟
-        endpoint.publish("/ReceiveWMSScanItemList");
+        endpoint.publish("/MESWebService");
         return endpoint;
     }
 }
diff --git a/src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java b/src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java
index bdd5ab5..08d60e0 100644
--- a/src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java
+++ b/src/main/java/org/jeecg/modules/wms/controller/WMSTestController.java
@@ -10,9 +10,9 @@
 import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.wms.WMSWebService;
-import org.jeecg.modules.wms.dto.ReceiveMESScanItemListResponse;
-import org.jeecg.modules.wms.request.ReceiveMESScanItemList;
-import org.jeecg.modules.wms.service.ReceiveWMSScanItemListService;
+import org.jeecg.modules.wms.dto.WSResponse;
+import org.jeecg.modules.wms.request.ReceiveWMSScanItemList;
+import org.jeecg.modules.wms.service.MESWebServiceSoap;
 import org.jeecg.modules.wms.service.WebServiceSoap;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -30,16 +30,18 @@
     @Autowired
     private WMSWebService webService;
 
+    private final static String localUrl = "http://localhost:9989/jeecg-boot/webservice/ReceiveWMSScanItemList?wsdl";
+
 
     @ApiOperation(value = "WMS闆嗘垚娴嬭瘯-鎺ユ敹WMS绉诲簱缁撴灉", notes = "WMS闆嗘垚娴嬭瘯-鎺ユ敹WMS绉诲簱缁撴灉")
     @PostMapping("/testReceiveWMSScanItemList")
     public Result<?> testReceiveWMSScanItemList() {
         JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
-        factory.setAddress(url);
-        factory.setServiceClass(ReceiveWMSScanItemListService.class);
-        ReceiveWMSScanItemListService service = (ReceiveWMSScanItemListService) factory.create();
-        ReceiveMESScanItemList request = new ReceiveMESScanItemList();
-        ReceiveMESScanItemListResponse response = service.receiveWMSScanItemList(request);
+        factory.setAddress(localUrl);
+        factory.setServiceClass(MESWebServiceSoap.class);
+        MESWebServiceSoap service = (MESWebServiceSoap) factory.create();
+        ReceiveWMSScanItemList request = new ReceiveWMSScanItemList();
+        WSResponse response = service.receiveWMSScanItemList(request);
         return Result.ok(response);
     }
 
@@ -52,7 +54,7 @@
 //        WebServiceSoap service = (WebServiceSoap) factory.create();
 //        String response = service.helloWorld();
 //        return Result.ok(response);
-        WebServiceSoap port = webService.getWebServiceSoap();
+        WebServiceSoap port = webService.getWebServiceSoap12();
         // 2. 鑾峰彇 CXF 搴曞眰 Client 瀵硅薄
         Client client = ClientProxy.getClient(port);
 
diff --git a/src/main/java/org/jeecg/modules/wms/dto/ReceiveWMSScanItemListResponse.java b/src/main/java/org/jeecg/modules/wms/dto/ReceiveWMSScanItemListResponse.java
new file mode 100644
index 0000000..f2da1d4
--- /dev/null
+++ b/src/main/java/org/jeecg/modules/wms/dto/ReceiveWMSScanItemListResponse.java
@@ -0,0 +1,18 @@
+package org.jeecg.modules.wms.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.xml.bind.annotation.*;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+        "receiveWMSScanItemListResult"
+})
+@XmlRootElement(name = "ReceiveWMSScanItemListResponse")
+@Getter
+@Setter
+public class ReceiveWMSScanItemListResponse {
+    @XmlElement(name = "ReceiveWMSScanItemListResult")
+    protected WSResponse receiveWMSScanItemListResult;
+}
diff --git a/src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java b/src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java
index 1ef4806..2f75f8f 100644
--- a/src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java
+++ b/src/main/java/org/jeecg/modules/wms/request/ArrayOfWebServiceSendItem.java
@@ -37,7 +37,7 @@
 public class ArrayOfWebServiceSendItem {
 
     @XmlElement(name = "WebServiceSendItem", nillable = true)
-    protected List<org.jeecg.modules.wms.dto.WebServiceSendItem> webServiceSendItem;
+    protected List<WebServiceSendItem> webServiceSendItem;
 
     /**
      * Gets the value of the webServiceSendItem property.
diff --git a/src/main/java/org/jeecg/modules/wms/request/ReceiveWMSScanItemList.java b/src/main/java/org/jeecg/modules/wms/request/ReceiveWMSScanItemList.java
new file mode 100644
index 0000000..c728815
--- /dev/null
+++ b/src/main/java/org/jeecg/modules/wms/request/ReceiveWMSScanItemList.java
@@ -0,0 +1,18 @@
+package org.jeecg.modules.wms.request;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.xml.bind.annotation.*;
+
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+        "wmsScanItemList"
+})
+@XmlRootElement(name = "ReceiveWMSScanItemList")
+@Getter
+@Setter
+public class ReceiveWMSScanItemList {
+    @XmlElement(name = "WMSScanItemList")
+    protected ArrayOfWebServiceSendItem wmsScanItemList;
+}
diff --git a/src/main/java/org/jeecg/modules/wms/service/MESWebServiceSoap.java b/src/main/java/org/jeecg/modules/wms/service/MESWebServiceSoap.java
new file mode 100644
index 0000000..0af3655
--- /dev/null
+++ b/src/main/java/org/jeecg/modules/wms/service/MESWebServiceSoap.java
@@ -0,0 +1,26 @@
+package org.jeecg.modules.wms.service;
+
+import org.jeecg.modules.wms.dto.WSResponse;
+import org.jeecg.modules.wms.request.ReceiveMESScanItemList;
+import org.jeecg.modules.wms.request.ReceiveWMSScanItemList;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.xml.ws.RequestWrapper;
+import javax.xml.ws.ResponseWrapper;
+
+@WebService(name = "MESWebServiceSoap", targetNamespace = "http://xhj008.server.webservice.com/")
+public interface MESWebServiceSoap {
+    /**
+     * 鎺ユ敹WMS绉诲簱淇℃伅
+     * @param request
+     * @return
+     */
+    @WebMethod(operationName = "ReceiveWMSScanItemList", action = "http://xhj008.server.webservice.com/ReceiveWMSScanItemList")
+    @RequestWrapper(localName = "ReceiveWMSScanItemList", targetNamespace = "http://xhj008.server.webservice.com/", className = "ReceiveWMSScanItemList")
+    @ResponseWrapper(localName = "ReceiveWMSScanItemListResponse", targetNamespace = "http://xhj008.server.webservice.com/", className = "ReceiveWMSScanItemListResponse")
+    @WebResult(name = "ReceiveWMSScanItemListResult", targetNamespace = "http://xhj008.server.webservice.com/")
+    WSResponse receiveWMSScanItemList(@WebParam(name = "ReceiveWMSScanItemList", targetNamespace = "http://xhj008.server.webservice.com/") ReceiveWMSScanItemList request);
+}
diff --git a/src/main/java/org/jeecg/modules/wms/service/ReceiveWMSScanItemListService.java b/src/main/java/org/jeecg/modules/wms/service/ReceiveWMSScanItemListService.java
deleted file mode 100644
index d5f1b93..0000000
--- a/src/main/java/org/jeecg/modules/wms/service/ReceiveWMSScanItemListService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.jeecg.modules.wms.service;
-
-import org.jeecg.modules.wms.dto.ReceiveMESScanItemListResponse;
-import org.jeecg.modules.wms.request.ReceiveMESScanItemList;
-
-import javax.jws.WebService;
-
-@WebService(name = "ReceiveWMSScanItemList", targetNamespace = "http://xhj008.server.webservice.com")
-public interface ReceiveWMSScanItemListService {
-    /**
-     * 鎺ユ敹WMS绉诲簱淇℃伅
-     * @param request
-     * @return
-     */
-    ReceiveMESScanItemListResponse receiveWMSScanItemList(ReceiveMESScanItemList request);
-}
diff --git a/src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java b/src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java
new file mode 100644
index 0000000..b3a7987
--- /dev/null
+++ b/src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java
@@ -0,0 +1,37 @@
+package org.jeecg.modules.wms.service.impl;
+
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.aspect.annotation.ApiLog;
+import org.jeecg.common.constant.ApiLogCategoryEnum;
+import org.jeecg.modules.wms.dto.WSResponse;
+import org.jeecg.modules.wms.request.ReceiveWMSScanItemList;
+import org.jeecg.modules.wms.service.MESWebServiceSoap;
+import org.springframework.stereotype.Service;
+
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebResult;
+import javax.jws.WebService;
+import javax.xml.ws.RequestWrapper;
+import javax.xml.ws.ResponseWrapper;
+
+
+@Slf4j
+@Service
+@WebService(name = "MESWebServiceSoap", targetNamespace = "http://xhj008.server.webservice.com", endpointInterface = "org.jeecg.modules.wms.service.MESWebServiceSoap")
+public class MESWebServiceSoapImpl implements MESWebServiceSoap {
+
+    @Override
+    @WebMethod(operationName = "ReceiveWMSScanItemList", action = "http://xhj008.server.webservice.com/ReceiveWMSScanItemList")
+    @RequestWrapper(localName = "ReceiveWMSScanItemList", targetNamespace = "http://xhj008.server.webservice.com/", className = "ReceiveWMSScanItemList")
+    @ResponseWrapper(localName = "ReceiveWMSScanItemListResponse", targetNamespace = "http://xhj008.server.webservice.com/", className = "ReceiveWMSScanItemListResponse")
+    @WebResult(name = "ReceiveWMSScanItemListResult", targetNamespace = "http://xhj008.server.webservice.com/")
+    @ApiLog(apiName = "鎺ユ敹WMS鐨勭Щ搴撲俊鎭�(ReceiveWMSScanItemList(MES)", apiCategory = ApiLogCategoryEnum.WMS)
+    public WSResponse receiveWMSScanItemList(@WebParam(name = "ReceiveWMSScanItemList", targetNamespace = "http://xhj008.server.webservice.com/") ReceiveWMSScanItemList request) {
+        log.error("11111111111");
+        WSResponse response = new WSResponse();
+        response.setErrorCode("-1");
+        response.setErrorDesc("鎴戞椂缁撴灉闆�");
+        return response;
+    }
+}
diff --git a/src/main/java/org/jeecg/modules/wms/service/impl/ReceiveWMSScanItemListServiceImpl.java b/src/main/java/org/jeecg/modules/wms/service/impl/ReceiveWMSScanItemListServiceImpl.java
deleted file mode 100644
index 12e4d51..0000000
--- a/src/main/java/org/jeecg/modules/wms/service/impl/ReceiveWMSScanItemListServiceImpl.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package org.jeecg.modules.wms.service.impl;
-
-import lombok.extern.slf4j.Slf4j;
-import org.jeecg.common.aspect.annotation.ApiLog;
-import org.jeecg.common.constant.ApiLogCategoryEnum;
-import org.jeecg.modules.wms.dto.ReceiveMESScanItemListResponse;
-import org.jeecg.modules.wms.request.ReceiveMESScanItemList;
-import org.jeecg.modules.wms.service.ReceiveWMSScanItemListService;
-
-import javax.jws.WebService;
-
-
-@Slf4j
-@WebService(name = "ReceiveWMSScanItemListService",  targetNamespace = "http://xhj008.server.webservice.com", endpointInterface = "org.jeecg.modules.wms.service.ReceiveWMSScanItemListService")
-public class ReceiveWMSScanItemListServiceImpl implements ReceiveWMSScanItemListService {
-
-    @Override
-    @ApiLog(apiName = "鎺ユ敹WMS鐨勭Щ搴撲俊鎭�(ReceiveWMSScanItemList(MES)", apiCategory = ApiLogCategoryEnum.WMS)
-    public ReceiveMESScanItemListResponse receiveWMSScanItemList(ReceiveMESScanItemList request) {
-        return new ReceiveMESScanItemListResponse();
-    }
-}

--
Gitblit v1.9.3