增加:会员等级绑定会员权益信息

This commit is contained in:
wuhui_zzw 2024-06-21 17:31:46 +08:00
parent 2c191a448d
commit 9009aac90f
3 changed files with 23 additions and 7 deletions

View File

@ -12,6 +12,7 @@ use app\common\repositories\BaseRepository;
use app\common\repositories\store\product\ProductLabelRepository;
use app\common\repositories\store\coupon\StoreCouponRepository;
use app\common\repositories\store\StoreCategoryRepository;
use app\common\repositories\user\MemberinterestsRepository;
use FormBuilder\Exception\FormBuilderException;
use FormBuilder\Factory\Elm;
use FormBuilder\Form;
@ -381,22 +382,28 @@ class GroupDataRepository extends BaseRepository
'innerHTML' => '试用期每个用户只能购买一次,购买过付费会员之后将不在展示,不可购买',
]
]),
Elm::switches('status','是否显示')
->activeValue(1)
->inactiveValue(0)
->inactiveText('关')
->activeText('开')->col(12),
Elm::select('coupon', '优惠券')->options(function () {
return app()->make(StoreCouponRepository::class)
->getSearch(['mer_id' => request()->merId(), 'status' => 1, 'is_del' => 0])
->column('title as label,coupon_id as value');
})->multiple(true)->filterable(true)->appendValidate(Elm::validateArr()->message('请选择优惠券')),
})->col(24)->multiple(true)->filterable(true)->appendValidate(Elm::validateArr()->message('请选择优惠券')),
Elm::select('interests', '会员权益')->options(function () {
return app()->make(MemberinterestsRepository::class)
->getSearch(['type' =>MemberinterestsRepository::TYPE_SVIP,'status' => 1])
->column('name as label,interests_id as value');
})->col(24)->multiple(true)->filterable(true)->appendValidate(Elm::validateArr()->message('请选择该等级会员权益')),
Elm::number('cost_price','原价')->required()->col(12)->min(0),
Elm::number('price','优惠价')->required()->col(12)->min(0),
Elm::number('sort','排序')->col(12)->min(0),
Elm::number('vegetable_quota','赠送菜卡额度')->required()->col(12)->min(0),
Elm::number('quota','赠送酒卡额度')->required()->col(12)->min(0),
Elm::number('wine_quota','赠送封坛酒额度')->required()->col(12)->min(0),
Elm::switches('status','是否显示')
->activeValue(1)
->inactiveValue(0)
->inactiveText('关')
->activeText('开')->col(12),
// 分佣设置
Elm::radio('is_open_brokerage','是否开启分佣','1')
->setOptions([['value' => '1','label' => '关闭'],['value' => '2','label' => '开启']])

View File

@ -106,6 +106,11 @@ class MemberinterestsRepository extends BaseRepository
return $list;
}
public function getInterestsAppointData(int $type,array $ids){
return $this->dao->getSearch(['type' => $type,'status' => 1])->whereIn('interests_id',$ids)->select();
}
public function svipForm(int $id)
{
$data = $this->dao->get($id);

View File

@ -102,12 +102,16 @@ class Svip extends BaseController
*/
public function svipUserInfo()
{
$interestsId = $this->request->param('interests_id');
$interestsId = $interestsId ? explode(',',$interestsId) : [];
if ($this->request->isLogin()) {
$user = app()->make(UserRepository::class)->getSearch([])->field('uid,nickname,avatar,is_svip,svip_endtime,svip_save_money')->find($this->request->uid());
if ($user && $user['is_svip'] == 3) $user['svip_endtime'] = date('Y-m-d H:i:s',strtotime("+100 year"));
}
$data['user'] = $user ?? new \stdClass();
$data['interests'] = systemConfig('svip_switch_status') ? app()->make(MemberinterestsRepository::class)->getInterestsByLevel(MemberinterestsRepository::TYPE_SVIP) : [];
$data['interests'] = systemConfig('svip_switch_status') ? app()->make(MemberinterestsRepository::class)->getInterestsAppointData(MemberinterestsRepository::TYPE_SVIP, $interestsId) : [];
return app('json')->success($data);
}