DistAppearanceController.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. <?php
  2. namespace App\Distributor\Controllers;
  3. use App\Distributor\Repositories\DistAppearance;
  4. use App\Distributor\Actions\AppearanceEnable;
  5. use App\Distributor\Repositories\DistAdminDistributor;
  6. use App\Libraries\CommonHelper;
  7. use Dcat\Admin\Grid;
  8. use Dcat\Admin\Http\Controllers\AdminController;
  9. use Dcat\Admin\Layout\Content;
  10. class DistAppearanceController extends AdminController
  11. {
  12. /**
  13. * page index
  14. */
  15. public function index(Content $content)
  16. {
  17. return $content
  18. ->header(admin_trans( 'admin.appearance'))
  19. ->description('')
  20. ->breadcrumb(['text'=>'list','url'=>''])
  21. ->body($this->grid());
  22. }
  23. /**
  24. * Make a grid builder.
  25. *
  26. * @return Grid
  27. */
  28. protected function grid()
  29. {
  30. $distInfo = DistAdminDistributor::getInfo();
  31. return Grid::make(new DistAppearance(), function (Grid $grid) use ($distInfo) {
  32. $grid->column('id')->sortable();
  33. // 标题
  34. $grid->column('title');
  35. // 封面图
  36. $grid->column('cover_image')->display(function ($image) {
  37. $dataImages = [$image];
  38. return CommonHelper::displayImage($dataImages,100);
  39. });
  40. $grid->column('describe');
  41. $grid->column('isEnabled')->display(function () use ($distInfo) {
  42. if ($this->id == $distInfo->appearance_id) {
  43. return '<span class="label" style="background:#21b978;">Yes</span>';
  44. } else {
  45. return '<span class="label" style="background:#d2d6de;">No</span>';
  46. }
  47. });
  48. //按钮
  49. $grid->disableCreateButton();
  50. $grid->disableDeleteButton();
  51. $grid->disableBatchDelete();
  52. // 操作
  53. $grid->actions(function (Grid\Displayers\Actions $actions) {
  54. $actions->disableDelete();
  55. $actions->disableEdit();
  56. $actions->disableView();
  57. });
  58. //排序
  59. $grid->model()->where('enabled',1)->orderBy('order',);
  60. //操作
  61. $grid->actions(function (Grid\Displayers\Actions $actions) {
  62. $actions->append(new AppearanceEnable());
  63. });
  64. });
  65. }
  66. //屏蔽删除
  67. public function destroy($id)
  68. {
  69. abort(404);
  70. }
  71. //屏蔽创建
  72. public function create(Content $content)
  73. {
  74. abort(404);
  75. }
  76. //屏蔽编辑
  77. public function edit($id, Content $content)
  78. {
  79. abort(404);
  80. }
  81. }