Пример #1
0
 /// <summary>
 /// Deduction total = amortized_amount * amortization
 /// </summary>
 public static Deduction CreateAmortized(Salary salary, int amortization, MonetaryValue amortized_amount, Date dt_granted = null, DeductionMode mode = DeductionMode.TEMPORARY)
 {
     return(Deduction.Create(salary
                             , amortization
                             , amortized_amount.multipliedBy(amortization)
                             , dt_granted));
 }
Пример #2
0
        /// <summary>
        /// Given deduction total
        /// </summary>
        public static Deduction Create(Salary salary, int amortization, MonetaryValue total, Date dt_granted = null, DeductionMode mode = DeductionMode.TEMPORARY)
        {
            var record = new Deduction {
                _salary         = salary
                , Employee      = salary.GetEmployee()
                , Total         = total
                , _amortization = amortization
                , DateGranted   = dt_granted ?? Date.TryParse(DateTime.Now.ToLongDateString())
                , Mode          = mode
            };

            EventBroker.getInstance().Emit(new EventSalaryDeductionCreated(record, salary));

            return(record);
        }