Browse Source

二次码垛出库口改入库口

1693994901 1 month ago
parent
commit
f86106d65b

+ 46 - 19
YWGC/FJK/WCS.WorkEngineering/Systems/NoInteractionSystems.cs

@@ -13,6 +13,7 @@ using WCS.WorkEngineering.Model.WMS;
 using WCS.WorkEngineering.WebApi.Controllers;
 using WCS.WorkEngineering.WebApi.Models.WMS.Request;
 using WCS.WorkEngineering.Worlds;
+using static Dm.net.buffer.ByteArrayBuffer;
 using DeviceFlags = WCS.WorkEngineering.Extensions.DeviceFlags;
 using TaskStatus = WCS.Entity.TaskStatus;
 
@@ -236,25 +237,51 @@ namespace WCS.WorkEngineering.Systems
                                     //计算下一个地址
                                     var path1 = DevicePath.GetPath(task.AddrFrom, task.Device);
                                     task.AddrNext = path1.Points[1].Code;
-                                    //var des1 = task.AddrNext;
-                                    //var des2 = "1";
-                                    ////分拣一
-                                    //if (task.AddrNext == "1604")
-                                    //{
-                                    //    des2 = "1606";
-                                    //}
-                                   
-                                    ////else if (task.AddrNext == "1614")
-                                    ////{
-                                    ////    des2 = "1616";
-                                    ////}
-                                    //var num1 = db.Default.Queryable<WCS_TaskInfo>().RowLock().Where(t => t.WorkBench == des1 && t.Status < TaskStatus.Finish && t.Type == TaskType.EnterDepot).Count();
-                                    //var num2 = db.Default.Queryable<WCS_TaskInfo>().RowLock().Where(t => t.WorkBench == des2 && t.Status < TaskStatus.Finish && t.Type == TaskType.EnterDepot).Count();
-                                    //if (task.AddrNext == "1604")
-                                    //{
-                                    //    task.AddrNext = num1 <= num2 ? des2 : des1;
-                                    //}                                    
-                                    //task.WorkBench = task.AddrNext;
+
+                                    #region 二次码垛出库口改入库口
+
+                                    var des1 = task.AddrNext;
+                                    var des2 = "1606";
+                                    //分拣一
+                                    if (task.AddrNext == "1604")
+                                    {
+                                        des2 = "1606";
+                                    }
+                                    else if (task.AddrNext == "1614")
+                                    {
+                                        des2 = "1616";
+                                    }
+                                    //分拣二
+                                    else if (task.AddrNext == "1624")
+                                    {
+                                        des2 = "1626";
+                                    }
+                                    else if (task.AddrNext == "1634")
+                                    {
+                                        des2 = "1636";
+                                    }
+                                    //分拣三
+                                    else if (task.AddrNext == "1644")
+                                    {
+                                        des2 = "1646";
+                                    }
+                                    else if (task.AddrNext == "1654")
+                                    {
+                                        des2 = "1656";
+                                    }
+                                    var sys = db.Default.Queryable<fjSysConfig>().NoLock().First(x => x.Code == des2);
+                                    if (sys == null) return;
+                                    var isForced = sys.SContent == "1" ? true : false;
+
+                                    var num1 = db.Default.Queryable<WCS_TaskInfo>().RowLock().Where(t => t.WorkBench == des1 && t.Status < TaskStatus.Finish && t.Type == TaskType.EnterDepot).Count();
+                                    var num2 = db.Default.Queryable<WCS_TaskInfo>().RowLock().Where(t => t.WorkBench == des2 && t.Status < TaskStatus.Finish && t.Type == TaskType.EnterDepot).Count();
+                                    if (task.AddrNext == "1604" || task.AddrNext == "1624" || task.AddrNext == "1644"
+                                        || task.AddrNext == "1614" || task.AddrNext == "1634" || task.AddrNext == "1654")
+                                    {
+                                        task.AddrNext = isForced == false ? task.AddrNext : (num1 <= num2 ? des2 : des1);
+                                    }
+                                    task.WorkBench = task.AddrNext;
+                                    #endregion
                                     task.SrmStation = task.BarCode.Contains("TPA") || task.BarCode.Contains("TPB") ? task.AddrFrom : path1.Points[2].Code;
 
                                     db.Default.UpdateableRowLock(task).UpdateColumns(x => new { x.Status, x.Device, x.AddrNext, x.SrmStation, x.WorkBench }).ExecuteCommand();

+ 11 - 6
YWGC/FJK/WCS.WorkEngineering/WorkStart.cs

@@ -495,8 +495,8 @@ namespace WCS.WorkEngineering
 
                 #region 巷道--二楼堆垛机放货口
 
-                new RouteInfo("TY1", new string[] { "1601","1605" }),
-                new RouteInfo("TY2", new string[] { "1611","1615" }),
+                new RouteInfo("TY1", new string[] { "1601",/*"1605"*/ }),
+                new RouteInfo("TY2", new string[] { "1611",/*"1615"*/ }),
 
                 #endregion 巷道--二楼堆垛机放货口
 
@@ -715,6 +715,7 @@ namespace WCS.WorkEngineering
                 new RouteInfo("1603", new string[] { "TY1" }),//北侧
                 new RouteInfo("1605", new string[] { "TY1" }),
                 new RouteInfo("1613", new string[] { "TY2" }),//南侧
+                new RouteInfo("1615", new string[] { "TY2" }),
 
                 #endregion 二楼堆垛机入库--巷道
 
@@ -1024,8 +1025,8 @@ namespace WCS.WorkEngineering
 
                 #region 巷道--二楼堆垛机放货口
 
-                new RouteInfo("TY3", new string[] { "1621","1625" }),
-                new RouteInfo("TY4", new string[] { "1631","1635" }),
+                new RouteInfo("TY3", new string[] { "1621"/*,"1625"*/ }),
+                new RouteInfo("TY4", new string[] { "1631"/*,"1635" */}),
 
                 #endregion 巷道--二楼堆垛机放货口
 
@@ -1243,7 +1244,9 @@ namespace WCS.WorkEngineering
                 #region 二楼堆垛机入库--巷道
 
                 new RouteInfo("1623", new string[] { "TY3" }),//北侧
+                new RouteInfo("1625", new string[] { "TY3" }),//北侧
                 new RouteInfo("1633", new string[] { "TY4" }),//南侧
+                new RouteInfo("1635", new string[] { "TY4" }),//北侧
 
                 #endregion 二楼堆垛机入库--巷道
 
@@ -1548,8 +1551,8 @@ namespace WCS.WorkEngineering
 
                 #region 巷道--二楼堆垛机放货口
 
-                new RouteInfo("TY5", new string[] { "1641","1645" }),
-                new RouteInfo("TY6", new string[] { "1651","1655" }),
+                new RouteInfo("TY5", new string[] { "1641"/*,"1645"*/ }),
+                new RouteInfo("TY6", new string[] { "1651"/*,"1655"*/ }),
 
                 #endregion 巷道--二楼堆垛机放货口
 
@@ -1763,7 +1766,9 @@ namespace WCS.WorkEngineering
                 #region 二楼堆垛机入库--巷道
 
                 new RouteInfo("1643", new string[] { "TY5" }),//北侧
+                new RouteInfo("1645", new string[] { "TY5" }),//北侧
                 new RouteInfo("1653", new string[] { "TY6" }),//南侧
+                new RouteInfo("1655", new string[] { "TY6" }),//北侧
 
                 #endregion 二楼堆垛机入库--巷道