|
@@ -51,9 +51,9 @@ class Guild extends Api
|
|
|
public function getGuildInfo() {
|
|
|
$guild_id = input("guild_id"); //公会ID
|
|
|
$is_member = 0;
|
|
|
+ $user_id = $this->auth->id;
|
|
|
if($guild_id <= 0) {
|
|
|
$is_member = 1;
|
|
|
- $user_id = $this->auth->id;
|
|
|
// 获取当前用户是否是公会成员
|
|
|
$idcardfind = \app\common\model\GuildJoinin::where(["user_id"=>$user_id,"status"=>0])->find();
|
|
|
if($idcardfind) $this->error("您存在加入公会的申请,正在审核中,请耐心等待!");
|
|
@@ -70,12 +70,13 @@ class Guild extends Api
|
|
|
|
|
|
//结果
|
|
|
$res = [];
|
|
|
+
|
|
|
//公会信息
|
|
|
- $guildInfo = \app\common\model\Guild::field("id,image,name,g_id,user_id,party_id,desc,notice")->where(["id"=>$guild_id])->find();
|
|
|
+ $guildInfo = \app\common\model\Guild::field("id,image,name,g_id,user_id,party_id,desc,notice,status")->where(["id"=>$guild_id])->find();
|
|
|
|
|
|
// 获取公会成员信息
|
|
|
$guildMemberInfo = \app\common\model\GuildMember::alias("a")
|
|
|
- ->field("a.user_id,a.role,u.nickname,u.avatar,u.gender")
|
|
|
+ ->field("a.id,a.user_id,a.role,u.nickname,u.avatar,u.gender")
|
|
|
->join("hx_user u","a.user_id = u.id")
|
|
|
->where(["a.guild_id"=>$guild_id])->limit(10)->order("a.role","desc")->select();
|
|
|
if(!$guildInfo || !$guildMemberInfo) $this->error("公会信息获取失败!");
|
|
@@ -87,7 +88,7 @@ class Guild extends Api
|
|
|
$guilderInfo = \app\common\model\User::field("avatar,nickname,u_id")->where(["id"=>$guildInfo->user_id])->find();
|
|
|
|
|
|
// 获取房间信息
|
|
|
- $partyInfo = \app\common\model\Party::field("party_logo,party_type,is_online,party_name,party_notice_detail")->where(["id"=>$guildInfo->party_id])->find();
|
|
|
+ $partyInfo = \app\common\model\Party::field("id,party_logo,party_type,is_online,party_name,party_notice_detail")->where(["id"=>$guildInfo->party_id])->find();
|
|
|
|
|
|
// 派对类型
|
|
|
$partyTypeName = "普通房";
|
|
@@ -124,9 +125,11 @@ class Guild extends Api
|
|
|
|
|
|
$memberfind = \app\common\model\GuildMember::where(["user_id"=>$user_id,"status"=>1,"sign_time"=>["gt",time()]])->find();
|
|
|
if($memberfind) $guild_id = $memberfind->guild_id;
|
|
|
+
|
|
|
$guildWhere['user_id'] = $user_id;
|
|
|
$guildWhere['status'] = ['in',[0,1]];
|
|
|
$guildInfo = \app\common\model\Guild::field("id,image,name,g_id,user_id,party_id,desc,notice,status")->where($guildWhere)->find();
|
|
|
+
|
|
|
if(!$guild_id) {
|
|
|
$res["is_member"] = 2; // 是否为派对成员
|
|
|
$res["guild_status"] = isset($guildInfo['status']) ? (int)$guildInfo['status'] : -2; // 是否为派对成员
|
|
@@ -134,21 +137,28 @@ class Guild extends Api
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //结果
|
|
|
$res = [];
|
|
|
+
|
|
|
+ //公会信息
|
|
|
$guildInfo = \app\common\model\Guild::field("id,image,name,g_id,user_id,party_id,desc,notice,status")->where(["id"=>$guild_id])->find();
|
|
|
+
|
|
|
// 获取公会成员信息
|
|
|
$guildMemberInfo = \app\common\model\GuildMember::alias("a")
|
|
|
- ->field("a.id,a.user_id,a.role,u.nickname,u.avatar")
|
|
|
+ ->field("a.id,a.user_id,a.role,u.nickname,u.avatar,u.gender")
|
|
|
->join("hx_user u","a.user_id = u.id")
|
|
|
- ->where(["a.guild_id"=>$guild_id])->limit(5)->order("a.role","desc")->select();
|
|
|
+ ->where(["a.guild_id"=>$guild_id])->limit(10)->order("a.role","desc")->select();
|
|
|
if(!$guildInfo || !$guildMemberInfo) $this->error("公会信息获取失败!");
|
|
|
- $guildStatus = (int)$guildInfo['status'];
|
|
|
+
|
|
|
// 获取公会成员总数
|
|
|
$guildMemberCount = \app\common\model\GuildMember::where(["guild_id"=>$guild_id])->count("id");
|
|
|
+
|
|
|
// 获取会长信息
|
|
|
$guilderInfo = \app\common\model\User::field("avatar,nickname,u_id")->where(["id"=>$guildInfo->user_id])->find();
|
|
|
+
|
|
|
// 获取房间信息
|
|
|
$partyInfo = \app\common\model\Party::field("id,party_logo,party_type,is_online,party_name,party_notice_detail")->where(["id"=>$guildInfo->party_id])->find();
|
|
|
+
|
|
|
$partyParams = ['party_id' => $guildInfo->party_id];
|
|
|
$roomService = new RoomService();
|
|
|
$partyOnlineRes = $roomService->getPartyUserList($partyParams);
|
|
@@ -161,10 +171,12 @@ class Guild extends Api
|
|
|
if(isset($partyInfo["party_type"])) {
|
|
|
$partyTypeName = \app\common\model\PartyType::where(["id"=>$partyInfo["party_type"]])->value("name");
|
|
|
}
|
|
|
+
|
|
|
$mod = isset($partyInfo["party_type"])?intval($partyInfo["party_type"])%5:1;
|
|
|
$partyInfo["party_type_color"] = $mod == 0?5:$mod;
|
|
|
$partyInfo["type_name"] = $partyTypeName;
|
|
|
}
|
|
|
+
|
|
|
//获取家族角色
|
|
|
$userService = new UserService();
|
|
|
$userParams = [
|
|
@@ -173,6 +185,7 @@ class Guild extends Api
|
|
|
];
|
|
|
$userRes = $userService->getGuildRole($userParams);
|
|
|
$guildStatus = isset($userRes['data']['guild_role']) ? $userRes['data']['guild_role'] : 4;
|
|
|
+
|
|
|
// 返回参数拼接
|
|
|
$res["guildInfo"] = $guildInfo; // 公会基本信息
|
|
|
$res["partyInfo"] = $partyInfo; // 派对悉尼下
|