TaxCode.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using InABox.Core;
  2. namespace Comal.Classes
  3. {
  4. public interface ITaxCode : IEntity,
  5. IPostableFragment
  6. {
  7. string Code { get; set; }
  8. string Description { get; set; }
  9. double Rate { get; set; }
  10. }
  11. [UserTracking(typeof(Invoice))]
  12. public class TaxCode : Entity, IPersistent, IRemotable, ILicense<CoreLicense>, IExportable, IImportable, IMergeable,
  13. IPostableFragment<Customer>, IPostableFragment<Invoice>, IPostableFragment<Bill>, IPostableFragment<PurchaseOrder>, ITaxCode
  14. {
  15. [EditorSequence(1)]
  16. [UniqueCodeEditor(Visible = Visible.Default, Editable = Editable.Enabled)]
  17. public string Code { get; set; }
  18. [EditorSequence(2)]
  19. [TextBoxEditor(Visible = Visible.Default)]
  20. public string Description { get; set; }
  21. [EditorSequence(3)]
  22. [DoubleEditor(Visible = Visible.Default)]
  23. public double Rate { get; set; }
  24. [NullEditor]
  25. public string PostedReference { get; set; }
  26. public override string ToString()
  27. {
  28. return string.Format("{0}: {1} ({2:F2}%)", Code, Description, Rate);
  29. }
  30. }
  31. }