|
@@ -92,6 +92,7 @@ class member_talkControl extends mbMemberControl
|
|
|
|
|
|
$uids = [];
|
|
$uids = [];
|
|
foreach ($members as $member) {
|
|
foreach ($members as $member) {
|
|
|
|
+ if($member['member_id'] == session_helper::memberid()) continue;
|
|
$uids[] = $member['member_id'];
|
|
$uids[] = $member['member_id'];
|
|
}
|
|
}
|
|
|
|
|
|
@@ -120,7 +121,7 @@ class member_talkControl extends mbMemberControl
|
|
return self::outerr(errcode::ErrParamter);
|
|
return self::outerr(errcode::ErrParamter);
|
|
}
|
|
}
|
|
$result = $this->roomsg($msgid,$room_id);
|
|
$result = $this->roomsg($msgid,$room_id);
|
|
- $msgs = $this->format_message($result['uids'],$result['msgs'],$type,0);
|
|
|
|
|
|
+ $msgs = $this->format_message($result['uids'],$result['msgs'],$type,0,$room_id);
|
|
}
|
|
}
|
|
elseif($type == 'chatwo')
|
|
elseif($type == 'chatwo')
|
|
{
|
|
{
|
|
@@ -138,11 +139,19 @@ class member_talkControl extends mbMemberControl
|
|
return self::outsuccess(["msgs" => $msgs]);
|
|
return self::outsuccess(["msgs" => $msgs]);
|
|
}
|
|
}
|
|
|
|
|
|
- private function format_message($uids,$msgs,$type,$other)
|
|
|
|
|
|
+ private function format_message($uids,$msgs,$type,$other=0,$room_id=0)
|
|
{
|
|
{
|
|
$members = [];
|
|
$members = [];
|
|
if(!empty($uids))
|
|
if(!empty($uids))
|
|
{
|
|
{
|
|
|
|
+ $room_members = Model('room')->getRoomParts(["room_id"=>$room_id],'member_id,member_nick',false);
|
|
|
|
+ $nicknames = [];
|
|
|
|
+ if(!empty($room)) {
|
|
|
|
+ foreach ($room_members as $room_member){
|
|
|
|
+ $nicknames[$room_member['member_id']] = $room_member['member_nick'];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
$items = Model('member')->getMemberList(['member_id' => ['in',$uids]]);
|
|
$items = Model('member')->getMemberList(['member_id' => ['in',$uids]]);
|
|
foreach ($items as $item)
|
|
foreach ($items as $item)
|
|
{
|
|
{
|
|
@@ -151,11 +160,14 @@ class member_talkControl extends mbMemberControl
|
|
$info = new member_info($item);
|
|
$info = new member_info($item);
|
|
|
|
|
|
$val = [];
|
|
$val = [];
|
|
|
|
+ $mid = $info->member_id();
|
|
|
|
+ $nickname = empty($nicknames[$mid]) ? $info->nickname() : $nicknames[$mid];
|
|
|
|
+
|
|
$val['avatar'] = $info->avatar();
|
|
$val['avatar'] = $info->avatar();
|
|
- $val['nickname'] = $info->nickname();
|
|
|
|
- $val['userid'] = $info->member_id();
|
|
|
|
|
|
+ $val['nickname'] = $nickname;
|
|
|
|
+ $val['userid'] = $mid;
|
|
|
|
|
|
- $members[$info->member_id()] = $val;
|
|
|
|
|
|
+ $members[$mid] = $val;
|
|
}
|
|
}
|
|
catch (Exception $ex) {
|
|
catch (Exception $ex) {
|
|
Log::record($ex->getMessage(),Log::ERR);
|
|
Log::record($ex->getMessage(),Log::ERR);
|
|
@@ -214,7 +226,7 @@ class member_talkControl extends mbMemberControl
|
|
if(!empty($room)){
|
|
if(!empty($room)){
|
|
$hide_msg = intval($room[0]["hide_msg"]);
|
|
$hide_msg = intval($room[0]["hide_msg"]);
|
|
}else{
|
|
}else{
|
|
- $hide_msg = 0;
|
|
|
|
|
|
+ return ['uids' => [],'msgs' => []];
|
|
}
|
|
}
|
|
|
|
|
|
$msgs = $mod_room->getRoomsgList(['room_id' => $room_id,'msg_id' => [['gt',$hide_msg],['lt',$msgid]],'msg_type' => 0], $this->page_size);
|
|
$msgs = $mod_room->getRoomsgList(['room_id' => $room_id,'msg_id' => [['gt',$hide_msg],['lt',$msgid]],'msg_type' => 0], $this->page_size);
|
|
@@ -349,7 +361,18 @@ class member_talkControl extends mbMemberControl
|
|
|
|
|
|
$ret = room\factory_client::instance()->invite($room_id,$this->room_creator($room_id),[session_helper::memberid()]);
|
|
$ret = room\factory_client::instance()->invite($room_id,$this->room_creator($room_id),[session_helper::memberid()]);
|
|
|
|
|
|
- return self::outsuccess(['result' => $ret]);
|
|
|
|
|
|
+ if($ret === false) {
|
|
|
|
+ return self::outerr(errcode::ErrRoom,"进群失败");
|
|
|
|
+ }
|
|
|
|
+ else
|
|
|
|
+ {
|
|
|
|
+
|
|
|
|
+ $mod_room = Model('room');
|
|
|
|
+ $room = $mod_room->getRoom($room_id);
|
|
|
|
+ $info = new room\room_info($room);
|
|
|
|
+ $result['name'] = $info->name();
|
|
|
|
+ return self::outsuccess(['result' => $ret]);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
public function leave_faceOp()
|
|
public function leave_faceOp()
|
|
@@ -879,6 +902,7 @@ class member_talkControl extends mbMemberControl
|
|
|
|
|
|
$member = session_helper::memberid();
|
|
$member = session_helper::memberid();
|
|
$info = new room\room_info($item);
|
|
$info = new room\room_info($item);
|
|
|
|
+ Log::record("room:{$room_id} user:$member",Log::DEBUG);
|
|
if($info->owner() != $member) {
|
|
if($info->owner() != $member) {
|
|
return self::outerr(errcode::ErrTalk,"只有管理员可以查看申请列表");
|
|
return self::outerr(errcode::ErrTalk,"只有管理员可以查看申请列表");
|
|
}
|
|
}
|
|
@@ -919,48 +943,73 @@ class member_talkControl extends mbMemberControl
|
|
|
|
|
|
public function ajax_room_sportsOp()
|
|
public function ajax_room_sportsOp()
|
|
{
|
|
{
|
|
- $room_id = intval($_GET['room_id']);
|
|
|
|
- $mod_room = Model('room');
|
|
|
|
- $userid = session_helper::memberid();
|
|
|
|
- $item = $mod_room->getRoomParts(["room_id"=>$room_id,"member_id"=>$userid,"state"=>0],'sports',1);
|
|
|
|
- if(empty($item)){
|
|
|
|
- return self::outerr(errcode::ErrParamter,"错误的群信息");
|
|
|
|
- }
|
|
|
|
- $info = new member_info($userid);
|
|
|
|
- $member = $info->filter();
|
|
|
|
-
|
|
|
|
- $user["member_id"] = $member['member_id'];
|
|
|
|
- $user['avatar'] = $member['avatar'];
|
|
|
|
- $user['is_man'] = $member['is_man'];
|
|
|
|
- $user['nickname'] = $member['nickname'];
|
|
|
|
- $user["sports"] = $item[0]['sports'];
|
|
|
|
- $ranks = $mod_room->getRoomParts(["room_id"=>$room_id,"state"=>0,"sports"=>['gt',$user["sports"]]],'member_id',false,'sports desc');
|
|
|
|
- $user["ranking"] = count($ranks);
|
|
|
|
-
|
|
|
|
- $hasmore = false;
|
|
|
|
- $per_page = 20;
|
|
|
|
- $sports = [];
|
|
|
|
- $items = $mod_room->getRoomParts(["room_id"=>$room_id,"state"=>0],'member_id,sports',20,'sports desc');
|
|
|
|
- if(!empty($items))
|
|
|
|
|
|
+ try
|
|
{
|
|
{
|
|
- foreach ($items as $k => $sport)
|
|
|
|
|
|
+ $room_id = intval($_GET['room_id']);
|
|
|
|
+ $mod_room = Model('room');
|
|
|
|
+ $userid = session_helper::memberid();
|
|
|
|
+ $item = $mod_room->getRoomParts(["room_id"=>$room_id,"member_id"=>$userid,"state"=>0],'room_id,member_id,sports',1);
|
|
|
|
+ if(empty($item)) return self::outerr(errcode::ErrParamter,"错误的群信息");
|
|
|
|
+
|
|
|
|
+ $user_sports = $this->user_sports($item[0]);
|
|
|
|
+
|
|
|
|
+ $sports = [];
|
|
|
|
+ $hasmore = false;
|
|
|
|
+ $per_page = 20;
|
|
|
|
+ $items = $mod_room->getRoomParts(["room_id"=>$room_id,"state"=>0],'member_id,sports',$per_page,'sports desc');
|
|
|
|
+ if(!empty($items))
|
|
{
|
|
{
|
|
- $info = new member_info($sport['member_id']);
|
|
|
|
- $member = $info->filter();
|
|
|
|
- $sports[$k]['member_id'] = $sport['member_id'];
|
|
|
|
- $sports[$k]['sports'] = $sport['sports'];
|
|
|
|
- $sports[$k]['avatar'] = $member['avatar'];
|
|
|
|
- $sports[$k]['is_man'] = $member['is_man'];
|
|
|
|
- $sports[$k]['nickname'] = $member['nickname'];
|
|
|
|
|
|
+ foreach ($items as $k => $sport)
|
|
|
|
+ {
|
|
|
|
+ $info = new member_info($sport['member_id']);
|
|
|
|
+ $member = $info->filter();
|
|
|
|
+
|
|
|
|
+ $sports[$k]['member_id'] = $sport['member_id'];
|
|
|
|
+ $sports[$k]['sports'] = $sport['sports'];
|
|
|
|
+ $sports[$k]['avatar'] = $member['avatar'];
|
|
|
|
+ $sports[$k]['is_man'] = $member['is_man'];
|
|
|
|
+ $sports[$k]['nickname'] = $member['nickname'];
|
|
|
|
+ }
|
|
|
|
+ if(count($sports) >= $per_page) $hasmore = true;
|
|
}
|
|
}
|
|
- if(count($sports) >= $per_page) $hasmore = true;
|
|
|
|
|
|
+
|
|
|
|
+ return self::outsuccess(["user"=>$user_sports,"sports"=>$sports,"mobile_page"=>["hasmore"=>$hasmore,"curpage"=>$this->cur_page]]);
|
|
|
|
+
|
|
|
|
+ } catch (Exception $ex) {
|
|
|
|
+ return self::outerr(errcode::ErrParamter);
|
|
}
|
|
}
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ private function user_sports($room_parti)
|
|
|
|
+ {
|
|
|
|
+ $info = new member_info($room_parti['member_id']);
|
|
|
|
+ $member = $info->filter();
|
|
|
|
|
|
- return self::outsuccess(["user"=>$user,"sports"=>$sports,"mobile_page"=>["hasmore"=>$hasmore,"curpage"=>$this->cur_page]]);
|
|
|
|
|
|
+ $user_sports["member_id"] = $member['member_id'];
|
|
|
|
+ $user_sports['avatar'] = $member['avatar'];
|
|
|
|
+ $user_sports['is_man'] = $member['is_man'];
|
|
|
|
+ $user_sports['nickname'] = $member['nickname'];
|
|
|
|
+ $user_sports["sports"] = $room_parti['sports'];
|
|
|
|
+ $ranks = Model('room')->getRoomParts(["room_id"=>$room_parti['room_id'],"state"=>0,"sports"=>['gt',$room_parti['sports']]],'member_id',false,'sports desc');
|
|
|
|
+ $user_sports["ranking"] = count($ranks);
|
|
|
|
+
|
|
|
|
+ return $user_sports;
|
|
}
|
|
}
|
|
|
|
|
|
public function member_sportsOp(){
|
|
public function member_sportsOp(){
|
|
- return self::outsuccess(null,'talk/member_sports');
|
|
|
|
|
|
+ $mid = session_helper::memberid();
|
|
|
|
+ $info = new member_info($mid);
|
|
|
|
+ $member = $info->filter();
|
|
|
|
+
|
|
|
|
+ $today = strtotime(date('Y-m-d',time()));
|
|
|
|
+ $last_week = $today - 86400*7;
|
|
|
|
+
|
|
|
|
+ $mod_room = Model('room');
|
|
|
|
+ $items = $mod_room->roomSports(["member_id"=>$mid,"date_stamp"=>[['gt',$last_week-1],['lt',$today+1]]],'*',7);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ return self::outsuccess(["avatar"=>$member['avatar'],"nickname"=>$member['nickname']],'talk/member_sports');
|
|
}
|
|
}
|
|
|
|
|
|
public function ajax_member_sportsOp()
|
|
public function ajax_member_sportsOp()
|
|
@@ -969,9 +1018,41 @@ class member_talkControl extends mbMemberControl
|
|
$mod_room = Model('room');
|
|
$mod_room = Model('room');
|
|
$items = $mod_room->roomSports(["member_id"=>$member],'*',false);
|
|
$items = $mod_room->roomSports(["member_id"=>$member],'*',false);
|
|
|
|
|
|
|
|
+// return self::outsuccess(["sports"=>$sports,"mobile_page"=>["hasmore"=>$hasmore,"curpage"=>$this->cur_page]]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function donate_sportsOp()
|
|
|
|
+ {
|
|
|
|
+ $room_id = intval($_GET['room_id']);
|
|
|
|
+ $sports = intval($_GET['sports']);
|
|
|
|
+ if($room_id <=0 || $sports <=0 ) {
|
|
|
|
+ return self::outerr(errcode::ErrParamter,"错误的参数");
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ $user = session_helper::memberid();
|
|
|
|
+ $today = strtotime(date('Y-m-d',time()));
|
|
|
|
|
|
-// return self::outsuccess(["sports"=>$sports,"mobile_page"=>["hasmore"=>$hasmore,"curpage"=>$this->cur_page]]);
|
|
|
|
|
|
+ $mod_room = Model('room');
|
|
|
|
+ $room = $mod_room->getRoomParts(['room_id'=>$room_id,"member_id"=>$user,"state"=>0],'*',1);
|
|
|
|
+ if(empty($room)) {
|
|
|
|
+ return self::outerr(errcode::ErrParamter,"您不在此群中");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ $item = $mod_room->findSports(['room_id'=>$room_id,"member_id"=>$user,"date_stamp"=>$today]);
|
|
|
|
+ if(empty($item)) {
|
|
|
|
+ $res = $mod_room->addSports($room_id,$user,$sports,$today);
|
|
|
|
+ } else {
|
|
|
|
+ $res = $mod_room->editSports($item['sports_id'],["sports"=>$sports]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if($res)
|
|
|
|
+ {
|
|
|
|
+ $total_sports = $mod_room->totalSports($room_id,$user);
|
|
|
|
+ $mod_room->editRoomParts(['room_id'=>$room_id,"member_id"=>$user,"state"=>0],["sports"=>$total_sports]);
|
|
|
|
+ return self::outsuccess(null,"捐赠成功");
|
|
|
|
+ }else{
|
|
|
|
+ return self::outerr(errcode::ErrTalk,"捐赠失败");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
public function share_bonusOp()
|
|
public function share_bonusOp()
|
|
@@ -987,6 +1068,12 @@ class member_talkControl extends mbMemberControl
|
|
return self::outerr(errcode::ErrParamter,"群信息有误");
|
|
return self::outerr(errcode::ErrParamter,"群信息有误");
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ $parts = new room\room_parts($room_id);
|
|
|
|
+ $uids = $parts->allparts();
|
|
|
|
+ if(!in_array(session_helper::memberid(),$uids)) {
|
|
|
|
+ return self::outerr(errcode::ErrParamter,"不可以偷看别人的共享资金哦");
|
|
|
|
+ }
|
|
|
|
+
|
|
$list = [];
|
|
$list = [];
|
|
$items = $mod_room->getRoomsgList(["room_id"=>$room_id,"type"=>room\proto_type::msg_type_bonus]);
|
|
$items = $mod_room->getRoomsgList(["room_id"=>$room_id,"type"=>room\proto_type::msg_type_bonus]);
|
|
if(!empty($items))
|
|
if(!empty($items))
|
|
@@ -996,9 +1083,7 @@ class member_talkControl extends mbMemberControl
|
|
$uids[] = $item['member_id'];
|
|
$uids[] = $item['member_id'];
|
|
}
|
|
}
|
|
$uids = array_unique($uids);
|
|
$uids = array_unique($uids);
|
|
- if(!in_array(session_helper::memberid(),$uids)) {
|
|
|
|
- return self::outerr(errcode::ErrParamter,"不可以偷看别人的共享资金哦");
|
|
|
|
- }
|
|
|
|
|
|
+
|
|
|
|
|
|
$info = [];
|
|
$info = [];
|
|
$members = member_info::get_members($uids);
|
|
$members = member_info::get_members($uids);
|