浏览代码

pc权限,管理员,管理组

lizhen_gitee 8 月之前
父节点
当前提交
9760b593bd
共有 2 个文件被更改,包括 46 次插入46 次删除
  1. 42 42
      application/company/controller/auth/Admin.php
  2. 4 4
      application/company/validate/Admin.php

+ 42 - 42
application/company/controller/auth/Admin.php

@@ -112,43 +112,51 @@ class Admin extends Apic
      */
     public function add()
     {
+        $params = [
+            'username' => input('username',''),//手机号
+            'nickname' => input('nickname',''),//姓名
+            'password' => input('password',''),//密码
+            'gonghao'  => input('gonghao',''), //工号
+        ];
+        $group_id = input('group_id',0);
+        if(empty($group_id)){
+            $this->error();
+        }
 
-            
-            $params = $this->request->post("row/a");
-            if ($params) {
-                Db::startTrans();
-                try {
-                    if (!Validate::is($params['password'], '\S{6,30}')) {
-                        exception(__("Please input correct password"));
-                    }
-                    $params['salt'] = Random::alnum();
-                    $params['password'] = $this->auth->getEncryptPassword($params['password'], $params['salt']);
-                    $params['avatar'] = '/assets/img/avatar.png'; //设置新管理员默认头像。
-                    $result = $this->model->validate('Admin.add')->save($params);
-                    if ($result === false) {
-                        exception($this->model->getError());
-                    }
-                    $group = $this->request->post("group/a");
+        Db::startTrans();
 
-                    //过滤不允许的组别,避免越权
-                    $group = array_intersect($this->childrenGroupIds, $group);
-                    if (!$group) {
-                        exception(__('The parent group exceeds permission limit'));
-                    }
+        try {
+            if (!Validate::is($params['password'], '\S{6,30}')) {
+                exception(__("Please input correct password"));
+            }
+            $params['mobile'] = $params['username'];
+            $params['company_id'] = $this->auth->company_id;
+            $params['salt'] = Random::alnum();
+            $params['password'] = $this->auth->getEncryptPassword($params['password'], $params['salt']);
+            $params['avatar'] = '/assets/img/avatar.png'; //设置新管理员默认头像。
+            $result = $this->model->validate('Admin.add')->save($params);
+            if ($result === false) {
+                exception($this->model->getError());
+            }
+            $group = [$group_id];
 
-                    $dataset = [];
-                    foreach ($group as $value) {
-                        $dataset[] = ['uid' => $this->model->id, 'group_id' => $value];
-                    }
-                    model('AuthGroupAccess')->saveAll($dataset);
-                    Db::commit();
-                } catch (\Exception $e) {
-                    Db::rollback();
-                    $this->error($e->getMessage());
-                }
-                $this->success();
+            //过滤不允许的组别,避免越权
+            $group = array_intersect($this->childrenGroupIds, $group);
+            if (!$group) {
+                exception(__('The parent group exceeds permission limit'));
             }
-            $this->error(__('Parameter %s can not be empty', ''));
+
+            $dataset = [];
+            foreach ($group as $value) {
+                $dataset[] = ['uid' => $this->model->id, 'group_id' => $value];
+            }
+            model('AuthGroupAccess')->saveAll($dataset);
+            Db::commit();
+        } catch (\Exception $e) {
+            Db::rollback();
+            $this->error($e->getMessage());
+        }
+        $this->success();
 
     }
 
@@ -267,15 +275,7 @@ class Admin extends Apic
         $this->error(__('You have no permission'));
     }
 
-    /**
-     * 批量更新
-     * @internal
-     */
-    public function multi($ids = "")
-    {
-        // 管理员禁止批量操作
-        $this->error();
-    }
+   
 
     /**
      * 下拉搜索

+ 4 - 4
application/company/validate/Admin.php

@@ -14,7 +14,7 @@ class Admin extends Validate
         'username' => 'require|regex:\w{3,30}|unique:PcAdmin',
         'nickname' => 'require',
         'password' => 'require|regex:\S{32}',
-        'email'    => 'require|email|unique:PcAdmin,email',
+//        'email'    => 'require|email|unique:PcAdmin,email',
         'mobile'   => 'regex:1[3-9]\d{9}|unique:PcAdmin,mobile',
     ];
 
@@ -34,8 +34,8 @@ class Admin extends Validate
      * 验证场景
      */
     protected $scene = [
-        'add'  => ['username', 'email', 'nickname', 'password', 'mobile'],
-        'edit' => ['username', 'email', 'nickname', 'password', 'mobile'],
+        'add'  => ['username',/* 'email',*/ 'nickname', 'password', 'mobile'],
+        'edit' => ['username',/* 'email',*/ 'nickname', 'password', 'mobile'],
     ];
 
     public function __construct(array $rules = [], $message = [], $field = [])
@@ -44,7 +44,7 @@ class Admin extends Validate
             'username' => __('Username'),
             'nickname' => __('Nickname'),
             'password' => __('Password'),
-            'email'    => __('Email'),
+//            'email'    => __('Email'),
             'mobile'   => __('Mobile'),
         ];
         $this->message = array_merge($this->message, [