private void UpdateRoleAndRoleAction() { IsBusy = true; ActionAndRoleAnctionEntityDictionary.Clear(); ActionAndRoleActionEntityList.Clear(); foreach (ActionEntity actionEntity in ActionEntityList) { ActionAndRoleActionEntity actionAndRoleActionEntity = new ActionAndRoleActionEntity(); actionAndRoleActionEntity.ActionEntity = actionEntity; actionAndRoleActionEntity.SystemManageDomainContext = systemManageDomainContext; ActionAndRoleAnctionEntityDictionary.Add(actionAndRoleActionEntity.ActionEntity.ActionID, actionAndRoleActionEntity); } foreach (KeyValuePair <int, ActionAndRoleActionEntity> actionAndRoleActionEntityPair in ActionAndRoleAnctionEntityDictionary) { int supperActionID = actionAndRoleActionEntityPair.Value.ActionEntity.SupperActionID; if (supperActionID != 0) { ActionAndRoleActionEntity supperActionAndRoleActionEntity; if (ActionAndRoleAnctionEntityDictionary.TryGetValue(supperActionID, out supperActionAndRoleActionEntity)) { AddRoleAndRoleAction(supperActionAndRoleActionEntity, actionAndRoleActionEntityPair.Value); } } } }
private void AddRoleAndRoleAction(ActionAndRoleActionEntity supperActionAndRoleActionEntity, ActionAndRoleActionEntity actionAndRoleActionEntity) { if (supperActionAndRoleActionEntity.ChildList == null) { supperActionAndRoleActionEntity.ChildList = new ObservableCollection <ActionAndRoleActionEntity>(); } supperActionAndRoleActionEntity.ChildList.Add(actionAndRoleActionEntity); actionAndRoleActionEntity.ParentActionAndRoleActionEntity = supperActionAndRoleActionEntity; }
public RoleRightManagerViewModel() { ActionEntityList = new ObservableCollection <ActionEntity>(); RoleEntityList = new ObservableCollection <RoleEntity>(); ActionAndRoleActionEntityList = new ObservableCollection <ActionAndRoleActionEntity>(); ActionAndRoleAnctionEntityDictionary = new Dictionary <int, ActionAndRoleActionEntity>(); RootActionAndRoleActionEntity = new ActionAndRoleActionEntity(); RootActionAndRoleActionEntity.ChildList = new ObservableCollection <ActionAndRoleActionEntity>(); OnSave = new DelegateCommand(OnSaveCommand, CanSave); }