From c267f7c90b46efa192bd3d790691118e521510c8 Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期六, 08 三月 2025 17:11:55 +0800 Subject: [PATCH] 雅达-新增收货单处理和行审核功能 --- Tiger.Business.WMS/ERP/WMS_U9C.cs | 146 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 146 insertions(+), 0 deletions(-) diff --git a/Tiger.Business.WMS/ERP/WMS_U9C.cs b/Tiger.Business.WMS/ERP/WMS_U9C.cs index fe07018..365856b 100644 --- a/Tiger.Business.WMS/ERP/WMS_U9C.cs +++ b/Tiger.Business.WMS/ERP/WMS_U9C.cs @@ -33,6 +33,11 @@ { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateRcvBySrcASNUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateRcvBySrcASNUrl", "U9CUrl"].PARAM_VALUE; //"http://172.16.80.20/U9C/webapi/Receivement/CreateRcvBySrcASN"; 娴嬭瘯 public static string CreateReceivementUrl { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateReceivementUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateReceivementUrl", "U9CUrl"].PARAM_VALUE; //"http://172.16.80.20/U9C/webapi/Receivement/CreateReceivement"; 娴嬭瘯 + public static string SubmitLineUrl + { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["SubmitLineUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["SubmitLineUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/Receivement/SubmitLine; 娴嬭瘯 + public static string ApproveLineUrl + { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["ApproveLineUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["ApproveLineUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/Receivement/ApproveLine; 娴嬭瘯 + /// <summary> /// 鏂板鏀惰揣鍗�-鏉ユ簮ASN鍗曟帴鍙� @@ -99,6 +104,11 @@ return action; } + /// <summary> + /// 鏂板鏀惰揣鍗�-鏃犳潵婧愭帴鍙� + /// </summary> + /// <param name="input"></param> + /// <returns></returns> public async Task<ApiAction<CreateReceivementInput>> CreateReceivement(CreateReceivementInput input) { Logger.Interface.Info($"/**\r\n *杩涘叆鏂板鏀惰揣鍗�-鏃犳潵婧愭帴鍙�....\r\n */\r\n"); //鍥哄畾鍐欐硶 @@ -155,5 +165,141 @@ Logger.Interface.Info($"/* 鏂板鏀惰揣鍗�-鏃犳潵婧愭帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶 return action; } + + /// <summary> + /// 鏀惰揣鍗�-琛屽鏍告�诲叆鍙f帴鍙� + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + public async Task<ApiAction<SubmitLineInput>> ReceivementApproveLine(SubmitLineInput input) { + Logger.Interface.Info($"/**\r\n *杩涘叆鏀惰揣鍗�-琛屽鏍告�诲叆鍙f帴鍙�....\r\n */\r\n"); //鍥哄畾鍐欐硶 + var action = new ApiAction<SubmitLineInput>(); + try + { + if (input.IsLogin) + { + var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); + if (u9CLoginResult.Success) + { + input.token = u9CLoginResult.Data; + Logger.Interface.Info($"U9C鐧诲綍token: {input.token}"); + } + } + var response = await HttpHelper.PostAsync(ApproveLineUrl, JsonConvert.SerializeObject(input.param), new Dictionary<string, string>() { { "token", input.token } }); + var result = JsonConvert.DeserializeObject<U9CResult2>(response.Message); + if (result != null) + { + if (result.Success && result.Data[0].IsSucess) + { + Logger.Interface.Info($"鏀惰揣鍗�-琛屽鏍告�诲叆鍙f帴鍙f彁浜son: {JsonConvert.SerializeObject(input.param)}锛岃繑鍥濲son: {response.Message}"); + } + else + { + action.IsSuccessed = false; + action.LocaleMsg = new($"{action.Message}; {result.Data[0].ErrorMsg}"); + Logger.Interface.Info($"鏀惰揣鍗�-琛屽鏍告�诲叆鍙f帴鍙eけ璐�:{result.Data[0].ErrorMsg}"); + } + } + + action = await SubmitLine(input); + if (action.IsSuccessed) { + action = await ApproveLine(input); + } + } + catch (System.Exception ex) + { + action.CatchExceptionWithLog(ex, "鏀惰揣鍗�-琛屽鏍告�诲叆鍙e紓甯�"); + } + Logger.Interface.Info($"/* 鏀惰揣鍗�-琛屽鏍告�绘柟娉曟帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶 + return action; + } + + /// <summary> + /// 鏀惰揣鍗�-琛屾彁浜� + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + private async Task<ApiAction<SubmitLineInput>> SubmitLine(SubmitLineInput input) + { + Logger.Interface.Info($"/**\r\n *杩涘叆鏀惰揣鍗�-琛屾彁浜ゆ帴鍙�....\r\n */\r\n"); //鍥哄畾鍐欐硶 + var action = new ApiAction<SubmitLineInput>(); + try + { + if (input.IsLogin) + { + var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); + if (u9CLoginResult.Success) + { + input.token = u9CLoginResult.Data; + Logger.Interface.Info($"U9C鐧诲綍token: {input.token}"); + } + } + var response = await HttpHelper.PostAsync(SubmitLineUrl, JsonConvert.SerializeObject(input.param), new Dictionary<string, string>() { { "token", input.token } }); + var result = JsonConvert.DeserializeObject<U9CResult2>(response.Message); + if (result != null) + { + if (result.Success && result.Data[0].IsSucess) + { + Logger.Interface.Info($"鏀惰揣鍗�-琛屾彁浜ゆ帴鍙f彁浜son: {JsonConvert.SerializeObject(input.param)}锛岃繑鍥濲son: {response.Message}"); + } + else + { + action.IsSuccessed = false; + action.LocaleMsg = new($"{action.Message}; {result.Data[0].ErrorMsg}"); + Logger.Interface.Info($"鏀惰揣鍗�-琛屾彁浜ゆ帴鍙eけ璐�:{result.Data[0].ErrorMsg}"); + } + } + } + catch (System.Exception ex) + { + action.CatchExceptionWithLog(ex, "鏀惰揣鍗�-琛屾彁浜ゅ紓甯�"); + } + Logger.Interface.Info($"/* 鏀惰揣鍗�-琛屾彁浜ゆ帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶 + return action; + } + + /// <summary> + /// 鏀惰揣鍗�-琛屽鏍� + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + private async Task<ApiAction<SubmitLineInput>> ApproveLine(SubmitLineInput input) + { + Logger.Interface.Info($"/**\r\n *杩涘叆鏀惰揣鍗�-琛屽鏍告帴鍙�....\r\n */\r\n"); //鍥哄畾鍐欐硶 + var action = new ApiAction<SubmitLineInput>(); + try + { + if (input.IsLogin) + { + var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); + if (u9CLoginResult.Success) + { + input.token = u9CLoginResult.Data; + Logger.Interface.Info($"U9C鐧诲綍token: {input.token}"); + } + } + var response = await HttpHelper.PostAsync(ApproveLineUrl, JsonConvert.SerializeObject(input.param), new Dictionary<string, string>() { { "token", input.token } }); + var result = JsonConvert.DeserializeObject<U9CResult2>(response.Message); + if (result != null) + { + if (result.Success && result.Data[0].IsSucess) + { + Logger.Interface.Info($"鏀惰揣鍗�-琛屽鏍告帴鍙f彁浜son: {JsonConvert.SerializeObject(input.param)}锛岃繑鍥濲son: {response.Message}"); + } + else + { + action.IsSuccessed = false; + action.LocaleMsg = new($"{action.Message}; {result.Data[0].ErrorMsg}"); + Logger.Interface.Info($"鏀惰揣鍗�-琛屽鏍告帴鍙eけ璐�:{result.Data[0].ErrorMsg}"); + } + } + } + catch (System.Exception ex) + { + action.CatchExceptionWithLog(ex, "鏀惰揣鍗�-琛屽鏍稿紓甯�"); + } + Logger.Interface.Info($"/* 鏀惰揣鍗�-琛屽鏍告帴鍙g粨鏉� */\r\n"); //鍥哄畾鍐欐硶 + return action; + } } } -- Gitblit v1.9.3