ClassroomRegistration.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import { User } from 'src/models/User.js'
  2. import { Classroom } from 'src/models/Classroom.js'
  3. import { Model, Collection } from 'js-abstract-model'
  4. class ClassroomRegistration extends Model {
  5. constructor (data) {
  6. super(data, [
  7. { key: 'id' },
  8. { key: 'owner' },
  9. {
  10. key: 'owner_info',
  11. relatedModel: User
  12. },
  13. { key: 'classroom' },
  14. {
  15. key: 'classroom_info',
  16. relatedModel: Classroom
  17. },
  18. { key: 'status' }
  19. ])
  20. this.statusEnums = [
  21. {
  22. label: 'ثبت نام شده',
  23. value: 'REGISTERED'
  24. }
  25. ]
  26. this.loadStatusInfo()
  27. }
  28. loadStatusInfo () {
  29. const target = this.statusEnums.find(type => type.value === this.status)
  30. if (!target) {
  31. this.status_info = {
  32. label: null,
  33. value: null
  34. }
  35. } else {
  36. this.status_info = target
  37. }
  38. }
  39. }
  40. class ClassroomRegistrationList extends Collection {
  41. model () {
  42. return ClassroomRegistration
  43. }
  44. }
  45. export { ClassroomRegistration, ClassroomRegistrationList }