InvoiceReceipt.cs 1008 B

123456789101112131415161718192021222324252627282930313233
  1. using System.ComponentModel;
  2. using InABox.Core;
  3. namespace Comal.Classes
  4. {
  5. [UserTracking(typeof(Invoice))]
  6. public class InvoiceReceipt : Entity, IPersistent, IRemotable, IManyToMany<Invoice, Receipt>, IManyToMany<Receipt, Invoice>, ILicense<AccountsReceivableLicense>
  7. {
  8. [EntityRelationship(DeleteAction.SetNull)]
  9. public InvoiceLink InvoiceLink { get; set; }
  10. [EntityRelationship(DeleteAction.Cascade)]
  11. public ReceiptLink ReceiptLink { get; set; }
  12. [TextBoxEditor]
  13. public string Notes { get; set; }
  14. [CurrencyEditor(Summary = Summary.Sum)]
  15. public double Amount { get; set; }
  16. protected override void Init()
  17. {
  18. base.Init();
  19. InvoiceLink.PropertyChanged += InvoiceLinkChanged;
  20. }
  21. private void InvoiceLinkChanged(object sender, PropertyChangedEventArgs e)
  22. {
  23. if (e.PropertyName.Equals("Balance"))
  24. Amount = InvoiceLink.Balance;
  25. }
  26. }
  27. }