From a7ceaaa38a4394b82501ca60230e97d25a6871e3 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期六, 18 一月 2025 17:30:33 +0800
Subject: [PATCH] 1

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs |   87 +++++++++++++++++++++++++++++++++++--------
 1 files changed, 70 insertions(+), 17 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs"
index fef6edc..59750dd 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs"
@@ -1,10 +1,15 @@
-锘縰sing System;
+锘縰sing Newtonsoft.Json;
+using Newtonsoft.Json.Serialization;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Common.APIEnum;
 using WIDESEA_Core.Helper;
 using WIDESEA_External.Model;
+using WIDESEA_IBasicRepository;
+using WIDESEA_Model.Models;
 
 namespace WIDESEA_External.ERPService
 {
@@ -13,8 +18,16 @@
     /// </summary>
     public class InvokeERPService : IInvokeERPService
     {
-        string serviceIp = "";
-
+        private readonly IApiInfoRepository _apiInfoRepository;
+        public InvokeERPService(IApiInfoRepository apiInfoRepository)
+        {
+            _apiInfoRepository = apiInfoRepository;
+        }
+        // 鍒涘缓涓�涓娇鐢ㄥ皬椹煎嘲鍛藉悕娉曠殑搴忓垪鍖栬缃�
+        JsonSerializerSettings settings = new JsonSerializerSettings
+        {
+            ContractResolver = new CamelCasePropertyNamesContractResolver()
+        };
         /// <summary>
         /// ERP鏀惰揣鍗曟帴鍙h皟鐢�
         /// </summary>
@@ -22,17 +35,18 @@
         /// <returns></returns>
         public string InvokeMatReceiveApi(ERPReceiveModel receiveModel)
         {
-            string serviceAddress = "";
-
+            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString());
             ERPBaseModel<ERPReceiveModel> model = new ERPBaseModel<ERPReceiveModel>()
             {
                 Data = receiveModel,
                 Desc = "鏀惰揣鍗�",
                 Type = "toTCWMSReceive",
-                SecurityCode = ""
+                SecurityCode = "TeChuang"
             };
-
-            string response = HttpHelper.Post(serviceIp + serviceAddress, model.Serialize());
+            
+            string request = JsonConvert.SerializeObject(model, settings);
+            
+            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
             return response;
         }
 
@@ -43,16 +57,17 @@
         /// <returns></returns>
         public string InvokeCheckOrderApi(ERPCheckModel checkModel)
         {
-            string serviceAddress = "";
+            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString());
             ERPBaseModel<ERPCheckModel> model = new ERPBaseModel<ERPCheckModel>()
             {
                 Data = checkModel,
-                Desc = "鏀惰揣鍗�",
+                Desc = "鐗╂枡IQC妫�楠屽崟",
                 Type = "toTCWMSIQCTest",
-                SecurityCode = ""
+                SecurityCode = "TeChuang"
             };
+            string request = JsonConvert.SerializeObject(model, settings);
 
-            string response = HttpHelper.Post(serviceIp + serviceAddress, model.Serialize());
+            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
             return response;
         }
 
@@ -63,17 +78,55 @@
         /// <returns></returns>
         public string InvokeInboundOrderApi(ERPInboundModel inboundModel)
         {
-            string serviceAddress = "";
+            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString());
             ERPBaseModel<ERPInboundModel> model = new ERPBaseModel<ERPInboundModel>()
             {
                 Data = inboundModel,
-                Desc = "鏀惰揣鍗�",
+                Desc = "鐗╂枡鍏ュ簱鍗�",
                 Type = "toTCWMSMaterialWarehousing",
-                SecurityCode = ""
+                SecurityCode = "TeChuang"
             };
-
-            string response = HttpHelper.Post(serviceIp + serviceAddress, model.Serialize());
+            string request = JsonConvert.SerializeObject(model, settings);
+            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
             return response;
         }
+        /// <summary>
+        /// ERP棰嗘枡閫氱煡鍗曞嚭搴�
+        /// </summary>
+        public string InvokeOutStandardsApi(ERPIssueModel issueModel)
+        {
+            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString());
+            ERPBaseModel<ERPIssueModel> model = new ERPBaseModel<ERPIssueModel>()
+            {
+                Data = issueModel,
+                Desc = "棰嗘枡鍑哄簱閫氱煡鍗�",
+                Type = "toStandardPickList",
+                SecurityCode = "TeChuang"
+            };
+            string request = JsonConvert.SerializeObject(model, settings).Replace("issitem", "Issitem");
+            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
+            return response;
+        }
+        /// <summary>
+        /// ERP鐗╂枡鍑哄簱鎺ュ彛璋冪敤
+        /// </summary>
+        /// <param name="outboundModel"></param>
+        /// <returns></returns>
+        #region 寮冪敤
+        //public string InvokeOutboundOrderApi(ERPOutboundModel outboundModel)
+        //{
+        //    Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString());
+        //    ERPBaseModel<ERPOutboundModel> model = new ERPBaseModel<ERPOutboundModel>()
+        //    {
+        //        Data = outboundModel,
+        //        Desc = "鏉愭枡鍑哄簱",
+        //        Type = "toBomMaterialOutTC",
+        //        SecurityCode = "TeChuang"
+        //    };
+        //    string request = JsonConvert.SerializeObject(model, settings);
+        //    string response = HttpHelper.Post(apiInfo.ApiAddress, request);
+        //    return response;
+        //}
+        #endregion
     }
 }

--
Gitblit v1.9.3