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