2026-02-21 08:21:05 +08:00
|
|
|
<?php
|
|
|
|
|
namespace app\api\controller;
|
|
|
|
|
use app\model\User as UserModel;
|
|
|
|
|
use app\model\UserRemark as UserRemarkModel;
|
|
|
|
|
use app\model\GroupRemark as GroupRemarkModel;
|
|
|
|
|
use support\Request;
|
|
|
|
|
use support\Response;
|
|
|
|
|
use support\think\Db;
|
|
|
|
|
use hg\apidoc\annotation as Apidoc;
|
|
|
|
|
/**
|
|
|
|
|
* 通讯录
|
|
|
|
|
*/
|
|
|
|
|
class ContactController extends BaseController{
|
|
|
|
|
/**
|
|
|
|
|
* 不需要鉴权的方法
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
public $noNeedAuth = ['*'];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 无需登录及鉴权的方法
|
|
|
|
|
* @var array
|
|
|
|
|
*/
|
|
|
|
|
public $noNeedLogin = [];
|
|
|
|
|
/**
|
|
|
|
|
* @Apidoc\Title("获取用户好友列表")
|
|
|
|
|
* @Apidoc\Method("GET")
|
|
|
|
|
*/
|
|
|
|
|
function get_friend_list(Request $request): Response
|
|
|
|
|
{
|
|
|
|
|
$current_user = \support\Jwt::getUser();
|
|
|
|
|
$user_id = $current_user->id;
|
2026-03-01 21:05:19 +08:00
|
|
|
$userID = \support\Encrypt::userIDencode($user_id);
|
2026-02-21 08:21:05 +08:00
|
|
|
$res = $request->IM->friend()->getFriendList($userID,1,10000);
|
|
|
|
|
return $this->success('ok',$res['data']['friendsInfo']);
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* @Apidoc\Title("好友信息")
|
|
|
|
|
* @Apidoc\Method("GET")
|
|
|
|
|
* @Apidoc\Param("userID", type="string",require=true, desc="用户ID")
|
|
|
|
|
*/
|
|
|
|
|
function get_friend_info(Request $request): Response
|
|
|
|
|
{
|
|
|
|
|
$userID = Input('userID');
|
|
|
|
|
if(!$userID){
|
|
|
|
|
return $this->error('UserID is Empty');
|
|
|
|
|
}
|
2026-03-01 21:05:19 +08:00
|
|
|
$res = \app\model\User::where('userID',$userID)->find();
|
2026-02-21 08:21:05 +08:00
|
|
|
return $this->success('ok',$res);
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* @Apidoc\Title("批量查询好友信息")
|
|
|
|
|
* @Apidoc\Method("GET")
|
|
|
|
|
* @Apidoc\Param("userIDs", type="string",require=true, desc="用户ID列表,逗号分隔")
|
|
|
|
|
*/
|
|
|
|
|
function get_friends_info(Request $request): Response
|
|
|
|
|
{
|
|
|
|
|
$userIDs = Input('userIDs');
|
|
|
|
|
if(!$userIDs){
|
|
|
|
|
return $this->error('UserID is Empty');
|
|
|
|
|
}
|
|
|
|
|
$res = \app\model\User::whereIn('userID',$userIDs)->select();
|
|
|
|
|
return $this->success('ok',$res);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @Apidoc\Title("批量查询好友信息")
|
|
|
|
|
* @Apidoc\Method("GET")
|
|
|
|
|
* @Apidoc\Param("userIDs", type="string",require=true, desc="用户ID列表,逗号分隔")
|
|
|
|
|
*/
|
|
|
|
|
function get_friends_roles(Request $request): Response
|
|
|
|
|
{
|
|
|
|
|
$userIDs = Input('userIDs');
|
|
|
|
|
if(!$userIDs){
|
|
|
|
|
return $this->error('UserID is Empty');
|
|
|
|
|
}
|
|
|
|
|
$res = Db::name('user')->whereIn('userID',$userIDs)->column('role_id','userID');
|
|
|
|
|
return $this->success('ok',$res);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|