From 17bb2a972056e65e73b43a1afa382c695a49a9d8 Mon Sep 17 00:00:00 2001 From: liangyuyan <1103300295@qq.com> Date: Fri, 18 Sep 2020 21:55:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E5=95=86=E5=93=81--=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/v3/BannersController.php | 2 +- .../v3/GoodsActivityController.php | 48 +++++++++++++++---- app/Admin/Controllers/v3/GoodsController.php | 3 +- app/Models/v3/GoodsActivity.php | 3 +- 4 files changed, 43 insertions(+), 13 deletions(-) diff --git a/app/Admin/Controllers/v3/BannersController.php b/app/Admin/Controllers/v3/BannersController.php index a0ecba1..aadea7f 100644 --- a/app/Admin/Controllers/v3/BannersController.php +++ b/app/Admin/Controllers/v3/BannersController.php @@ -31,7 +31,7 @@ class BannersController extends AdminController } return $item; }); - $grid->column('title'); + $grid->column('title')->editable(); $grid->column('cover_url')->image('',100); $grid->column('bg_color')->editable(); // $grid->column('bg_color')->display(function($bgColor){ diff --git a/app/Admin/Controllers/v3/GoodsActivityController.php b/app/Admin/Controllers/v3/GoodsActivityController.php index 4fa1183..18dffd7 100644 --- a/app/Admin/Controllers/v3/GoodsActivityController.php +++ b/app/Admin/Controllers/v3/GoodsActivityController.php @@ -13,6 +13,8 @@ use App\Models\v3\Category as CategoryModel; use App\Models\v3\GoodsActivity as GoodsActivityModel; use Dcat\Admin\Form\NestedForm; use App\Models\v3\GoodsCategory as GoodsCategoryModel; +use App\Admin\Common\Auth; +use Dcat\Admin\Admin; class GoodsActivityController extends AdminController { @@ -23,11 +25,27 @@ class GoodsActivityController extends AdminController */ protected function grid() { - return Grid::make(new GoodsActivity(), function (Grid $grid) { + $marketId = Auth::getMarket(); + if ($marketId){ + $build = new \App\Models\v3\Goods(); + $build = $build::where('market_id',$marketId); + }else{ + $build = new GoodsActivity(); + } + return Grid::make($build, function (Grid $grid) { + // 二级分类 + $categoryList = CategoryModel::getArray([['parent_id','>',0]],['选择分类'=>0]); + // 店铺 + $storeList = StoreModel::getStoreArray(); + // 商品类目 + $goodsCategoryList = GoodsCategoryModel::getArray([],['选择类目'=>0]); + //市场 + $marketList = MarketModel::getMarketArray(); + $grid->column('id')->sortable(); $grid->column('cover_img')->image('',50); - $grid->column('name'); - $grid->column('price'); + $grid->column('name')->editable(); + $grid->column('price')->editable(); $grid->column('type_text'); $grid->column('market_id')->display(function($marketId){ @@ -51,9 +69,18 @@ class GoodsActivityController extends AdminController $grid->column('on_sale')->switch(); $grid->model()->orderby('id','desc'); - $grid->filter(function (Grid\Filter $filter) { + $grid->filter(function (Grid\Filter $filter) use($storeList, $categoryList, $goodsCategoryList, $marketList){ $filter->equal('id'); - + $filter->like('name'); + $filter->equal('store_id')->select($storeList); + $filter->equal('category_id')->select($categoryList); + $filter->equal('goods_category_id')->select($goodsCategoryList); + if (!(Admin::user()->isRole('market_service'))){ + $filter->equal('market_id')->select($marketList); + } + $filter->equal('on_sale')->select(GoodsActivityModel::$_ONSALE); + $filter->equal('price'); + $filter->equal('goods_unit'); }); // 每页10条 $grid->paginate(10); @@ -133,11 +160,13 @@ class GoodsActivityController extends AdminController $storeList = StoreModel::getStoreArray(); //市场 $marketList = MarketModel::getMarketArray(); + $marketId = $form->model()->market_id; - $form->column(6, function (Form $form) use($marketList,$storeList,$categoryList ){ + $form->column(6, function (Form $form) use($storeList,$categoryList,$marketList){ $form->text('goods_id')->default(0)->help('输入正常商品id,用于关联商品。'); $form->hidden('market_id')->default(0); - $form->multipleSelect('market_ids')->options($marketList)->help('不选则适用所有市场'); + // $form->hidden('market_ids')->value( $marketId); + $form->multipleSelect('market_ids')->disable()->options($marketList)->help('根据店铺所属市场匹配'); $form->select('category_id')->required()->options($categoryList)->load('goods_category_id', '/api/goods_category_list'); $form->select('goods_category_id'); $form->select('store_id')->required()->options($storeList); @@ -153,7 +182,7 @@ class GoodsActivityController extends AdminController $form->text('goods_unit')->help('如:斤,个,盒,500克,1000克,1500克等'); $form->radio('is_infinite')->options(['关闭','开启'])->default(1); $form->number('inventory')->required()->attribute('min', 1)->default(1); - $form->number('restrict_num')->attribute('min', 0)->default(0)->help('0表示不限购,单笔订单限购数量'); + $form->number('restrict_num')->attribute('min', 0)->default(1)->help('0表示不限购,单笔订单限购数量'); $form->number('start_num')->attribute('min', 1)->default(1); $form->number('time_limit_days')->help('A时间段内限购'); $form->number('time_limit_num')->help('A时间段内限购的数量'); @@ -188,7 +217,7 @@ class GoodsActivityController extends AdminController }) ->saving(function ($v) { return $v == 1 ? 1 : 0; - }); + })->default(1); $form->saving(function (Form $form){ $storeId = $form->input('store_id'); $marketIds = $form->input('market_ids'); @@ -200,6 +229,7 @@ class GoodsActivityController extends AdminController // 商品所属市场,根据店铺查询市场 $info = StoreModel::getStoreInfo($storeId,'market_id'); $form->market_id = $info->market_id; + $form->market_ids = ["$info->market_id"]; } $marketIdsArr = []; diff --git a/app/Admin/Controllers/v3/GoodsController.php b/app/Admin/Controllers/v3/GoodsController.php index 01051b5..0ec3698 100644 --- a/app/Admin/Controllers/v3/GoodsController.php +++ b/app/Admin/Controllers/v3/GoodsController.php @@ -32,7 +32,7 @@ class GoodsController extends AdminController $build = new \App\Models\v3\Goods(); $build = $build::where('market_id',$marketId); }else{ - $build = new Goods(); + $build = new Goods(); } return Grid::make($build, function (Grid $grid) { // 二级分类 @@ -80,7 +80,6 @@ class GoodsController extends AdminController $grid->actions([new GoodsCopy(),new GoodsImage()]); $grid->filter(function (Grid\Filter $filter) use($storeList, $categoryList, $goodsCategoryList, $marketList){ - $filter->like('name'); $filter->equal('id'); $filter->like('name'); $filter->equal('store_id')->select($storeList); diff --git a/app/Models/v3/GoodsActivity.php b/app/Models/v3/GoodsActivity.php index 233bdc4..2187296 100644 --- a/app/Models/v3/GoodsActivity.php +++ b/app/Models/v3/GoodsActivity.php @@ -18,7 +18,8 @@ class GoodsActivity extends Model 'on_sale_text', 'is_infinite_text', 'can_use_coupon_text', - 'expire_time_text' + 'expire_time_text', + 'type_text' ]; protected $casts = [