From afb08f1b3b9994e49b1e93adb5d857724db903a6 Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期五, 10 一月 2025 09:53:19 +0800 Subject: [PATCH] 1 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 116 insertions(+), 1 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 f88f409..b2b161f 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,8 +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 { @@ -11,5 +18,113 @@ /// </summary> public class InvokeERPService : IInvokeERPService { + private readonly IApiInfoRepository _apiInfoRepository; + public InvokeERPService(IApiInfoRepository apiInfoRepository) + { + _apiInfoRepository = apiInfoRepository; + } + // 鍒涘缓涓�涓娇鐢ㄥ皬椹煎嘲鍛藉悕娉曠殑搴忓垪鍖栬缃� + JsonSerializerSettings settings = new JsonSerializerSettings + { + ContractResolver = new CamelCasePropertyNamesContractResolver() + }; + /// <summary> + /// ERP鏀惰揣鍗曟帴鍙h皟鐢� + /// </summary> + /// <param name="receiveModel"></param> + /// <returns></returns> + public string InvokeMatReceiveApi(ERPReceiveModel receiveModel) + { + Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); + ERPBaseModel<ERPReceiveModel> model = new ERPBaseModel<ERPReceiveModel>() + { + Data = receiveModel, + Desc = "鏀惰揣鍗�", + Type = "toTCWMSReceive", + SecurityCode = "TeChuang" + }; + + string request = JsonConvert.SerializeObject(model, settings); + + string response = HttpHelper.Post(apiInfo.ApiAddress, request); + return response; + } + + /// <summary> + /// ERP鐗╂枡IQC妫�楠屽崟鎺ュ彛璋冪敤 + /// </summary> + /// <param name="checkModel"></param> + /// <returns></returns> + public string InvokeCheckOrderApi(ERPCheckModel checkModel) + { + Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); + ERPBaseModel<ERPCheckModel> model = new ERPBaseModel<ERPCheckModel>() + { + Data = checkModel, + Desc = "鐗╂枡IQC妫�楠屽崟", + Type = "toTCWMSIQCTest", + SecurityCode = "TeChuang" + }; + string request = JsonConvert.SerializeObject(model, settings); + + string response = HttpHelper.Post(apiInfo.ApiAddress, request); + return response; + } + + /// <summary> + /// ERP鐗╂枡鍏ュ簱鍗曟帴鍙h皟鐢� + /// </summary> + /// <param name="inboundModel"></param> + /// <returns></returns> + public string InvokeInboundOrderApi(ERPInboundModel inboundModel) + { + Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); + ERPBaseModel<ERPInboundModel> model = new ERPBaseModel<ERPInboundModel>() + { + Data = inboundModel, + Desc = "鐗╂枡鍏ュ簱鍗�", + Type = "toTCWMSMaterialWarehousing", + SecurityCode = "TeChuang" + }; + 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> + 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; + } } } -- Gitblit v1.9.3