NoteTransformer.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace App\Repositories\Transformers\Note;
  3. use Carbon\Carbon;
  4. use League\Fractal\TransformerAbstract;
  5. use App\Repositories\Models\Note\Note;
  6. /**
  7. * Class NoteTransformer.
  8. *
  9. * @package namespace App\Repositories\Transformers\Note;
  10. */
  11. class NoteTransformer extends TransformerAbstract
  12. {
  13. /**
  14. * Transform the Note entity.
  15. *
  16. * @param \App\Repositories\Models\Note\Note $model
  17. *
  18. * @return array
  19. */
  20. public function transform(Note $model)
  21. {
  22. return [
  23. 'id' => (int)$model->id,
  24. "title" => $model->title,
  25. "course_category_id" => $model->course_category_id,
  26. "course_category" => $model->category,
  27. "tags" => $model->tags,
  28. "body" => $model->body,
  29. "is_release" => $model->is_release,
  30. "view_count" => $model->view_count,
  31. "comment_count" => $model->comment_count,
  32. "good_count" => $model->good_count,
  33. "user_id" => $model->user_id,
  34. "user" => $model->user,
  35. 'is_solve' => $model->type == 1 ? $model->is_solve : '--',
  36. "status" => $model->status,
  37. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  38. 'updated_at' => $model->updated_at->format(Carbon::DEFAULT_TO_STRING_FORMAT)
  39. ];
  40. }
  41. }