DistAppearanceController.php 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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 AdminDistController
  11. {
  12. /**
  13. * page index
  14. */
  15. public function index(Content $content)
  16. {
  17. return $content
  18. ->header(admin_trans( 'admin.site_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. //指定视图,去掉删除按钮
  33. $grid->view('admin.grid.table');
  34. $grid->column('id')->sortable();
  35. // 标题
  36. $grid->column('title');
  37. // 封面图
  38. $grid->column('cover_image')->display(function ($image) {
  39. $dataImages = [$image];
  40. return CommonHelper::displayImage($dataImages,100);
  41. })->width('20%');
  42. $grid->column('describe')->width('40%');
  43. $grid->column('isEnabled')->display(function () use ($distInfo) {
  44. if ($this->id == $distInfo->appearance_id) {
  45. return '<span class="label" style="background:#21b978;">Yes</span>';
  46. } else {
  47. return '<span class="label" style="background:#d2d6de;">No</span>';
  48. }
  49. });
  50. //按钮
  51. $grid->disableCreateButton();
  52. $grid->disableDeleteButton();
  53. $grid->disableBatchDelete();
  54. $grid->tools('<a href="'.getDistributorDomain().'" target="_blank"><button class="btn btn-primary grid-refresh btn-mini" style="margin-right:3px"><i class="feather icon-chrome"></i><span class="d-none d-sm-inline">&nbsp; '.admin_trans_label('browse').'</span></button></a>');
  55. // 操作
  56. $grid->actions(function (Grid\Displayers\Actions $actions) {
  57. $actions->disableDelete();
  58. $actions->disableEdit();
  59. $actions->disableView();
  60. $actions->append(new AppearanceEnable());
  61. });
  62. //排序
  63. $grid->model()->where('enabled',1)->orderBy('order','desc')->orderBy('id','desc');
  64. });
  65. }
  66. }