Administrator 2 年之前
父節點
當前提交
241a812534
共有 3 個文件被更改,包括 40 次插入49 次删除
  1. 二進制
      DLL/PLC.Siemens.dll
  2. 2 10
      Projects/永冠/WCS.Service/WebApi/WMS/WMS.cs
  3. 38 39
      Projects/永冠/WCS.Service/Works/Stations/AGV交互.cs

二進制
DLL/PLC.Siemens.dll


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

@@ -158,17 +158,9 @@ namespace WCS.Service
                 OutEndPostion = position
             });
             if (!res.ResType)
-            {
-                if (devCode == "3001" || devCode == "2122" || devCode == "2131" || devCode == "2143")
-                {
-                    //TaskException(position, res.ResMessage);
-                    throw new Exception($"目标位置[{position}]获取出库任务失败,原因:[{res.ResMessage}]");
-                }
-                else
-                {
+            {            
                     TaskException(position, res.ResMessage);
-                    throw new Exception(res.ResMessage);
-                }               
+                    throw new Exception($"目标位置[{position}]获取出库任务失败,原因[{res.ResMessage}]");                                
             }
             var tcode = "TY" + res.TunnelNum;
 

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

@@ -399,46 +399,45 @@ namespace WCS.Service.Works.Stations
                                     {
                                         throw new Exception($"{agvtask.Position}正在执行的叫料任务数量已达{qty},暂停出库");
                                     }
-                                }                                                               
-                                var res = WMS.GetOutTask(agvtask.Position, dev.Entity.CODE);                                                                                         
-                                var sc = Device.Find(res.TunnelNum).ROUTES.Where(v => v.NEXT.IsSC()).Select(v => v.NEXT).FirstOrDefault();
-
-                                var loc = string.Format("{0}-{1}-{2}", res.Row, res.Colomn, res.Layer);
-                                var addrNext = dev.Entity.CODE;
-                                if (agvtask.Workshop == 1)
-                                    addrNext = "2108";
-                                else if (agvtask.Workshop == 2)
-                                    addrNext = "2366";
-                                else if (agvtask.Workshop == 3)
-                                    addrNext = "2385";
-                                else if (agvtask.Station == "2086")
-                                    addrNext = "2325";
-                                else if (agvtask.Station == "3001")
-                                {
-                                    addrNext = "3045";
                                 }
-
-                                var task = new WCS_TASK
-                                {
-                                    TYPE = TaskType.出库,
-                                    STATUS = WCS.Entity.TaskStatus.新建,
-                                    ADDRFROM = loc,
-                                    ADDRTO = dev.Entity.CODE,
-                                    BARCODE = res.ContainerBarCode,
-                                    TUNNEL = res.TunnelNum,
-                                    WMSTASK = int.Parse(res.WMSTaskNum),
-                                    UPDATEUSER = "WCS",
-                                    SCSTATION = res.Memo1,
-                                    DEVICE = sc.CODE,
-                                    //ADDRCURRENT = loc,
-                                    AgvTask = agvtask.ID,
-                                    ADDRNEXT = addrNext
-                                };
-                                db.Default.Set<WCS_TASK>().Add(task);
-
-                                agvtask.Status = AGVTaskStatus.确认;
-                                agvtask.UpdateTime = DateTime.Now;
-                                db.Default.SaveChanges();
+                                
+                                    var res = WMS.GetOutTask(agvtask.Position, dev.Entity.CODE);
+
+                                    var sc = Device.Find(res.TunnelNum).ROUTES.Where(v => v.NEXT.IsSC()).Select(v => v.NEXT).FirstOrDefault();
+                                    var loc = string.Format("{0}-{1}-{2}", res.Row, res.Colomn, res.Layer);
+                                    var addrNext = dev.Entity.CODE;
+                                    if (agvtask.Workshop == 1)
+                                        addrNext = "2108";
+                                    else if (agvtask.Workshop == 2)
+                                        addrNext = "2366";
+                                    else if (agvtask.Workshop == 3)
+                                        addrNext = "2385";
+                                    else if (agvtask.Station == "2086")
+                                        addrNext = "2325";
+                                    else if (agvtask.Station == "3001")
+                                    {
+                                        addrNext = "3045";
+                                    }
+                                    var task = new WCS_TASK
+                                    {
+                                        TYPE = TaskType.出库,
+                                        STATUS = WCS.Entity.TaskStatus.新建,
+                                        ADDRFROM = loc,
+                                        ADDRTO = dev.Entity.CODE,
+                                        BARCODE = res.ContainerBarCode,
+                                        TUNNEL = res.TunnelNum,
+                                        WMSTASK = int.Parse(res.WMSTaskNum),
+                                        UPDATEUSER = "WCS",
+                                        SCSTATION = res.Memo1,
+                                        DEVICE = sc.CODE,
+                                        //ADDRCURRENT = loc,
+                                        AgvTask = agvtask.ID,
+                                        ADDRNEXT = addrNext
+                                    };
+                                    db.Default.Set<WCS_TASK>().Add(task);
+                                    agvtask.Status = AGVTaskStatus.确认;
+                                    agvtask.UpdateTime = DateTime.Now;
+                                    db.Default.SaveChanges();                           
                             }
                             else if (Ltc.Do(agvtask, v => v.AGVStatus == AGVTaskStatus.完成))
                             {