|
@@ -4,6 +4,7 @@ namespace app\admin\logic;
|
|
|
|
|
|
use app\admin\controller\Common;
|
|
|
use app\model\AdminModel;
|
|
|
+use app\model\CardModel;
|
|
|
use app\model\CommonModel;
|
|
|
use think\exception\ValidateException;
|
|
|
use think\facade\Config;
|
|
@@ -19,13 +20,20 @@ class AdminLogic extends BaseLogic
|
|
|
->where('a.is_del', CommonModel::$del_normal);
|
|
|
|
|
|
if ($data['username'] != '') $db->whereLike('a.username', '%' . $data['username'] . '%');
|
|
|
- if ($data['nickname'] != '') $db->whereLike('a.nickname', '%' . $data['nickname'] . '%');
|
|
|
- if ($data['mobile'] != '') $db->whereLike('a.mobile', '%' . $data['mobile'] . '%');
|
|
|
if ($data['status'] != '') $db->where('a.status', $data['status']);
|
|
|
|
|
|
$count = $db->count('a.id');
|
|
|
|
|
|
- $list = $db->field('a.id,a.username,a.nickname,a.mobile,a.status,a.addtime,b.name as role_name')
|
|
|
+ $list = $db->field('a.id,a.username,a.status,a.addtime,b.name as role_name,a.card_id')
|
|
|
+ ->append(['card_name'])
|
|
|
+ ->withAttr('card_name', function ($val, $da) {
|
|
|
+ return CardModel::field('id,title,status')
|
|
|
+ ->whereIn('id', $da['card_id'])
|
|
|
+ ->where('is_del', CommonModel::$del_normal)
|
|
|
+ ->order(['id' => 'desc'])
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
+ })
|
|
|
->order(['a.id' => 'desc'])
|
|
|
->page($data['page'], $data['size'])
|
|
|
->select()
|
|
@@ -45,6 +53,7 @@ class AdminLogic extends BaseLogic
|
|
|
'status' => CommonModel::$status_normal,
|
|
|
'addtime' => date('Y-m-d H:i:s'),
|
|
|
'updatetime' => date('Y-m-d H:i:s'),
|
|
|
+ 'card_id' => implode(',', $data['card_id'])
|
|
|
]);
|
|
|
|
|
|
$rs = AdminModel::create($data)->save();
|
|
@@ -57,6 +66,9 @@ class AdminLogic extends BaseLogic
|
|
|
{
|
|
|
$rs = AdminModel::where(['id' => $id, 'is_del' => CommonModel::$del_normal])
|
|
|
->withoutField('password,salt')
|
|
|
+ ->withAttr('card_id', function ($val) {
|
|
|
+ return explode(',', $val);
|
|
|
+ })
|
|
|
->findOrEmpty()
|
|
|
->toArray();
|
|
|
|
|
@@ -67,6 +79,7 @@ class AdminLogic extends BaseLogic
|
|
|
public static function edit(array $data = []): Json
|
|
|
{
|
|
|
$data = array_merge($data, [
|
|
|
+ 'card_id' => implode(',', $data['card_id']),
|
|
|
'updatetime' => date('Y-m-d H:i:s'),
|
|
|
]);
|
|
|
|