From a9a3f943efb083de8ed88b293897886b3ef612a2 Mon Sep 17 00:00:00 2001
From: helongyang <647556386@qq.com>
Date: 星期一, 11 八月 2025 17:37:09 +0800
Subject: [PATCH] 功能增添优化
---
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_External/ERPService/InvokeERPService.cs | 280 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 252 insertions(+), 28 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 9f898a1..5ad1885 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,4 +1,6 @@
-锘縰sing System;
+锘縰sing 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鏀惰揣鍗曟帴鍙h皟鐢�
/// </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 = "鏀惰揣鍗�",
+ Desc = "WMS鏀惰揣鍗曟帹閫�",
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,36 @@
/// <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;
+ }
+
+ /// <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;
}
@@ -67,16 +97,207 @@
/// <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>
+ /// ERP閫�鏂欎笂鎶ユ帴鍙h皟鐢�
+ /// </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鐩樿耽/浜忎笂鎶ユ帴鍙h皟鐢�
+ /// </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>
+ /// 鎴愬搧浠撴鎶ュ簾鍑哄簱鎺ㄩ�丒RP
+ /// </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>
+ /// 鎴愬搧瓒呭懆鏈熸姤搴熸帹閫丒RP
+ /// </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>
@@ -84,18 +305,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
}
}
--
Gitblit v1.9.3