Browse Source

Merge branch 'dev_wf' of wugg/cxinv into dev

wufeng 2 years ago
parent
commit
d7935497d9
2 changed files with 36 additions and 30 deletions
  1. 4 4
      app/admin/controller/Menu.php
  2. 32 26
      app/admin/controller/Role.php

+ 4 - 4
app/admin/controller/Menu.php

@@ -116,7 +116,7 @@ class Menu extends BaseController{
         	"private|是否私有"=>"require|number|in:0,1",
         	"weight|权重"=>"require|number",
         	"menu_type|菜单类型"=>"require|number|in:1,2",
-        	"level|菜单级别"=>"require|max:255",
+            "level|菜单级别" => "requireIf:menu_type,2|in:0,1,2,3",
         ]);
         if($valite->check($post)==false)return error_show(1004,$valite->getError());
         if($post['pid']!=0 && $post['menu_route']==""){
@@ -133,7 +133,7 @@ class Menu extends BaseController{
             "is_show"=>1,
             "is_private"=>$post['private'],
             "menu_type"=>$post['menu_type'],
-            "level"=>$post['level'],
+            "level" => $post['menu_type'] == 2 ? $post['level'] : 0,
             "status"=>1,
             "addtime"=>date("Y-m-d H:i:s"),
             "updatetime"=>date("Y-m-d H:i:s"),
@@ -172,7 +172,7 @@ class Menu extends BaseController{
         	"private|是否私有"=>"require|number|in:0,1",
         	"weight|权重"=>"require|number",
         	"menu_type|菜单类型"=>"require|number|in:1,2",
-        	"level|菜单级别"=>"require|max:255",
+            "level|菜单级别" => "requireIf:menu_type,2|in:0,1,2,3",
         	"id|菜单ID"=>"require|number|gt:0",
         ]);
         if($valite->check($post)==false)return error_show(1004,$valite->getError());
@@ -198,7 +198,7 @@ class Menu extends BaseController{
             "is_show"=>1,
             "is_private"=>$post['private'],
             "menu_type"=>$post['menu_type'],
-            "level"=>$post['level'],
+            "level" => $post['menu_type'] == 2 ? $post['level'] : 0,
             "status"=>1,
             "updatetime"=>date("Y-m-d H:i:s"),
         ];

+ 32 - 26
app/admin/controller/Role.php

@@ -18,32 +18,32 @@ class Role extends BaseController{
         * @throws \think\db\exception\DbException
         * @throws \think\db\exception\ModelNotFoundException
         */
-    public function roleList(){
-        $post=$this->request->only(["status"=>"","role_name"=>"","relaComNo"=>"","companyName"=>"","companyNo"=>"","level"=>"",
-        "page"=>1,"size"=>10],"post","trim");
-        $condition=[["a.level","<>",1]];
-
-        isset($post['status'])&&$post['status']!=="" ? $condition[]=['a.status',"=",$post['status']]:"";
-        isset($post['role_name'])&&$post['role_name']!=="" ? $condition[]=['a.role_name',"like","%".$post['role_name']."%"]:"";
-        isset($post['level'])&&$post['level']!=="" ? $condition[]=["a.level","=",$post['level']]:"";
-        isset($post['relaComNo'])&&$post['relaComNo']!=="" ? $condition[]=["a.companyNo","=",$post['relaComNo']]:"";
-        isset($post['companyNo'])&&$post['companyNo']!=="" ? $condition[]=["a.companyNo","=",$post['companyNo']]:"";
-        isset($post['companyName'])&&$post['companyName']!=="" ? $condition[]=["b.name","like","%{$post['companyName']}%"]:"";
-
-        $count =Db::name("role")->alias("a")
-        ->leftJoin("supplier_info b","a.companyNo=b.code")
-        ->where($condition)->count();
+    public function roleList()
+    {
+        $post = $this->request->only(["status" => "", "role_name" => "", "relaComNo" => "", "companyName" => "", "companyNo" => "", "level" => "", "page" => 1, "size" => 10], "post", "trim");
+        $condition = [["a.level", "<>", 1]];
+
+        isset($post['status']) && $post['status'] !== "" ? $condition[] = ['a.status', "=", $post['status']] : "";
+        isset($post['role_name']) && $post['role_name'] !== "" ? $condition[] = ['a.role_name', "like", "%" . $post['role_name'] . "%"] : "";
+        isset($post['level']) && $post['level'] !== "" ? $condition[] = ["a.level", "=", $post['level']] : "";
+        isset($post['relaComNo']) && $post['relaComNo'] !== "" ? $condition[] = ["a.companyNo", "=", $post['relaComNo']] : "";
+        isset($post['companyNo']) && $post['companyNo'] !== "" ? $condition[] = ["a.companyNo", "=", $post['companyNo']] : "";
+        isset($post['companyName']) && $post['companyName'] !== "" ? $condition[] = ["b.name", "like", "%{$post['companyName']}%"] : "";
+
+        $count = Db::name("role")->alias("a")
+            ->leftJoin("supplier_info b", "a.companyNo=b.code")
+            ->where($condition)->count();
         $page = isset($post['page']) ? intval($post['page']) : 1;
         $size = isset($post['size']) ? intval($post['size']) : 10;
-        $page >=ceil($count/$size) ? $page= (int)ceil($count/$size) :"";
-        $list=Db::name("role")->alias("a")
-        ->leftJoin("supplier_info b","a.companyNo=b.code")
+        $page >= ceil($count / $size) ? $page = (int)ceil($count / $size) : "";
+        $list = Db::name("role")->alias("a")
+            ->leftJoin("supplier_info b", "a.companyNo=b.code")
 //        ->leftJoin("role_action t","a.id=t.role_id")
-        ->field("a.*,b.name as companyName")
-        ->order("a.addtime desc")
-        ->where($condition)->page($page,$size)->select();
+            ->field("a.*,b.name as companyName")
+            ->order("a.addtime desc")
+            ->where($condition)->page($page, $size)->select();
 
-        return app_show(0,"获取成功",["list"=>$list,"count"=>$count]);
+        return app_show(0, "获取成功", ["list" => $list, "count" => $count]);
     }
     /** 角色新建
  * @role_name 角色名称
@@ -67,8 +67,11 @@ class Role extends BaseController{
         	"action|角色权限"=>"require|array",
         	]);
         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, "超管权限角色不可关联业务公司");
+        }
+        if ($post['relaComNo'] != "" && $post["level"] == 3) {
+            return error_show(1002, "供应商权限角色不可关联业务公司");
         }
         if($this->level==1){
         	$companyNo =$post['companyNo']??"";
@@ -181,8 +184,11 @@ class Role extends BaseController{
         if(!$info){
             return error_show(1002,"未找到对应的数据");
         }
-          if($post['relaComNo']!=""&& $info["level"]==1){
-        	  return error_show(1002,"超管权限角色不可关联业务公司");
+        if ($post['relaComNo'] != "" && $info["level"] == 1) {
+            return error_show(1002, "超管权限角色不可关联业务公司");
+        }
+        if ($post['relaComNo'] != "" && $info["level"] == 3) {
+            return error_show(1002, "供应商权限角色不可关联业务公司");
         }
 //		if($this->level==1){
 //        	$companyNo =$post['companyNo']??"";