InformationTransformer.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Repositories\Transformers\Info;
  3. use App\Repositories\Models\Info\Information;
  4. use League\Fractal\TransformerAbstract;
  5. class InformationTransformer extends TransformerAbstract
  6. {
  7. /**
  8. * Prepare data to present.
  9. *
  10. * @param Information $information
  11. * @return array
  12. */
  13. public function transform(Information $information)
  14. {
  15. if (request()->has('id')) {
  16. return [
  17. 'id' => $information->id,
  18. 'type' => $information->type,
  19. 'title' => $information->title,
  20. 'cover' => $information->cover,
  21. 'cover_url' => path_to_url($information->cover),
  22. 'synopsis' => $information->synopsis,
  23. 'content' => $information->content,
  24. 'sort' => $information->sort,
  25. 'status' => $information->status,
  26. 'updated_at' => $information->updated_at ? $information->updated_at->format('Y-m-d H:i:s') : null,
  27. ];
  28. }
  29. return [
  30. 'id' => $information->id,
  31. 'type' => $information->type,
  32. 'title' => $information->title,
  33. // 'cover' => $information->cover,
  34. 'cover_url' => path_to_url($information->cover),
  35. 'synopsis' => $information->synopsis,
  36. // 'content' => $information->content,
  37. 'sort' => $information->sort,
  38. 'status' => $information->status,
  39. 'updated_at' => $information->updated_at ? $information->updated_at->format('Y-m-d H:i:s') : null,
  40. ];
  41. }
  42. }