public long GetNumberOfConfiguredJobPosition(Period period) { var jobPositionIds = new List <JobPositionId>(); var serviceManager = jobPositionServiceFactory.Create(); try { var jpService = serviceManager.GetService(); jobPositionIds = jpService.GetAllJobPositionId(period); } finally { jobPositionServiceFactory.Release(serviceManager); } return(jobPositionIds.Count()); }
private void copyJobPosition(Period currentPeriod, JobPositionId sourceJobPositionId, SharedJobPositionId parentId) { var childs = new List<JobPosition>(); var serviceManager = jobPositionServiceFactory.Create(); JobPosition sourceJobPosition; try { var jobPositionService = serviceManager.GetService(); sourceJobPosition = jobPositionService.GetBy(sourceJobPositionId); var newUnitId = getUnitIdForCopy(currentPeriod, sourceJobPosition.UnitId); var newJobId = getJobIdForCopy(currentPeriod, sourceJobPosition.JobId); jobPositionService.AssignJobPosition(currentPeriod.Id, sourceJobPosition.SharedJobPosition.Id, parentId, newJobId, newUnitId); childs = jobPositionService.GetAllJobPositionByParentId(sourceJobPosition.Id); } finally { jobPositionServiceFactory.Release(serviceManager); } foreach (JobPosition u in childs) copyJobPosition(currentPeriod, u.Id, sourceJobPosition.SharedJobPosition.Id); }