From aa76e0acd1337d82ddef1d5a34b245c988ecfc13 Mon Sep 17 00:00:00 2001 From: Administrator <Administrator@DESKTOP-JIE70N9> Date: 星期五, 30 五月 2025 18:25:25 +0800 Subject: [PATCH] 修改问题 --- Admin.NET/WCS.Application/PLC/PLCService.cs | 12 +++--- Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs | 43 ++++++++++++--------- Admin.NET/WCS.Application/PLC/PLCTaskAction.cs | 2 Admin.NET/WCS.Application/Enum/FourWayCarEnum.cs | 4 +- Admin.NET/WCS.Application/Util/AGVStorageUtil.cs | 17 +++++++- 5 files changed, 47 insertions(+), 31 deletions(-) diff --git a/Admin.NET/WCS.Application/Enum/FourWayCarEnum.cs b/Admin.NET/WCS.Application/Enum/FourWayCarEnum.cs index 69c2359..8edc2ce 100644 --- a/Admin.NET/WCS.Application/Enum/FourWayCarEnum.cs +++ b/Admin.NET/WCS.Application/Enum/FourWayCarEnum.cs @@ -76,12 +76,12 @@ /// 鏋侀檺鐢甸噺 浣庝簬姝ょ數閲忎笉鎵ц浠诲姟 /// </summary> [Description("鏋侀檺鐢甸噺")] - Dl = 10, + Dl = 20, /// <summary> /// 鍋ュ悍鐢甸噺 浣庝簬姝ょ數閲� 涓旀棤浠诲姟鏃跺幓鍏呯數 /// </summary> [Description("鍋ュ悍鐢甸噺")] - Dl2 = 15, + Dl2 = 75, } diff --git a/Admin.NET/WCS.Application/PLC/PLCService.cs b/Admin.NET/WCS.Application/PLC/PLCService.cs index 6784e79..a9b033e 100644 --- a/Admin.NET/WCS.Application/PLC/PLCService.cs +++ b/Admin.NET/WCS.Application/PLC/PLCService.cs @@ -338,11 +338,11 @@ var endLocateCar = ""; if (valuez == 1) { - endLocateCar = "210401"; + endLocateCar = "011201"; } else if (valuez == 2) { - endLocateCar = "210402"; //011202 + endLocateCar = "011202"; // } else { @@ -352,7 +352,7 @@ if (getCdTask == null) { var (resultDlLock, valueDlLock) = plcConn.GetDBValue(modDevice.PosType, modDevice.PlcPos); - if (resultDlLock.IsSucceed && valueDlLock!=3) + if (resultDlLock.IsSucceed && valueDlLock!=3 && carXYZ != endLocateCar) { //娣诲姞灏忚溅鍏呯數浣嶇疆 WcsTask modCarTask = new WcsTask() @@ -405,11 +405,11 @@ var endLocateCar = ""; if (valuez == 1) { - endLocateCar = "210401"; + endLocateCar = "011201"; } else if (valuez == 2) { - endLocateCar = "210402"; + endLocateCar = "011202"; } else { @@ -419,7 +419,7 @@ if (getCdTask == null) { var (resultDlLock, valueDlLock) = plcConn.GetDBValue(modDevice.PosType, modDevice.PlcPos); - if (resultDlLock.IsSucceed && valueDlLock != 3) + if (resultDlLock.IsSucceed && valueDlLock != 3 && carXYZ != endLocateCar) { //娣诲姞灏忚溅鍏呯數浣嶇疆 WcsTask modCarTask = new WcsTask() diff --git a/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs b/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs index 6464193..6eeb443 100644 --- a/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs +++ b/Admin.NET/WCS.Application/PLC/PLCTaskAction.cs @@ -332,7 +332,7 @@ - Thread.Sleep(500); + Thread.Sleep(5000); } catch (OperationCanceledException) { diff --git a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs index fe3a3f2..17c4fc0 100644 --- a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs +++ b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs @@ -26,6 +26,7 @@ private readonly IHubContext<TaskLogHub, ITaskLogHub> _taskLogHubContext; private readonly SqlSugarRepository<WcsCheckTask> _wcsCheckTaskRep; private readonly SqlSugarRepository<WcsMateialPzInfo> _wcsMateialPzInfoRep; + private readonly object _lockObj = new object(); public WcsTaskService(SqlSugarRepository<WcsTask> wcsTaskRep, IHubContext<TaskLogHub, ITaskLogHub> taskLogHubContext, SqlSugarRepository<WcsCheckTask> wcsCheckTaskRep, SqlSugarRepository<WcsMateialPzInfo> wcsMateialPzInfoRep) { @@ -440,31 +441,35 @@ [NonAction] public string GetTaskCode(string codeFlag = "WCS") { - var list = _db.Queryable<WcsTask>().Where(m => m.TaskNo.StartsWith("WCS")).ToList(); - string maxNo = list.Max(m => m.TaskNo); - if (!string.IsNullOrEmpty(maxNo)) + lock (_lockObj) { - maxNo = maxNo.Substring(codeFlag.Length); - } - //鑾峰彇鏁版嵁搴撴椂闂村叓浣� - string date = DateTime.Now.ToString("yyyyMMdd").Trim(); - string no = ""; - if (string.IsNullOrEmpty(maxNo)) - { - no = codeFlag + date + "0001"; - } - else - { - if (maxNo.Length == 12 && maxNo.Substring(0, 8) == date) + var list = _db.Queryable<WcsTask>().Where(m => m.TaskNo.StartsWith("WCS")).ToList(); + string maxNo = list.Max(m => m.TaskNo); + if (!string.IsNullOrEmpty(maxNo)) { - int lastNo = Convert.ToInt32(maxNo.Substring(8, 4)) + 1; - no = codeFlag + date + (lastNo.ToString().PadLeft(4, '0')); + maxNo = maxNo.Substring(codeFlag.Length); } - else + //鑾峰彇鏁版嵁搴撴椂闂村叓浣� + string date = DateTime.Now.ToString("yyyyMMdd").Trim(); + string no = ""; + if (string.IsNullOrEmpty(maxNo)) { no = codeFlag + date + "0001"; } + else + { + if (maxNo.Length == 12 && maxNo.Substring(0, 8) == date) + { + int lastNo = Convert.ToInt32(maxNo.Substring(8, 4)) + 1; + no = codeFlag + date + (lastNo.ToString().PadLeft(4, '0')); + } + else + { + no = codeFlag + date + "0001"; + } + } + return no; } - return no; + } } diff --git a/Admin.NET/WCS.Application/Util/AGVStorageUtil.cs b/Admin.NET/WCS.Application/Util/AGVStorageUtil.cs index 141f599..b594fd6 100644 --- a/Admin.NET/WCS.Application/Util/AGVStorageUtil.cs +++ b/Admin.NET/WCS.Application/Util/AGVStorageUtil.cs @@ -66,13 +66,24 @@ var locate1 = _db.Queryable<WcsStorageLocat>().First(m => m.IsDelete == false && m.LocatNo == straLocate); var locate2 = _db.Queryable<WcsStorageLocat>().First(m => m.IsDelete == false && m.LocatNo == endLocate); - if (locate1q == "B" || locate2q == "B") + if (locate1q == "B" ) { - if (Area1002.Contains(locate2.AreaNo) || Area1002.Contains(locate1.AreaNo)) + if ( Area1002.Contains(locate1.AreaNo) ) { jiebo = "1JB";//鎺ラ┏浣� } - if (Area10031.Contains(locate2.AreaNo) || Area10032.Contains(locate2.AreaNo) || Area10031.Contains(locate1.AreaNo) || Area10032.Contains(locate1.AreaNo)) + if (Area10031.Contains(locate1.AreaNo) || Area10032.Contains(locate1.AreaNo)) + { + jiebo = "2JB"; + } + } + if (locate2q == "B") + { + if ( Area1002.Contains(locate2.AreaNo)) + { + jiebo = "1JB";//鎺ラ┏浣� + } + if (Area10031.Contains(locate2.AreaNo) || Area10032.Contains(locate2.AreaNo)) { jiebo = "2JB"; } -- Gitblit v1.8.0