TicketCategory.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import { Collection, Model } from 'js-abstract-model'
  2. class TicketCategory extends Model {
  3. constructor (data) {
  4. super(data, [
  5. { key: 'id' },
  6. { key: 'title' },
  7. { key: 'type' }
  8. ], {
  9. type: {
  10. infoKey: 'type_info',
  11. enumListKey: 'typeEnums',
  12. enums: [
  13. { label: 'معاونت آموزش', value: 'EDUCATIONAL' },
  14. { label: 'معاونت مالی', value: 'FINANCIAL' },
  15. { label: 'معاونت پژوهش', value: 'RESEARCH' },
  16. { label: 'معاونت سرمایه انسانی', value: 'HR' },
  17. { label: 'معاونت روابط عمومی', value: 'GENERAL' }
  18. ]
  19. }
  20. })
  21. }
  22. getCategoryTypeFromSourceType (sourceType) {
  23. if (!sourceType) {
  24. return null
  25. }
  26. if (sourceType === 'TRAINING_CLASSROOM') {
  27. return 'EDUCATIONAL'
  28. } else if (sourceType === 'DISCUSSION_CIRCLE_CLASSROOM') {
  29. return 'EDUCATIONAL'
  30. } else if (sourceType === 'INVOICE') {
  31. return 'FINANCIAL'
  32. } else if (sourceType === 'CONTENT') {
  33. return 'CONTENT'
  34. } else {
  35. return 'GENERAL'
  36. }
  37. }
  38. }
  39. class TicketCategoryList extends Collection {
  40. model () {
  41. return TicketCategory
  42. }
  43. }
  44. export { TicketCategory, TicketCategoryList }