Administrator 2 anni fa
parent
commit
c2715025de

+ 23 - 7
Projects/永冠/WCS.Service/WebApi/WCSApi.cs

@@ -82,13 +82,29 @@ namespace WCS.Service.WebApi
                                 task.ADDRNEXT = "2385";
                             else if (task.ADDRTO == "2086")
                                 task.ADDRNEXT = "2325";
-
-                            var next = Device.Find(tunnel).GetNext(task.ADDRTO);
-                            if (next == null)
-                                throw new Exception("创建失败");
-                            task.SCSTATION = next.CODE;
-                            db.Default.Add(task);
-                            db.Default.SaveChanges();
+                            else if (task.ADDRTO == "3001")
+                                task.ADDRNEXT = "3045";
+                            if (task.ADDRTO == "3001")
+                            {
+                                var next = Device.Find(tunnel).GetNext(task.ADDRNEXT);
+                                if (next == null)
+                                    throw new Exception("创建失败");
+                                task.SCSTATION = next.CODE;
+                                db.Default.Add(task);
+                                db.Default.SaveChanges();
+                            }
+                            else
+                            {
+                                var next = Device.Find(tunnel).GetNext(task.ADDRTO);
+                                if (next == null)
+                                    throw new Exception("创建失败");
+                                task.SCSTATION = next.CODE;
+                                db.Default.Add(task);
+                                db.Default.SaveChanges();
+                            }
+                            
+                            
+                            
                             //task.CreateStatusLog(db);
                         }
                         else if (obj.TaskType == "1")

+ 1 - 1
Projects/永冠/WCS.Service/WebApi/WMS/WMS.cs

