From d82e6f365b2bbc7cafbbf69379fdf6f4f0ff3f8d Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期二, 26 八月 2025 12:28:10 +0800
Subject: [PATCH] art: 物料拉动提供WMS回调接口定义

---
 src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java |   32 +++++++++++++++++++++++++++++---
 1 files changed, 29 insertions(+), 3 deletions(-)

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
index b3a7987..ff68abc 100644
--- a/src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java
+++ b/src/main/java/org/jeecg/modules/wms/service/impl/MESWebServiceSoapImpl.java
@@ -1,12 +1,19 @@
 package org.jeecg.modules.wms.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.jeecg.common.aspect.annotation.ApiLog;
 import org.jeecg.common.constant.ApiLogCategoryEnum;
+import org.jeecg.modules.mes.entity.MesMaterialTransferRequest;
+import org.jeecg.modules.mes.service.IMesMaterialTransferRequestService;
 import org.jeecg.modules.wms.dto.WSResponse;
 import org.jeecg.modules.wms.request.ReceiveWMSScanItemList;
+import org.jeecg.modules.wms.request.WMSWebServiceSendItem;
 import org.jeecg.modules.wms.service.MESWebServiceSoap;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.jws.WebMethod;
 import javax.jws.WebParam;
@@ -21,17 +28,36 @@
 @WebService(name = "MESWebServiceSoap", targetNamespace = "http://xhj008.server.webservice.com", endpointInterface = "org.jeecg.modules.wms.service.MESWebServiceSoap")
 public class MESWebServiceSoapImpl implements MESWebServiceSoap {
 
+    @Autowired
+    private IMesMaterialTransferRequestService materialTransferRequestService;
+
     @Override
+    @Transactional(rollbackFor = Exception.class)
     @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("鎴戞椂缁撴灉闆�");
+        if (request == null || CollectionUtil.isEmpty(request.getWmsWebServiceSendItemList())) {
+            response.setErrorCode("N");
+            response.setErrorDesc("浼犲叆鐨勫弬鏁颁负绌猴紒");
+            return response;
+        }
+        for(WMSWebServiceSendItem item : request.getWmsWebServiceSendItemList()) {
+            if(StringUtils.isNotBlank(item.getReservationOrder())) {
+                //鐗╂枡鎷夊姩鍥炶皟
+                MesMaterialTransferRequest transferRequest = materialTransferRequestService.queryByReservationCode(item.getReservationOrder());
+                if(transferRequest == null) {
+                    response.setErrorCode("N");
+                    response.setErrorDesc("鏍规嵁棰勭暀鍙锋湭鎵惧埌鐗╂枡鎷夊姩鍗曪紒");
+                    return response;
+                }
+            }else if(StringUtils.isNotBlank(item.getAlign())){
+                //绉诲簱鍗曞洖璋�
+            }
+        }
         return response;
     }
 }

--
Gitblit v1.9.3