using System.Collections.Generic; namespace _0_Framework.Domain.CustomizeCheckoutValueObjects; public class LateToWork { public LateToWork(LateToWorkType lateToWorkType, List lateToWorkTimeFines, double value) { LateToWorkType = lateToWorkType; LateToWorkTimeFines = lateToWorkTimeFines??new (); Value = value; } private LateToWork() { LateToWorkTimeFines = new (); } /// /// نوع حساب کردن تاخیر در ورود /// public LateToWorkType LateToWorkType { get; private set; } /// /// این مقدار بستگی به نوع حساب کردن تاخیر در ورود /// public double Value { get; private set; } /// /// جریمه های اختصاصی پله ای /// public List LateToWorkTimeFines { get; private set; } } public enum LateToWorkType { /// /// محاسبه نمیشود /// None, /// /// هر دقیقه تاخیر به تناسب حقوق مزد روزانه کسر گردد /// DeductEveryMinuteAccordingToDailyWage, /// /// هر دقیقه تاخیر چند برابر از حقوق کسر میگردد /// MultiTimesPerMinute } public class LateToWorkTimeFine { public LateToWorkTimeFine(string minute, double fineMoney) { Minute = minute; FineMoney = fineMoney; } private LateToWorkTimeFine() { } /// /// دقیقه تعیین شده برای جریمه /// public string Minute { get; private set; } /// /// مبلغ تعیین شده برای جریمه /// public double FineMoney { get; private set; } }