@@ -14,7 +14,7 @@ namespace WCS.Service
         public static I_WCS_GetInTaskResponse InBound(string barcode, string devCode, bool getTunnel = false)
         {
             var warehouse = "mwhouseputong";
-            if (devCode.StartsWith("MW_") || devCode == "2088")
+            if (devCode.StartsWith("MW_") || devCode == "2088" || devCode == "3001")
                 warehouse = "mwhouseyuanzhi";
 
             var res = APICaller.CallApi<I_WCS_GetInTaskResponse>(Url + "/api/Task/I_WCS_GetInTask", new I_WCS_GetInTaskRequest

+ 45 - 10
Projects/永冠/WCS.Service/Works/RGV/RGVWork.cs

@@ -181,7 +181,7 @@ namespace WCS.Service.Works
             #endregion 放货任务
 
             var station_3033 = Device.Find("3033").Device<IStation521, IStation520>();
-            if (station_3033.Data.PH_STATUS && station_3033.Data.GOODSEND == 3060 && station_3033.Data.TASKNUM > 10000)
+            if (station_3033.Data.PH_STATUS && station_3033.Data.GOODSEND == 3033 && station_3033.Data.TASKNUM > 10000)
             {
                 var station_3041 = Device.Find("3041").Device<IStation521, IStation520>();
                 if (!station_3041.Data.PH_STATUS && station_3041.Data.TASKNUM == 0)
@@ -204,7 +204,7 @@ namespace WCS.Service.Works
             if (station_3046.Data.PH_STATUS && station_3046.Data.GOODSEND == 3046 && station_3046.Data.TASKNUM > 10000)
             {
                 var station_2390 = Device.Find("2390").Device<IStation521, IStation520>();
-                if (!station_3046.Data.PH_STATUS && station_3046.Data.TASKNUM == 0)
+                if (!station_2390.Data.PH_STATUS && station_2390.Data.TASKNUM == 0)
                 {
                     DB.Do(db =>
                     {
@@ -220,6 +220,26 @@ namespace WCS.Service.Works
                     });
                 }
             }
+            var station_3040 = Device.Find("3040").Device<IStation521, IStation520>();
+            if (station_3040.Data.PH_STATUS && station_3040.Data.GOODSEND == 3040 && station_3040.Data.TASKNUM > 10000)
+            {
+                var station_3034 = Device.Find("3034").Device<IStation521, IStation520>();
+                if (!station_3034.Data.PH_STATUS && station_3034.Data.TASKNUM == 0)
+                {
+                    DB.Do(db =>
+                    {
+                        var task = db.Default.Set<WCS_TASK>().Find(station_3040.Data.TASKNUM);
+                        if (task == null)
+                            throw new Exception($"任务号{station_3040.Data.TASKNUM}不存在");
+                        task.ADDRNEXT = station_3034.Entity.CODE;
+                        task.UPDATETIME = DateTime.Now;
+                        db.Default.SaveChanges();
+                        //station_3060.Data2.TASKNUM = station_3060.Data.TASKNUM;
+                        station_3040.Data2.GOODSEND = 3034;
+                        station_3040.Data2.CONFIRM = true;
+                    });
+                }
+            }
 
             #region 取货任务
 
@@ -236,6 +256,7 @@ namespace WCS.Service.Works
                                      case 2366: code = "2359"; break; //二车间
                                      case 2328: code = "2114"; break; //一车间
                                      case 2385: code = "2359"; break; //三车间
+                                     
                                  };
 
                                  var end = Device.Find(code).Device<IStation521>();
@@ -276,7 +297,7 @@ namespace WCS.Service.Works
             if (validPickupPoint == null) validPickupPoint = validPickupPoints.OrderBy(v => v.UpdateTime).FirstOrDefault() ?? throw new Exception("没有站台需要取货");
 
             var next1 = dev.Entity.GetNext(validPickupPoint.Data.GOODSEND.ToString());
-            if (validPickupPoint.Entity.CODE is "2108" or "2114" or "3040" or "3033") //一工位取货点
+            if (validPickupPoint.Entity.CODE is "2108" or "2114" or "3040" or "3034") //一工位取货点
             {
                 dev.Data2.TaskID_1 = validPickupPoint.Data.TASKNUM;//dev.Data.TaskID_1;
                 dev.Data2.TaskType_1 = Convert.ToInt16(DRGVTaskType.取货);
@@ -284,7 +305,7 @@ namespace WCS.Service.Works
                 dev.Data2.DestPosition_1 = Convert.ToInt16(validPickupPoint.Entity.CODE);
                 dev.Data2.Trigger_1 = 1;
             }
-            else if (validPickupPoint.Entity.CODE is "3046" or "3041" or "3034") //二工位取货点
+            else if (validPickupPoint.Entity.CODE is "3046" or "3041" or "3033") //二工位取货点
             {
                 dev.Data2.TaskID_2 = validPickupPoint.Data.TASKNUM;
                 dev.Data2.TaskType_2 = Convert.ToInt16(DRGVTaskType.取货);
@@ -334,12 +355,24 @@ namespace WCS.Service.Works
                         var task = db.Default.Set<WCS_TASK>().Find(station_3060.Data.TASKNUM);
                         if (task == null)
                             throw new Exception($"任务号{station_3060.Data.TASKNUM}不存在");
-                        task.ADDRNEXT = station_3060.Entity.CODE;
-                        task.UPDATETIME = DateTime.Now;
-                        db.Default.SaveChanges();
-                        //station_3060.Data2.TASKNUM = station_3060.Data.TASKNUM;
-                        station_3060.Data2.GOODSEND = 3013;
-                        station_3060.Data2.CONFIRM = true;
+                        if (task.TYPE == TaskType.出库)
+                        {
+                            task.UPDATETIME = DateTime.Now;
+                            db.Default.SaveChanges();
+                            //station_3060.Data2.TASKNUM = station_3060.Data.TASKNUM;
+                            station_3060.Data2.GOODSEND = 3001;
+                            station_3060.Data2.CONFIRM = true;
+                        }
+                        else
+                        {
+                            task.ADDRNEXT = station_3060.Entity.CODE;
+                            task.ADDRTO = "2017";
+                            task.UPDATETIME = DateTime.Now;
+                            db.Default.SaveChanges();
+                            //station_3060.Data2.TASKNUM = station_3060.Data.TASKNUM;
+                            station_3060.Data2.GOODSEND = 3013;
+                            station_3060.Data2.CONFIRM = true;
+                        }   
                     });
                 }
             }
