Administrator 2 rokov pred
rodič
commit
1eb7753df8

+ 2 - 2
Projects/永冠/WCS.Service/Helpers/GeneralHelper.cs

@@ -18,12 +18,12 @@ namespace WCS.Service.Helpers
         /// <summary>
         /// 托盘排出
         /// </summary>
-        public static void DischargeOfTray(Device<IStation521, IStation520, IRobotStation> device)
+        public static void DischargeOfTray(Device<IStation521, IStation520, IRobotStation> device,bool needUnBind=true)
         {
             DB.Do(db =>
             {
                 var t = db.Default.Set<WCS_TASK>().Find(device.Data.TASKNUM);
-                if (t != null)
+                if (t != null && needUnBind)
                 {
                     t.ADDRTO = "2202";
                     db.Default.SaveChanges();

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

@@ -180,11 +180,7 @@ namespace WCS.Service
                 ContainerCode = containerCode,
                 BarCode = barcode
             });
-            if (!res.ResType)
-            {
-                TaskException(dev, res.ResMessage);
-                throw new Exception(res.ResMessage);
-            }
+          
             return res;
         }
 

+ 4 - 5
Projects/永冠/WCS.Service/Works/Robots/RobotWork.cs

@@ -52,9 +52,7 @@ namespace WCS.Service.Works.Robots
                         throw new Exception("已完成任务号" + fTaskId + "不存在");
                     var taskPallet = db.Default.Set<WCS_TASK>().Find(fTarget.Data.TASKNUM);
                     if (taskPallet == null)
-                        throw new Exception("空托盘任务号" + fTarget.Data.TASKNUM + "不存在");
-                    if(taskPallet.TYPE == TaskType.入库)
-                        throw new Exception("托盘" + taskPallet.BARCODE  + "已有入库任务,请检查条码是否重复");
+                        throw new Exception("空托盘任务号" + fTarget.Data.TASKNUM + "不存在");                   
                     var container = taskPallet.BARCODE;
 
                     task.STATUS = WCS.Entity.TaskStatus.已完成;
@@ -69,9 +67,10 @@ namespace WCS.Service.Works.Robots
                     if (Ltc.Do(res, v => v.ResType == false))
                     {
                         //throw new Exception(res.ResMessage);
-                        
-                        GeneralHelper.DischargeOfTray(fTarget1);
+                        WMS.TaskException(dev.Entity.CODE, res.ResMessage);
                         LogHelper.AddWCS_EXCEPTION($"{dev.Entity.CODE}强制排出,原因:{res.ResMessage}");
+                        GeneralHelper.DischargeOfTray(fTarget1,false);
+                        LogHelper.AddWCS_EXCEPTION($"{dev.Entity.CODE}强制排出 ,原因:{res.ResMessage}");
                     }
                     dev.Data.FinishedTask = 0;
                 });