dggzichahu/application/admin/validate/Role.php

64 lines
1.5 KiB
PHP
Executable File

<?php
// +----------------------------------------------------------------------
// | 宏驰云科技开发团队 版权所有 拥有最终解释权
// +----------------------------------------------------------------------
// | Author: HcyShop-kiki
// +----------------------------------------------------------------------
namespace app\admin\validate;
use think\Db;
use think\Validate;
class Role extends Validate
{
protected $rule = [
'id' => 'adminExistRole',
'name' => 'require',
'auth_ids' => 'array'
];
protected $message = [
'name.require' => '角色名不能为空',
'auth_ids.auth' => '权限错误',
'id.adminExistRole' => '管理员列表存在该角色,无法删除',
];
protected function sceneAdd()
{
$this->remove('id', ['adminExistRole']);
}
protected function sceneEdit()
{
$this->remove('id', ['adminExistRole']);
}
public function sceneDel()
{
$this->remove('name', ['require'])
->remove('auth_ids', ['auth']);
}
/**
* 判断管理列表是否存在该角色
* @param $id
* @return bool
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\ModelNotFoundException
* @throws \think\exception\DbException
*/
protected function adminExistRole($id)
{
$result = Db::name('admin')->where(['role_id' => $id, 'del' => 0])->find();
if ($result) {
return false;
}
return true;
}
}