init
This commit is contained in:
292
apps/admin/controller/member/MemberController.php
Normal file
292
apps/admin/controller/member/MemberController.php
Normal file
@@ -0,0 +1,292 @@
|
||||
<?php
|
||||
/**
|
||||
* @copyright (C)2016-2099 Hnaoyun Inc.
|
||||
* @author XingMeng
|
||||
* @email hnxsh@foxmail.com
|
||||
* @date 2019年10月05日
|
||||
* 会员控制器
|
||||
*/
|
||||
namespace app\admin\controller\member;
|
||||
|
||||
use core\basic\Controller;
|
||||
use app\admin\model\member\MemberModel;
|
||||
|
||||
class MemberController extends Controller
|
||||
{
|
||||
|
||||
private $model;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->model = new MemberModel();
|
||||
}
|
||||
|
||||
// 会员列表
|
||||
public function index()
|
||||
{
|
||||
if ((! ! $id = get('id', 'int')) && $result = $this->model->getMember($id)) {
|
||||
$this->assign('more', true);
|
||||
$this->assign('fields', $this->model->getFields());
|
||||
$this->assign('member', $result);
|
||||
} else {
|
||||
$this->assign('list', true);
|
||||
if (! ! ($field = get('field', 'var')) && ! ! ($keyword = get('keyword', 'vars'))) {
|
||||
$result = $this->model->findMember($field, $keyword);
|
||||
} else {
|
||||
$result = $this->model->getList();
|
||||
}
|
||||
|
||||
// 会员等级
|
||||
$this->assign('groups', model('admin.member.MemberGroup')->getSelect());
|
||||
$this->assign('members', $result);
|
||||
}
|
||||
$this->display('member/member.html');
|
||||
}
|
||||
|
||||
// 会员增加
|
||||
public function add()
|
||||
{
|
||||
if ($_POST) {
|
||||
// 获取数据
|
||||
$ucode = get_auto_code($this->model->getLastCode(), 1);
|
||||
$username = post('username');
|
||||
$useremail = post('useremail');
|
||||
$usermobile = post('usermobile');
|
||||
$nickname = post('nickname');
|
||||
$password = post('password');
|
||||
$headpic = post('headpic');
|
||||
$status = post('status') ?: 1;
|
||||
$gid = post('gid');
|
||||
$score = post('score');
|
||||
$register_time = get_datetime();
|
||||
|
||||
if (! $username) {
|
||||
alert_back('用户账号不能为空!');
|
||||
}
|
||||
|
||||
if (! preg_match('/^[\w\@\.]+$/', $username)) {
|
||||
alert_back('用户账号含有不允许的特殊字符!');
|
||||
}
|
||||
|
||||
if ($useremail && ! preg_match('/^[\w]+@[\w\.]+\.[a-zA-Z]+$/', $useremail)) {
|
||||
alert_back('邮箱账号格式不正确!');
|
||||
}
|
||||
|
||||
if ($usermobile && ! preg_match('/^1[0-9]{10}$/', $usermobile)) {
|
||||
alert_back('手机号码格式不正确!');
|
||||
}
|
||||
|
||||
if ($username && $this->model->checkMember("username='$username' OR useremail='$username' OR usermobile='$username'")) {
|
||||
alert_back('用户名已经存在!');
|
||||
}
|
||||
|
||||
if ($useremail && $this->model->checkMember("username='$useremail' OR useremail='$useremail' OR usermobile='$useremail'")) {
|
||||
alert_back('邮箱账号已经存在!');
|
||||
}
|
||||
|
||||
if ($usermobile && $this->model->checkMember("username='$usermobile' OR useremail='$usermobile' OR usermobile='$usermobile'")) {
|
||||
alert_back('手机号码已经存在!');
|
||||
}
|
||||
|
||||
if (! $password) {
|
||||
alert_back('密码不能为空!');
|
||||
} else {
|
||||
$password = md5(md5($password));
|
||||
}
|
||||
|
||||
// 构建数据
|
||||
$data = array(
|
||||
'ucode' => $ucode,
|
||||
'username' => $username,
|
||||
'useremail' => $useremail,
|
||||
'usermobile' => $usermobile,
|
||||
'nickname' => $nickname,
|
||||
'password' => $password,
|
||||
'headpic' => $headpic,
|
||||
'status' => $status,
|
||||
'gid' => $gid,
|
||||
'wxid' => '',
|
||||
'qqid' => '',
|
||||
'wbid' => '',
|
||||
'activation' => 1,
|
||||
'score' => $score,
|
||||
'register_time' => $register_time,
|
||||
'login_count' => 0,
|
||||
'last_login_ip' => 0,
|
||||
'last_login_time' => 0
|
||||
);
|
||||
|
||||
// 执行添加
|
||||
if ($this->model->addMember($data)) {
|
||||
$this->log('新增会员成功!');
|
||||
if (! ! $backurl = get('backurl')) {
|
||||
success('新增成功!', base64_decode($backurl));
|
||||
} else {
|
||||
success('新增成功!', url('/admin/Member/index'));
|
||||
}
|
||||
} else {
|
||||
$this->log('新增会员失败!');
|
||||
error('新增失败!', - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 会员删除
|
||||
public function del()
|
||||
{
|
||||
// 执行批量删除
|
||||
if ($_POST) {
|
||||
if (! ! $list = post('list')) {
|
||||
if ($this->model->delMemberList($list)) {
|
||||
$this->log('批量删除会员成功!');
|
||||
success('删除成功!', - 1);
|
||||
} else {
|
||||
$this->log('批量删除会员失败!');
|
||||
error('删除失败!', - 1);
|
||||
}
|
||||
} else {
|
||||
alert_back('请选择要删除的会员!');
|
||||
}
|
||||
}
|
||||
|
||||
if (! $id = get('id', 'int')) {
|
||||
error('传递的参数值错误!', - 1);
|
||||
}
|
||||
|
||||
if ($this->model->delMember($id)) {
|
||||
$this->log('删除会员' . $id . '成功!');
|
||||
success('删除成功!', - 1);
|
||||
} else {
|
||||
$this->log('删除会员' . $id . '失败!');
|
||||
error('删除失败!', - 1);
|
||||
}
|
||||
}
|
||||
|
||||
// 会员修改
|
||||
public function mod()
|
||||
{
|
||||
if (! ! $submit = post('submit')) {
|
||||
switch ($submit) {
|
||||
case 'verify1':
|
||||
$list = post('list');
|
||||
if (! $list) {
|
||||
alert_back('请选择要操作的会员!');
|
||||
}
|
||||
if ($this->model->modMemberList($list, "status=1")) {
|
||||
$this->log('会员批量启用成功!');
|
||||
success('启用成功!', - 1);
|
||||
} else {
|
||||
alert_back('启用失败!');
|
||||
}
|
||||
break;
|
||||
case 'verify0':
|
||||
$list = post('list');
|
||||
if (! $list) {
|
||||
alert_back('请选择要操作的会员!');
|
||||
}
|
||||
if ($this->model->modMemberList($list, "status=0")) {
|
||||
$this->log('会员批量禁用成功!');
|
||||
success('禁用成功!', - 1);
|
||||
} else {
|
||||
alert_back('禁用失败!');
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $id = get('id', 'int')) {
|
||||
error('传递的参数值错误!', - 1);
|
||||
}
|
||||
|
||||
// 单独修改状态
|
||||
if (($field = get('field', 'var')) && ! is_null($value = get('value', 'var'))) {
|
||||
if ($this->model->modMember($id, "$field='$value'")) {
|
||||
location(- 1);
|
||||
} else {
|
||||
alert_back('修改失败!');
|
||||
}
|
||||
}
|
||||
|
||||
// 修改操作
|
||||
if ($_POST) {
|
||||
|
||||
// 获取数据
|
||||
$username = post('username');
|
||||
$useremail = post('useremail');
|
||||
$usermobile = post('usermobile');
|
||||
$nickname = post('nickname');
|
||||
$password = post('password');
|
||||
$headpic = post('headpic');
|
||||
$status = post('status') ?: 1;
|
||||
$gid = post('gid');
|
||||
$score = post('score');
|
||||
|
||||
if (! $username) {
|
||||
alert_back('用户账号不能为空!');
|
||||
}
|
||||
|
||||
if (! preg_match('/^[\w\@\.]+$/', $username)) {
|
||||
alert_back('用户账号含有不允许的特殊字符!');
|
||||
}
|
||||
|
||||
if ($useremail && ! preg_match('/^[\w]+@[\w\.]+\.[a-zA-Z]+$/', $useremail)) {
|
||||
alert_back('邮箱账号格式不正确!');
|
||||
}
|
||||
|
||||
if ($usermobile && ! preg_match('/^1[0-9]{10}$/', $usermobile)) {
|
||||
alert_back('手机号码格式不正确!');
|
||||
}
|
||||
|
||||
if ($username && $this->model->checkMember("(username='$username' OR useremail='$username' OR usermobile='$username') AND id<>$id")) {
|
||||
alert_back('用户名已经存在!');
|
||||
}
|
||||
|
||||
if ($useremail && $this->model->checkMember("(username='$useremail' OR useremail='$useremail' OR usermobile='$useremail') AND id<>$id")) {
|
||||
alert_back('邮箱账号已经存在!');
|
||||
}
|
||||
|
||||
if ($usermobile && $this->model->checkMember("(username='$usermobile' OR useremail='$usermobile' OR usermobile='$usermobile') AND id<>$id")) {
|
||||
alert_back('手机号码已经存在!');
|
||||
}
|
||||
|
||||
// 构建数据
|
||||
$data = array(
|
||||
'username' => $username,
|
||||
'useremail' => $useremail,
|
||||
'usermobile' => $usermobile,
|
||||
'nickname' => $nickname,
|
||||
'headpic' => $headpic,
|
||||
'status' => $status,
|
||||
'gid' => $gid,
|
||||
'score' => $score
|
||||
);
|
||||
|
||||
if ($password) {
|
||||
$data['password'] = md5(md5($password));
|
||||
}
|
||||
|
||||
// 执行添加
|
||||
if ($this->model->modMember($id, $data)) {
|
||||
$this->log('修改会员成功!');
|
||||
if (! ! $backurl = get('backurl')) {
|
||||
success('修改成功!', base64_decode($backurl));
|
||||
} else {
|
||||
success('修改成功!', url('/admin/Member/index'));
|
||||
}
|
||||
} else {
|
||||
$this->log('修改会员失败!');
|
||||
error('修改失败!', - 1);
|
||||
}
|
||||
} else {
|
||||
// 调取修改内容
|
||||
$this->assign('mod', true);
|
||||
if (! $result = $this->model->getMember($id)) {
|
||||
error('编辑的内容已经不存在!', - 1);
|
||||
}
|
||||
// 会员等级
|
||||
$this->assign('groups', model('admin.member.MemberGroup')->getSelect());
|
||||
$this->assign('member', $result);
|
||||
$this->display('member/member.html');
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user