/// <summary> ///添加安装位置 /// </summary> /// <param name="PositionRequest"></param> /// <returns></returns> public BasicResponse AddPosition(PositionAddRequest PositionRequest) { BasicResponse Result = new BasicResponse(); Jc_WzInfo item = PositionRequest.PositionInfo; Jc_WzInfo olditem = null; PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest(); positionCacheRequest.PositionId = item.ID; var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest); olditem = result.Data; //增加重复判断 if (result.Data != null) { //缓存中存在此测点 Result.Code = 1; Result.Message = "当前添加的安装位置已存在!"; return(Result); } //保存数据库 var _jc_Wz = ObjectConverter.Copy <Jc_WzInfo, Jc_WzModel>(PositionRequest.PositionInfo); var resultjc_Wz = _Repository.AddPosition(_jc_Wz); //保存缓存 PositionCacheAddRequest AddPositionCacheRequest = new PositionCacheAddRequest(); AddPositionCacheRequest.PositionInfo = item; _PositionCacheService.AddPositionCache(AddPositionCacheRequest); return(Result); }
public BasicResponse DeletePosition(PositionDeleteRequest PositionRequest) { BasicResponse Result = new BasicResponse(); Jc_WzInfo item = new Jc_WzInfo(); PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest(); positionCacheRequest.PositionId = PositionRequest.Id; var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest); item = result.Data; //增加判断 if (result.Data == null) { //缓存中存在此测点 Result.Code = 1; Result.Message = "当前删除的安装位置不存在!"; return(Result); } //数据库操作 _Repository.DeletePosition(item.WzID); //保存缓存 PositionCacheDeleteRequest positionDeleteCacheRequest = new PositionCacheDeleteRequest(); positionDeleteCacheRequest.PositionInfo = item; _PositionCacheService.DeletePositionCache(positionDeleteCacheRequest); return(Result); }
/// <summary> /// 安装位置更新 /// </summary> /// <param name="PositionRequest"></param> /// <returns></returns> public BasicResponse UpdatePosition(PositionUpdateRequest PositionRequest) { BasicResponse Result = new BasicResponse(); Jc_WzInfo item = PositionRequest.PositionInfo; PositionCacheGetByKeyRequest positionCacheRequest = new PositionCacheGetByKeyRequest(); positionCacheRequest.PositionId = item.WzID; var result = _PositionCacheService.GetPositionCacheByKey(positionCacheRequest); //增加判断 if (result.Data == null) { //缓存中存在此测点 Result.Code = 1; Result.Message = "当前更新的安装位置不存在!"; return(Result); } //保存数据库 var _jc_Wz = ObjectConverter.Copy <Jc_WzInfo, Jc_WzModel>(PositionRequest.PositionInfo); _Repository.UpdatePosition(_jc_Wz); //保存缓存 PositionCacheUpdateRequest UpdatePositionCacheRequest = new PositionCacheUpdateRequest(); UpdatePositionCacheRequest.PositionInfo = item; _PositionCacheService.UpdatePositionCache(UpdatePositionCacheRequest); return(Result); }
/// <summary> /// 批量添加 /// </summary> /// <param name="PositionRequest"></param> /// <returns></returns> public BasicResponse AddPositions(PositionsRequest PositionRequest) { BasicResponse Result = new BasicResponse(); List <Jc_WzInfo> items = PositionRequest.PositionsInfo; List <Jc_WzInfo> PositionCaches = new List <Jc_WzInfo>(); Jc_WzInfo olditem = null; PositionCacheGetAllRequest positionCacheRequest = new PositionCacheGetAllRequest(); var result = _PositionCacheService.GetAllPositongCache(positionCacheRequest); PositionCaches = result.Data; foreach (Jc_WzInfo item in items) { olditem = PositionCaches.Find(a => a.WzID == item.WzID); //增加重复判断 if (result.Data != null) { //缓存中存在此测点 Result.Code = 1; Result.Message = "当前添加的安装位置已存在!"; return(Result); } } TransactionsManager.BeginTransaction(() => { foreach (Jc_WzInfo item in items) { //保存数据库 var _jc_Wz = ObjectConverter.Copy <Jc_WzInfo, Jc_WzModel>(item); var resultjc_Wz = _Repository.AddPosition(_jc_Wz); } //保存缓存 PositionCacheBatchAddRequest BatchAddPositionCacheRequest = new PositionCacheBatchAddRequest(); BatchAddPositionCacheRequest.PositionInfos = items; _PositionCacheService.BatchAddPositionCache(BatchAddPositionCacheRequest); }); return(Result); }
/// <summary> /// 获取位置ID,如果不存在则添加位置 /// </summary> /// <param name="psition"></param> /// <returns></returns> private string GetPositionId(string position) { if (string.IsNullOrEmpty(position)) { return("0"); } string wzid = string.Empty; var positioninfo = _positionCacheService.GetPositionCache(new PositionCacheGetByConditionRequest { Predicate = w => w.Wz == position }).Data.FirstOrDefault(); if (positioninfo == null) { Jc_WzInfo wzinfo = new Jc_WzInfo(); wzinfo.ID = IdHelper.CreateLongId().ToString(); var maxid = _positionService.GetMaxPositionId().Data; wzid = (maxid + 1).ToString(); wzinfo.WzID = (maxid + 1).ToString(); //var id = IdHelper.CreateLongId().ToString(); //wzid = id; //wzinfo.WzID = id; wzinfo.Wz = position; wzinfo.CreateTime = DateTime.Now; _positionService.AddPosition(new Request.Position.PositionAddRequest { PositionInfo = wzinfo }); } else { wzid = positioninfo.WzID; } return(wzid); }
private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { if (!WZverify()) { return; } Jc_WzInfo tempWZ = new Jc_WzInfo(); tempWZ.WzID = CtxbWZID.Text; tempWZ.Wz = CtxbWZNAME.Text; if (null == _WZDTO) { //增加安装位置重复检测 20170908 Jc_WzInfo tempWz = null; tempWz = Model.WZServiceModel.QueryWZbyWZCache(CtxbWZNAME.Text); if (null != tempWz) { XtraMessageBox.Show("当前添加的安装位置已经存在", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } //新增 tempWZ.ID = Basic.Framework.Common.IdHelper.CreateLongId().ToString(); tempWZ.CreateTime = DateTime.Now;// 20170331 tempWZ.InfoState = InfoState.AddNew; try { Model.WZServiceModel.AddJC_WZCache(tempWZ); } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } else { //更新 if (_WZDTO != tempWZ) { tempWZ.ID = _WZDTO.ID; tempWZ.CreateTime = _WZDTO.CreateTime; tempWZ.InfoState = InfoState.Modified; try { Model.WZServiceModel.UpdateJC_WZCache(tempWZ); } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } #region 更新Point和MAC List <Jc_DefInfo> tempPoints = Model.DEFServiceModel.QueryAllCache(); List <Jc_DefInfo> UpdatePoints = new List <Jc_DefInfo>(); if (null != tempPoints) { for (int i = 0; i < tempPoints.Count; i++) { if (tempPoints[i].Wzid == tempWZ.WzID) { tempPoints[i].Wz = tempWZ.Wz; tempPoints[i].InfoState = InfoState.Modified; UpdatePoints.Add(tempPoints[i]); } } if (UpdatePoints.Count > 0) { try { Model.DEFServiceModel.UpdateDEFsCache(UpdatePoints);//将相应的测点告知服务端 } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } } List <Jc_MacInfo> tempMACs = Model.MACServiceModel.QueryAllCache(); List <Jc_MacInfo> UpdateMACs = new List <Jc_MacInfo>(); if (null != tempMACs) { for (int i = 0; i < tempMACs.Count; i++) { if (tempMACs[i].Wzid == tempWZ.WzID) { tempMACs[i].Wz = tempWZ.Wz; tempMACs[i].InfoState = InfoState.Modified; UpdateMACs.Add(tempMACs[i]); } } if (UpdateMACs.Count > 0) { try { Model.MACServiceModel.UpdateMACsCache(UpdateMACs);//将相应的MAC告知服务端 } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } } #endregion } } //加延时 20170721 Thread.Sleep(1000); this.Close(); } catch (Exception ex) { LogHelper.Error(ex.ToString()); } }