/// <summary> /// Initializes a new instance of the <see cref="ProductVM"/> class from the model. /// </summary> /// <param name="entity">The model.</param> /// <param name="access"></param> /// <param name="dataService"></param> public OrganizationChartPositionVM(OrganizationChart_Position entity, AccessType access, OrganizationChartPositionDataService dataService):base(access) { _model = entity; InitializeData(dataService); OrganizationChartId = entity.OrganizationChart.Id; PositionId = entity.Position.Id; ParentId = entity.Parent == null? -1: entity.Parent.Id; Title = entity.Position.Name; foreach (var child in entity.Children) { ChildNodes.Add(new OrganizationChartPositionVM(child, Access,dataService)); } }
private void FixupParent(OrganizationChart_Position previousValue) { if (previousValue != null && previousValue.Children.Contains(this)) { previousValue.Children.Remove(this); } if (Parent != null) { if (!Parent.Children.Contains(this)) { Parent.Children.Add(this); } } }
/// <summary> /// Initializes a new instance of the <see cref="ProductGroupVM"/> class initialized with default values. /// </summary> public OrganizationChartPositionVM(AccessType access, OrganizationChartPositionDataService dataService):base(access) { InitializeData(dataService); _model = new OrganizationChart_Position(); }