/// <summary> /// 编辑一个菜单 /// </summary> public bool Edit(SMMENUTB entity) { /* * 不操作 原有 现有 * 增加 原没 现有 * 删除 原有 现没 */ var editEntity = LoadEntities(m => m.ID == entity.ID).FirstOrDefault(); if (editEntity == null) { return(false); } //层级 var result = LoadEntities(x => x.ID == entity.PARENTID).Select(x => x.MENULEVEL).FirstOrDefault(); int level = result == null ? 1 : (int)result + 1; editEntity.MENULEVEL = level; List <int> addSysOperationId = new List <int>(); List <int> deleteSysOperationId = new List <int>(); DataOfDiffrent.GetDiffrent(entity.SysOperationId.GetIdSort(), entity.SysOperationIdOld.GetIdSort(), ref addSysOperationId, ref deleteSysOperationId); if (addSysOperationId != null && addSysOperationId.Count() > 0) { foreach (var item in addSysOperationId) { SMFUNCTB sys = this.GetCurrentDbSession.ISMFUNCTBRepository.LoadEntities(x => x.FUNC_ID == item).FirstOrDefault(); //new SMFUNCTB { FUNC_ID = item }; editEntity.SMFUNCTB.Add(sys); } } if (deleteSysOperationId != null && deleteSysOperationId.Count() > 0) { List <SMFUNCTB> listEntity = new List <SMFUNCTB>(); foreach (var item in deleteSysOperationId) { SMFUNCTB sys = this.GetCurrentDbSession.ISMFUNCTBRepository.LoadEntities(x => x.FUNC_ID == item).FirstOrDefault(); //new SMFUNCTB { FUNC_ID = item }; listEntity.Add(sys); } foreach (SMFUNCTB item in listEntity) { editEntity.SMFUNCTB.Remove(item);//查询数据库 } } return(EditEntity(editEntity)); }
public bool Edit(SMROLETB model) { var entity = LoadEntities(r => r.ROLE_ID == model.ROLE_ID).FirstOrDefault(); entity.SysPersonId = model.SysPersonId; entity.SysPersonIdOld = model.SysPersonIdOld; entity.REMARK = model.REMARK; entity.ROLE_NAME = model.ROLE_NAME; entity.STATUS = model.STATUS; entity.UPDATE_TIME = DateTime.Now; entity.UPDATE_USER = model.UPDATE_USER; List <int> addSysPersonId = new List <int>(); List <int> deleteSysPersonId = new List <int>(); DataOfDiffrent.GetDiffrent(entity.SysPersonId.GetIdSort(), entity.SysPersonIdOld.GetIdSort(), ref addSysPersonId, ref deleteSysPersonId); if (addSysPersonId != null && addSysPersonId.Count() > 0) { foreach (var item in addSysPersonId) { SMUSERTB sys = this.GetCurrentDbSession.ISMUSERTBRepository.LoadEntities(u => u.USER_ID == item).FirstOrDefault(); entity.SMUSERTB2.Add(sys); } } if (deleteSysPersonId != null && deleteSysPersonId.Count() > 0) { List <SMUSERTB> listEntity = new List <SMUSERTB>(); foreach (var item in deleteSysPersonId) { SMUSERTB sys = this.GetCurrentDbSession.ISMUSERTBRepository.LoadEntities(u => u.USER_ID == item).FirstOrDefault(); listEntity.Add(sys); } foreach (SMUSERTB item in listEntity) { entity.SMUSERTB2.Remove(item);//查询数据库 } } return(EditEntity(entity)); }