From 9556c5fc2168b71e5aba4bd5353fcd70e681ee46 Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期一, 09 十二月 2024 01:54:25 +0800 Subject: [PATCH] 调用U9C接口生成入库单更新 --- Tiger.Controllers.MES/Controllers/MESController.InStoreOrderNo.cs | 93 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 92 insertions(+), 1 deletions(-) diff --git a/Tiger.Controllers.MES/Controllers/MESController.InStoreOrderNo.cs b/Tiger.Controllers.MES/Controllers/MESController.InStoreOrderNo.cs index 16f3892..702d093 100644 --- a/Tiger.Controllers.MES/Controllers/MESController.InStoreOrderNo.cs +++ b/Tiger.Controllers.MES/Controllers/MESController.InStoreOrderNo.cs @@ -10,6 +10,7 @@ using Tiger.Model; using Tiger.Model.Entitys.MES.BizPrintInstoreDoc; using Tiger.Model.Entitys.MES.Position; +using Tiger.Model.Entitys.MES.U9C; namespace Tiger.Api.Controllers.MES { @@ -36,9 +37,10 @@ { trans = AutoFacContainer.Instance.Resolve<IInStoreOrderNo>().Init(action.ID, Request.Host.Value, action.Data); iBiz.MES.Context.NewTransaction(HttpContext, trans); + } - response = action.GetResponse(); + response = action.GetResponse(trans.GetInStoreInfos()); } catch (System.IO.InvalidDataException ex) { @@ -147,5 +149,94 @@ return Ok(response); } + /// <summary> + /// 璋冪敤U9C鎺ュ彛鐢熸垚鍏ュ簱鍗� + /// </summary> + /// <param name="action"></param> + /// <returns></returns> + [HttpPost] + [Route("api/[controller]/InStoreOrderNo/GenerateInStoreOrder")] + public async Task<IActionResult> InStoreOrderNo_GenerateInStoreOrderAsync([FromBody] ApiAction<RcvRptDocCreateInput> action) + { + ApiAction response; + IInStoreOrderNo trans = null; + try + { + if (iBiz.MES.Context.GetTransDic().ContainsKey(action.ID)) + { + trans = iBiz.MES.Context.GetTransDic()[action.ID] as IInStoreOrderNo; + if (!trans.IsFinished) + { + if (action.IsAsync) + { + response = action.GetResponse(await trans.GenerateInStoreOrder()); + } + else + { + lock (trans.TransLock) { response = action.GetResponse(trans.GenerateInStoreOrder().Result); } + } + } + else + { + response = action.GetResponse($"Transaction Error: 鍏ュ簱鍗曚簨鍔ID:{action.ID}]宸茬粡鍏抽棴", false); + } + } + else + { + response = action.GetResponse($"Transaction Error: 鍏ュ簱鍗曚簨鍔ID:{action.ID}]宸茬粡琚叧闂�", false); + } + } + catch (System.Exception ex) + { + response = action.GetResponse().CatchExceptionWithLog(ex); + } + trans?.AddHistory(Request, action); + return Ok(response); + } + + /// <summary> + /// 鏌ヨ瀵瑰簲鐨勬潯鐮� + /// </summary> + /// <param name="action"></param> + /// <returns></returns> + [HttpPost] + [Route("api/[controller]/InStoreOrderNo/GetScannedList")] + public async Task<IActionResult> InStoreOrderNo_GetScannedListAsync([FromBody] ApiAction action) + { + ApiAction response; + IInStoreOrderNo trans = null; + try + { + if (iBiz.MES.Context.GetTransDic().ContainsKey(action.ID)) + { + trans = iBiz.MES.Context.GetTransDic()[action.ID] as IInStoreOrderNo; + if (!trans.IsFinished) + { + if (action.IsAsync) + { + response = action.GetResponse(await trans.GetScannedList()); + } + else + { + lock (trans.TransLock) { response = action.GetResponse(trans.GetScannedList().Result); } + } + } + else + { + response = action.GetResponse($"Transaction Error: 鍏ュ簱鍗曚簨鍔ID:{action.ID}]宸茬粡鍏抽棴", false); + } + } + else + { + response = action.GetResponse($"Transaction Error: 鍏ュ簱鍗曚簨鍔ID:{action.ID}]宸茬粡琚叧闂�", false); + } + } + catch (System.Exception ex) + { + response = action.GetResponse().CatchExceptionWithLog(ex); + } + trans?.AddHistory(Request, action); + return Ok(response); + } } } -- Gitblit v1.9.3