@@ -361,6 +394,7 @@ namespace WCS.Service.Works
                     db.Default.SaveChanges();
                     //station.Data2.TASKNUM = station.Data.TASKNUM;
                     station.Data2.GOODSEND = outTemp;
+                    station.Data2.CONFIRM = true;
                 });
             }
             if (station_3028.Data.PH_STATUS && station_3028.Data.GOODSEND == 3028 && station_3028.Data.TASKNUM > 10000)
@@ -378,6 +412,7 @@ namespace WCS.Service.Works
                         db.Default.SaveChanges();
                         //station_3028.Data2.TASKNUM = station.Data.TASKNUM;
                         station_3028.Data2.GOODSEND = 3020;
+                        station_3028.Data2.CONFIRM = true;
                     });
                 }
             }

+ 1 - 1
Projects/永冠/WCS.Service/Works/Stations/22车间.cs

@@ -116,7 +116,7 @@ namespace WCS.Service.Works.Stations
             outTemp = 3001;
             inTemp = 3005;
             addrTo = 3001;
-            arr = Device.Find("3060", "3006", "0334", "3001", "3012").Select(v => v.Device<IStation521, IStation520>()).ToArray();
+            arr = Device.Find("3060", "3006", "3004", "3001", "3012").Select(v => v.Device<IStation521, IStation520>()).ToArray();
 
             var rgv = Device.Find("RGV8").Device<IRGV521, IRGV520>();
             if (rgv.Data2.Trigger != 0) throw new Exception("RGV8任务触发中");

+ 1 - 1
Projects/永冠/WCS.Service/Works/Stations/AGV交互.cs

@@ -370,7 +370,7 @@ namespace WCS.Service.Works.Stations
                                     addrNext = "2325";
                                 else if (agvtask.Station == "3001")
                                 {
-                                    addrNext = "3001";
+                                    addrNext = "3045";
                                 }
 
                                 var task = new WCS_TASK

+ 19 - 6
Projects/永冠/WCS.Service/Works/Stations/成品车间.cs

@@ -347,13 +347,26 @@ namespace WCS.Service.Works.Stations
                 var task = db.Default.Set<WCS_TASK>().Find(dev.Data.TASKNUM);
                 if (task == null)
                     throw new Exception($"任务号{dev.Data.TASKNUM}不存在");
-                task.ADDRNEXT = outTemp.ToString();
-                task.UPDATETIME = DateTime.Now;
-                db.Default.SaveChanges();
+                if (task.ADDRNEXT == "3045")
+                {
+                    //task.ADDRNEXT = outTemp.ToString();
+                    task.UPDATETIME = DateTime.Now;
+                    db.Default.SaveChanges();
 
-                dev.Data2.TASKNUM = dev.Data.TASKNUM;
-                dev.Data2.GOODSEND = outTemp;
-                dev.Data2.CONFIRM = true;
+                    dev.Data2.TASKNUM = dev.Data.TASKNUM;
+                    dev.Data2.GOODSEND = 3045;
+                    dev.Data2.CONFIRM = true;
+                }
+                else
+                {
+                    task.ADDRNEXT = outTemp.ToString();
+                    task.UPDATETIME = DateTime.Now;
+                    db.Default.SaveChanges();
+
+                    dev.Data2.TASKNUM = dev.Data.TASKNUM;
+                    dev.Data2.GOODSEND = outTemp;
+                    dev.Data2.CONFIRM = true;
+                }
             });
         }