AdminTransformer.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace App\Repositories\Transformers\Base;
  3. use Carbon\Carbon;
  4. use League\Fractal\TransformerAbstract;
  5. use App\Repositories\Models\Base\Admin;
  6. /**
  7. * Class AdminTransformer.
  8. *
  9. * @package namespace App\Repositories\Transformers\Base;
  10. */
  11. class AdminTransformer extends TransformerAbstract
  12. {
  13. /**
  14. * Transform the Admin entity.
  15. *
  16. * @param \App\Repositories\Models\Base\Admin $model
  17. *
  18. * @return array
  19. */
  20. public function transform(Admin $model)
  21. {
  22. return [
  23. 'id' => (int)$model->id,
  24. 'username' => $model->username,
  25. 'name' => $model->name,
  26. 'headimg' => $model->headimg,
  27. 'department_id' => $model->department_id,
  28. 'shop_id' => $model->shop_id,
  29. 'projects' => $model->projects,
  30. 'project_ids' => $model->project_ids,
  31. 'shop' => $model->shop ? $model->shop : [],
  32. 'department_name' => $model->department ? $model->department->name : '--',
  33. 'status' => $model->status,
  34. 'role_id' => $model->role_id,
  35. 'role_name' => $model->id == 1 ? '超级管理员' : ($model->role ? $model->role->name : '--'),
  36. 'created_at' => $model->created_at->format(Carbon::DEFAULT_TO_STRING_FORMAT),
  37. 'updated_at' => $model->updated_at->format(Carbon::DEFAULT_TO_STRING_FORMAT)
  38. ];
  39. }
  40. }