Ejemplo n.º 1
0
        public SharedJobPosition GetSharedJobPosition(SharedJobPositionId sharedJobPositionId)
        {
            var jobPosition       = jobPositionService.GetBy(new PMSAdminModel.JobPositions.JobPositionId(sharedJobPositionId.Id));
            var sharedJobPosition = new SharedJobPosition(new SharedJobPositionId(jobPosition.Id.Id), jobPosition.Name, jobPosition.DictionaryName);

            return(sharedJobPosition);
        }
Ejemplo n.º 2
0
 public void RemoveJobPosition(PeriodId periodId, SharedJobPositionId sharedJobPositionId)
 {
     try{
         using (var tr = new TransactionScope())
         {
             var jobPosition = jobPositionRep.GetBy(new JobPositionId(periodId, sharedJobPositionId));
             jobPositionRep.DeleteJobPosition(jobPosition);
             tr.Complete();
         }
     }
     catch (Exception exp)
     {
         var res = jobPositionRep.TryConvertException(exp);
         if (res == null)
         {
             throw;
         }
         throw res;
     }
 }
Ejemplo n.º 3
0
        public JobPosition ModifyJobPosition(PeriodId periodId, SharedJobPositionId sharedJobPositionId,
                                             SharedJobPositionId parentSharedJobPositionId, JobId jobId, UnitId unitId)
        {
            using (var tr = new TransactionScope())
            {
                var period            = periodRep.GetById(periodId);
                var sharedJobPosition = pmsAdminService.GetSharedJobPosition(sharedJobPositionId);
                var job  = jobRepository.GetById(jobId);
                var unit = unitRep.GetBy(unitId);

                JobPosition parent = null;
                if (parentSharedJobPositionId != null)
                {
                    parent = jobPositionRep.GetBy(new JobPositionId(periodId, parentSharedJobPositionId));
                }

                var jobPosition = jobPositionRep.GetBy(new JobPositionId(periodId, sharedJobPositionId));
                jobPosition.Update(period, job, unit, parent);
                tr.Complete();
                return(jobPosition);
            }
        }
Ejemplo n.º 4
0
        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);

        }