예제 #1
0
 public TimeOffRequestRule(string ruleName, DTimeOffRequest timeOffRequest, IAssessor assessor, RuleType ruleType)
     : base(-2, timeOffRequest.employee_id, ruleName, null, assessor, ruleType, ConstraintType.TimeOffRequest, timeOffRequest)
 {
     this.Id = int.Parse(string.Format("{0}{1}{2}", timeOffRequest.employee_id, timeOffRequest.week, timeOffRequest.days[0]));
     this.Description = string.Format("Time off request by employee {0} for week {1} and days: {2}", timeOffRequest.employee_id, timeOffRequest.week, String.Join(",", timeOffRequest.days.ToArray()));
     this.TimeOffRequest = timeOffRequest;
 }
예제 #2
0
 public ShiftRule(int id, int employeeId, string ruleName, string desc, IAssessor assessor, RuleType ruleType, ConstraintType constraintType, object refObject)
 {
     this.Id = id;
     this.EmployeeId = employeeId;
     this.Name = ruleName;
     this.Assessor = assessor;
     this.Description = desc;
     this.ConstraintType = constraintType;
     this.RuleType = ruleType;
     this.Value = refObject;
 }
        protected override void Establish_context()
        {
            base.Establish_context();

            _timeOffRequest = MockTimeOffRequest();
            _weekToTest = MockWeekTotest(_timeOffRequest.week);
            _assessor = new EmployeeTimeOffAssessor(_timeOffRequest);
            _shiftRule = new TimeOffRequestRule("TIME_OFF_REQUEST", _timeOffRequest, _assessor, RuleType.SoftRule);
            _shiftRule.Enabled = true;
        }
 //public IAssessor Assessor { get; private set; }
 public MinEmployeesPerShiftRule(ShiftRuleDefinition ruleDefinition,  ShiftRuleValue shiftRuleValue, IAssessor assessor,  RuleType type)
     : base(shiftRuleValue.rule_id, shiftRuleValue.employee_id, ruleDefinition.value, ruleDefinition.description, 
     assessor, type, ConstraintType.ShiftRuleValue, shiftRuleValue.value)
 {
     this.ShiftRuleValue = shiftRuleValue;
 }
예제 #5
0
 public FeedbackRecord(IAssessor accessor, float timestamp)
     : base(accessor, timestamp)
 {
 }
        protected override void Establish_context()
        {
            base.Establish_context();

            _shift = new Shift();
            _shiftRuleDefinition = MockShiftRuleDefinition();
            _shiftRuleValue = MockShiftRuleValue();
            _assessor = new EmployeesInShiftAssessor(_shiftRuleValue.value);
            _shiftRule = new MinEmployeesPerShiftRule(_shiftRuleDefinition, _shiftRuleValue, _assessor, RuleType.HardRule);
            _shiftRule.Enabled = true;
        }