/// <summary> /// 结束R_PB报警 /// </summary> /// <param name="datastate"></param> /// <param name="timeNow"></param> /// <param name="prealInfo"></param> public static void EndR_PBInfo(PersonAlarmState datastate, DateTime timeNow, R_PrealInfo prealInfo) { R_PBCacheGetByConditonRequest request = new R_PBCacheGetByConditonRequest(); request.Predicate = a => a.Yid == prealInfo.Yid && a.Type == (int)datastate && (a.Endtime == null || a.Endtime < DateTime.Parse("2000-01-01")); var result = r_PBCacheService.GetR_PBCache(request); if (result.Data != null && result.IsSuccess) { List <R_PbInfo> pbItems = result.Data; pbItems.ForEach(a => { a.Endtime = timeNow; a.InfoState = InfoState.Modified; }); //更新数据库 DataToDbBatchAddRequest <R_PbInfo> request1 = new DataToDbBatchAddRequest <R_PbInfo>(); request1.Items = pbItems; r_PbService.AddItems(request1); //更新缓存 R_PBCacheBatchUpdateRequest request2 = new R_PBCacheBatchUpdateRequest(); request2.R_PBInfos = pbItems; r_PBCacheService.BatchUpdateR_PBCache(request2); } }
public BasicResponse <List <R_PbInfo> > GetR_PBCache(R_PBCacheGetByConditonRequest R_PBCacheRequest) { var result = R_PBCache.CahceInstance.Query(R_PBCacheRequest.Predicate); var R_PBCacheResponse = new BasicResponse <List <R_PbInfo> >(); R_PBCacheResponse.Data = result; return(R_PBCacheResponse); }