海南旅游SAAS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
2.5 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. <?php
  2. namespace App\AdminGuide\Controllers;
  3. use App\Common\ProductStatus;
  4. use App\Models\AgentProduct;
  5. use App\Models\Channel;
  6. use App\Models\Product;
  7. use App\Traits\ResponseHelper;
  8. use App\AdminGuide\Repositories\Demand;
  9. use App\Models\DemandBidding;
  10. use Dcat\Admin\Admin;
  11. use Dcat\Admin\Form;
  12. use Dcat\Admin\Grid;
  13. use Dcat\Admin\Show;
  14. use Dcat\Admin\Http\Controllers\AdminController;
  15. use App\Traits\DemandTraits;
  16. use Illuminate\Database\Eloquent\Model;
  17. use Illuminate\Http\Request;
  18. use Illuminate\Support\Arr;
  19. use Illuminate\Support\Facades\DB;
  20. use Illuminate\Support\Facades\Log;
  21. use Illuminate\Support\Facades\URL;
  22. class MyDemandProductController extends AdminController
  23. {
  24. use ResponseHelper;
  25. /**
  26. * Make a grid builder.
  27. *
  28. * @return Grid
  29. */
  30. protected function grid()
  31. {
  32. return Grid::make(new Demand(['publisher','biddingUser','agentProduct.category']), function (Grid $grid) {
  33. $grid->model()
  34. ->where(['bidding_user_id' => Admin::user()->id,'bidding_user_type' => DemandTraits::$col[2]])
  35. ->where('agent_product_id','>',0);
  36. $grid->column('id')->sortable();
  37. //$grid->column('title');
  38. //$grid->column('detail','内容')->display('查看')->modal('详情',function ($modal) {
  39. // $modal->xl();
  40. // return $this->comment;
  41. //});
  42. $grid->column('agentProduct.picture', '产品图片')->image('', 60, 60);
  43. $grid->column('agentProduct.title', '产品名称')->limit(15);
  44. $grid->column('agentProduct.price','产品价格');
  45. $grid->column('agentProduct.original_price','产品原价');
  46. $grid->column('agentProduct.sale','产品销量');
  47. $grid->column('agentProduct.stock','产品库存');
  48. $grid->column('channel_id', '频道')
  49. ->display(function ($modal) {
  50. $channels = Channel::where('agent_id', $this->publisher_id)->pluck('name', 'id')->toArray();
  51. $data = array_flip(explode(',', $this->channel_id));
  52. return join(',',array_intersect_key($channels, $data));
  53. })
  54. ->limit(10);
  55. $grid->column('agentProduct.category.name', '分类');
  56. $grid->disableDeleteButton();
  57. $grid->disableEditButton();
  58. $grid->disableQuickEditButton();
  59. $grid->disableViewButton();
  60. $grid->disableActions();
  61. $grid->disableCreateButton();
  62. $grid->disableRowSelector();
  63. $grid->filter(function (Grid\Filter $filter) {
  64. $filter->equal('id');
  65. $filter->equal('bidding_user_type','竞标用户类型')->select(DemandTraits::$polymorphic);
  66. });
  67. });
  68. }
  69. }