ScheduleTransformer.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace App\Repositories\Transformers\Lab;
  3. use App\Repositories\Enums\School\TeachTypeEnum;
  4. use App\Repositories\Transformers\BaseTransformer;
  5. use Carbon\Carbon;
  6. /**
  7. * Class ScheduleTransformer.
  8. *
  9. * @package namespace App\Repositories\Transformers\Lab;
  10. */
  11. class ScheduleTransformer extends BaseTransformer
  12. {
  13. /**
  14. * Transform the LessonSchedule entity.
  15. *
  16. * @param \App\Repositories\Models\School\LessonSchedule $model
  17. *
  18. * @return array
  19. */
  20. public function lists($model)
  21. {
  22. return [
  23. 'id' => (int)$model->id,
  24. 'import_record_id' => (int)$model->import_record_id,
  25. 'is_clash' => (int)$model->is_clash,
  26. 'day' => $model->day,
  27. 'week' => $model->week,
  28. 'week_index' => $model->week_index,
  29. 'time_id' => $model->time,
  30. 'teach_title' => $model->teach_title,
  31. 'lesson' => $model->lesson,
  32. 'room' => $model->room,
  33. 'grade' => $model->grade,
  34. 'teacher' => $model->teacher,
  35. 'group' => $model->group,
  36. 'group_name' => $model->group_name,
  37. 'student_nums' => $model->student_nums,
  38. 'migrate_id' => $model->migrate_id,
  39. 'status' => $model->status,
  40. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  41. ];
  42. }
  43. public function detail($model)
  44. {
  45. return [
  46. 'id' => (int)$model->id,
  47. 'import_record_id' => (int)$model->import_record_id,
  48. 'is_clash' => (int)$model->is_clash,
  49. 'day' => $model->day,
  50. 'week' => $model->week,
  51. 'week_index' => $model->week_index,
  52. 'time_id' => $model->time,
  53. 'teach_title' => $model->teach_title,
  54. 'lesson' => $model->lesson,
  55. 'grade' => $model->grade,
  56. 'teacher' => $model->teacher,
  57. 'group' => $model->group,
  58. 'group_name' => $model->group_name,
  59. 'class_hour' => $model->class_hour,
  60. 'student_nums' => $model->student_nums,
  61. 'migrate_id' => $model->migrate_id,
  62. 'lesson_teacher_id' => $model->lesson_teacher_id,
  63. 'term_id' => $model->term_id,
  64. 'teach_type' => $model->teach_type,
  65. 'teach_type_name' => TeachTypeEnum::getDescription($model->teach_type),
  66. 'teach_teacher_ids' => $model->teach_teacher_ids,
  67. 'status' => $model->status,
  68. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  69. 'updated_at' => $model->updated_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  70. ];
  71. }
  72. }