From d7f5e3607825e621b40820d505b8ed0bb4e06125 Mon Sep 17 00:00:00 2001 From: wxw <Administrator@DESKTOP-5BIMHQ3> Date: 星期四, 26 十二月 2024 15:19:30 +0800 Subject: [PATCH] 修改问题 --- Wms/Wms/Controllers/DownApiController.cs | 309 ++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 267 insertions(+), 42 deletions(-) diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs index 7b635c8..a4e3fb8 100644 --- a/Wms/Wms/Controllers/DownApiController.cs +++ b/Wms/Wms/Controllers/DownApiController.cs @@ -19,6 +19,8 @@ using static Model.InterFaceModel.RCSModel; using WMS.IBLL.IBllTransServer; using Microsoft.Extensions.Logging; +using ZXing.QrCode.Internal; +using Model.ModelVm.BllCheckVm; namespace Wms.Controllers { @@ -659,28 +661,43 @@ public IActionResult GetPalletNo(Pallnetmsg pallmsg) { var logStr = $@".\log\AGV\AGV鐢宠鍙《" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + AgvResultModel resultModel = null;//杩斿洖淇℃伅 try { var jsonData = JsonConvert.SerializeObject(pallmsg); - LogFile.SaveLogToFile($"AGV鐢宠鍙《锛�( {jsonData} ),", logStr); + LogFile.SaveLogToFile($"AGV鐢宠鍙《-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); if (string.IsNullOrWhiteSpace(pallmsg.Location)) { - return Ok(new AgvResultModel { code = "1", message = "鍙枡浣嶇疆涓虹┖锛�", data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = "鍙枡浣嶇疆涓虹┖!", data = "", reqCode = "" }; + var jsonData3 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍙《-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr); + return Ok(resultModel); } if (string.IsNullOrWhiteSpace(pallmsg.Type)) { - return Ok(new AgvResultModel { code = "1", message = "浠诲姟绫诲瀷涓虹┖锛�", data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = "浠诲姟绫诲瀷涓虹┖!", data = "", reqCode = "" }; + var jsonData4 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍙《-杩斿洖鎶ユ枃锛�( {jsonData4} ),", logStr); + return Ok(resultModel); } string taskNo = ""; + //鍏蜂綋澶勭悊鏂规硶 _rcsserver.GetPalletNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, out taskNo); - return Ok(new AgvResultModel { code = "0", message = "鍙《鎴愬姛", data = taskNo, reqCode = "" }); + + resultModel = new AgvResultModel { code = "0", message = "鍙《鎴愬姛!", data = taskNo, reqCode = "" }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍙《-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); } catch (Exception e) { LogFile.SaveLogToFile($"AGV鐢宠鍙《寮傚父锛�( {e.Message} ),", logStr); - return Ok(new AgvResultModel { code = "1", message = e.Message, data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = e.Message, data = "", reqCode = "" }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍙《-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); } } @@ -693,34 +710,50 @@ public IActionResult ApplyLocatNo(Pallnetmsg pallmsg) { var logStr = $@".\log\AGV\AGV鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; - + AgvResultModel resultModel = null;//杩斿洖淇℃伅 try { var jsonData = JsonConvert.SerializeObject(pallmsg); - LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr); + LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); if (string.IsNullOrWhiteSpace(pallmsg.Location)) { - return Ok(new AgvResultModel { code = "1", message = "鐢宠浣嶇疆涓虹┖锛�", data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = "鐢宠浣嶇疆涓虹┖!", data = "", reqCode = "" }; + var jsonData3 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr); + return Ok(resultModel); } if (string.IsNullOrWhiteSpace(pallmsg.Type)) { - return Ok(new AgvResultModel { code = "1", message = "浠诲姟绫诲瀷涓虹┖锛�", data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = "浠诲姟绫诲瀷涓虹┖!", data = "", reqCode = "" }; + var jsonData3 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr); + return Ok(resultModel); } - if (string.IsNullOrWhiteSpace(pallmsg.PalletNo)) - { - return Ok(new AgvResultModel { code = "1", message = "鐢宠鎵樼洏鍙蜂负绌猴紒", data = "", reqCode = "" }); - } + //if (string.IsNullOrWhiteSpace(pallmsg.PalletNo)) + //{ + // resultModel = new AgvResultModel { code = "1", message = "鐢宠妗跺彿涓虹┖!", data = "", reqCode = "" }; + // var jsonData3 = JsonConvert.SerializeObject(resultModel); + // LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr); + // return Ok(resultModel); + //} string taskNo = ""; + //鍏蜂綋澶勭悊鏂规硶 _rcsserver.ApplyLocatNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, out taskNo); - return Ok(new AgvResultModel { code = "0", message = "鐢宠鍌ㄤ綅鎴愬姛锛�", data = taskNo, reqCode = "" }); + resultModel = new AgvResultModel { code = "0", message = "鐢宠鍌ㄤ綅鎴愬姛!", data = taskNo, reqCode = "" }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); } catch (Exception e) { LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅寮傚父锛�( {e.Message} ),", logStr); - return Ok(new AgvResultModel { code = "1", message = e.Message, data = "", reqCode = "" }); + resultModel = new AgvResultModel { code = "1", message = e.Message, data = "", reqCode = "" }; + var jsonData3 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr); + return Ok(resultModel); } } /// <summary> @@ -818,52 +851,150 @@ } } + + #region Agv浠诲姟瀹屾垚鍙嶉 /// <summary> - /// Agv浠诲姟瀹屾垚鍙嶉 + /// 浠诲姟寮�濮� /// </summary> /// <param name="model"></param> /// <returns></returns> [HttpPost] - public IActionResult agvCallBack(AgvTaskDto model) + public IActionResult start(AgvTaskDto model) { //璁板綍log var logStr = $@".\log\AGV\浠诲姟鎵ц閫氱煡" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + AgvResultModel resultModel = null;//杩斿洖淇℃伅 try - { + { var jsonData = JsonConvert.SerializeObject(model); - LogFile.SaveLogToFile($"浠诲姟鎵ц閫氱煡锛�( {jsonData} ),", logStr); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟寮�濮�-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); - if (string.IsNullOrEmpty(model.reqCode)) - { - return Ok(new AgvResultModel { code = "-1", message = "璇锋眰澶辫触锛宺eqCode鍙傛暟寮傚父", reqCode = model.reqCode }); - } - switch (model.method) - { - case "start"://浠诲姟寮�濮� - return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }); + //鍏蜂綋澶勭悊鏂规硶 - case "outbin"://璧板嚭鍌ㄤ綅 - return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }); - case "end"://浠诲姟缁撴潫 - _rcsserver.RCSFinishTask(model.reqCode, "1"); - return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }); - case "cancel"://浠诲姟鍗曞彇娑� - return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }); - case "apply"://CTU鏂欑鍙栨斁鐢宠 - return Ok(new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }); - - default: - return Ok(new AgvResultModel { code = "-1", message = "璇锋眰澶辫触锛宮ethod浠诲姟绫诲瀷閿欒", reqCode = model.reqCode }); - } + resultModel = new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟寮�濮�-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); } catch (Exception ex) { - LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡寮傚父锛�( {ex.Message} ),", logStr); - return Ok(new AgvResultModel { code = "-1", message = ex.Message, reqCode = model.reqCode }); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟寮�濮�-寮傚父锛�( {ex.Message} ),", logStr); + + resultModel = new AgvResultModel { code = "1", message = ex.Message, reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟寮�濮�-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); } } + /// <summary> + /// 璧板嚭鍌ㄤ綅 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult outbin(AgvTaskDto model) + { + //璁板綍log + var logStr = $@".\log\AGV\浠诲姟鎵ц閫氱煡" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + AgvResultModel resultModel = null;//杩斿洖淇℃伅 + try + { + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-璧板嚭鍌ㄤ綅-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); + + //鍏蜂綋澶勭悊鏂规硶 + + + + resultModel = new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-璧板嚭鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + catch (Exception ex) + { + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-璧板嚭鍌ㄤ綅-寮傚父锛�( {ex.Message} ),", logStr); + + resultModel = new AgvResultModel { code = "1", message = ex.Message, reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-璧板嚭鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + } + /// <summary> + /// 浠诲姟缁撴潫 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult end(AgvTaskDto model) + { + //璁板綍log + var logStr = $@".\log\AGV\浠诲姟鎵ц閫氱煡" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + AgvResultModel resultModel = null;//杩斿洖淇℃伅 + try + { + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟缁撴潫-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); + + //鍏蜂綋澶勭悊鏂规硶 + _rcsserver.RCSFinishTask(model.taskCode, "1", "AGV"); + + + resultModel = new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟缁撴潫-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + catch (Exception ex) + { + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟缁撴潫-寮傚父锛�( {ex.Message} ),", logStr); + + resultModel = new AgvResultModel { code = "1", message = ex.Message, reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟缁撴潫-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + } + /// <summary> + /// 浠诲姟鍗曞彇娑� + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult cancel(AgvTaskDto model) + { + //璁板綍log + var logStr = $@".\log\AGV\浠诲姟鎵ц閫氱煡" + DateTime.Now.ToString("yyyyMMdd") + ".txt"; + AgvResultModel resultModel = null;//杩斿洖淇℃伅 + try + { + var jsonData = JsonConvert.SerializeObject(model); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟鍗曞彇娑�-璇锋眰鎶ユ枃锛�( {jsonData} ),", logStr); + + //鍏蜂綋澶勭悊鏂规硶 + + + + resultModel = new AgvResultModel { code = "0", message = "鎴愬姛", reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟鍗曞彇娑�-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + catch (Exception ex) + { + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟鍗曞彇娑�-寮傚父锛�( {ex.Message} ),", logStr); + + resultModel = new AgvResultModel { code = "1", message = ex.Message, reqCode = model.reqCode }; + var jsonData2 = JsonConvert.SerializeObject(resultModel); + LogFile.SaveLogToFile($"AGV浠诲姟鎵ц閫氱煡-浠诲姟鍗曞彇娑�-杩斿洖鎶ユ枃锛�( {jsonData2} ),", logStr); + return Ok(resultModel); + } + } + + #endregion /// <summary> /// 鍑哄簱鍗曟嵁涓嬪彂 @@ -896,6 +1027,100 @@ return Ok(new ErpModel { Success = -1, Message = e.Message }); } } + + /// <summary> + /// 鎵嬪姩涓嬪彂灏忚溅浠诲姟 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult SendAgvTaskWms(CheckTaskVm model) + { + try + { + //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D + var claimsIdentity = this.User.Identity as ClaimsIdentity; + if (claimsIdentity == null) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value; + if (string.IsNullOrWhiteSpace(userId)) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + _rcsserver.DownTask(model.taskNo, int.Parse(userId), _config.AgvHost + _config.GenAgvSchedulingTask); + + return Ok(new { code = 0, msg = "閲嶆柊涓嬪彂宸插畬鎴�", data = "" }); + } + catch (Exception e) + { + return Ok(new { code = 1, msg = e.Message }); + } + } + + /// <summary> + /// 鎵嬪姩瀹屾垚灏忚溅浠诲姟 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult FinshAgvTaskWms(CheckTaskVm model) + { + try + { + //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D + var claimsIdentity = this.User.Identity as ClaimsIdentity; + if (claimsIdentity == null) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value; + if (string.IsNullOrWhiteSpace(userId)) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + //鍏蜂綋澶勭悊鏂规硶 + _rcsserver.RCSFinishTask(model.taskNo, "1", "WMS"); + + return Ok(new { code = 0, msg = "閲嶆柊涓嬪彂宸插畬鎴�", data = "" }); + } + catch (Exception e) + { + return Ok(new { code = 1, msg = e.Message }); + } + } + + /// <summary> + /// 鎵嬪姩鍙栨秷AGV绉诲簱浠诲姟 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> + [HttpPost] + public IActionResult CancelAgvTaskWms(CheckTaskVm model) + { + try + { + //鑾峰彇褰撳墠鐧诲綍鐨勭敤鎴稩D + var claimsIdentity = this.User.Identity as ClaimsIdentity; + if (claimsIdentity == null) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value; + if (string.IsNullOrWhiteSpace(userId)) + { + return Ok(new { code = 1, msg = "鏈幏鍙栧埌褰撳墠鎿嶄綔浜轰俊鎭�" }); + } + _rcsserver.CancelTask(model.taskNo, int.Parse(userId)); + + return Ok(new { code = 0, msg = "鎴愬姛鍙栨秷浠诲姟", data = "" }); + } + catch (Exception e) + { + return Ok(new { code = 1, msg = e.Message }); + } + } #endregion } } -- Gitblit v1.8.0