|
|
@@ -10,13 +10,13 @@ namespace app\enterprise\model;
|
|
|
use GatewayClient\Gateway;
|
|
|
use app\BaseModel;
|
|
|
use think\facade\Db;
|
|
|
-use think\facade\Request;
|
|
|
use think\model\concern\SoftDelete;
|
|
|
use app\manage\model\Config;
|
|
|
use thans\jwt\facade\JWTAuth;
|
|
|
use app\admin\model\Sign;
|
|
|
use app\admin\model\KefuWork;
|
|
|
use app\admin\model\KefuTime;
|
|
|
+use app\admin\model\Department;
|
|
|
|
|
|
class User extends BaseModel
|
|
|
{
|
|
|
@@ -132,19 +132,26 @@ class User extends BaseModel
|
|
|
$list = self::where($map)->field($field)->select();
|
|
|
}
|
|
|
}else{
|
|
|
- $friendList = Friend::getFriend(['create_user' => $user_id,'status'=>1]);
|
|
|
- $userList = array_keys($friendList);
|
|
|
+ $userList = [];
|
|
|
// 将专属客服设置为好友
|
|
|
$csUid=request()->userInfo['cs_uid'] ?? 0;
|
|
|
if($csUid){
|
|
|
- // $userList[]=$csUid;
|
|
|
- $userList = [$csUid];
|
|
|
+ $userList[]=$csUid;
|
|
|
}
|
|
|
- // 如果我有客服权限,就查询客服的好友
|
|
|
- $cus=self::where(['cs_uid'=>$user_id])->column('user_id');
|
|
|
- if($cus){
|
|
|
- $userList=array_merge($userList,$cus);
|
|
|
+ // 如果是管理员,就查询整个部门的客服好友
|
|
|
+ if (request()->userInfo['role'] > 0) {
|
|
|
+ $friendList = Friend::getFriend(['create_user' => $user_id,'status'=>1]);//管理员自己的好友
|
|
|
+ $userList = array_merge($userList, array_keys($friendList));
|
|
|
+
|
|
|
+ $admin_id = request()->userInfo['uid'];
|
|
|
+ $department_user_ids = Department::getDepartmentCsUids($admin_id);//整个部门的用户
|
|
|
+ $department_user_ids[] = $user_id;
|
|
|
+ $cus=self::whereIn('cs_uid',$department_user_ids)->column('user_id');
|
|
|
+ if($cus){
|
|
|
+ $userList=array_merge($userList,$cus);
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
$userList = array_unique($userList);
|
|
|
$map[] = ['user_id','in',$userList];
|
|
|
$list = self::where($map)->whereOr(function ($query) use ($role) {
|