EquipmentMonitorService .cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using IMCS.CCS.Common.Redis;
  2. using IMCS.CCS.Entitys;
  3. using IMCS.CCS.Repository;
  4. using IMCS_CCS.Model;
  5. using Newtonsoft.Json;
  6. using System;
  7. using System.Collections.Generic;
  8. using System.Linq;
  9. using System.Threading.Tasks;
  10. namespace IMCS.CCS.Services
  11. {
  12. public class EquipmentMonitorService : IEquipmentMonitorService
  13. {
  14. private IEquipmentMonitorRepository _repository;
  15. private IRedisService _redisService;
  16. public EquipmentMonitorService(IEquipmentMonitorRepository repository, IRedisService redisService) {
  17. _repository = repository;
  18. _redisService = redisService;
  19. }
  20. public async Task<List<EquipmentMonitor>> GetList()
  21. {
  22. return await _repository.GetList();
  23. }
  24. //查询详情
  25. public async Task<EquipmentMonitor> GetById(long id)
  26. {
  27. return await _repository.GetById(id);
  28. }
  29. //添加
  30. public async Task<bool> Create(EquipmentMonitor vo)
  31. {
  32. return await _repository.Create(vo);
  33. }
  34. //更新
  35. public async Task<bool> Update(EquipmentMonitor vo)
  36. {
  37. return await _repository.Update(vo);
  38. }
  39. //添加或修改,放入缓存
  40. public async Task<bool> UpdateAndCache(List<EquipmentMonitor> list)
  41. {
  42. foreach(EquipmentMonitor changeEquipment in list)
  43. {
  44. await _repository.Update(changeEquipment);
  45. }
  46. string redis_key = "IMCS_CCS:" + RedisKeyEnum.MonitorEquipmentStatusJob;
  47. List<EquipmentMonitor> equipmentMonitors = await _repository.GetList();
  48. await _redisService.Database.StringSetAsync(redis_key, JsonConvert.SerializeObject(equipmentMonitors));
  49. return true;
  50. }
  51. }
  52. }