guildId; $page = input('page', 1); $page_limit = input('page_limit', 30); $room_id = input('room_id',''); $search_user_id = input('user_id',''); $status = input('status',''); $search_stime_str = input('search_stime',''); $search_etime_str = input('search_etime',''); $s_money_search = input('s_money_search',''); $e_money_search = input('e_money_search',''); $where['a.guild_id'] = $guild_id; $where['a.status'] = 1; $where['a.room_id'] = ['>',0]; if($room_id){ if(is_numeric($room_id)){ $where['b.room_number'] = $room_id; }else{ $where['b.room_name'] = ['like', '%'.$room_id.'%']; } } if($search_user_id){ $user_id = db::name('user')->where('user_code', $search_user_id)->value('id'); $where['a.user_id'] = $user_id; } if($status){ $where['room_status'] = $status; } $count = db::name($this->table_guild_user)->alias('a') ->join('vs_room b', 'a.room_id = b.id', 'left')->where($where)->count(); $lists = db::name($this->table_guild_user)->alias('a') ->join('vs_room b', 'a.room_id = b.id', 'left') ->field('a.*,b.room_name,b.room_number,b.room_cover,b.type_id,b.label_id,b.room_status') ->where($where) ->page($page, $page_limit) ->select(); $rum_lists = []; //总流水 $total_consumption = 0; foreach ($lists as $k=>$v){ $search_stime = $search_stime_str; $search_etime = $search_etime_str; if($search_stime!=""){ if($search_stime!="" && $v['createtime'] < strtotime($search_stime)){ $search_stime = $search_stime; }else{ $search_stime = date('Y-m-d H:i:s',$v['createtime']) ; } }else{ $search_stime = $search_stime; } if($search_etime!=""){ if($v['quit_time']){ if($search_etime!="" && $v['quit_time'] > strtotime($search_etime)){ $search_etime = $search_etime; }else{ $search_etime = date('Y-m-d H:i:s',$v['quit_time']); } }else{ $search_etime = $search_etime; } }else{ $search_etime = $search_etime; } $room_info = db::name('vs_room')->where(['id'=>$v['room_id']])->find(); $rum_lists[$k]['id']=$v['id']; $rum_lists[$k]['room_id']=$v['room_id']; $rum_lists[$k]['room_code']= $v['room_number']; //靓号 $room_number = model('api/Decorate')->user_decorate_detail($v['room_id'], 7); $rum_lists[$k]['room_number']= $room_number==$v['room_number'] ? '无' : $room_number; //房主 $room_user = db::name('user')->where(['id'=>$v['user_id']])->find(); $rum_lists[$k]['room_user']= $room_user['user_code'] . '-' . $room_user['nickname']; $rum_lists[$k]['room_name']=$room_info['room_name']?? ''; $rum_lists[$k]['room_cover']=$room_info['room_cover']?? ''; //房间分类 $rum_lists[$k]['room_type']= db::name('vs_room_type')->where('id', $v['type_id'])->value('type_name')??''; //房间标签 $rum_lists[$k]['room_label']= db::name('vs_room_label')->where('id', $v['label_id'])->value('label_name')??''; //房间粉丝 $stime = $search_stime_str=="" ? strtotime(date('Y-m-d',time())) : strtotime($search_stime_str); $etime = time(); $rum_lists[$k]['follow_num'] = Db::name('user_follow')->where([ 'follow_id'=>$v['room_id'], 'type'=>2, 'createtime'=>['<',$etime], ])->count(); $rum_lists[$k]['follow_num_new'] = Db::name('user_follow')->where([ 'follow_id'=>$v['room_id'], 'type'=>2, 'createtime'=>['<',$etime], ])->where('createtime', '>', $stime)->count(); //房间状态 $rum_lists[$k]['room_status']= $v['room_status']==1 ? '正常' : '封禁'; //房间流水 $rum_lists[$k]['consumption']= model('adminapi/Room')->getRoomFlow($v['room_id'],$search_stime,$search_etime); $rum_lists[$k]['add_time'] = date('Y-m-d H:i:s',$v['createtime']); $total_consumption += $rum_lists[$k]['consumption']; } usort($rum_lists, function($a, $b) { return $b['consumption'] - $a['consumption']; }); //按流水查询 if($s_money_search!="" && $e_money_search!=""){ $rum_lists = array_filter($rum_lists, function($v) use ($s_money_search, $e_money_search) { return $v['consumption'] >= $s_money_search && $v['consumption'] <= $e_money_search; }); } //分页 $rum_lists = array_slice($rum_lists, ($page-1)*$page_limit, $page_limit); $return_data = [ 'page' =>$page, 'page_limit' => $page_limit, 'total_consumption' => $total_consumption, 'count' => $count, 'lists' => $rum_lists ]; return V(1,"成功", $return_data); } }