| | |
| | | } |
| | | |
| | | //保存成功,调用U9C接口-测试用 |
| | | int i = 1; |
| | | List<BIZ_ERP_PROD_IN_BTH> ErpProdInBths = new List<BIZ_ERP_PROD_IN_BTH>(); |
| | | foreach (var item in input.RcvRptDocBases.Where(q => q.Status != "Y")) |
| | | { |
| | | var ErpProdInBth = Biz.Db.Queryable<BIZ_ERP_PROD_IN_BTH>().Where(q => q.WORK_ORDER == item.WorkOrder).First(); |
| | | item.Status = "Y"; |
| | | if (!ErpProdInBth.IsNullOrEmpty()) |
| | | { |
| | | ErpProdInBth.ORDER_NO = $"XX001-{i}"; |
| | | ErpProdInBth.IS_HANDLED = "Y"; |
| | | ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | ErpProdInBths.Add(ErpProdInBth); |
| | | } |
| | | foreach (var p in input.PrintJsons) |
| | | { |
| | | var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder).FirstOrDefault(); |
| | | if (!d.IsNullOrEmpty()) |
| | | { |
| | | d.ORDER_NO = $"XX001-{i}"; |
| | | d.STATUS = "Y"; |
| | | } |
| | | } |
| | | i++; |
| | | } |
| | | var _db = Biz.Db; |
| | | var _dbTran = _db.UseTran(() => |
| | | { |
| | | _db.Updateable(ErpProdInBths, "U9C_RcvRptDocCreate").UpdateColumns(x => new { x.ORDER_NO, x.REMARK, x.IS_HANDLED, x.HANDLED_DATE }).ExecuteCommand(); |
| | | }); |
| | | if (!dbTran.IsSuccess) |
| | | { |
| | | action.CatchExceptionWithLog(dbTran.ErrorException, $"数据处理失败"); |
| | | Logger.Interface.Error(action.Message); |
| | | IsSuccessed = false; |
| | | } |
| | | input.ErpProdInBths = ErpProdInBths; |
| | | //int i = 1; |
| | | //List<BIZ_ERP_PROD_IN_BTH> ErpProdInBths = new List<BIZ_ERP_PROD_IN_BTH>(); |
| | | //foreach (var item in input.RcvRptDocBases.Where(q => q.Status != "Y")) |
| | | //{ |
| | | // var ErpProdInBth = Biz.Db.Queryable<BIZ_ERP_PROD_IN_BTH>().Where(q => q.WORK_ORDER == item.WorkOrder).First(); |
| | | // item.Status = "Y"; |
| | | // if (!ErpProdInBth.IsNullOrEmpty()) |
| | | // { |
| | | // ErpProdInBth.ORDER_NO = $"XX001-{i}"; |
| | | // ErpProdInBth.IS_HANDLED = "Y"; |
| | | // ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | // ErpProdInBths.Add(ErpProdInBth); |
| | | // } |
| | | // foreach (var p in input.PrintJsons) |
| | | // { |
| | | // var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder).FirstOrDefault(); |
| | | // if (!d.IsNullOrEmpty()) |
| | | // { |
| | | // d.ORDER_NO = $"XX001-{i}"; |
| | | // d.STATUS = "Y"; |
| | | // } |
| | | // } |
| | | // i++; |
| | | //} |
| | | //var _db = Biz.Db; |
| | | //var _dbTran = _db.UseTran(() => |
| | | //{ |
| | | // _db.Updateable(ErpProdInBths, "U9C_RcvRptDocCreate").UpdateColumns(x => new { x.ORDER_NO, x.REMARK, x.IS_HANDLED, x.HANDLED_DATE }).ExecuteCommand(); |
| | | //}); |
| | | //if (!dbTran.IsSuccess) |
| | | //{ |
| | | // action.CatchExceptionWithLog(dbTran.ErrorException, $"数据处理失败"); |
| | | // Logger.Interface.Error(action.Message); |
| | | // IsSuccessed = false; |
| | | //} |
| | | //input.ErpProdInBths = ErpProdInBths; |
| | | |
| | | //保存成功,调用U9C接口 |
| | | //if (IsSuccessed) |
| | | //{ |
| | | // var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode=admin{secret}"); |
| | | // if (u9CLoginResult.Success) |
| | | // { |
| | | // var token = u9CLoginResult.Data; |
| | | // Logger.Interface.Info($"U9C登录token: {token}"); |
| | | // List<BIZ_ERP_PROD_IN_BTH> ErpProdInBths = new List<BIZ_ERP_PROD_IN_BTH>(); |
| | | // foreach (var item in input.RcvRptDocBases.Where(q=>q.Status != "Y")) |
| | | // { |
| | | // List<RcvRptDocCreateParam> param = new() { |
| | | // new() { |
| | | // CompleteList = new(){ |
| | | // new CompleteList |
| | | // { |
| | | // MOKey = new MOKey { DocNo = item.WorkOrder }, |
| | | // Wh = new Wh { Code = item.WhCode }, |
| | | // DescFlexField = new DescFlexField { PrivateDescSeg1 = item.PkgQty.ToString() }, |
| | | // Item = new Item { Code = item.ItemCode }, |
| | | // CompleteQty = item.CompleteQty, |
| | | // OutputType = item.OutputType, |
| | | // StorageType = item.StorageType, |
| | | // DocState = item.DocState, |
| | | // } |
| | | // } |
| | | // } |
| | | // }; |
| | | // var response = await HttpHelper.PostAsync(RcvRptDocCreateUrl, JsonConvert.SerializeObject(param), new Dictionary<string, string>() { { "token", token } }); |
| | | // var result = JsonConvert.DeserializeObject<U9CResult>(response.Message); |
| | | // var ErpProdInBth = Biz.Db.Queryable<BIZ_ERP_PROD_IN_BTH>().Where(q => q.WORK_ORDER == item.WorkOrder).First(); |
| | | // if (result != null) |
| | | // { |
| | | // if (result.Success && result.Data[0].m_isSucess) |
| | | // { |
| | | // Logger.Interface.Info($"生成入库单接口提交Json: {JsonConvert.SerializeObject(param)},返回Json: {response.Message}"); |
| | | // item.Status = "Y"; |
| | | // if (!ErpProdInBth.IsNullOrEmpty()) |
| | | // { |
| | | // ErpProdInBth.ORDER_NO = result.Data[0].m_code; |
| | | // ErpProdInBth.IS_HANDLED = "Y"; |
| | | // ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | // ErpProdInBths.Add(ErpProdInBth); |
| | | // } |
| | | // foreach (var p in input.PrintJsons) |
| | | // { |
| | | // var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder).FirstOrDefault(); |
| | | // if (!d.IsNullOrEmpty()) |
| | | // { |
| | | // d.ORDER_NO = result.Data[0].m_code; |
| | | // } |
| | | // } |
| | | // Logger.Interface.Info($"生成入库单成功"); |
| | | // } |
| | | // else |
| | | // { |
| | | // action.IsSuccessed = false; |
| | | // action.LocaleMsg = new($"{action.Message}; {result.Data[0].m_errorMsg}"); |
| | | // item.Status = "F"; |
| | | // if (!ErpProdInBth.IsNullOrEmpty()) |
| | | // { |
| | | // ErpProdInBth.REMARK = result.Data[0].m_errorMsg; |
| | | // ErpProdInBth.IS_HANDLED = "F"; |
| | | // ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | // ErpProdInBths.Add(ErpProdInBth); |
| | | // } |
| | | // Logger.Interface.Info($"生成入库单失败:{result.Data[0].m_errorMsg}"); |
| | | // } |
| | | // } |
| | | // } |
| | | // var _db = Biz.Db; |
| | | // var _dbTran = _db.UseTran(() => |
| | | // { |
| | | // _db.Updateable(ErpProdInBths, "U9C_RcvRptDocCreate").UpdateColumns(x => new { x.ORDER_NO, x.REMARK, x.IS_HANDLED, x.HANDLED_DATE }).ExecuteCommand(); |
| | | // }); |
| | | // if (!dbTran.IsSuccess) |
| | | // { |
| | | // action.CatchExceptionWithLog(dbTran.ErrorException, $"数据处理失败"); |
| | | // Logger.Interface.Error(action.Message); |
| | | // IsSuccessed = false; |
| | | // } |
| | | // input.ErpProdInBths = ErpProdInBths; |
| | | // } |
| | | //} |
| | | if (IsSuccessed) |
| | | { |
| | | var u9CLoginResult = await HttpHelper.GetAsync<U9CLoginResult>($"{U9CAuthLoginUrl}userCode=admin{secret}"); |
| | | if (u9CLoginResult.Success) |
| | | { |
| | | var token = u9CLoginResult.Data; |
| | | Logger.Interface.Info($"U9C登录token: {token}"); |
| | | List<BIZ_ERP_PROD_IN_BTH> ErpProdInBths = new List<BIZ_ERP_PROD_IN_BTH>(); |
| | | foreach (var item in input.RcvRptDocBases.Where(q => q.Status != "Y")) |
| | | { |
| | | List<RcvRptDocCreateParam> param = new() { |
| | | new() { |
| | | CompleteList = new(){ |
| | | new CompleteList |
| | | { |
| | | MOKey = new MOKey { DocNo = item.WorkOrder }, |
| | | Wh = new Wh { Code = item.WhCode }, |
| | | DescFlexField = new DescFlexField { PrivateDescSeg1 = item.PkgQty.ToString() }, |
| | | Item = new Item { Code = item.ItemCode }, |
| | | CompleteQty = item.CompleteQty, |
| | | OutputType = item.OutputType, |
| | | StorageType = item.StorageType, |
| | | DocState = item.DocState, |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | var response = await HttpHelper.PostAsync(RcvRptDocCreateUrl, JsonConvert.SerializeObject(param), new Dictionary<string, string>() { { "token", token } }); |
| | | var result = JsonConvert.DeserializeObject<U9CResult>(response.Message); |
| | | var ErpProdInBth = Biz.Db.Queryable<BIZ_ERP_PROD_IN_BTH>().Where(q => q.WORK_ORDER == item.WorkOrder).First(); |
| | | if (result != null) |
| | | { |
| | | if (result.Success && result.Data[0].m_isSucess) |
| | | { |
| | | Logger.Interface.Info($"生成入库单接口提交Json: {JsonConvert.SerializeObject(param)},返回Json: {response.Message}"); |
| | | item.Status = "Y"; |
| | | if (!ErpProdInBth.IsNullOrEmpty()) |
| | | { |
| | | ErpProdInBth.ORDER_NO = result.Data[0].m_code; |
| | | ErpProdInBth.IS_HANDLED = "Y"; |
| | | ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | ErpProdInBths.Add(ErpProdInBth); |
| | | } |
| | | foreach (var p in input.PrintJsons) |
| | | { |
| | | var d = p.Items.Where(q => q.WORK_ORDER == item.WorkOrder).FirstOrDefault(); |
| | | if (!d.IsNullOrEmpty()) |
| | | { |
| | | d.ORDER_NO = result.Data[0].m_code; |
| | | } |
| | | } |
| | | Logger.Interface.Info($"生成入库单成功"); |
| | | } |
| | | else |
| | | { |
| | | action.IsSuccessed = false; |
| | | action.LocaleMsg = new($"{action.Message}; {result.Data[0].m_errorMsg}"); |
| | | item.Status = "F"; |
| | | if (!ErpProdInBth.IsNullOrEmpty()) |
| | | { |
| | | ErpProdInBth.REMARK = result.Data[0].m_errorMsg; |
| | | ErpProdInBth.IS_HANDLED = "F"; |
| | | ErpProdInBth.HANDLED_DATE = DateTime.Now; |
| | | ErpProdInBths.Add(ErpProdInBth); |
| | | } |
| | | Logger.Interface.Info($"生成入库单失败:{result.Data[0].m_errorMsg}"); |
| | | } |
| | | } |
| | | } |
| | | var _db = Biz.Db; |
| | | var _dbTran = _db.UseTran(() => |
| | | { |
| | | _db.Updateable(ErpProdInBths, "U9C_RcvRptDocCreate").UpdateColumns(x => new { x.ORDER_NO, x.REMARK, x.IS_HANDLED, x.HANDLED_DATE }).ExecuteCommand(); |
| | | }); |
| | | if (!dbTran.IsSuccess) |
| | | { |
| | | action.CatchExceptionWithLog(dbTran.ErrorException, $"数据处理失败"); |
| | | Logger.Interface.Error(action.Message); |
| | | IsSuccessed = false; |
| | | } |
| | | input.ErpProdInBths = ErpProdInBths; |
| | | } |
| | | } |
| | | action.Data = input; |
| | | } |
| | | catch (System.Exception ex) |