PatientTransformer.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace App\Repositories\Transformers\TCM;
  3. use Carbon\Carbon;
  4. use League\Fractal\TransformerAbstract;
  5. use App\Repositories\Models\TCM\Patient;
  6. /**
  7. * Class PatientTransformer.
  8. *
  9. * @package namespace App\Repositories\Transformers\TCM;
  10. */
  11. class PatientTransformer extends TransformerAbstract
  12. {
  13. /**
  14. * Transform the Patient entity.
  15. *
  16. * @param \App\Repositories\Models\TCM\Patient $model
  17. *
  18. * @return array
  19. */
  20. public function transform(Patient $model)
  21. {
  22. return [
  23. 'id' => (int)$model->id,
  24. 'sex' => $model->sex,
  25. 'sex_text' => $model->sex_text,
  26. 'name' => $model->name,
  27. 'avatar' => $model->avatar,
  28. 'birth_date' => $model->birth_date,
  29. 'age' => $model->age,
  30. 'source' => $model->source,
  31. 'source_text' => $model->source_text,
  32. 'mobile' => $model->mobile,
  33. 'occupation' => $model->occupation,
  34. 'allergy' => $model->allergy,
  35. 'allergy_text' => $model->allergy_text,
  36. 'past_medical' => $model->past_medical,
  37. 'past_medical_text' => $model->past_medical_text,
  38. // 'hospital' => $model->hospital,
  39. 'lately_record' => $model->lately_record,
  40. 'visit_count' => $model->visit_count,
  41. 'status' => $model->status,
  42. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  43. 'updated_at' => $model->updated_at->format(Carbon::DEFAULT_TO_STRING_FORMAT)
  44. ];
  45. }
  46. }