public Business(Models.OrgUnit orgUnit, bool forOwners = false) { this.orgUnit = orgUnit; var currentOrgUnit = orgUnit; var orgUnitStructur = new List <OrgUnit>(); orgUnitStructur.Add(orgUnit); while (currentOrgUnit.Parent != null) { orgUnitStructur.Add(currentOrgUnit.Parent); currentOrgUnit = currentOrgUnit.Parent; } orgUnitStructur.Reverse(); this.orgUnitStructur = orgUnitStructur; if (forOwners) { var changeOwner = orgUnitStructur.Last(); changeOwner.HeadOfOrgUnit = new Models.Person(); } }
public Business(Models.OrgUnit orgUnit, bool forOwners = false) { this.orgUnit = orgUnit; var currentOrgUnit = orgUnit; var orgUnitStructur = new List <OrgUnit> (); orgUnitStructur.Add(orgUnit); do { orgUnitStructur.Add(currentOrgUnit.Parent); currentOrgUnit = currentOrgUnit.Parent; } while (currentOrgUnit != null && currentOrgUnit.Parent != null); orgUnitStructur.Reverse(); this.orgUnitStructur = orgUnitStructur; if (forOwners) { var newHeadOf = orgUnitStructur.ElementAt(orgUnitStructur.Count - 2).HeadOfOrgUnit; var changeOwner = orgUnitStructur.Last(); changeOwner.HeadOfOrgUnit = newHeadOf; changeOwner.HeadOfOrgUnitId = newHeadOf?.Id; } }