Instalment.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { User } from 'src/models/User.js'
  2. import { Model, Collection } from 'js-abstract-model'
  3. import { InstalmentOffer } from 'src/models/InstalmentOffer.js'
  4. class Instalment extends Model {
  5. constructor (data) {
  6. super(data, [
  7. { key: 'id' },
  8. {
  9. key: 'amount',
  10. default: 0
  11. },
  12. { key: 'creator' },
  13. {
  14. key: 'creator_info',
  15. relatedModel: User
  16. },
  17. { key: 'creation_time' },
  18. { key: 'last_modification_time' },
  19. { key: 'due_date' },
  20. { key: 'instalment_offer' },
  21. {
  22. key: 'instalment_offer_info',
  23. relatedModel: InstalmentOffer
  24. },
  25. { key: 'invoice' },
  26. { key: 'invoice_info' },
  27. { key: 'is_active' },
  28. { key: 'is_deleted' },
  29. { key: 'paid_time' },
  30. { key: 'payer' },
  31. {
  32. key: 'payer_info',
  33. relatedModel: User
  34. },
  35. { key: 'wallet_inventory' }
  36. ])
  37. }
  38. }
  39. class InstalmentList extends Collection {
  40. model() {
  41. return Instalment
  42. }
  43. }
  44. export { Instalment, InstalmentList }