|
@@ -7,6 +7,7 @@ use think\Db;
|
|
|
use think\Exception;
|
|
|
use Redis;
|
|
|
use app\api\controller\Tenim;
|
|
|
+use app\common\service\RoomService;
|
|
|
|
|
|
/**
|
|
|
* 公会控制器
|
|
@@ -72,6 +73,66 @@ class Guild extends Api
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 获取公会信息-新
|
|
|
+ */
|
|
|
+ public function getGuildInfoNew() {
|
|
|
+ $guild_id = $this->request->request("guild_id"); //公会ID
|
|
|
+ $is_member = 0;
|
|
|
+ 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("您存在加入公会的申请,正在审核中,请耐心等待!");
|
|
|
+
|
|
|
+ $memberfind = \app\common\model\GuildMember::where(["user_id"=>$user_id,"status"=>1,"sign_time"=>["gt",time()]])->find();
|
|
|
+ if($memberfind) $guild_id = $memberfind->guild_id;
|
|
|
+
|
|
|
+ if(!$guild_id) {
|
|
|
+ $res["is_member"] = 2; // 是否为派对成员
|
|
|
+ $this->success("获取成功!",$res);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res = [];
|
|
|
+ $guildInfo = \app\common\model\Guild::field("id,image,name,g_id,user_id,party_id,desc,notice")->where(["id"=>$guild_id])->find();
|
|
|
+ // 获取公会成员信息
|
|
|
+ $guildMemberInfo = \app\common\model\GuildMember::alias("a")
|
|
|
+ ->field("a.user_id,a.role,u.nickname,u.avatar")
|
|
|
+ ->join("hx_user u","a.user_id = u.id")
|
|
|
+ ->where(["a.guild_id"=>$guild_id])->limit(5)->order("a.role","desc")->select();
|
|
|
+ if(!$guildInfo || !$guildMemberInfo) $this->error("公会信息获取失败!");
|
|
|
+ // 获取公会成员总数
|
|
|
+ $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);
|
|
|
+ $onlineData = isset($partyOnlineRes['data']) ? $partyOnlineRes['data'] : [];
|
|
|
+ $partyInfo['user_list'] = isset($onlineData['user_list']) ? $onlineData['user_list'] : [];
|
|
|
+ $partyInfo['online_num'] = isset($onlineData['online_num']) ? $onlineData['online_num'] : 0;
|
|
|
+ // 派对类型
|
|
|
+ $partyTypeName = "普通房";
|
|
|
+ if($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;
|
|
|
+
|
|
|
+ // 返回参数拼接
|
|
|
+ $res["guildInfo"] = $guildInfo; // 公会基本信息
|
|
|
+ $res["partyInfo"] = $partyInfo; // 派对悉尼下
|
|
|
+ $res["guildMemberInfo"] = $guildMemberInfo; // 成员列表
|
|
|
+ $res["guildMemberCount"] = $guildMemberCount; // 成员总数
|
|
|
+ //$res["guilderInfo"] = $guilderInfo; // 会长
|
|
|
+ $res["is_member"] = $is_member; // 是否为派对成员
|
|
|
+ $this->success("获取成功!",$res);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 更新公会基本信息
|
|
|
*/
|
|
|
public function guildSaveInfo() {
|