UserLogic.php
3.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?php
namespace App\Http\Logic\Aside\User;
use App\Helper\Common;
use App\Http\Logic\Aside\BaseLogic;
use App\Models\Manage\Manage;
use App\Models\Manage\MenuSpecial;
use App\Models\Project\Project;
use App\Models\User\User;
use App\Models\User\User as UserModel;
class UserLogic extends BaseLogic
{
public function __construct()
{
parent::__construct();
$this->model = new User();
$this->param = $this->requestAll;
}
/**
* @name :获取详情
* @return void
* @author :liyuhang
* @method
*/
public function user_info()
{
$info = Common::get_user_cache($this->model, $this->param['id'], 'A');
if (empty($info)) {
$info = $this->model->read($this->param, ['id', 'project_id', 'name', 'status', 'mobile', 'operator_id']);
if ($info === false) {
$this->fail('当前数据不存在');
}
$info['project_name'] = (new Project())->read(['id' => $info['project_id']], ['title'])['title'];
//获取当前用户特殊模块权限
$specialMenuModel = new MenuSpecial();
$info['special'] = $specialMenuModel->list(['user_list'=>['like',','.$this->param['id'].',']],'id',['id','name','remark']);
Common::set_user_cache($info, $this->model, $this->param['id'], 'A');
}
return $this->success($info);
}
/**
* @name :添加会员
* @return void
* @author :liyuhang
* @method
*/
public function projectUserSave()
{
if (isset($this->param['id']) && !empty($this->param['id'])) {
$info = $this->model->read(['mobile' => $this->param['mobile'], 'id' => ['!=', $this->param['id']]]);
if ($info !== false) {
$this->fail('当前手机号码已存在');
}
$this->param = $this->editPassword($this->param);
$rs = $this->model->edit($this->param, ['id' => $this->param['id']]);
} else {
$info = $this->model->read(['mobile'=>$this->param['mobile']]);
if($info !== false){
$this->fail('当前手机号码已存在');
}
$info = $this->model->read(['project_id'=>$this->param['project_id'],'role_id'=>0]);
if($info !== false){
$this->fail('当前项目已存在超级管理员,请选择其他项目');
}
$this->param['password'] = base64_encode(md5($this->param['password']));
$rs = $this->model->add($this->param);
}
if ($rs === false) {
$this->fail('添加失败');
}
return $this->success();
}
/**
* @name :编辑会员
* @return void
* @author :liyuhang
* @method
*/
public function editPassword($param)
{
//验证密码是否更改
if (isset($param['password']) && !empty($param['password'])) {
$info = $this->model->read(['id' => $param['id']]);
if ($info['password'] != $param['password']) {
$param['password'] = base64_encode(md5($param['password']));
}
}
return $this->success($param);
}
/**
* @name :删除会员
* @return void
* @author :liyuhang
* @method
*/
public function user_del()
{
$ids = $this->param['id'];
$this->param['id'] = ['in', $this->param['id']];
$rs = $this->model->del($this->param);
if ($rs === false) {
$this->fail('删除失败');
}
Common::del_user_cache($this->model, $ids, 'A');
return $this->success();
}
}