LicenseRenewalRequest.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. using InABox.Core;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace PRS.Shared;
  7. public class LicenseRegistrationCompanyDetails : EnclosedEntity
  8. {
  9. [TextBoxEditor]
  10. [EditorSequence(1)]
  11. public string CompanyName { get; set; }
  12. [CodeEditor(Editable = Editable.Enabled)]
  13. [EditorSequence(2)]
  14. public string ABN { get; set; }
  15. [TextBoxEditor]
  16. [EditorSequence(3)]
  17. public string Telephone { get; set; }
  18. [TextBoxEditor]
  19. [EditorSequence(4)]
  20. public string Email { get; set; }
  21. [EditorSequence("Post To",1)]
  22. [Caption("")]
  23. public Address PostalAddress => InitializeField(ref _postalAddress, nameof(PostalAddress));
  24. private Address? _postalAddress;
  25. [EditorSequence("Deliver To",1)]
  26. [Caption("")]
  27. public Address DeliveryAddress => InitializeField(ref _deliveryAddress, nameof(DeliveryAddress));
  28. private Address? _deliveryAddress;
  29. }
  30. public class LicenseRegistrationCardDetails : EnclosedEntity
  31. {
  32. [TextBoxEditor]
  33. [EditorSequence("Credit Card",1)]
  34. public string CardNumber { get; set; }
  35. [ComboLookupEditor(typeof(CreditCardMonthGenerator))]
  36. [EditorSequence("Credit Card",2)]
  37. public string Month { get; set; }
  38. private class CreditCardMonthGenerator : LookupGenerator<object>
  39. {
  40. public CreditCardMonthGenerator(object[] items) : base(items)
  41. {
  42. AddValue("01", "January");
  43. AddValue("02", "February");
  44. AddValue("03", "March");
  45. AddValue("04", "April");
  46. AddValue("05", "May");
  47. AddValue("06", "June");
  48. AddValue("07", "July");
  49. AddValue("08", "August");
  50. AddValue("09", "September");
  51. AddValue("10", "October");
  52. AddValue("11", "November");
  53. AddValue("12", "December");
  54. }
  55. }
  56. [ComboLookupEditor(typeof(CreditCardYearGenerator))]
  57. [EditorSequence("Credit Card",3)]
  58. public string Year { get; set; }
  59. private class CreditCardYearGenerator : LookupGenerator<object>
  60. {
  61. public CreditCardYearGenerator(object[] items) : base(items)
  62. {
  63. for (var i = 0; i < 10; i++)
  64. {
  65. var year = DateTime.Today.Year + i;
  66. AddValue(year.ToString(), year.ToString());
  67. }
  68. }
  69. }
  70. [PasswordEditor]
  71. [EditorSequence("Credit Card",4)]
  72. public string Cvv { get; set; }
  73. }
  74. public class LicenseRenewalRequest : BaseObject
  75. {
  76. public LicenseRegistrationCompanyDetails Company { get; set; } = new ();
  77. public LicenseData? OldLicense { get; set; }
  78. public DateTime DateRenewed { get; set; }
  79. public DateTime NewExpiry { get; set; }
  80. public LicenseTrackingItem[]? LicenseTracking { get; set; }
  81. public String[] Addresses { get; set; } = Array.Empty<String>();
  82. public double Gross{ get; set; }
  83. public double Discount { get; set; }
  84. public double Net { get; set; }
  85. public string TransactionID { get; set; } = "";
  86. }
  87. public class LicenseRenewalResult
  88. {
  89. // I'm guessing this will be happening at the server as well
  90. public String License { get; set; }
  91. }