Эх сурвалжийг харах

二级品入库二次写任务条件判断;ProtocolProxy修改

Administrator 3 жил өмнө
parent
commit
d3e1a19f3b

+ 16 - 16
Projects/永冠OPP/WCS.Service/ProtocolProxy.cs

@@ -94,7 +94,7 @@ namespace WCS.Service
         //static ConcurrentQueue<PackInfo> Packs = new ConcurrentQueue<PackInfo>();
         private static Dictionary<string, Playerback> Clients = new Dictionary<string, Playerback>();
 
-        private static RedisClient Redis;
+        //private static RedisClient Redis;
         public static RedisClient YG150Redis;
         public static RedisClient YGWMS150Redis;
         public static RedisClient YGWCS150Redis;
@@ -103,17 +103,17 @@ namespace WCS.Service
         {
             MessagePackSerializer.DefaultOptions = StandardResolver.Options.WithCompression(MessagePackCompression.Lz4Block);
             //Redis = new RedisClient("192.168.249.120,password=123456,database=11");
-            Redis = new RedisClient("212.64.66.35,database=10");
-            Redis.Serialize = obj =>
-            {
-                var bytes = MessagePackSerializer.Serialize(obj);
-                return bytes;
-            };
-            Redis.DeserializeRaw = (bytes, type) =>
-            {
-                var obj = MessagePackSerializer.Deserialize(type, bytes);
-                return obj;
-            };
+            //Redis = new RedisClient("212.64.66.35,database=10");
+            //Redis.Serialize = obj =>
+            //{
+            //    var bytes = MessagePackSerializer.Serialize(obj);
+            //    return bytes;
+            //};
+            //Redis.DeserializeRaw = (bytes, type) =>
+            //{
+            //    var obj = MessagePackSerializer.Deserialize(type, bytes);
+            //    return obj;
+            //};
 
             YG150Redis = new RedisClient("192.168.249.150,password=123456,database=1");
             YGWMS150Redis = new RedisClient("192.168.249.150,password=123456,database=0");
@@ -213,20 +213,20 @@ namespace WCS.Service
 
                 var sw = new Stopwatch();
                 sw.Start();
-                Redis.Set(nameof(DeviceDataPack), pack);
+                //Redis.Set(nameof(DeviceDataPack), pack);
                 YGWCS150Redis.Set(nameof(DeviceDataPack), pack);
                 sw.Stop();
                 Console.ForegroundColor = ConsoleColor.Blue;
                 Console.WriteLine($"Redis耗时{sw.ElapsedMilliseconds}");
                 Console.ResetColor();
 
-                Redis.RPush("Packs", pack);
+                //Redis.RPush("Packs", pack);
                 YGWCS150Redis.RPush("Packs", pack);
 
-                var len = Redis.LLen("Packs");
+                var len = YGWCS150Redis.LLen("Packs");
                 if (len > 150000)
                 {
-                    Redis.LTrim("Packs", 20000, len);
+                    //Redis.LTrim("Packs", 20000, len);
                     YGWCS150Redis.LTrim("Packs", 20000, len);
                 }
 

+ 5 - 0
Projects/永冠OPP/WCS.Service/Works/RGV/RGVWorks.cs

@@ -58,6 +58,11 @@ namespace WCS.Service.Works.RGV
                     {
                         if (gw1.Data2.Goodsend != gw2.Data2.Goodsend) throw new WarnException($"{obj.Entity.CODE}目标地址不一致");
                     }
+
+                    if (rgv.Data2.TaskID_1 > 10000 && rgv.Data2.TaskID_2 > 10000 && !rgv.Data2.Status_1.HasFlag(WCS.Entity.Protocol.RGVStatus.光电))
+                    {
+                        throw new WarnException($"RGV8有任务{rgv.Data2.TaskID_1}-{rgv.Data2.TaskID_2}但无光电,请检查设备状况");
+                    }
                     rgv.Data.TaskID_1 = gw1.Data2.Tasknum;
                     rgv.Data.TaskID_2 = gw2.Data2.Tasknum;
                     if (gw1.Data2.Tasknum != 0)

+ 1 - 1
Projects/永冠OPP/WCS.Service/Works/Station/涂布入库.cs

@@ -51,7 +51,7 @@ namespace WCS.Service.Works.Station
                             //同时最多只能有10个任务被确认
                             if (qty.Count() >= 10)
                             {
-                                InfoLog.INFO_WarnDb($"{stationDeviceGroup.Entity.CODE}正在执行的入库任务数量已达{qty.Count()},暂停入库", stationDeviceGroup.Entity.CODE, WCS_EXCEPTIONTYPE.逻辑异常);
+                                //InfoLog.INFO_WarnDb($"{stationDeviceGroup.Entity.CODE}正在执行的入库任务数量已达{qty.Count()},暂停入库", stationDeviceGroup.Entity.CODE, WCS_EXCEPTIONTYPE.逻辑异常);
                                 continue;
                             }