Explorar o código

设备状态监控,重置缓存

zhuhao %!s(int64=2) %!d(string=hai) anos
pai
achega
9e3a98329b

+ 5 - 1
IMCS_CCS/Service/IEquipmentMonitorService.cs

@@ -18,6 +18,10 @@ namespace IMCS.CCS.Services
 
         //更新
         Task<bool> Update(EquipmentMonitor vo);
- 
+
+        //添加或修改,放入缓存
+        Task<bool> UpdateAndCache(List<EquipmentMonitor> list);
+
+
     }
 }

+ 22 - 3
IMCS_CCS/Service/Impl/EquipmentMonitorService .cs

@@ -1,5 +1,7 @@
-using IMCS.CCS.Entitys;
+using IMCS.CCS.Common.Redis;
+using IMCS.CCS.Entitys;
 using IMCS.CCS.Repository;
+using Newtonsoft.Json;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -11,8 +13,11 @@ namespace IMCS.CCS.Services
     {
         private IEquipmentMonitorRepository _repository;
 
-        public EquipmentMonitorService(IEquipmentMonitorRepository repository) {
+        private IRedisService _redisService;
+
+        public EquipmentMonitorService(IEquipmentMonitorRepository repository, IRedisService redisService) {
             _repository = repository;
+            _redisService = redisService;
         }
         public async Task<List<EquipmentMonitor>> GetList()
         {
@@ -35,6 +40,20 @@ namespace IMCS.CCS.Services
         {
             return await _repository.Update(vo);
         }
- 
+
+        //添加或修改,放入缓存
+        public async Task<bool> UpdateAndCache(List<EquipmentMonitor> list)
+        {
+            foreach(EquipmentMonitor changeEquipment in list)
+            {
+                await _repository.Update(changeEquipment);
+            } 
+
+            string redis_key = "IMCS_CCS:MonitorEquipmentStatusJob";
+            List<EquipmentMonitor> devices = await _repository.GetList();
+            await _redisService.Database.StringSetAsync(redis_key, JsonConvert.SerializeObject(devices));
+            return true;
+        }
+
     }
 }

+ 1 - 1
IMCS_CCS/Service/Impl/HttpRequestService.cs

@@ -914,7 +914,7 @@ namespace IMCS.CCS.Services
                     if (!ConnectionResult.IsSuccess)
                     {
                         s7.ConnectClose();
-                        Log.Instance.WriteLogAdd(ActionTypeEnum.StartNCProgram + "启动程序异常===>>" + "PLC连接不上" + JsonConvert.SerializeObject(req),
+                        Log.Instance.WriteLogAdd(ActionTypeEnum.StartNCProgram + "写入编号异常===>>" + "PLC连接不上" + JsonConvert.SerializeObject(req),
                         EnumHelper.GetDescription(ActionTypeEnum.UploadFile));
                         responseData.result = "false";
                         return responseData;

+ 4 - 2
IMCS_CCS/Service/Impl/TaskJobService.cs

@@ -1400,9 +1400,11 @@ namespace IMCS.CCS.Service.Impl
                             }
                         }
                         productionStatusList.Add(productionStatus);
-                        await _equipmentMonitorService.Update(changeEquipment);
+                       
                     }
-                    await _redisService.Database.StringSetAsync(redis_key, JsonConvert.SerializeObject(equipmentMonitors));
+                    //修改并重置缓存
+                    await _equipmentMonitorService.UpdateAndCache(equipmentMonitors);
+                    //await _redisService.Database.StringSetAsync(redis_key, JsonConvert.SerializeObject(equipmentMonitors));
 
 
                     //主动推送同步状态数据接口