/// <summary> /// 批量更新 /// </summary> /// <param name="jc_Defrequest"></param> /// <returns></returns> public BasicResponse UpdatePointDefines(PointDefinesUpdateRequest PointDefineRequest) { BasicResponse Result = new BasicResponse(); List <Jc_DefInfo> items = PointDefineRequest.PointDefinesInfo; List <Jc_DefInfo> Jc_DefCaches = new List <Jc_DefInfo>(); //人员定位测点缓存 Jc_DefInfo olditem = null; B_DefCacheGetByConditionRequest bDefCacheRequest = new B_DefCacheGetByConditionRequest(); bDefCacheRequest.predicate = a => a.Activity == "1"; var result = _b_DefCacheService.Get(bDefCacheRequest); Jc_DefCaches = result.Data; foreach (Jc_DefInfo item in items) { olditem = Jc_DefCaches.Find(a => a.Point == item.Point && a.Activity == "1"); //增加重复判断 if (olditem == null) { //缓存中存在此测点 Result.Code = 1; Result.Message = "当前更新列表中的数据在数据库中不存在!"; return(Result); } } //向网关同步数据 List <Jc_DefInfo> SendItemList = items; var resultSync = SynchronousDataToGateway(SendItemList); if (!resultSync) { Result.Code = 1; Result.Message = "向网关同步数据失败!"; return(Result); } TransactionsManager.BeginTransaction(() => { foreach (Jc_DefInfo item in items) { olditem = Jc_DefCaches.Find(a => a.Point == item.Point && a.Activity == "1"); //保存数据库 var _jc_Def = ObjectConverter.Copy <Jc_DefInfo, B_DefModel>(item); _repository.UpdateDef(_jc_Def); //置下发初始化标记 PointInitializes(item, olditem); //更新缓存 UpdatePointDefineCacheByProperty(item); } }); return(Result); }
/// <summary> /// 批量更新测点定义缓存 /// </summary> /// <param name="PointDefineRequest"></param> /// <returns></returns> public BasicResponse UpdatePointDefinesCache(PointDefinesUpdateRequest PointDefineRequest) { BasicResponse Result = new BasicResponse(); List <Jc_DefInfo> items = PointDefineRequest.PointDefinesInfo; //批量更新到缓存 B_DefCacheBatchUpdateRequest UpdatePointDefineCacheRequest = new B_DefCacheBatchUpdateRequest(); UpdatePointDefineCacheRequest.B_DefInfos = items; _b_DefCacheService.BatchUpdate(UpdatePointDefineCacheRequest); return(Result); }
/// <summary> /// 批量更新 /// </summary> /// <param name="items"></param> /// <returns></returns> public static bool UpdateDEFsCache(List <Jc_DefInfo> items) { PointDefinesUpdateRequest PointDefineRequest = new PointDefinesUpdateRequest(); PointDefineRequest.PointDefinesInfo = items; var result = _PointDefineService.UpdatePointDefines(PointDefineRequest); if (result.IsSuccess == true) { return(true); } else { throw new Exception(result.Message); } }
public BasicResponse UpdatePointDefinesCache(PointDefinesUpdateRequest PointDefineRequest) { return(_PointDefineService.UpdatePointDefinesCache(PointDefineRequest)); }