using IMCS.CCS.Common.Redis; using IMCS.CCS.Entitys; using IMCS.CCS.Repository; using IMCS_CCS.Model; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace IMCS.CCS.Services { public class EquipmentMonitorService : IEquipmentMonitorService { private IEquipmentMonitorRepository _repository; private IRedisService _redisService; public EquipmentMonitorService(IEquipmentMonitorRepository repository, IRedisService redisService) { _repository = repository; _redisService = redisService; } public async Task> GetList() { return await _repository.GetList(); } //查询详情 public async Task GetById(long id) { return await _repository.GetById(id); } //添加 public async Task Create(EquipmentMonitor vo) { return await _repository.Create(vo); } //更新 public async Task Update(EquipmentMonitor vo) { return await _repository.Update(vo); } //添加或修改,放入缓存 public async Task UpdateAndCache(List list) { foreach(EquipmentMonitor changeEquipment in list) { await _repository.Update(changeEquipment); } string redis_key = "IMCS_CCS:" + RedisKeyEnum.MonitorEquipmentStatusJob; List equipmentMonitors = await _repository.GetList(); await _redisService.Database.StringSetAsync(redis_key, JsonConvert.SerializeObject(equipmentMonitors)); return true; } } }