Explorar el Código

教师管理,学员管理

贾小兵 hace 4 meses
padre
commit
54c4831c8c

+ 14 - 10
application/admin/controller/department/Admin.php

@@ -89,7 +89,13 @@ class Admin extends Backend
             $filter = $this->request->get("filter", '');
             $filter = (array)json_decode($filter, true);
             $filter_w = [];
-
+            $authGroupList = \app\admin\model\AuthGroupAccess::field('uid,group_id')
+                ->where('group_id', 'in', 8)
+                ->select();
+            foreach ($authGroupList as $k => $v) {
+                $childrenAdminIds[] = $v['uid'];
+            }
+            $filter_w['id']=['in',$childrenAdminIds];
             if (isset($filter['department_id'])) {
                 $department_id = $filter['department_id'];
                 unset($filter['department_id']);
@@ -103,10 +109,8 @@ class Admin extends Backend
                 $filter_w['id'] = ['in', $admin_ids];
             }else if ($this->auth->data_scope!=1&&!$this->auth->isSuperAdmin()){
                 $this->childrenAdminIds = \app\admin\model\department\Admin::getChildrenAdminIds($this->auth->id, true);
-                $filter_w['id']=['in',$this->childrenAdminIds];
+                $filter_w['admin_id']=['in',$this->childrenAdminIds];
             }
-
-
             list($where, $sort, $order, $offset, $limit) = $this->buildparams();
             $total = $this->model
                 ->where($where)
