using Tiger.Model; using SqlSugar; using System; using System.Collections.Generic; using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; using Rhea.Common; using System.Net; using System.Linq; using Newtonsoft.Json; using Tiger.IBusiness; using Microsoft.AspNetCore.Http; using Tiger.Model.Minsun; using Org.BouncyCastle.Asn1.Tsp; using Tiger.Model.Entitys.MES.Position; using Apache.NMS.ActiveMQ.Commands; using System.Security.Cryptography; using System.Diagnostics; using Tiger.Model.Entitys.MES.U9C; using Newtonsoft.Json.Linq; using System.Security.Policy; using NetTaste; namespace Tiger.Business.WMS { public partial class WMS_U9C { public static string CreateTransferFormUrl { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["CreateTransferFormUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["CreateTransferFormUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/TransferForm/Create public static string TransferFormSubmitUrl { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["TransferFormSubmitUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["TransferFormSubmitUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/TransferIn/Submit public static string TransferFormApproveUrl { get; set; } = ApiConfig.IsTestServer ? Cache.SysParam["TransferFormApproveUrl_Test", "U9CUrl"].PARAM_VALUE : Cache.SysParam["TransferFormApproveUrl", "U9CUrl"].PARAM_VALUE; //http://172.16.80.20/u9c/webapi/TransferIn/Approve /// /// 创建形态转换单接口 /// /// /// public async Task>> CreateTransferForm(CreateTransferFormInput input) { Logger.Interface.Info($"/**\r\n *进入创建形态转换单接口....\r\n */\r\n"); //固定写法 var action = new ApiAction>(); try { //如果已经登录则不需要再次登录,直接使用传入的token if (input.IsLogin) { var u9CLoginResult = await HttpHelper.GetAsync($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); if (u9CLoginResult.Success) { input.token = u9CLoginResult.Data; Logger.Interface.Info($"U9C登录token: {input.token}"); } } var response = await HttpHelper.PostAsync(CreateTransferFormUrl, JsonConvert.SerializeObject(input.CreateTransferFormParam), new Dictionary() { { "token", input.token } }); var result = JsonConvert.DeserializeObject(response.Message); if (result != null) { if (result.Success && result.Data[0].m_isSucess) { action.Data = result.Data; Logger.Interface.Info($"创建形态转换单接口提交Json: {JsonConvert.SerializeObject(input.CreateTransferFormParam)},返回Json: {response.Message}"); } else { action.IsSuccessed = false; action.LocaleMsg = new($"{action.Message}; {result.Data[0].m_errorMsg}"); Logger.Interface.Info($"创建形态转换单接口失败:{result.Data[0].m_errorMsg}"); } } } catch (System.Exception ex) { action.CatchExceptionWithLog(ex, "创建形态转换单异常"); } Logger.Interface.Info($"/* 创建形态转换单接口结束 */\r\n"); //固定写法 return action; } /// /// 形态转换单审核总入口接口 /// /// /// public async Task>> TransferFormApprove(TransferFormSubmitInput input) { Logger.Interface.Info($"/**\r\n *进入形态转换单审核总入口接口....\r\n */\r\n"); //固定写法 var action = new ApiAction>(); try { action = await TransferSubmit(input); if (action.IsSuccessed) { input.IsLogin = false; action = await TransferApprove(input); } } catch (System.Exception ex) { action.CatchExceptionWithLog(ex, "调入单审核异常"); } Logger.Interface.Info($"/* 形态转换单审核总入口接口结束 */\r\n"); //固定写法 return action; } /// /// 形态转换单提交 /// /// /// private async Task>> TransferSubmit(TransferFormSubmitInput input) { Logger.Interface.Info($"/**\r\n *进入形态转换单提交接口....\r\n */\r\n"); //固定写法 var action = new ApiAction>(); try { //如果已经登录则不需要再次登录,直接使用传入的token if (input.IsLogin) { var u9CLoginResult = await HttpHelper.GetAsync($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); if (u9CLoginResult.Success) { input.token = u9CLoginResult.Data; Logger.Interface.Info($"U9C登录token: {input.token}"); } } var response = await HttpHelper.PostAsync(TransferFormSubmitUrl, JsonConvert.SerializeObject(input.TransferFormSubmitParam), new Dictionary() { { "token", input.token } }); var result = JsonConvert.DeserializeObject(response.Message); if (result != null) { if (result.Success && result.Data[0].IsSucess) { action.Data = result.Data; Logger.Interface.Info($"形态转换单提交接口提交Json: {JsonConvert.SerializeObject(input.TransferFormSubmitParam)},返回Json: {response.Message}"); } else { action.IsSuccessed = false; action.LocaleMsg = new($"{action.Message}; {result.Data[0].ErrorMsg}"); Logger.Interface.Info($"形态转换单提交接口失败:{result.Data[0].ErrorMsg}"); } } } catch (System.Exception ex) { action.CatchExceptionWithLog(ex, "形态转换单提交异常"); } Logger.Interface.Info($"/* 形态转换单提交接口结束 */\r\n"); //固定写法 return action; } /// /// 形态转换单审核 /// /// /// private async Task>> TransferApprove(TransferFormSubmitInput input) { Logger.Interface.Info($"/**\r\n *进入形态转换单审核接口....\r\n */\r\n"); //固定写法 var action = new ApiAction>(); try { //如果已经登录则不需要再次登录,直接使用传入的token if (input.IsLogin) { var u9CLoginResult = await HttpHelper.GetAsync($"{U9CAuthLoginUrl}userCode={input.userId}{secret}"); if (u9CLoginResult.Success) { input.token = u9CLoginResult.Data; Logger.Interface.Info($"U9C登录token: {input.token}"); } } var response = await HttpHelper.PostAsync(TransferFormApproveUrl, JsonConvert.SerializeObject(input.TransferFormSubmitParam), new Dictionary() { { "token", input.token } }); var result = JsonConvert.DeserializeObject(response.Message); if (result != null) { if (result.Success && result.Data[0].IsSucess) { action.Data = result.Data; Logger.Interface.Info($"形态转换单审核接口提交Json: {JsonConvert.SerializeObject(input.TransferFormSubmitParam)},返回Json: {response.Message}"); } else { action.IsSuccessed = false; action.LocaleMsg = new($"{action.Message}; {result.Data[0].ErrorMsg}"); Logger.Interface.Info($"形态转换单审核接口失败:{result.Data[0].ErrorMsg}"); } } } catch (System.Exception ex) { action.CatchExceptionWithLog(ex, "形态转换单审核异常"); } Logger.Interface.Info($"/* 形态转换单审核接口结束 */\r\n"); //固定写法 return action; } } }