1
wangxinhui
2025-01-16 5ab6b36c0c4bd80a31dcdd9f15cc835b7352c4e7
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs
@@ -1,4 +1,6 @@
using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -19,8 +21,13 @@
        private readonly IApiInfoRepository _apiInfoRepository;
        public InvokeERPService(IApiInfoRepository apiInfoRepository)
        {
            _apiInfoRepository= apiInfoRepository;
            _apiInfoRepository = apiInfoRepository;
        }
        // åˆ›å»ºä¸€ä¸ªä½¿ç”¨å°é©¼å³°å‘½åæ³•的序列化设置
        JsonSerializerSettings settings = new JsonSerializerSettings
        {
            ContractResolver = new CamelCasePropertyNamesContractResolver()
        };
        /// <summary>
        /// ERP收货单接口调用
        /// </summary>
@@ -28,15 +35,18 @@
        /// <returns></returns>
        public string InvokeMatReceiveApi(ERPReceiveModel receiveModel)
        {
            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x=>x.ApiCode==APIEnum.InvokeMatReceiveApi.ToString());
            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(apiInfo.ApiAddress, model.Serialize());
            string request = JsonConvert.SerializeObject(model, settings);
            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
            return response;
        }
@@ -47,16 +57,17 @@
        /// <returns></returns>
        public string InvokeCheckOrderApi(ERPCheckModel checkModel)
        {
            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeCheckOrderApi.ToString());
            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(apiInfo.ApiAddress, model.Serialize());
            string response = HttpHelper.Post(apiInfo.ApiAddress, request);
            return response;
        }
@@ -67,16 +78,33 @@
        /// <returns></returns>
        public string InvokeInboundOrderApi(ERPInboundModel inboundModel)
        {
            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeInboundOrderApi.ToString());
            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(apiInfo.ApiAddress, 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>
@@ -84,18 +112,21 @@
        /// </summary>
        /// <param name="outboundModel"></param>
        /// <returns></returns>
        public string InvokeOutboundOrderApi(ERPOutboundModel outboundModel)
        {
            Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeOutboundOrderApi.ToString());
            ERPBaseModel<ERPOutboundModel> model = new ERPBaseModel<ERPOutboundModel>()
            {
                Data = outboundModel,
                Desc = "材料出库",
                Type = "toBomMaterialOutTC",
                SecurityCode = "LxkgPgN3$U"
            };
            string response = HttpHelper.Post(apiInfo.ApiAddress, model.Serialize());
            return response;
        }
        #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
    }
}