Procházet zdrojové kódy

部分接口添加level筛选

wufeng před 2 roky
rodič
revize
6de0c36f4f

+ 1 - 1
app/admin/controller/Base.php

@@ -49,7 +49,7 @@ class Base extends \app\BaseController
             $where=["companyNo"=>$companyNo];
         }
 
-        if ($effetc['data']['level'] != 1) {
+        if ($effetc['data']['level'] == 2) {
             $user_role = Db::name("user_role")
                 ->field('id,roleid')
                 ->where(["uid" => $this->uid, "is_del" => 0])

+ 29 - 13
app/admin/controller/Menu.php

@@ -73,20 +73,36 @@ class Menu extends Base
 
         $where = [['status', '=', 1], ['cstatus', '=', 1], ['is_display', '=', 1]];
 
-        if ($level == 1) {
-            //超管,能看到等级为012的菜单
-            $role['action_conllect'] = Db::name('action')
-                ->where(['is_del' => 0, 'status' => 1])
-                ->column('id');
-            $where[] = ['blevel', 'in', [0, 1, 2]];
-        } else {
-            $role['action_conllect'] = Db::name('user_role')
-                ->alias('a')
-                ->leftJoin('role_action b', 'b.role_id=a.roleid')
-                ->where(['a.uid' => $this->uid, 'a.is_del' => 0, 'a.companyNo' => $post['relaComNo']])
-                ->value('b.action_conllect');
+        switch ($level) {
+
+            case 1:
+                //超管,能看到等级为012的菜单
+                $role['action_conllect'] = Db::name('action')
+                    ->where(['is_del' => 0, 'status' => 1])
+                    ->column('id');
+                $where[] = ['blevel', 'in', [0, 1, 2]];
+                break;
+            case 2:
+                $role['action_conllect'] = Db::name('user_role')
+                    ->alias('a')
+                    ->leftJoin('role_action b', 'b.role_id=a.roleid')
+                    ->where(['a.uid' => $this->uid, 'a.is_del' => 0, 'a.companyNo' => $post['relaComNo']])
+                    ->value('b.action_conllect');
+
+                $where[] = ['blevel', 'in', [0, $level]];
+                break;
+
+            case 3:
+
+                $role['action_conllect'] = Db::name('user_role')
+                    ->alias('a')
+                    ->leftJoin('role_action b', 'b.role_id=a.roleid')
+                    ->where(['a.uid' => $this->uid, 'a.is_del' => 0])
+                    ->value('b.action_conllect');
+
+                $where[] = ['blevel', 'in', [0, $level]];
+                break;
 
-            $where[] = ['blevel', 'in', [0, $level]];
         }
 
 //        if (empty($role['action_conllect'])) {

+ 4 - 2
app/admin/controller/Role.php

@@ -26,7 +26,7 @@ class Role extends Base
      */
     public function roleList()
     {
-        $post = $this->request->only(["status" => "", "role_name" => "", "relaComNo" => "", "companyName" => "", "companyNo" => "", "page" => 1, "size" => 10], "post", "trim");
+        $post = $this->request->only(["status" => "", "role_name" => "", "relaComNo" => "", "companyName" => "", "companyNo" => "", "page" => 1, "size" => 10,'level'=>''], "post", "trim");
         $condition = [];
 
         isset($post['status']) && $post['status'] !== "" ? $condition[] = ['a.status', "=", $post['status']] : "";
@@ -34,6 +34,7 @@ class Role extends Base
         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']}%"] : "";
+        isset($post['level']) && $post['level'] !== "" ? $condition[] = ["a.role_level", "=", $post['level']] : "";
 
         $count = Db::name("role")
             ->alias("a")
@@ -316,10 +317,11 @@ class Role extends Base
      */
     public function RoleAll()
     {
-        $post = $this->request->only(["relaComNo" => "", "companyNo" => ""], "post", "trim");
+        $post = $this->request->only(["relaComNo" => "", "companyNo" => "",'level'=>''], "post", "trim");
         $where = [];
         if ($post['relaComNo'] != '') $where[] = ["companyNo", "=", $post['relaComNo']];
         if ($post['companyNo'] != '') $where[] = ["companyNo", "=", $post['companyNo']];
+        if ($post['level'] != '') $where[] = ["role_level", "=", $post['level']];
         $list = Db::name("role")
             ->field(true)
             ->where($where)

+ 2 - 2
app/admin/controller/UserCompanyBasic.php

@@ -14,9 +14,9 @@ class UserCompanyBasic extends Base
     public function getList()
     {
 
-        $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10], 'post', 'trim');
+        $param = $this->request->only(['nickname' => '', 'username' => '', 'status' => '', 'page' => 1, 'size' => 10,'level'=>'2'], 'post', 'trim');
 
-        $param['islevel'] = 2;//排除超管账号
+        if ($param['level'] == 1) return json_show(1004, '这里不能查看超管账号');//排除超管账号
 
         $userCommon = new UserCommon();