lip hace 3 meses
padre
commit
ba93923eab

+ 1 - 1
app/admin/command/UserTimeout.php

@@ -89,7 +89,7 @@ class UserTimeout extends Command
             $list = User::where('is_online', 0)->whereIn('service_status', [0,1,2])
                     ->where('offline_time', '<=', time() - $user_inline_finished)
                     ->select()
-                    ->toArray();
+                    ->toArray();print_r($list);die;
             foreach($list as $user) {
                 try {
                     Db::startTrans();

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

@@ -54,7 +54,7 @@ class Kefu extends BaseController
             }
 
             $count = $query->count();
-            $list = $query->field(['admin.*','user.is_online', 'kefu_work.chat_num','kefu_work.transfer_num','kefu_work.intervention_num','kefu_work.completed_num'])
+            $list = $query->field(['distinct kefu_work.id', 'admin.nickname','user.is_online', 'kefu_work.chat_num','kefu_work.transfer_num','kefu_work.intervention_num','kefu_work.completed_num'])
                         ->order('admin.id', 'asc')            
                         ->limit($limit)
                         ->page($page)

+ 7 - 0
app/admin/controller/Role.php

@@ -7,6 +7,7 @@ use app\BaseController;
 use app\admin\model\Role as RoleModel;
 use app\admin\model\Admin;
 use app\admin\model\RoleMenu;
+use app\admin\model\User;
 use app\admin\validate\RoleValidate;
 use think\facade\Db;
 use think\facade\Cache;
@@ -72,6 +73,12 @@ class Role extends BaseController
                 RoleModel::where('id', $id)->update($params);
                 $role_id = $id;
 
+                //同步角色头像到user表
+                $admin_ids = Admin::where('role_id', $id)->column('id');
+                if($admin_ids){
+                    User::where('role','>',0)->whereIn('uid', $admin_ids)->update(['avatar'=>$params['avatar']]);
+                }
+
                 //删除角色权限的缓存
                 Cache::delete('role_menu_'.$role_id);
             } else {

+ 1 - 0
app/admin/controller/User.php

@@ -40,6 +40,7 @@ class User extends BaseController
                         ->select();
             foreach($list as &$item) {
                 $item['last_login_time'] = date('Y-m-d H:i:s', $item['last_login_time']);
+                $item['offline_time'] = $item['offline_time'] ? date('Y-m-d H:i:s', $item['offline_time']) : '';
             }
         } catch (Exception $e) {
             return $this->error($e->getMessage());

+ 3 - 1
app/admin/validate/RoleValidate.php

@@ -14,6 +14,7 @@ class RoleValidate extends BaseValidate
     protected $rule = [
         'id' => 'require',
         'name' => 'require|length:1,50',
+        'avatar' => 'length:0,200',
         'desc' => 'length:0,200',
         'menu_id' => 'require|array',
     ];
@@ -25,6 +26,7 @@ class RoleValidate extends BaseValidate
     protected $field = [
         'id' => 'id',
         'name' => '角色名称',
+        'avatar' => '头像',
         'desc' => '角色描述',
         'menu_id' => '菜单ID',
     ];
@@ -34,7 +36,7 @@ class RoleValidate extends BaseValidate
      */
     public function sceneEdit()
     {
-        return $this->only(['name', 'desc', 'menu_id']);
+        return $this->only(['name', 'avatar', 'desc', 'menu_id']);
     }
 
     public function sceneId()

+ 1 - 0
app/common/controller/User.php

@@ -71,6 +71,7 @@ class User
                 'from'=>$params['from'],
                 'uid'=>$params['uid'],
                 'salt' => $salt,
+                'avatar' => !empty($params['avatar']) ? $params['avatar'] : '',
                 'password' => password_hash_tp(123456,$salt),
                 'cs_uid' => 0,
                 'role' => 0,