From d07f25c163706ac46a83bd2c63db1e3c52715222 Mon Sep 17 00:00:00 2001 From: zhaowc <526854230@qq.com> Date: 星期四, 27 三月 2025 15:54:25 +0800 Subject: [PATCH] 解决问题 --- Wms/Wms/Controllers/DownApiController.cs | 182 +++++++++++++++++++++++++-------------------- 1 files changed, 102 insertions(+), 80 deletions(-) diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs index e558169..753060d 100644 --- a/Wms/Wms/Controllers/DownApiController.cs +++ b/Wms/Wms/Controllers/DownApiController.cs @@ -37,6 +37,7 @@ private readonly IPdaAsnServer _paAsnSvc;//绌烘墭璺虹粦瀹� private readonly IStockServer _stockSvc;//AGV浠诲姟瀹屾垚绠� private readonly IPdaCrServer _pdaCrServer; // PDA浠诲姟璋冨害 + private static readonly object OLock = new object(); public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IPdaSoServer pdaSoSvc,IPdaAsnServer paAsnSvc,IStockServer stockSvc,IPdaCrServer pdaCrServer) { @@ -219,45 +220,47 @@ [HttpPost] public IActionResult RequestRoadWay(RequestLocate model) { - var logStr = ""; + lock (OLock) { + var logStr = ""; - logStr = $@".\log\WCS\WCS鐢宠宸烽亾" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + logStr = $@".\log\WCS\WCS鐢宠宸烽亾" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; - try - { - - var jsonData = JsonConvert.SerializeObject(model); - LogFile.SaveLogToFile($"WCS鐢宠宸烽亾锛�( {jsonData} ),", logStr); - if (model.TaskModel == "1") + try { - var list = _asnPalletBindSvc.RequestRoadWayModel(model.PalletNo, model.HouseNo); - LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"WCS鐢宠宸烽亾锛�( {jsonData} ),", logStr); + if (model.TaskModel == "1") + { + var list = _asnPalletBindSvc.RequestRoadWayModel(model.PalletNo, model.HouseNo); + + LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); + new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo, + "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", 2); + + return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list }); + } + else + { + + var list = _asnPalletBindSvc.RequestRoadWay(model.PalletNo, model.HouseNo); + + LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); + new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), + "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2); + + return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list }); + } + + } + catch (Exception e) + { + LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {e.Message} ),", logStr); new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo, - "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", 2); + "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勫け璐ヤ俊鎭�", 2); - return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list }); + return Ok(new ErpModel { Success = -1, Message = e.Message }); } - else - { - - var list = _asnPalletBindSvc.RequestRoadWay(model.PalletNo, model.HouseNo); - - LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); - new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), - "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2); - - return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list }); - } - - } - catch (Exception e) - { - LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {e.Message} ),", logStr); - new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo, - "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勫け璐ヤ俊鎭�", 2); - - return Ok(new ErpModel { Success = -1, Message = e.Message }); } } @@ -284,65 +287,68 @@ //} //string palletno = model.PalletNo; - var logStr = ""; - if (model.PalletNo.Length == 9) + lock (OLock) { - logStr = $@".\log\WCS\WMS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; - } - else if (model.PalletNo.Length == 8) - { - logStr = $@".\log\WCS\WCS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; - } - - try - { + var logStr = ""; if (model.PalletNo.Length == 9) { - var jsonData = JsonConvert.SerializeObject(model); - LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr); + logStr = $@".\log\WCS\WMS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; } else if (model.PalletNo.Length == 8) { - var jsonData = JsonConvert.SerializeObject(model); - LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr); + logStr = $@".\log\WCS\WCS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + } - } - string pallet = model.PalletNo.Substring(0, 8); - OutCommandDto list; - if (model.TaskModel == "1") + try { - list = _asnPalletBindSvc.RequestLocationModel(pallet, model.HouseNo, model.RoadwayNo); - } - else - { - list = _asnPalletBindSvc.RequestLocation(pallet, model.HouseNo, model.RoadwayNo); - } + if (model.PalletNo.Length == 9) + { + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr); + } + else if (model.PalletNo.Length == 8) + { + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr); + + } + string pallet = model.PalletNo.Substring(0, 8); + OutCommandDto list; + if (model.TaskModel == "1") + { + list = _asnPalletBindSvc.RequestLocationModel(pallet, model.HouseNo, model.RoadwayNo); + } + else + { + list = _asnPalletBindSvc.RequestLocation(pallet, model.HouseNo, model.RoadwayNo); + } - if (model.PalletNo.Length == 9) - { - new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);// int.Parse(userId) - LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅鎴愬姛锛�( {JsonConvert.SerializeObject(list)} ),", logStr); - } - else if (model.PalletNo.Length == 8) - { - LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); - } + if (model.PalletNo.Length == 9) + { + new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);// int.Parse(userId) + LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅鎴愬姛锛�( {JsonConvert.SerializeObject(list)} ),", logStr); + } + else if (model.PalletNo.Length == 8) + { + LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr); + } - return Ok(new { Success = 0, Message = "鐢宠鍌ㄤ綅鎴愬姛", TaskList = list }); - } - catch (Exception e) - { - if (model.PalletNo.Length == 9) - { - new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勫け璐ヤ俊鎭�", 2);//int.Parse(userId) - LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅澶辫触杩斿洖锛�( {e.Message} ),", logStr); + return Ok(new { Success = 0, Message = "鐢宠鍌ㄤ綅鎴愬姛", TaskList = list }); } - else if (model.PalletNo.Length == 8) + catch (Exception e) { - LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {e.Message} ),", logStr); - } + if (model.PalletNo.Length == 9) + { + new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勫け璐ヤ俊鎭�", 2);//int.Parse(userId) + LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅澶辫触杩斿洖锛�( {e.Message} ),", logStr); + } + else if (model.PalletNo.Length == 8) + { + LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {e.Message} ),", logStr); + } - return Ok(new ErpModel { Success = -1, Message = e.Message }); + return Ok(new ErpModel { Success = -1, Message = e.Message }); + } } } @@ -555,6 +561,8 @@ public IActionResult BindPlnInHouseWcs(PalletsBind model) { var logStr = $@".\log\WCS\WCS鍙堝彔鎵樻満鐢宠绌烘墭鍏ュ簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { var strMsg = _paAsnSvc.BindNullPallets(model); @@ -579,6 +587,8 @@ public IActionResult IssuePlnOutHouseWcs(OutModePalletVm model) { var logStr = $@".\log\WCS\WCS鐢宠绌烘墭鍑哄簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { List<OutCommandDto> _list = _pdaSoSvc.IssuePlnOutHouseWcs(model,0); @@ -603,6 +613,8 @@ public IActionResult IssuePlnCheckHouseWcs(CheckModePalletVm model) { var logStr = $@".\log\WCS\WMS鎷h揣鐢宠绌烘墭鍑哄簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { string list = _pdaSoSvc.IssuePlnCehckHouseWcs(model, 0,_config.AgvHost+_config.GenAgvSchedulingTask); @@ -627,6 +639,8 @@ public IActionResult RequestPackWcs(RequesIsBale model) { var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { int t = _asnPalletBindSvc.RequestPackWcs(model.PalletNo); @@ -652,6 +666,8 @@ public IActionResult RequestUnPackWcs(RequesIsBale model) { var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { int t = _asnPalletBindSvc.RequestUnPackWcs(model.PalletNo); @@ -676,6 +692,8 @@ public IActionResult RequestPackedWcs(RequesIsBale model) { var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { int t = _asnPalletBindSvc.RequestPackedWcs(model.PalletNo); @@ -736,6 +754,8 @@ public IActionResult ResultBoxInfoCheckWcs(BoxInfoCheck model) { var logStr = $@".\log\WCS\WCS鐢宠鎷嗗灈鎵樼洏淇℃伅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { RequestBoxInfoCheck list = _exNoticeSvc.BoxInfoCheckWcs(model); @@ -761,17 +781,19 @@ public IActionResult ResultBoxInfoExportWcs(BoxInfoCheck model) { var logStr = $@".\log\WCS\WCS鐢宠鎴愬搧绠辩爜鎷嗗灈鎷h揣淇℃伅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr); try { //杩斿洖鍑哄簱鍒嗘嫞瑁呰溅鍙� var list = _exNoticeSvc.BoxInfoExportWcs(model.BoxNo); - return Ok(new { Success = "1", Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadubgAddre = list }); + return Ok(new { Success = "1", Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadingAddre = list }); } catch (Exception e) { LogFile.SaveLogToFile($"WCS鐢宠鎴愬搧绠辩爜鎷嗗灈鎷h揣寮傚父杩斿洖锛�( {e.Message} ),", logStr); - return Ok(new { Success = "-1", Message = e.Message, loadubgAddre ="" }); + return Ok(new { Success = "-1", Message = e.Message, loadingAddre = "" }); } } -- Gitblit v1.8.0