LicenseRenewalRequest.cs 3.3 KB

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