TeamUser.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace App\Admin\Actions\Chat;
  3. use App\Models\ChatList;
  4. use App\Models\User;
  5. use App\Repositories\ChatTeamUser;
  6. use App\Repositories\ImMessage;
  7. use App\Services\TencentImGroupService;
  8. use App\Services\TencentImMessage;
  9. use Dcat\Admin\Grid;
  10. use Dcat\Admin\Grid\LazyRenderable;
  11. class TeamUser extends LazyRenderable
  12. {
  13. public function grid(): Grid
  14. {
  15. $group_id = $this->payload['GroupId'];
  16. return Grid::make(new ChatTeamUser($group_id), function (Grid $grid) {
  17. $grid->column('Member_Account',trans('feeds.fields.user_id'))->display(function ($res){
  18. $user = User::query()->where('tencent_im_user_id',$res)->first();
  19. $str = "";
  20. $str.="<div style='margin-right:10px;text-align: center;display: flex'>";
  21. $str.='<img data-action="preview-img" src="'.$user->avatar.'" style="max-width:50px;max-height:50px;cursor:pointer" class="img img-thumbnail">';
  22. $str.='<p style="margin-top: 5px">'.$user->name.'</p>';
  23. $str.="</div>";
  24. return $str;
  25. });
  26. $grid->column('Role',trans('chat-team.fields.role'))->display(function ($res){
  27. if($res=='Owner'){
  28. $str = trans('chat-team.fields.Owner');
  29. }elseif($res=='Admin'){
  30. $str = trans('chat-team.fields.Admin');
  31. }else{
  32. $str = trans('chat-team.fields.Member');
  33. }
  34. return $str;
  35. });
  36. $grid->column('JoinTime', trans('chat-team.fields.JoinTime'))->display(function ($res){
  37. return date('Y-m-d H:i',$res);
  38. });
  39. $grid->disableRowSelector();
  40. $grid->paginate(10);
  41. $grid->disableActions();
  42. });
  43. }
  44. }