public UserActionManagerViewModel() { ActionEntityList = new ObservableCollection<ActionEntity>(); ActionAndUserActionEntityList = new ObservableCollection<ActionAndUserActionEntity>(); ActionAndUserActionEntityDictionary = new Dictionary<int, ActionAndUserActionEntity>(); UserList = new List<UserEntity>(); RootActionAndUserActionEntity = new ActionAndUserActionEntity(); RootActionAndUserActionEntity.ChildList = new ObservableCollection<ActionAndUserActionEntity>(); OnSave = new DelegateCommand(OnSaveCommand, CanSave); }
private void UpdateRoleAndRoleAction() { ActionAndUserActionEntityDictionary.Clear(); ActionAndUserActionEntityList.Clear(); foreach (ActionEntity actionEntity in ActionEntityList) { ActionAndUserActionEntity actionAndUserActionEntity = new ActionAndUserActionEntity(); actionAndUserActionEntity.ActionEntity = actionEntity; actionAndUserActionEntity.DocumentManagerDomainContext = DocumentManagerDomainContext; ActionAndUserActionEntityDictionary.Add(actionAndUserActionEntity.ActionEntity.ActionId, actionAndUserActionEntity); } foreach (KeyValuePair<int, ActionAndUserActionEntity> actionAndUserActionEntityPair in ActionAndUserActionEntityDictionary) { int supperActionID = actionAndUserActionEntityPair.Value.ActionEntity.SupperActionId.GetValueOrDefault(-1); if (supperActionID != 0) { ActionAndUserActionEntity supperActionAndUserActionEntity; if (ActionAndUserActionEntityDictionary.TryGetValue(supperActionID, out supperActionAndUserActionEntity)) { AddRoleAndRoleAction(supperActionAndUserActionEntity, actionAndUserActionEntityPair.Value); } } } UpdateUserAction(); }
private void AddRoleAndRoleAction(ActionAndUserActionEntity supperActionAndUserActionEntity, ActionAndUserActionEntity actionAndUserActionEntity) { if (supperActionAndUserActionEntity.ChildList == null) { supperActionAndUserActionEntity.ChildList = new ObservableCollection<ActionAndUserActionEntity>(); } supperActionAndUserActionEntity.ChildList.Add(actionAndUserActionEntity); actionAndUserActionEntity.ParentActionAdnUserActionEntity = supperActionAndUserActionEntity; }