OvertimeInterval.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using InABox.Core;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. namespace Comal.Classes
  6. {
  7. public enum OvertimeIntervalType
  8. {
  9. Interval,
  10. RemainingTime
  11. }
  12. public class OvertimeInterval : Entity, IRemotable, IPersistent, IOneToMany<Overtime>, ILicense<TimeManagementLicense>, ISequenceable
  13. {
  14. [EntityRelationship(DeleteAction.Cascade)]
  15. public OvertimeLink Overtime { get; set; }
  16. [TextBoxEditor(Visible = Visible.Default)]
  17. [EditorSequence(1)]
  18. public string Description { get; set; }
  19. [EnumLookupEditor(typeof(OvertimeIntervalType), Visible = Visible.Default)]
  20. [EditorSequence(2)]
  21. public OvertimeIntervalType IntervalType { get; set; }
  22. [TimeOfDayEditor(Visible = Visible.Default)]
  23. [EditorSequence(3)]
  24. public TimeSpan Interval { get; set; }
  25. [TextBoxEditor(Visible = Visible.Default)]
  26. [EditorSequence(4)]
  27. public string PayrollID { get; set; }
  28. [CheckBoxEditor(Visible = Visible.Default)]
  29. [EditorSequence(5)]
  30. public bool IsPaid { get; set; }
  31. [DoubleEditor(Visible = Visible.Default)]
  32. [EditorSequence(6)]
  33. public double Multiplier { get; set; }
  34. [NullEditor]
  35. public long Sequence { get; set; }
  36. public OvertimeInterval()
  37. {
  38. Description = "";
  39. PayrollID = "";
  40. IsPaid = true;
  41. Multiplier = 1.0;
  42. IntervalType = OvertimeIntervalType.Interval;
  43. }
  44. }
  45. }