RoomController.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Models\Rome;
  4. use Encore\Admin\Controllers\AdminController;
  5. use Encore\Admin\Grid;
  6. use Encore\Admin\Layout\Content;
  7. use Encore\Admin\Show;
  8. class RoomController extends AdminController
  9. {
  10. protected $title = '房间管理';
  11. protected function grid()
  12. {
  13. $grid = new Grid(new Rome());
  14. $grid->fixColumns(9,-3);
  15. $grid->id('ID')->sortable();
  16. $grid->column('name', '房间名');
  17. $grid->column('user.lid', '红娘ID');
  18. $grid->column('user.name', '红娘名');
  19. $grid->column('type', '类型')->display(function ($x) {
  20. return $x == 2 ? '专属':'普通';
  21. });
  22. $grid->column('start', '开播时间');
  23. $grid->column('end', '结束时间');
  24. $grid->column('guest.lid', '女嘉宾ID');
  25. $grid->column('guest.name', '女嘉宾名');
  26. $grid->column('manuser.lid', '嘉宾ID');
  27. $grid->column('manuser.name', '嘉宾名');
  28. $grid->column('sort', '排序')->editable();
  29. $grid->created_at('创建时间');
  30. $grid->disableExport();
  31. $grid->disableRowSelector();
  32. $grid->disableColumnSelector();
  33. $grid->disableCreateButton();
  34. $grid->expandFilter();
  35. $grid->actions(function ($actions) {
  36. $actions->disableDelete();
  37. $actions->disableEdit();
  38. });
  39. $grid->filter(function ($filter) {
  40. $filter->disableIdFilter();
  41. $filter->equal('user.lid','红娘ID')->placeholder('请输入红娘ID');
  42. $filter->equal('user.name','红娘名')->placeholder('请输入红娘名');
  43. $filter->equal('name','房间名')->placeholder('请输入房间名');
  44. $filter->equal('type','类型')->select([2=> '专属房间',1=>'普通房间']);
  45. });
  46. return $grid;
  47. }
  48. public function detail($id){
  49. $d=Rome::findOrFail($id);
  50. $show = new Show($d);
  51. $show->field('name', '名称');
  52. $show->field('type', '类型')->as(function ($x) {
  53. return $x == 2 ? '专属':'普通';
  54. });
  55. $show->field('start', '开播时间');
  56. $show->field('end', '结束时间');
  57. $show->panel()->tools(function ($tools) {
  58. $tools->disableEdit();
  59. $tools->disableDelete();
  60. });
  61. $show->applend('申请上麦人列表',function ($comments) {
  62. $comments->id('ID')->sortable();
  63. $comments->column('user.lid', '申请人ID');
  64. $comments->column('user.name', '申请名');
  65. $comments->column('enabled', '是否上麦')->display(function ($x) {
  66. return $x==0 ? '没上':'上麦';
  67. })->sortable();
  68. $comments->column('sex', '性别')->display(function ($x) {
  69. return $x==1? '男':'女';
  70. });
  71. $comments->created_at('上麦时间');
  72. $comments->updated_at('结束时间');
  73. $comments->disableExport();
  74. $comments->disableRowSelector();
  75. $comments->disableColumnSelector();
  76. $comments->disableCreateButton();
  77. $comments->disableactions();
  78. $comments->filter(function ($filter) {
  79. $filter->disableIdFilter();
  80. $filter->equal('user.lid', '客户ID')->placeholder('请输入上麦人ID');
  81. });
  82. });
  83. $show->gifts('直播间总礼物',function ($comments) {
  84. $comments->id('ID')->sortable();
  85. $comments->column('user.lid', '送礼人ID');
  86. $comments->column('user.name', '送礼人名');
  87. $comments->column('touser.lid', '收礼人名');
  88. $comments->column('touser.name', '收礼人名');
  89. $comments->column('gift.name', '礼物名')->sortable();
  90. $comments->column('gift.rose', '礼物现在价格');
  91. $comments->column('rose', '礼物原价格')->sortable();
  92. $comments->created_at('送时间');
  93. $comments->disableExport();
  94. $comments->disableRowSelector();
  95. $comments->disableColumnSelector();
  96. $comments->disableCreateButton();
  97. $comments->disableactions();
  98. $comments->filter(function ($filter) {
  99. $filter->disableIdFilter();
  100. $filter->equal('user.lid', '客户ID')->placeholder('请输入送礼人ID');
  101. });
  102. });
  103. return $show;
  104. }
  105. protected function form()
  106. {
  107. $form = new Form(new Rome);
  108. $form->text('sort', '排序')->rules('required|min:1');
  109. return $form;
  110. }
  111. }