/// <summary> /// 지정된 상위 부서 밑으로 부서를 추가합니다. 이때, 상위부서는 null이면 안됩니다. (최상위 부서는 <see cref="GetOrCreateDepartment"/> 메소드를 사용하세요) /// </summary> public Department CreateDepartmentOf(Department parent, string childCode) { parent.ShouldNotBeNull("parent"); childCode.ShouldNotBeWhiteSpace("childCode"); if(IsDebugEnabled) log.Debug("부서[{0}] 하위로 새로운 부서를 추가합니다. 추가할 부서 Id=[{1}] 입니다.", parent.Code, childCode); var child = new Department(parent.Company, childCode); child.SetParent(parent); child.UpdateNodePosition(); Repository<Department>.SaveOrUpdate(parent); return Repository<Department>.SaveOrUpdate(child); }