OpenAppointmentTransformer.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Repositories\Transformers\Lab;
  3. use App\Repositories\Enums\Lab\OpenAppointmentStatusEnum;
  4. use Carbon\Carbon;
  5. use League\Fractal\TransformerAbstract;
  6. use App\Repositories\Models\Lab\OpenAppointment;
  7. /**
  8. * Class OpenAppointmentTransformer.
  9. *
  10. * @package namespace App\Repositories\Transformers\Lab;
  11. */
  12. class OpenAppointmentTransformer extends TransformerAbstract
  13. {
  14. /**
  15. * Transform the OpenAppointment entity.
  16. *
  17. * @param \App\Repositories\Models\Lab\OpenAppointment $model
  18. *
  19. * @return array
  20. */
  21. public function transform(OpenAppointment $model)
  22. {
  23. return [
  24. 'id' => (int)$model->id,
  25. 'template' => $model->template,
  26. 'department' => $model->department,
  27. 'use_data' => $model->use_data,
  28. 'use_reason' => $model->use_reason,
  29. 'use_need' => $model->use_need,
  30. 'use_people_nums' => $model->use_people_nums,
  31. 'applicant_name' => $model->applicant_name,
  32. 'applicant_mobile' => $model->applicant_mobile,
  33. 'enclosure' => $model->enclosure,
  34. 'enclosure_resource' => $model->enclosureResource,
  35. 'status' => $model->status,
  36. 'status_text' => OpenAppointmentStatusEnum::getDescription($model->status),
  37. 'admin' => $model->admin,
  38. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  39. 'updated_at' => $model->updated_at->format(Carbon::DEFAULT_TO_STRING_FORMAT)
  40. ];
  41. }
  42. }