public bool IsValidCustomFieldIdList(AbstractJobIndexId jobIndexId, IList <CustomFieldTypeId> customFieldTypeIds) { var jobIndex = (JobIndex)jobIndexRep.GetById(jobIndexId); var customFieldList = customFieldRep.Find(customFieldTypeIds); return(jobIndex.IsValidCustomFields(customFieldList)); }
public AbstractJobIndex GetJobIndexById(AbstractJobIndexId jobIndexId) { using (var tr = new TransactionScope()) { var res = jobIndexRep.GetById(jobIndexId); tr.Complete(); return(res); } }
public AbstractIndex GetAbstarctJobIndexById(long id) { var jobIndex = jobIndexRep.GetById(new AbstractJobIndexId(id)); var abstractIndexDto = jobIndexMapper.MapToModel(jobIndex); if (abstractIndexDto is JobIndexDTO) { var customFieldList = customFieldRep.GetAllCustomField(new AbstractJobIndexId(id)); ((JobIndexDTO)abstractIndexDto).CustomFields = customFieldList.Select(c => customFieldDtoMapper.MapToModel(c)).ToList(); } return(abstractIndexDto); }
public InquiryFormDTO GetInquiryForm(long periodId, long inquirerJobPositionId, string inquirerEmployeeNo, string inquirySubjectEmployeeNo, long jobPositionId) { List <InquiryJobIndexPoint> inquryJobIndexPoints = inquiryService.GetAllInquiryJobIndexPointBy(new JobPositionInquiryConfigurationItemId( new JobPositionId(new PeriodId(periodId), new SharedJobPositionId(inquirerJobPositionId)), new EmployeeId(inquirerEmployeeNo, new PeriodId(periodId)), new JobPositionId(new PeriodId(periodId), new SharedJobPositionId(jobPositionId)), new EmployeeId(inquirySubjectEmployeeNo, new PeriodId(periodId)))); // TODO:(LOW)Mapper and Domain Report Needed var inquiryForm = new InquiryFormDTO { InquirerEmployeeNo = inquirerEmployeeNo, InquirerJobPositionId = inquirerJobPositionId, JobPositionId = jobPositionId, PeriodId = periodId, InquirySubjectEmployeeNo = inquirySubjectEmployeeNo, }; var inquiryJobIndexValueList = new List <JobIndexValueDTO>(); foreach (var inquiryJobIndexPoint in inquryJobIndexPoints) { var abstractJobIndex = jobIndexRep.GetById(inquiryJobIndexPoint.JobIndexId); var jobIndex = abstractJobIndex as JobIndex; if (jobIndex != null && jobIndex.IsInquireable) { inquiryJobIndexValueList.Add(new JobIndexValueDTO { Id = inquiryJobIndexPoint.Id.Id, IndexValue = inquiryJobIndexPoint.JobIndexValue, JobIndexId = inquiryJobIndexPoint.JobIndexId.Id, JobIndexName = (jobIndex).Name }); } } inquiryForm.JobIndexValueList = inquiryJobIndexValueList; return(inquiryForm); }
public AbstractIndexInPeriodDTO GetAbstarctJobIndexById(long id) { var abstractJobIndex = jobIndexRep.GetById(new AbstractJobIndexId(id)); var abstractIndexDto = jobIndexMapper.MapToModel(abstractJobIndex); if (abstractIndexDto is JobIndexInPeriodDTO) { var jobIndex = (JobIndex)abstractJobIndex; var sharedJobIndexCustomFlds = jobIndexService.GetSharedJobIndexCustomField(jobIndex.SharedJobIndexId, jobIndex.CustomFieldValues.Keys.ToList()); foreach (var customFld in sharedJobIndexCustomFlds) { var abstractDescCustomFld = abstractCustomFieldDtoMapper.MapToModel(customFld); abstractDescCustomFld.Value = jobIndex.CustomFieldValues[customFld.Id]; ((JobIndexInPeriodDTO)abstractIndexDto).CustomFields.Add(abstractDescCustomFld); } } return(abstractIndexDto); }
private void create(JobPositionInquiryConfigurationItem configurationItem) { var job = jobRep.GetById(configurationItem.JobPosition.JobId); foreach (var jobJobIndex in job.JobIndexList) { var jobIndex = jobIndexRep.GetById(jobJobIndex.JobIndexId); if ((jobIndex as JobIndex).IsInquireable) { if ((configurationItem.InquirerJobPositionLevel == JobPositionLevel.Childs && jobJobIndex.ShowforLowLevel) || (configurationItem.InquirerJobPositionLevel == JobPositionLevel.Parents && jobJobIndex.ShowforTopLevel) || (configurationItem.InquirerJobPositionLevel == JobPositionLevel.Siblings && jobJobIndex.ShowforSameLevel) || configurationItem.InquirerJobPositionLevel == JobPositionLevel.None) { #if (DEBUG) var pointList = new List <string>() { "20", "40", "60", "80", "100" }; var selector = new Random(); var index = selector.Next(pointList.Count); inquiryJobIndexPointService.Add(configurationItem, jobIndex as JobIndex, pointList[index]); #else inquiryJobIndexPointService.Add(configurationItem, jobIndex as JobIndex, string.Empty); #endif } } } }
public void Create(JobPositionInquiryConfigurationItemId configurationItemId) { var jobPosition = jobPositionRep.GetBy(configurationItemId.InquirySubjectJobPositionId); var itm = jobPosition.ConfigurationItemList.Single(c => c.Id.Equals(configurationItemId)); var job = jobRep.GetById(jobPosition.JobId); foreach (var jobIndexId in job.JobIndexList) { //todo: check for configuration var jobIndex = jobIndexRep.GetById(jobIndexId.JobIndexId); if ((jobIndex as JobIndex).IsInquireable) { var id = inquiryJobIndexPointRep.GetNextId(); #if (DEBUG) var pointList = new List <string>() { "20", "40", "60", "80", "100" }; var selector = new Random(); var index = selector.Next(pointList.Count); var inquiryIndexPoint = new InquiryJobIndexPoint(new InquiryJobIndexPointId(id), itm, jobIndex as JobIndex, pointList[index]); #else var inquiryIndexPoint = new InquiryJobIndexPoint(new InquiryJobIndexPointId(id), itm, jobIndex as JobIndex, string.Empty); #endif publisher.Publish(new InquiryJobIndexPointCreated(inquiryIndexPoint)); } } }
public EmployeeResultDTO GetEmployeeResultInPeriod(long periodIdParam, string employeeNo) { var periodId = new PeriodId(periodIdParam); var period = periodRep.GetById(periodId); var employee = employeeRepository.GetBy(new EmployeeId(employeeNo, periodId)); if (employee == null) { throw new Exception("شماره پرسنلی شما در سیستم موجود نمی باشد"); } var employeeJobPositionIds = employee.JobPositions.Select(j => j.JobPositionId).ToList(); var employeeUnitIds = new List <UnitId>(); var jobPositionNames = string.Empty; var unitNames = string.Empty; var unitRootNames = string.Empty; var calculation = calculationRepository.GetDeterministicCalculation(period); foreach (var jobPositionId in employeeJobPositionIds) { var jobPosition = jobPositionRepository.GetBy(jobPositionId); jobPositionNames += jobPosition.Name; if (employeeJobPositionIds.Count() > 1) { jobPositionNames += " - "; } employeeUnitIds.Add(jobPosition.UnitId); } foreach (var unitId in employeeUnitIds) { var unit = unitRepository.GetBy(unitId); unitNames += unit.Name; if (employeeUnitIds.Count > 1) { unitNames += " - "; } unitRootNames += unit.Parent.Name; if (employeeUnitIds.Count > 1) { unitRootNames += " - "; } } //var finalUnitPoint =jobIndexPointRepository.GetFinalUnitPoint(calculation.Id, employee.Id); var res = new EmployeeResultDTO { PeriodName = period.Name, PeriodTimeLine = "از تاریخ " + PDateHelper.GregorianToHijri(period.StartDate, false) + " تا تاریخ " + PDateHelper.GregorianToHijri(period.EndDate.Date, false), EmployeeFullName = employee.FullName, EmployeeNo = employeeNo, EmployeeJobPositionName = jobPositionNames, TotalPoint = employee.FinalPoint.ToString(CultureInfo.InvariantCulture), EmployeeUnitName = unitNames, EmployeeUnitRootName = unitRootNames, //TotalUnitPoint =finalUnitPoint==null?(0).ToString(): finalUnitPoint.Value.ToString(CultureInfo.InvariantCulture), JobIndexValues = new List <JobIndexValueDTO>() }; var employeeIndexPoints = jobIndexPointRepository.GetBy(calculation.Id, employee.Id); foreach (var indexPoint in employeeIndexPoints) { var jobIndex = (JobIndex)jobIndexRepository.GetById(indexPoint.JobIndexId); res.JobIndexValues.Add(new JobIndexValueDTO { JobIndexName = jobIndex.Name, IndexValue = indexPoint.Value.ToString() }); } return(res); //Find<EmployeePoint>( // jp => // jp.Name == "finalunitPoint" && jp.CalculationId == calculation.Id && // jp.EmployeeId == employee.Id,fs); //var jobpositions=jobPositionRepository. }