Browse Source

Merge branch 'master' into qs_local_master_9_27

master
lanzu_qinsheng 5 years ago
parent
commit
ccc2dd71b6
  1. 2
      app/Admin/Actions/Grid/v3/GoodsActivitySetting.php
  2. 42
      app/Admin/Controllers/v3/GoodsActivityController.php
  3. 12
      app/Admin/Controllers/v3/LanzuEmployeesController.php

2
app/Admin/Actions/Grid/v3/GoodsActivitySetting.php

@ -69,6 +69,6 @@ class GoodsActivitySetting extends AbstractTool
*/
protected function authorize($user): bool
{
return $user->can('do-action');
return $user->can('goods_activity_setting');
}
}

42
app/Admin/Controllers/v3/GoodsActivityController.php

@ -228,29 +228,35 @@ class GoodsActivityController extends AdminController
})->default(1);
$form->saving(function (Form $form){
$storeId = $form->input('store_id');
// $marketIds = $form->input('market_ids');
$tags = $form->input('tags');
$spec = $form->input('spec');
$detailsImgs = $form->input('details_imgs');
$goodsCategoryId = $form->input('goods_category_id');
$expireTime = $form->input('expire_time');
$isInfinite = $form->input('is_infinite');
$inventory = $form->input('inventory');
$onSale = $form->input('on_sale');
$expireTime = $form->model()->expire_time;
$OldInventory = $form->model()->inventory;
if(!empty($onSale) && $onSale == 1 && $expireTime <= time()){
return $form->error('活动结束时间必须大于当前时间,请修改后再上架!');
}else if(!empty($onSale) && $onSale == 1 && $OldInventory <= 0){
return $form->error('库存必须为大于0的数字');
}
$inventory = $form->input('inventory');
// 规格
if(!empty($inventory)){
// 库存
if(!empty($inventory) && empty($onSale)){
if(!is_numeric($inventory) || $inventory < 0){
return $form->error('库存必须为大于等于0的数字');
}
}
$OldExpireTime = $form->model()->expire_time;
$OldInventory = $form->model()->inventory;
$OldIsInfinite = $form->model()->is_infinite;
$expireTime = empty($expireTime)?$OldExpireTime:strtotime($expireTime);
$isInfinite = empty($isInfinite)?$OldIsInfinite:$isInfinite;
$inventory = empty($inventory)?$OldInventory:$inventory;
if(!empty($onSale) && $onSale == 1 && $expireTime <= time()){
return $form->error('活动结束时间必须大于当前时间,请修改后再上架!');
}else if(!empty($onSale) && $onSale == 1 && $inventory <= 0 && $isInfinite == 0){
return $form->error('商品上架或者关闭无限库存时,库存必须为大于0的数字');
}
if(!empty($storeId)){
// 商品所属市场,根据店铺查询市场
$info = StoreModel::getStoreInfo($storeId,'market_id');
@ -258,18 +264,6 @@ class GoodsActivityController extends AdminController
$form->market_ids = ["$info->market_id"];
}
// $marketIdsArr = [];
// if(!empty($marketIds)){
// foreach($marketIds as $km => $marketId){
// if(empty($marketId)){
// unset($marketIds[$km]);
// continue;
// }
// $marketIdsArr[] = $marketId;
// }
// }
// $form->marketIds = json_encode($marketIdsArr);
$tagsArr = [];
if(!empty($tags)){
foreach($tags as $kt => $tag){

12
app/Admin/Controllers/v3/LanzuEmployeesController.php

@ -26,6 +26,8 @@ class LanzuEmployeesController extends AdminController
//市场
$marketList = MarketModel::getMarketArray();
$positionList = config('role.position');
//店铺
$storeList = StoreModel::getStoreArray([['market_id','=',1]]);
$grid->column('id')->sortable();
$grid->column('name');
@ -34,9 +36,8 @@ class LanzuEmployeesController extends AdminController
$grid->column('market_id')->display(function($marketId) use($marketList){
return isset($marketList[$marketId]) ? $marketList[$marketId] : '';
});
$grid->column('store_id')->display(function($storeId){
$item = StoreModel::getStoreInfo($storeId,'name');
return empty($item) ? '' : $item->name;
$grid->column('store_id')->display(function($storeId) use($storeList){
return isset($storeList[$storeId]) ? $storeList[$storeId] : '';
});
$grid->column('position')->display(function($position) use($positionList){
@ -50,9 +51,12 @@ class LanzuEmployeesController extends AdminController
});
$grid->column('status')->width(3)->select(EmployeesModel::$_STATUS);
$grid->filter(function (Grid\Filter $filter) use($marketList,$positionList){
$grid->filter(function (Grid\Filter $filter) use($marketList,$positionList,$storeList){
$filter->equal('id');
$filter->equal('market_id')->select($marketList);
$filter->equal('user_id');
$filter->like('name');
$filter->equal('store_id')->select($storeList);
$filter->like('position')->select($positionList);
});
$grid->model()->orderBy('status','desc');

Loading…
Cancel
Save