示例#1
0
        public JobPositionEmployee(Employee employee, JobPosition jobPosition, DateTime fromDate, DateTime toDate, IDictionary <JobCustomField, string> employeeJobCustomFieldValues)
        {
            if (jobPosition == null)
            {
                throw new ArgumentNullException("jobPosition");
            }
            if (jobPosition.Id == null)
            {
                throw new ArgumentException("jobPosition.Id");
            }
            this.jobPosition = jobPosition;
            this.fromDate    = fromDate;
            this.toDate      = toDate.Date;

            if (employee == null || employee.Id == null)
            {
                throw new ArgumentNullException("employee");
            }
            this.employeeId = employee.Id;
            this.employeeJobCustomFieldValues = employeeJobCustomFieldValues.ToDictionary(e => e.Key.Id, e => e.Value);
        }
示例#2
0
        public JobPosition(Period period, SharedJobPosition sharedJobPosition, JobPosition parent, Job job, Unit unit)
        {
            if (period == null || period.Id == null)
            {
                throw new ArgumentNullException("period");
            }
            period.CheckAssigningJobPosition();
            if (sharedJobPosition == null || sharedJobPosition.Id == null)
            {
                throw new ArgumentNullException("sharedJobPosition");
            }
            if (job == null || job.Id == null)
            {
                throw new ArgumentNullException("job");
            }
            if (unit == null || unit.Id == null)
            {
                throw new ArgumentNullException("unit");
            }


            if (!period.Id.Equals(job.Id.PeriodId))
            {
                throw new JobPositionCompareException("JobPosition", "Job", "Period");
            }

            if (!period.Id.Equals(unit.Id.PeriodId))
            {
                throw new JobPositionCompareException("JobPosition", "Unit", "Period");
            }

            id = new JobPositionId(period.Id, sharedJobPosition.Id);
            this.sharedJobPosition = sharedJobPosition;
            this.parent            = parent;
            unitId = unit.Id;
            jobId  = job.Id;
        }
        public JobPositionInquiryConfigurationItem(JobPositionInquiryConfigurationItemId jobPositionInquiryConfigurationItemId,
                                                   JobPosition jobPosition,
                                                   bool isAutoGenerated,
                                                   bool isPermitted,
                                                   JobPositionLevel inquirerJobPositionLevel)
        {
            if (jobPositionInquiryConfigurationItemId == null)
            {
                throw new ArgumentNullException("jobPositionInquiryConfigurationItemId");
            }
            id = jobPositionInquiryConfigurationItemId;


            this.isAutoGenerated = isAutoGenerated;
            this.isPermitted     = isPermitted;

            if (jobPosition == null)
            {
                throw new ArgumentNullException("jobPosition");
            }
            this.jobPosition = jobPosition;

            this.inquirerJobPositionLevel = inquirerJobPositionLevel;
        }
示例#4
0
 public virtual bool SameIdentityAs(JobPosition other)
 {
     return((other != null) && Id.Equals(other.Id));
 }