@@ -161,12 +165,12 @@ class Admin extends Backend
 
                     //获取部门信息
                     if (!$department_id) {
-                        exception(__("部门不能为空"));
+                        exception(__("组织不能为空"));
                     }
                     $d_list = $departmentModel->where('id', 'in', $department_id)->select();
 
                     if (!$d_list) {
-                        exception(__("部门不能为空"));
+                        exception(__("组织不能为空"));
                     }
 
                     if (!Validate::is($params['password'], '\S{6,16}')) {
@@ -193,7 +197,7 @@ class Admin extends Backend
 
                     $group = $this->request->post("group/a");
                     //过滤不允许的组别,避免越权
-                    $group = array_intersect($this->childrenGroupIds, $group);
+                    $group = [8];//array_intersect($this->childrenGroupIds, $group);
 
                     //添加权限默认
                     if (!$group) {
@@ -280,8 +284,8 @@ class Admin extends Backend
                     $adminValidate = \think\Loader::validate('Admin');
                     $adminValidate->rule([
                         'username' => 'require|regex:\w{3,20}|unique:admin,username,' . $row->id,
-                        'email' => 'require|email|unique:admin,email,' . $row->id,
-                        'mobile'    => 'regex:1[3-9]\d{9}|unique:admin,mobile,' . $row->id,
+//                        'email' => 'require|email|unique:admin,email,' . $row->id,
+//                        'mobile'    => 'regex:1[3-9]\d{9}|unique:admin,mobile,' . $row->id,
                         'password' => 'regex:\S{32}',
                     ]);
                     $result = $row->validate('Admin.edit')->save($params);
@@ -310,7 +314,7 @@ class Admin extends Backend
 
                     $group = $this->request->post("group/a");
                     // 过滤不允许的组别,避免越权
-                    $group = array_intersect($this->childrenGroupIds, $group);
+                    $group = [8];//array_intersect($this->childrenGroupIds, $group);
                     if (!$group) {
                         exception(__('The parent group exceeds permission limit'));
                     }

+ 1 - 1
application/admin/lang/zh-cn.php

@@ -3,7 +3,7 @@
 return [
     'User id'                                               => '会员ID',
     'Username'                                              => '账号',
-    'Nickname'                                              => '昵称',
+    'Nickname'                                              => '姓名',
     'Mobile'                                                => '手机',
     'Email'                                                 => '邮箱',
     'Password'                                              => '密码',

+ 0 - 1
application/admin/model/department/Admin.php

@@ -119,7 +119,6 @@ class Admin extends Model
         }
         cache($cache_name,$childrenAdminIds,3600);//缓存一个小时
 
-        halt($childrenAdminIds);
         return $childrenAdminIds;
 
 

+ 40 - 39
application/admin/view/department/admin/add.html

@@ -7,7 +7,7 @@
         </div>
     </div>
     <div class="form-group">
-        <label for="nickname" class="control-label col-xs-12 col-sm-2">{:__('姓名')}:</label>
+        <label for="nickname" class="control-label col-xs-12 col-sm-2">{:__('Nickname')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input type="text" class="form-control" id="nickname" name="row[nickname]" autocomplete="off" value="" data-rule="required" />
         </div>
@@ -15,64 +15,65 @@
     <div class="form-group">
         <label for="password" class="control-label col-xs-12 col-sm-2">{:__('Password')}:</label>
         <div class="col-xs-12 col-sm-8">
-            <input type="text" class="form-control" id="password" name="row[password]" autocomplete="new-password" value="{:\\fast\\Random::numeric(8)}" data-rule="required;password" />
+<!--            <input type="password" class="form-control" id="password" name="row[password]" autocomplete="new-password" value="{:\\fast\\Random::numeric(8)}" data-rule="required;password" />-->
+            <input type="password" class="form-control" id="password" name="row[password]" autocomplete="new-password" value="" data-rule="required;password" />
         </div>
     </div>
 
     <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('Department')}:</label>
         <div class="col-xs-12 col-sm-8">
-            {:build_select('department_id[]', $departmentdata, null, ['class'=>'form-control selectpicker','id'=>'department_ids', 'multiple'=>'false', 'data-rule'=>'required'])}
+            {:build_select('department_id', $departmentdata, null, ['class'=>'form-control selectpicker','id'=>'department_ids', 'multiple'=>'false', 'data-rule'=>'required'])}
         </div>
     </div>
 
-    <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            {:build_select('group[]', $groupdata, null, ['class'=>'form-control selectpicker', 'multiple'=>'false', 'data-rule'=>'required'])}
-        </div>
-    </div>
+<!--    <div class="form-group">-->
+<!--        <label class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            {:build_select('group[]', $groupdata, null, ['class'=>'form-control selectpicker', 'multiple'=>'false', 'data-rule'=>'required'])}-->
+<!--        </div>-->
+<!--    </div>-->
 
 
 
-    {if $exits_mobile}
-    <div class="form-group">
-        <label for="mobile" class="control-label col-xs-12 col-sm-2">{:__('手机')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            <input type="mobile" class="form-control" id="mobile" name="row[mobile]" value="" />
-        </div>
-    </div>
-    {/if}
+<!--    {if $exits_mobile}-->
+<!--    <div class="form-group">-->
+<!--        <label for="mobile" class="control-label col-xs-12 col-sm-2">{:__('手机')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            <input type="mobile" class="form-control" id="mobile" name="row[mobile]" value="" />-->
+<!--        </div>-->
+<!--    </div>-->
+<!--    {/if}-->
 
-    <div class="form-group">
-        <label for="email" class="control-label col-xs-12 col-sm-2">{:__('Email')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            <input type="email" class="form-control" id="email" name="row[email]" value="" data-rule="required;email" />
-        </div>
-    </div>
+<!--    <div class="form-group">-->
+<!--        <label for="email" class="control-label col-xs-12 col-sm-2">{:__('Email')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            <input type="email" class="form-control" id="email" name="row[email]" value="" data-rule="required;email" />-->
+<!--        </div>-->
+<!--    </div>-->
 
-    {if $auth->isSuperAdmin()}
-    <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('数据范围')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            {:build_radios('row[data_scope]', ['1'=>__('全部'), '0'=>__('默认')], 0)}
-        </div>
-    </div>
-    {/if}
+<!--    {if $auth->isSuperAdmin()}-->
+<!--    <div class="form-group">-->
+<!--        <label class="control-label col-xs-12 col-sm-2">{:__('数据范围')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            {:build_radios('row[data_scope]', ['1'=>__('全部'), '0'=>__('默认')], 0)}-->
+<!--        </div>-->
+<!--    </div>-->
+<!--    {/if}-->
 
-    <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('部门负责人')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            {:build_radios('is_principal', ['1'=>__('是'), '0'=>__('否')], 0)}
-        </div>
-    </div>
+<!--    <div class="form-group">-->
+<!--        <label class="control-label col-xs-12 col-sm-2">{:__('部门负责人')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            {:build_radios('is_principal', ['1'=>__('是'), '0'=>__('否')], 0)}-->
+<!--        </div>-->
+<!--    </div>-->
 
 
 
     <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('入职状态')}:</label>
+        <label class="control-label col-xs-12 col-sm-2">{:__('状态')}:</label>
         <div class="col-xs-12 col-sm-8">
-            {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('离职')])}
+            {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')])}
         </div>
     </div>
     <div class="form-group hidden layer-footer">

+ 32 - 34
application/admin/view/department/admin/edit.html

@@ -7,7 +7,7 @@
         </div>
     </div>
     <div class="form-group">
-        <label for="nickname" class="control-label col-xs-12 col-sm-2">{:__('姓名')}:</label>
+        <label for="nickname" class="control-label col-xs-12 col-sm-2">{:__('Nickname')}:</label>
         <div class="col-xs-12 col-sm-8">
             <input type="text" class="form-control" id="nickname" name="row[nickname]" autocomplete="off" value="{$row.nickname|htmlentities}" data-rule="required" />
         </div>
@@ -24,33 +24,33 @@
         <label class="control-label col-xs-12 col-sm-2">{:__('Department')}:</label>
         <div class="col-xs-12 col-sm-8">
 
-            {:build_select('department_id[]', $departmentdata, $department_ids, ['class'=>'form-control selectpicker','id'=>'department_ids', 'multiple'=>'false', 'data-rule'=>'required'])}
-        </div>
-    </div>
-    <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            {:build_select('group[]', $groupdata, $groupids, ['class'=>'form-control selectpicker', 'multiple'=>'false', 'data-rule'=>'required'])}
+            {:build_select('department_id', $departmentdata, $department_ids, ['class'=>'form-control selectpicker','id'=>'department_ids', 'multiple'=>'false', 'data-rule'=>'required'])}
         </div>
     </div>
+<!--    <div class="form-group">-->
+<!--        <label class="control-label col-xs-12 col-sm-2">{:__('Group')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            {:build_select('group[]', $groupdata, $groupids, ['class'=>'form-control selectpicker', 'multiple'=>'false', 'data-rule'=>'required'])}-->
+<!--        </div>-->
+<!--    </div>-->
 
 
 
 
-    {if $exits_mobile}
-    <div class="form-group">
-        <label for="mobile" class="control-label col-xs-12 col-sm-2">{:__('手机')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            <input type="mobile" class="form-control" id="mobile" name="row[mobile]" value="{$row.mobile|htmlentities}"  />
-        </div>
-    </div>
-    {/if}
-    <div class="form-group">
-        <label for="email" class="control-label col-xs-12 col-sm-2">{:__('Email')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            <input type="email" class="form-control" id="email" name="row[email]" value="{$row.email|htmlentities}" data-rule="required;email" />
-        </div>
-    </div>
+<!--    {if $exits_mobile}-->
+<!--    <div class="form-group">-->
+<!--        <label for="mobile" class="control-label col-xs-12 col-sm-2">{:__('手机')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            <input type="mobile" class="form-control" id="mobile" name="row[mobile]" value="{$row.mobile|htmlentities}"  />-->
+<!--        </div>-->
+<!--    </div>-->
+<!--    {/if}-->
+<!--    <div class="form-group">-->
+<!--        <label for="email" class="control-label col-xs-12 col-sm-2">{:__('Email')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            <input type="email" class="form-control" id="email" name="row[email]" value="{$row.email|htmlentities}" data-rule="required;email" />-->
+<!--        </div>-->
+<!--    </div>-->
 
     <div class="form-group">
         <label for="loginfailure" class="control-label col-xs-12 col-sm-2">{:__('Loginfailure')}:</label>
@@ -58,24 +58,22 @@
             <input type="number" class="form-control" id="loginfailure" name="row[loginfailure]" value="{$row.loginfailure}" data-rule="required" />
         </div>
     </div>
-    {if $auth->isSuperAdmin()}
-    <div class="form-group">
-        <label class="control-label col-xs-12 col-sm-2">{:__('数据范围')}:</label>
-        <div class="col-xs-12 col-sm-8">
-            {:build_radios('row[data_scope]', ['1'=>__('全部'), '0'=>__('默认')], $row['data_scope'])}
-        </div>
-    </div>
-    {/if}
+<!--    {if $auth->isSuperAdmin()}-->
+<!--    <div class="form-group">-->
+<!--        <label class="control-label col-xs-12 col-sm-2">{:__('数据范围')}:</label>-->
+<!--        <div class="col-xs-12 col-sm-8">-->
+<!--            {:build_radios('row[data_scope]', ['1'=>__('全部'), '0'=>__('默认')], $row['data_scope'])}-->
+<!--        </div>-->
+<!--    </div>-->
+<!--    {/if}-->
     <div class="form-group">
         <label class="control-label col-xs-12 col-sm-2">{:__('状态')}:</label>
         <div class="col-xs-12 col-sm-8">
-            {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('离职')], $row['status'])}
-            <div class="help-block text-red">{:__('离职帐号将不能登录系统')}</div>
+            {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')], $row['status'])}
+            <div class="help-block text-red">{:__('帐号关闭将不能登录系统')}</div>
         </div>
-
     </div>
 
-
     <div class="form-group hidden layer-footer">
         <label class="control-label col-xs-12 col-sm-2"></label>
         <div class="col-xs-12 col-sm-8">

+ 1 - 0
application/admin/view/teacher/edit.html

@@ -34,6 +34,7 @@
         <label class="control-label col-xs-12 col-sm-2">{:__('Status')}:</label>
         <div class="col-xs-12 col-sm-8">
             {:build_radios('row[status]', ['normal'=>__('Normal'), 'hidden'=>__('Hidden')], $row['status'])}
+            <div class="help-block text-red">{:__('帐号关闭将不能登录系统')}</div>
         </div>
     </div>
     <div class="form-group hidden layer-footer">

+ 7 - 7
application/extra/site.php

@@ -4,7 +4,7 @@ return array (
   'name' => '维修模拟训练平台',
   'beian' => '',
   'cdnurl' => '',
-  'version' => '1.0.1',
+  'version' => '1.0.2',
   'timezone' => 'Asia/Shanghai',
   'forbiddenip' => '',
   'languages' => 
@@ -28,12 +28,6 @@ return array (
     'user' => 'User',
     'example' => 'Example',
   ),
-  'attachmentcategory' => 
-  array (
-    'category1' => 'Category1',
-    'category2' => 'Category2',
-    'custom' => 'Custom',
-  ),
   'mail_type' => '1',
   'mail_smtp_host' => 'smtp.qq.com',
   'mail_smtp_port' => '465',
@@ -41,4 +35,10 @@ return array (
   'mail_smtp_pass' => '',
   'mail_verify_type' => '2',
   'mail_from' => '',
+  'attachmentcategory' => 
+  array (
+    'category1' => 'Category1',
+    'category2' => 'Category2',
+    'custom' => 'Custom',
+  ),
 );

+ 24 - 22
public/assets/js/backend/department/admin.js

@@ -54,15 +54,15 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 //         return str ;
                 //     }
                 // },
-                // {
-                //     field: 'department_id',
-                //     title: __('Department'),
-                //     visible: false,
-                //     addclass: 'selectpage',
-                //     extend: 'data-source="department/index/index" data-field="name"',
-                //     operate: false,
-                //     formatter: Table.api.formatter.search
-                // },
+                {
+                    field: 'department_id',
+                    title: __('Department'),
+                    visible: false,
+                    addclass: 'selectpage',
+                    extend: 'data-source="department/index/index" data-field="name"',
+                    operate: 'in',
+                    formatter: Table.api.formatter.search
+                },
                 {
                     field: 'dadmin',
                     title: __('Department'),
@@ -146,6 +146,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 $('#departmenttree').on("changed.jstree", function (e, data) {
                     console.log(data.selected.join(","));
                     $(".commonsearch-table input[name=department_id]").val(data.selected.join(","));
+                    console.log($(".commonsearch-table input[name=department_id]").val()+"@@@@");
+                    console.log('222222');
                     table.bootstrapTable('refresh', {});
                     return false;
                 });
@@ -193,19 +195,19 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
         api: {
             bindevent: function () {
                 Form.api.bindevent($("form[role=form]"));
-                $(document).on("change", "#department_ids", function(){
-                    //变更后的回调事件
-                    var dname=$(this).find("option:selected").first().text()
-                    var nickname=$("#nickname").val();
-                    var a = nickname.indexOf("-");
-
-                    if (a!=-1){
-                        nickname=nickname.substring(0, a);
-                    }
-                    dname = dname.replace(/\s*/g,"");
-                    nickname+="-"+dname.replace(/&nbsp;|│|└|├\s*/ig, "");
-                    $("#nickname").val(nickname);
-                });
+                // $(document).on("change", "#department_ids", function(){
+                //     //变更后的回调事件
+                //     var dname=$(this).find("option:selected").first().text()
+                //     var nickname=$("#nickname").val();
+                //     var a = nickname.indexOf("-");
+                //
+                //     if (a!=-1){
+                //         nickname=nickname.substring(0, a);
+                //     }
+                //     dname = dname.replace(/\s*/g,"");
+                //     nickname+="-"+dname.replace(/&nbsp;|│|└|├\s*/ig, "");
+                //     $("#nickname").val(nickname);
+                // });
             },
         }