public List <AlarmStatusDto> GettestState(PagedAndSortedResultRequestDto input, string condity) { ConditionAlarmStatusDto conditionAlarmStatus = new ConditionAlarmStatusDto(); conditionAlarmStatus.TreatmentState = 1; PagedSortedRequestDto resultRequestDto = new PagedSortedRequestDto() { MaxResultCount = 200000, SkipCount = 0, Sorting = "Id" }; var data = _alarmStatusAppService.GetListAsync(input).Result.Items; var bookstr = Newtonsoft.Json.JsonConvert.SerializeObject(data); var bt = Encoding.UTF8.GetBytes(bookstr); var options = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromDays(20)); _cache.Set("bookstr", bt, options); var DD = _cache.Get(condity); var FF = Encoding.UTF8.GetString(DD); var DDF2G = Newtonsoft.Json.JsonConvert.DeserializeObject <List <AlarmStatusDto> >(FF); return(DDF2G); }
public PagedResultDto <AlarmStatusDto> GetAlarmInfoStatus(PagedAndSortedResultRequestDto input01) { PagedAndSortedResultRequestDto input = new PagedAndSortedResultRequestDto() { MaxResultCount = 1000, SkipCount = 0, Sorting = "id" }; var AlarmData = _alarmHostAppService.GetListAsync(input).Result.Items; var AlarmStatusData = _alarmStatusAppService.GetListAsync(input).Result.Items; List <AlarmStatusDto> listalarmStatus = new List <AlarmStatusDto>(); foreach (var item in AlarmData) { string url = $"{dvrurl}/api/AlarmInfo/GetAlarmInfo?DVR_IP={item.AlarmHostIP}&DVR_Name={item.User}&DVR_PassWord={item.Password}"; var handler = new HttpClientHandler(); var response = _httpClient.GetAsync(url).Result; var refStatus = response.Content.ReadAsStringAsync().Result; var refStatusData = Newtonsoft.Json.JsonConvert.DeserializeObject <List <AlarmStatusDto> >(refStatus); var HostAlarmStatusData = AlarmStatusData.Where(u => u.AlarmHostIP == item.AlarmHostIP); for (int i = 0; i < item.AlarmChannelCount; i++) { AlarmStatusDto refalarmStatusDto = refStatusData.Where(u => u.Channel_ID == i).FirstOrDefault(); var alarmdata3 = HostAlarmStatusData.Where(u => u.Channel_ID == i).FirstOrDefault(); AlarmStatusDto alarmStatusDto = new AlarmStatusDto(); alarmStatusDto.Channel_ID = i; alarmStatusDto.Alarm_ID = item.AlarmHostIP; alarmStatusDto.Alarm_ID = refalarmStatusDto.Alarm_ID; alarmStatusDto.IsAlarm = refalarmStatusDto.IsAlarm; alarmStatusDto.IsAnomaly = refalarmStatusDto.IsAnomaly; alarmStatusDto.IsDefence = refalarmStatusDto.IsDefence; alarmStatusDto.LastModificationTime = refalarmStatusDto.LastModificationTime; if (alarmdata3 != null) { alarmStatusDto.IsOpenDoor = alarmdata3.IsOpenDoor; } listalarmStatus.Add(alarmStatusDto); } } // var listrequst = listalarmStatus.PageBy(input01.SkipCount, input01.MaxResultCount).ToList(); return(new PagedResultDto <AlarmStatusDto>() { Items = listalarmStatus, TotalCount = listalarmStatus.Count }); }