|
- using Microsoft.Extensions.Logging;
- using Newtonsoft.Json.Linq;
- using Newtonsoft.Json;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
-
- namespace HealthMonitor.Service.Cache
- {
- public class DeviceCacheManager
- {
- private readonly ILogger<DeviceCacheManager> _logger;
- private const string CACHE_KEY_GPSDEVICE_WATCH_CONFIG = "#GPSDEVICE_WATCH_CONFIG_HASH";
-
-
- public DeviceCacheManager(ILogger<DeviceCacheManager> logger)
- {
- _logger = logger;
- }
-
-
- /// <summary>
- ///
- /// </summary>
- /// <param name="sn"></param>
- /// <param name="bizCode">
- /// 业务码
- /// 0067 胎心启动配置
- /// </param>
- /// <returns></returns>
- public async Task<JObject?> GetGpsDeviceWatchConfigCacheObjectBySerialNoAsync(string sn, string bizCode)
- {
- if (string.IsNullOrWhiteSpace(sn)) return null;
-
- try
- {
- var config = await RedisHelperDb7.HGetAsync(CACHE_KEY_GPSDEVICE_WATCH_CONFIG, $"{sn}_{bizCode}").ConfigureAwait(false);
-
- if (config == null) return null;
- return (JObject)JsonConvert.DeserializeObject(config)!;
- }
- catch (Exception ex)
- {
- _logger.LogWarning($"Redis DB7发生异常:{ex.Message}, {ex.StackTrace}");
- }
-
- return null;
- }
- }
- }
|