160 lines
6.5 KiB
PHP
160 lines
6.5 KiB
PHP
<?php
|
|
/**
|
|
* SAAS应用系统 --- 十年开发经验汇集巨献!
|
|
* ==========================================================
|
|
* Copy right 2020-2050 成都众联思索科技有限公司,保留所有权利。
|
|
* ----------------------------------------------------------
|
|
* 官方网址: https://www.zoomtk.com
|
|
* 这不是自由软件!未经允许不得用于商业目或程序代码摘取及修改。
|
|
* 任何企业和个人不允许对程序代码以任何形式任何目的再发布传播。
|
|
* 唯一发布渠道www.zoomtk.com;非官方渠道统一视为侵权行为。
|
|
* ==========================================================
|
|
*/
|
|
namespace addon\member\shop\controller;
|
|
use app\shop\controller\BaseShop;
|
|
use addon\member\model\MemberLevel as MemberLevelModel;
|
|
use addon\coupon\model\CouponType;
|
|
use addon\member\model\Member as MemberModel;
|
|
/**
|
|
* 会员等级管理 控制器
|
|
*/
|
|
class Memberlevel extends BaseShop
|
|
{
|
|
/**
|
|
* 会员等级列表
|
|
*/
|
|
public function levelList()
|
|
{
|
|
if (request()->isAjax()) {
|
|
$page = input('page', 1);
|
|
$page_size = input('page_size', PAGE_LIST_ROWS);
|
|
$search_text = input('search_text', '');
|
|
$level_type = input('level_type', 0);
|
|
|
|
$condition = [
|
|
['site_id', '=', $this->site_id],
|
|
['level_type', '=', $level_type]
|
|
];
|
|
if (!empty($search_text)) $condition[] = ['level_name', 'like', "%" . $search_text . "%"];
|
|
$order = 'growth asc,level_id desc';
|
|
$field = '*';
|
|
|
|
$member_level_model = new MemberLevelModel();
|
|
$list = $member_level_model->getMemberLevelPageList($condition, $page, $page_size, $order, $field);
|
|
if (!empty($list['data']['list'])) {
|
|
$member_model = new MemberModel();
|
|
foreach ($list['data']['list'] as $k => $item) {
|
|
$count = $member_model->getMemberCount([ ['member_level', '=', $item['level_id'] ], ['is_delete', '=', 0] ]);
|
|
$list['data']['list'][$k]['member_num'] = $count['data'];
|
|
}
|
|
}
|
|
return $list;
|
|
} else {
|
|
return $this->fetch('memberlevel/level_list');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 会员等级添加
|
|
*/
|
|
public function addLevel()
|
|
{
|
|
$member_level_model = new MemberLevelModel();
|
|
if (request()->isAjax()) {
|
|
$data = [
|
|
'site_id' => $this->site_id,
|
|
'level_name' => input('level_name', ''),
|
|
'growth' => input('growth', 0),
|
|
'remark' => input('remark', ''),
|
|
'is_free_shipping' => input('is_free_shipping', 0),
|
|
'consume_discount' => input('consume_discount', 100),
|
|
'point_feedback' => input('point_feedback', 0),
|
|
'send_point' => input('send_point', 0),
|
|
'send_balance' => input('send_balance', 0),
|
|
'send_coupon' => input('send_coupon', ''),
|
|
'level_type' => 0,
|
|
'charge_rule' => '',
|
|
'charge_type' => 0
|
|
];
|
|
$this->addLog("会员等级添加:" . $data['level_name']);
|
|
$res = $member_level_model->addMemberLevel($data);
|
|
return $res;
|
|
|
|
} else {
|
|
|
|
//获取优惠券列表
|
|
$coupon_model = new CouponType();
|
|
$condition = [
|
|
['status', '=', 1],
|
|
['site_id', '=', $this->site_id],
|
|
];
|
|
//优惠券字段
|
|
$coupon_field = 'coupon_type_id,type,coupon_name,image,money,discount,validity_type,fixed_term,status,is_limit,at_least,count,lead_count,end_time,goods_type,max_fetch';
|
|
$coupon_list = $coupon_model->getCouponTypeList($condition, $coupon_field);
|
|
$this->assign('coupon_list', $coupon_list);
|
|
|
|
$this->assign('level_time', $member_level_model->level_time);
|
|
|
|
return $this->fetch('memberlevel/add_level');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 会员等级修改
|
|
*/
|
|
public function editLevel()
|
|
{
|
|
$member_level_model = new MemberLevelModel();
|
|
if (request()->isAjax()) {
|
|
$data = [
|
|
'level_name' => input('level_name', ''),
|
|
'growth' => input('growth', 0.00),
|
|
'remark' => input('remark', ''),
|
|
'is_free_shipping' => input('is_free_shipping', 0),
|
|
'consume_discount' => input('consume_discount', 100),
|
|
'point_feedback' => input('point_feedback', 0),
|
|
'send_point' => input('send_point', 0),
|
|
'send_balance' => input('send_balance', 0),
|
|
'send_coupon' => input('send_coupon', ''),
|
|
'charge_rule' => ''
|
|
];
|
|
|
|
$level_id = input('level_id', 0);
|
|
|
|
$this->addLog("会员等级修改:" . $data['level_name']);
|
|
return $member_level_model->editMemberLevel($data, [['level_id', '=', $level_id], ['site_id', '=', $this->site_id]]);
|
|
} else {
|
|
|
|
$level_id = input('get.level_id', 0);
|
|
$level_info = $member_level_model->getMemberLevelInfo([['level_id', '=', $level_id], ['site_id', '=', $this->site_id]]);
|
|
if (empty($level_info['data'])) return $this->error('未获取到等级数据', addon_url('shop/memberlevel/levellist'));
|
|
|
|
$this->assign('level_info', $level_info['data']);
|
|
|
|
$this->assign('level_time', $member_level_model->level_time);
|
|
|
|
//获取优惠券列表
|
|
$coupon_model = new CouponType();
|
|
$condition = [
|
|
['status', '=', 1],
|
|
['site_id', '=', $this->site_id],
|
|
];
|
|
//优惠券字段
|
|
$coupon_field = 'coupon_type_id,type,coupon_name,image,money,discount,validity_type,fixed_term,status,is_limit,at_least,count,lead_count,end_time,goods_type,max_fetch';
|
|
$coupon_list = $coupon_model->getCouponTypeList($condition, $coupon_field);
|
|
$this->assign('coupon_list', $coupon_list);
|
|
return $this->fetch('memberlevel/edit_level');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 会员等级删除
|
|
*/
|
|
public function deleteLevel()
|
|
{
|
|
$level_id = input('level_id', '');
|
|
$member_level_model = new MemberLevelModel();
|
|
$this->addLog("会员等级删除id:" . $level_id);
|
|
return $member_level_model->deleteMemberLevel($level_id, $this->site_id);
|
|
}
|
|
} |