ManageUserTransformer.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace App\Transformer\Manage;
  3. class ManageUserTransformer
  4. {
  5. const ROLE_LABELS = [
  6. 'superadmin' => '超级管理员',
  7. 'admin' => '公司管理员',
  8. 'user' => '组员',
  9. ];
  10. /**
  11. * 用户列表单项
  12. *
  13. * @param $list
  14. * @return array
  15. */
  16. public function newEachUser($list): array
  17. {
  18. $result = [];
  19. if (empty($list)) {
  20. return $result;
  21. }
  22. foreach ($list as $item) {
  23. $role = (string)getProp($item, 'role', '');
  24. $result[] = [
  25. 'uid' => (int)getProp($item, 'id', 0),
  26. 'account' => (string)getProp($item, 'account', ''),
  27. 'nickname' => (string)getProp($item, 'nickname', ''),
  28. 'role' => $role,
  29. 'role_info' => self::ROLE_LABELS[$role] ?? $role,
  30. 'is_enabled' => (int)getProp($item, 'is_enabled', 0),
  31. 'company_name' => (string)getProp($item, 'company_name', ''),
  32. 'points' => (float)getProp($item, 'points', 0),
  33. 'created_at' => transDate(getProp($item, 'created_at')),
  34. ];
  35. }
  36. return $result;
  37. }
  38. }