|
@@ -71,14 +71,15 @@ class Role extends Base
|
|
|
|
|
|
public function roleAdd()
|
|
public function roleAdd()
|
|
{
|
|
{
|
|
- $post = $this->request->only(["role_name", "action", "action_data" => "", "private_data" => "", "relaComNo" => "", "companyNo" => "", 'is_allow_see_price', 'private_field'], "post");
|
|
|
|
|
|
+ $post = $this->request->only(["role_name", "action", "action_data" => "", "private_data" => "", "relaComNo" => "", 'is_allow_see_price', 'private_field','level','desc'=>''], "post");
|
|
$valid = Validate::rule([
|
|
$valid = Validate::rule([
|
|
"role_name|角色名称" => "require|max:255|min:2",
|
|
"role_name|角色名称" => "require|max:255|min:2",
|
|
- "relaComNo|业务公司编号" => "requireWithout:companyNo|max:255",
|
|
|
|
- "companyNo|业务公司编号" => "requireWithout:relaComNo|max:255",
|
|
|
|
|
|
+ "relaComNo|业务公司编号" => "requireIf:level,2|max:255",
|
|
|
|
+// "companyNo|业务公司编号" => "requireWithout:relaComNo|max:255",
|
|
"action|角色权限" => "require|array",
|
|
"action|角色权限" => "require|array",
|
|
"is_allow_see_price|是否允许查看价格" => "require|in:0,1",
|
|
"is_allow_see_price|是否允许查看价格" => "require|in:0,1",
|
|
- 'private_field|关键字段权限' => 'require|array|max:3'
|
|
|
|
|
|
+ 'private_field|关键字段权限' => 'require|array|max:3',
|
|
|
|
+ "level|角色级别"=>"require|number|in:1,2,3",
|
|
]);
|
|
]);
|
|
if ($valid->check($post) == false) return error_show(1004, $valid->getError());
|
|
if ($valid->check($post) == false) return error_show(1004, $valid->getError());
|
|
// if ($post['relaComNo'] != "" && $post["level"] == 1) return error_show(1002, "超管权限角色不可关联业务公司");
|
|
// if ($post['relaComNo'] != "" && $post["level"] == 1) return error_show(1002, "超管权限角色不可关联业务公司");
|
|
@@ -86,11 +87,10 @@ class Role extends Base
|
|
// if ($this->level == 1) $companyNo = $post['companyNo'] ?? "";
|
|
// if ($this->level == 1) $companyNo = $post['companyNo'] ?? "";
|
|
// else $companyNo = $post['relaComNo'] ?? "";
|
|
// else $companyNo = $post['relaComNo'] ?? "";
|
|
|
|
|
|
- $companyNo = $post['relaComNo']=='' ? $post['companyNo']:'';
|
|
|
|
|
|
+// $companyNo = $post['relaComNo']=='' ? $post['companyNo']:'';
|
|
|
|
|
|
$where = [["role_name", "=", $post['role_name']]];
|
|
$where = [["role_name", "=", $post['role_name']]];
|
|
- if ($companyNo != "") $where[] = ["companyNo", "=", $companyNo];
|
|
|
|
-
|
|
|
|
|
|
+ if ($post['relaComNo'] != "") $where[] = ["companyNo", "=", $post['relaComNo']];
|
|
|
|
|
|
$isT = Db::name("role")->field('id')->where($where)->find();
|
|
$isT = Db::name("role")->field('id')->where($where)->find();
|
|
if ($isT) return error_show(1002, "角色名称已存在");
|
|
if ($isT) return error_show(1002, "角色名称已存在");
|
|
@@ -105,11 +105,13 @@ class Role extends Base
|
|
$date = date("Y-m-d H:i:s");
|
|
$date = date("Y-m-d H:i:s");
|
|
$list = [
|
|
$list = [
|
|
"role_name" => $post['role_name'],
|
|
"role_name" => $post['role_name'],
|
|
- "companyNo" => $companyNo,
|
|
|
|
|
|
+ "companyNo" => $post['level']==2?$post['relaComNo']:'',
|
|
"status" => 1,
|
|
"status" => 1,
|
|
"addtime" => $date,
|
|
"addtime" => $date,
|
|
"updatetime" => $date,
|
|
"updatetime" => $date,
|
|
- 'is_allow_see_price' => $post['is_allow_see_price']
|
|
|
|
|
|
+ 'role_level'=>$post['level'],
|
|
|
|
+ 'is_allow_see_price' => $post['is_allow_see_price'],
|
|
|
|
+ 'desc' => $post['desc']
|
|
];
|
|
];
|
|
$role = Db::name("role")->insert($list, true);
|
|
$role = Db::name("role")->insert($list, true);
|
|
|
|
|
|
@@ -187,14 +189,16 @@ class Role extends Base
|
|
*/
|
|
*/
|
|
public function roleSave()
|
|
public function roleSave()
|
|
{
|
|
{
|
|
- $post = $this->request->only(["roleid" => "", "role_name" => "", "relaComNo" => "", "companyNo" => "", "action" => "", "action_data" => "", "private_data" => "",'is_allow_see_price','private_field'], "post");
|
|
|
|
|
|
+ $post = $this->request->only(["roleid" => "", "role_name" => "", "relaComNo" => "", "action" => "", "action_data" => "", "private_data" => "",'is_allow_see_price','private_field','level','desc'], "post");
|
|
$valid = Validate::rule([
|
|
$valid = Validate::rule([
|
|
"role_name|角色名称" => "require|max:255|min:2",
|
|
"role_name|角色名称" => "require|max:255|min:2",
|
|
- "relaComNo|业务公司编号" => "max:255",
|
|
|
|
- "companyNo|业务公司编号" => "max:255",
|
|
|
|
|
|
+// "relaComNo|业务公司编号" => "max:255",
|
|
|
|
+// "companyNo|业务公司编号" => "max:255",
|
|
|
|
+ "relaComNo|业务公司编号" => "requireIf:level,2|max:255",
|
|
"action|角色权限" => "require|array",
|
|
"action|角色权限" => "require|array",
|
|
"is_allow_see_price|是否允许查看价格" => "require|in:0,1",
|
|
"is_allow_see_price|是否允许查看价格" => "require|in:0,1",
|
|
- 'private_field|关键字段权限'=>'require|array|max:3'
|
|
|
|
|
|
+ 'private_field|关键字段权限'=>'require|array|max:3',
|
|
|
|
+ "level|角色级别"=>"require|number|in:1,2,3",
|
|
]);
|
|
]);
|
|
if ($valid->check($post) == false) return error_show(1004, $valid->getError());
|
|
if ($valid->check($post) == false) return error_show(1004, $valid->getError());
|
|
$info = Db::name("role")->where("id", "=", $post['roleid'])->find();
|
|
$info = Db::name("role")->where("id", "=", $post['roleid'])->find();
|
|
@@ -207,13 +211,22 @@ class Role extends Base
|
|
// }else{
|
|
// }else{
|
|
// $companyNo =$post['relaComNo']??"";
|
|
// $companyNo =$post['relaComNo']??"";
|
|
// }
|
|
// }
|
|
- $vers = Db::name("role")->where([["id", '<>', $post['roleid']], ["role_name", "=", $post['role_name']], ["companyNo", "=", $info['companyNo']]])->find();
|
|
|
|
|
|
+
|
|
|
|
+ $tmp_where=[
|
|
|
|
+ ["id", '<>', $post['roleid']],
|
|
|
|
+ ["role_name", "=", $post['role_name']],
|
|
|
|
+ ];
|
|
|
|
+ if($post['level']==2) $tmp_where[]=['companyNo','=',$post['relaComNo']];
|
|
|
|
+ $vers = Db::name("role")
|
|
|
|
+ ->field('id')
|
|
|
|
+ ->where($tmp_where)
|
|
|
|
+ ->find();
|
|
if ($vers) return error_show(1002, "角色名已存在");
|
|
if ($vers) return error_show(1002, "角色名已存在");
|
|
|
|
|
|
$action = isset($post['action']) && is_array($post['action']) ? implode(",", $post['action']) : "";
|
|
$action = isset($post['action']) && is_array($post['action']) ? implode(",", $post['action']) : "";
|
|
- if ($action == "") {
|
|
|
|
- return error_show(1004, "功能权限不能为空");
|
|
|
|
- }
|
|
|
|
|
|
+// if ($action == "") {
|
|
|
|
+// return error_show(1004, "功能权限不能为空");
|
|
|
|
+// }
|
|
$data = isset($post['action_data']) && is_array($post['action_data']) ? implode(",", $post['action_data']) : "";
|
|
$data = isset($post['action_data']) && is_array($post['action_data']) ? implode(",", $post['action_data']) : "";
|
|
$private_data = isset($post['private_data']) && is_array($post['private_data']) ? implode(",", $post['private_data']) : "";
|
|
$private_data = isset($post['private_data']) && is_array($post['private_data']) ? implode(",", $post['private_data']) : "";
|
|
Db::startTrans();
|
|
Db::startTrans();
|
|
@@ -222,7 +235,10 @@ class Role extends Base
|
|
"role_name" => $post['role_name'],
|
|
"role_name" => $post['role_name'],
|
|
"updatetime" => date("Y-m-d H:i:s"),
|
|
"updatetime" => date("Y-m-d H:i:s"),
|
|
'id' => $post['roleid'],
|
|
'id' => $post['roleid'],
|
|
- 'is_allow_see_price' => $post['is_allow_see_price']
|
|
|
|
|
|
+ 'is_allow_see_price' => $post['is_allow_see_price'],
|
|
|
|
+ 'role_level'=>$post['level'],
|
|
|
|
+ "companyNo" => $post['level']==2?$post['relaComNo']:'',
|
|
|
|
+ 'desc' => $post['desc']
|
|
];
|
|
];
|
|
$role = Db::name("role")->save($list);
|
|
$role = Db::name("role")->save($list);
|
|
if ($role) {
|
|
if ($role) {
|