コード例 #1
0
        /// <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);
            }
        }
コード例 #2
0
        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);
        }