Browse Source

重量校验

1693994901 1 week ago
parent
commit
1143bd8bf3

+ 15 - 1
成品库/WCS.WorkEngineering/Systems/装箱区入库.cs

@@ -76,7 +76,21 @@ namespace WCS.WorkEngineering.Systems
                     //throw new KnownException($"[{obj.Entity.Code}]该任务绑定的托盘条码与实际扫描条码不一致,任务[{obj.Data2.TaskNumber}]排出到异常口", LogLevelEnum.High);
                     throw new KnownException($"[{obj.Entity.Code}]该任务绑定的托盘条码与实际扫描条码不一致,521任务号[{obj.Data2.TaskNumber}],条码值:[{bcr}]", LogLevelEnum.High);
                 }
-
+                if (taskInfo.BusType == "砝码出库" && taskInfo.Status == Entity.TaskStatus.ConveyorExecution)
+                {
+                    if (db.Queryable<WCS_TaskInfo>().Count(v => v.WorkBench == "8243" && taskInfo.BusType == "砝码出库") >= 1)
+                    {
+                        throw new KnownException($"8243已分配任务,请稍后", LogLevelEnum.High);
+                    }
+                    obj.Data.TaskNumber = taskInfo.ID;
+                    obj.Data.GoodsStart = obj.Entity.Code.ToShort();
+                    obj.Data.GoodsEnd = taskInfo.AddrNext.ToShort();    
+                    obj.Data.VoucherNo++;
+                    taskInfo.WorkBench = "8243";
+                    db.Updateable(taskInfo).ExecuteCommand();
+                    taskInfo.AddWCS_TASK_DTL(_db, obj.Entity.Code, "8243", $"已分配目标地址{taskInfo.WorkBench}");
+                    return;
+                }
                 conf = _db.Default.Ado.SqlQuery<string>("SELECT  scontent FROM [WMS_ZT_01CP].[dbo].[sys_config]  where  code = 'ForbidBoxStockIn'").First();
 
                 if (conf == "1")

+ 7 - 5
成品库/WCS.WorkEngineering/Systems/装箱区扫码.cs

@@ -147,21 +147,23 @@ namespace WCS.WorkEngineering.Systems
                         }
                         else if (taskInfo.Type == TaskType.OutDepot && taskInfo.BusType == "砝码出库")
                         {
+                            var weightBefore = taskInfo.Weight;
+                            var weightNow = (decimal)Math.Round(obj.Data4.Weight, 2);
                             //上抛重量信息并记录
-                            try { WmsApi.WcsUploadInfo(taskInfo.ID, (decimal)taskInfo.Weight, ""); }
+                            try { WmsApi.WcsUploadInfo(taskInfo.ID, weightNow, ""); }
                             catch (Exception ex) { throw new KnownException(ex.Message, LogLevelEnum.Mid); }
 
                             //把状态变更为入库任务并且需要从库前执行入库,固定分配至5巷道    砝码入库
-                            taskInfo.AddrNext = taskInfo.AddrTo; //TODO:目标地址改为库前入库相关路径
+                            taskInfo.AddrNext = "8243"; //TODO:目标地址改为库前入库相关路径
                             taskInfo.EditWho = "WCS";
                             taskInfo.EditTime = DateTime.Now;
-                            taskInfo.Weight = (float)Math.Round(obj.Data4.Weight, 2);
+                            taskInfo.Weight = (float)weightNow;
                             taskInfo.Type = TaskType.EnterDepot;
                             taskInfo.Status = Entity.TaskStatus.ConveyorExecution;
-                            task.BusType = "砝码出库";
+                            task.BusType = "砝码出库";                           
 
                             db.Updateable(taskInfo).ExecuteCommand();
-                            taskInfo.AddWCS_TASK_DTL(_db, obj.Entity.Code, taskInfo.AddrNext, $"8058重复扫码完成");
+                            taskInfo.AddWCS_TASK_DTL(_db, obj.Entity.Code, taskInfo.AddrNext, $"8058重复扫码完成,已称重,前{weightBefore}-后{weightNow}");
                             task = taskInfo;
                         }
                         else

+ 1 - 1
成品库/WCS.WorkEngineering/WorkStart.cs

@@ -241,7 +241,7 @@ namespace WCS.WorkEngineering
                 { DeviceFlags.扫码, new List<string>() {"8277"} },
                 { DeviceFlags.出库口, new List<string>() { "8271","8272", "8273", "8274", "8275" } },
                 { DeviceFlags.出货口, new List<string>() { "8263", "8257", "8269", /*"8278"*/} },
-                { DeviceFlags.码垛工位, new List<string>() {"8088", "8090","8092", "8094","8096","8098","8307" } }
+                { DeviceFlags.码垛工位, new List<string>() {"8088", "8090","8092", "8094","8096","8098","8307","8313" } }
         };
 
             devices.ForEach(item =>