| | |
| | | using System; |
| | | using 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 |
| | | { |
| | |
| | | /// </summary> |
| | | public class InvokeERPService : IInvokeERPService |
| | | { |
| | | private readonly IApiInfoRepository _apiInfoRepository; |
| | | public InvokeERPService(IApiInfoRepository apiInfoRepository) |
| | | { |
| | | _apiInfoRepository = apiInfoRepository; |
| | | } |
| | | // å建ä¸ä¸ªä½¿ç¨å°é©¼å³°å½åæ³çåºåå设置 |
| | | JsonSerializerSettings settings = new JsonSerializerSettings |
| | | { |
| | | ContractResolver = new CamelCasePropertyNamesContractResolver() |
| | | }; |
| | | /// <summary> |
| | | /// ERPæ¶è´§åæ¥å£è°ç¨ |
| | | /// </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 = "WMSæ¶è´§åæ¨é", |
| | | 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ç©æéæ£æ¥å£è°ç¨ |
| | | /// </summary> |
| | | public string InvokeInspectApi(ERPInspectModel eRPInspectModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPInspectModel> model = new ERPBaseModel<ERPInspectModel>() |
| | | { |
| | | Data = eRPInspectModel, |
| | | Desc = "ç©æåºä»æ£éªå", |
| | | Type = "toTCWMSOUTTest", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ERPç©æå
¥åºåæ¥å£è°ç¨ |
| | | /// </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> |
| | | public string InvokeReturnApi(ERPReturnModel returnModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPReturnModel> model = new ERPBaseModel<ERPReturnModel>() |
| | | { |
| | | Data = returnModel, |
| | | Desc = "ææéåº", |
| | | Type = "importMaterialsIssueNoteWMS", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings).Replace("issitem", "Issitem"); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPçèµ¢/äºä¸æ¥æ¥å£è°ç¨ |
| | | /// </summary> |
| | | public string InvokeTakeStockApi(ERPTakeStockModel takeModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPTakeStockModel> model = new ERPBaseModel<ERPTakeStockModel>() |
| | | { |
| | | Data = takeModel, |
| | | Desc = "ææçç¹", |
| | | Type = "toTCWMSMaterialCounting", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPæååºåºä¸æ¥æ¥å£è°ç¨ |
| | | /// </summary> |
| | | public string InvokeProOutApi(ERPProOutOrderModel outOrderModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPProOutOrderModel> model = new ERPBaseModel<ERPProOutOrderModel>() |
| | | { |
| | | Data = outOrderModel, |
| | | Desc = "åºåºæåéç¥", |
| | | Type = "toOrderAssignment", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPæå订åå®¢æ·æ¥è¯¢æ¥å£è°ç¨ |
| | | /// </summary> |
| | | /// <param name="saleOrderNo"></param> |
| | | /// <returns></returns> |
| | | public string InvokeProSaleCustomer(string saleOrderNo) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpSaleCustomApi.ToString()); |
| | | object saleObj = new { soNumber=saleOrderNo }; |
| | | string request = JsonConvert.SerializeObject(saleObj, settings); |
| | | Dictionary<string,string> requestHeader =new Dictionary<string, string> |
| | | { |
| | | { "AccessToken", "TCKJF60B03C07E8E41B0B3CF759B7B01AB81HATC"}, |
| | | }; |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request,headers:requestHeader); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPæå订ååºåºåºåæ¥è¯¢ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public string InvokeOutProErpSync(string outProOrderNo) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpOutProErpSyncApi.ToString()); |
| | | object outNoObj = new { shippingNumber = outProOrderNo }; |
| | | string request = JsonConvert.SerializeObject(outNoObj, settings); |
| | | Dictionary<string, string> requestHeader = new Dictionary<string, string> |
| | | { |
| | | { "AccessToken", "TCKJF60B03C07E8E41B0B3CF759B7B01AB81HATC"}, |
| | | }; |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request, headers: requestHeader); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPæåå
¥åºäº§ååå·é¢ç§¯æ¥è¯¢ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public string InvokeProInErpStatic(string partNum,string partNumWithRev) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeProInErpStatic.ToString()); |
| | | object inObj = new { partNum, partNumWithRev }; |
| | | string request = JsonConvert.SerializeObject(inObj, settings); |
| | | Dictionary<string, string> requestHeader = new Dictionary<string, string> |
| | | { |
| | | { "AccessToken", "TCKJF60B03C07E8E41B0B3CF759B7B01AB81HATC"}, |
| | | }; |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request, headers: requestHeader); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// ERPæåå
¥åºä¸æ¥æ¥å£è°ç¨ |
| | | /// </summary> |
| | | public string InvokeProInApi(ERPProInboundModel inboundModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPProInboundModel> model = new ERPBaseModel<ERPProInboundModel>() |
| | | { |
| | | Data = inboundModel, |
| | | Desc = "æåå
¥åº", |
| | | Type = "toWOStockForm", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// æå仿£æ¥åºåºåºæ¨éERP |
| | | /// </summary> |
| | | /// <param name="checkModel"></param> |
| | | /// <returns></returns> |
| | | public string InvokeProCheckApi(ERPProductCheckModel checkModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPProductCheckModel> model = new ERPBaseModel<ERPProductCheckModel>() |
| | | { |
| | | Data = checkModel, |
| | | Desc = "æåæ£éªå", |
| | | Type = "toFGIIqcChecked", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// æåè¶
卿æ¥åºæ¨éERP |
| | | /// </summary> |
| | | /// <param name="sheetModel"></param> |
| | | /// <returns></returns> |
| | | public string InvokeProScrapSheetApi(ERPScrapSheetModel sheetModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPScrapSheetModel> model = new ERPBaseModel<ERPScrapSheetModel>() |
| | | { |
| | | Data = sheetModel, |
| | | Desc = "æåæ¥åºå", |
| | | Type = "toFGIScrapSheet", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | string response = HttpHelper.Post(apiInfo.ApiAddress, request); |
| | | return response; |
| | | } |
| | | /// <summary> |
| | | /// æåçç¹çèµ¢/çäº |
| | | /// </summary> |
| | | /// <param name="stockCheckModel"></param> |
| | | /// <returns></returns> |
| | | public string InvokeProStockCheckApi(ERPProStockCheckModel stockCheckModel) |
| | | { |
| | | Dt_ApiInfo apiInfo = _apiInfoRepository.QueryFirst(x => x.ApiCode == APIEnum.InvokeErpApi.ToString()); |
| | | ERPBaseModel<ERPProStockCheckModel> model = new ERPBaseModel<ERPProStockCheckModel>() |
| | | { |
| | | Data = stockCheckModel, |
| | | Desc = "æåçç¹å", |
| | | Type = "toStockCheck", |
| | | SecurityCode = "TeChuang" |
| | | }; |
| | | string request = JsonConvert.SerializeObject(model, settings); |
| | | 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 |
| | | } |
| | | } |