You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
274 lines
7.2 KiB
PHP
274 lines
7.2 KiB
PHP
<?php
|
|
/**
|
|
* Created by PhpStorm.
|
|
* User: xmy 280564871@qq.com
|
|
* Date: 2017/3/28
|
|
* Time: 9:01
|
|
*/
|
|
namespace App\Controller;
|
|
|
|
use App\Model\GameModel;
|
|
|
|
class GameController extends BaseController{
|
|
|
|
/**
|
|
* 排行榜
|
|
* @param $p 分页
|
|
* @param $recommend 推荐状态 1 推荐 2 热门 3 最新 4 下载量
|
|
* @param $version 游戏版本 1 android 2 ios
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_rank_lists($p=1,$recommend,$version,$account=''){
|
|
if(GameModel::ORDER_DOWN_NUM == $recommend){
|
|
$order = "dow_num desc";
|
|
}else{
|
|
$order = "sort desc,id desc";
|
|
$map['recommend_status'] = $recommend;
|
|
}
|
|
$map['g.sdk_version'] = $version;
|
|
$data = D('Game')->getGameLists($map,$order,$p,$account);
|
|
if(empty($data)){
|
|
$this->set_message(1033,"暂无数据");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 游戏详情
|
|
* @param $game_id
|
|
* @return mixed
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_detail($game_id,$token="",$account=''){
|
|
if(!empty($token)){
|
|
$this->auth($token);
|
|
}
|
|
$data = D('Game')->getGameDetail($game_id,$account);
|
|
if (empty($data)){
|
|
$this->set_message(1034,"游戏不存在");
|
|
}
|
|
//获取游戏评论数量
|
|
$map['game_id'] = $game_id;
|
|
$map['status'] = 1;
|
|
$comment_count = D('comment')->where($map)->count();
|
|
$data['comment_count'] = $comment_count;
|
|
$msg = array(
|
|
"code" =>200,
|
|
"msg" => "成功",
|
|
"data" => $data
|
|
);
|
|
echo json_encode($msg);
|
|
exit;
|
|
}
|
|
|
|
|
|
/**
|
|
* 获取游戏类型列表
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_type_lists($name="",$version){
|
|
empty($name) || $map['t.type_name'] = ["like","%".$name."%"];
|
|
$data = D("GameType")->getGameTypeLists($map,$version);
|
|
if(empty($data)){
|
|
$this->set_message(1040,"游戏类型为空");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 根据游戏类型获取游戏列表
|
|
* @param $p
|
|
* @param $version 游戏版本 1 android 2 ios
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_lists_by_type($type,$name="",$version,$p=1,$account=''){
|
|
$map['g.sdk_version'] = $version;
|
|
$map['game_type_id'] = $type;
|
|
empty($name) || $map['g.game_name'] = ['like',"%".$name."%"];
|
|
$data = D('Game')->getGameLists($map,"sort desc",$p,$account);
|
|
if(empty($data)){
|
|
$this->set_message(1041,"没有游戏");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 获取折扣游戏列表
|
|
* @param string $name
|
|
* @param int $p
|
|
* @param $version
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_discount_game_lists($name="",$p=1,$version){
|
|
empty($name) || $map['g.game_name'] = ['like','%'.$name.'%'];
|
|
$map['bind_recharge_discount'] = [['gt',0],['lt',10]];
|
|
$map['g.sdk_version'] = $version;
|
|
$data = D('Game')->getGameLists($map,'sort desc',$p);
|
|
if(empty($data)){
|
|
$this->set_message(1041,"没有游戏");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 搜索游戏
|
|
* @param string $name
|
|
* @param int $p
|
|
* @param $version
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_lists_by_name($name="",$p=1,$version,$account=''){
|
|
if(empty($name)){
|
|
$this->set_message(1042,"游戏名称不能为空");
|
|
}
|
|
$map['g.game_name'] = ['like','%'.$name.'%'];
|
|
$map['g.sdk_version'] = $version;
|
|
$data = D('Game')->getGameLists($map,'sort desc',$p,$account);
|
|
if(empty($data)){
|
|
$this->set_message(1041,"没有游戏");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 游戏收藏
|
|
* @param $game_id
|
|
* @param $token
|
|
* @param $status 1 收藏 2 取消收藏
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function collect_game($game_id,$token,$status){
|
|
$this->auth($token);
|
|
$result = D("Game")->collectGame($game_id,USER_ACCOUNT,$status);
|
|
if($result !== false){
|
|
$this->set_message(200,"操作成功");
|
|
}else{
|
|
$this->set_message(1043,"操作失败");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 我的游戏收藏
|
|
* @param $token
|
|
* @param int $p
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function my_collect_game($token,$p=1){
|
|
$this->auth($token);
|
|
$data = D("Game")->getMyCollectGame(USER_ACCOUNT,$p);
|
|
if(empty($data)){
|
|
$this->set_message(1044,"未收藏游戏");
|
|
}else{
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 获取绑币充值折扣
|
|
* @param $game_id
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_recharge_discount($game_id){
|
|
$discount = D("Game")->getBindRechargeDiscount($game_id);
|
|
$this->set_message(200,"成功",$discount);
|
|
}
|
|
|
|
/**
|
|
* 获取游戏列表
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_game_lists($version){
|
|
$map['sdk_version'] = $version;
|
|
$data = D("Game")->getLists($map);
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
|
|
/**
|
|
* 首页推荐游戏
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_home_recommend($version,$account=''){
|
|
$map['g.sdk_version'] = $version;
|
|
$model = new GameModel();
|
|
$map['g.recommend_status'] = 1;
|
|
$data['recommend'] = $model->getGameLists($map,'','',$account);
|
|
$map['g.recommend_status'] = 2;
|
|
$data['hot'] = $model->getGameLists($map,'','',$account);
|
|
$map['g.recommend_status'] = 3;
|
|
$data['new'] = $model->getGameLists($map,'','',$account);
|
|
$data['down_num'] = $model->getGameLists(['g.sdk_version'=>$version],"dow_num desc");
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
|
|
/**
|
|
* 获取游戏分享信息
|
|
* @param $game_id
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_share_info($game_id){
|
|
$model = new GameModel();
|
|
$game = $model->getGameDetail($game_id);
|
|
if(empty($game_id)){
|
|
$this->set_message(1057,"游戏不存在");
|
|
}
|
|
|
|
$result['title'] = $game['game_name'];
|
|
$result['icon'] = $game['icon'];
|
|
$result['content'] = $game['features'];
|
|
$result['url'] = U('Game/share_game',['game_id'=>$game_id,'account'=>USER_ACCOUNT],true,true);
|
|
$this->set_message(200,"成功",$result);
|
|
}
|
|
|
|
/**
|
|
* 分享游戏页面
|
|
* @param $game_id
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function share_game($game_id){
|
|
$model = new GameModel();
|
|
$data = $model->getGameDetail($game_id,I('get.account',''),1);
|
|
$app_map['id'] = 4;
|
|
$ios = M('app', 'tab_')->where($app_map)->find();
|
|
$ios['url'] = file_exists($ios['file_url'])?$ios['file_url']:"javascript:";
|
|
$ios['plist_url'] = "https://".$_SERVER['HTTP_HOST'].substr($ios['plist_url'],1);
|
|
$this->assign('ios',$ios);
|
|
if($data['icon'] && !is_file(ROOT_DIR . str_replace('http://'.$_SERVER['HTTP_HOST'],'',$data['icon']))) {
|
|
$data['icon'] = '';
|
|
}
|
|
$this->assign("data",$data);
|
|
$this->display();
|
|
}
|
|
|
|
/**
|
|
* 绑币充值游戏列表
|
|
* @param $token
|
|
* author: xmy 280564871@qq.com
|
|
*/
|
|
public function get_user_recharge_game($token,$version=1){
|
|
$this->auth($token);
|
|
$model = new GameModel();
|
|
$user_id = get_user_id(USER_ACCOUNT);
|
|
$data = $model->getUserRechargeGame($user_id,$version);
|
|
if (empty($data)){
|
|
$this->set_message(1034,"游戏不存在");
|
|
}
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
|
|
/**
|
|
* 读取游戏客服qq
|
|
* @param int $game_id 游戏ID
|
|
* @return mixed
|
|
* 小纯洁
|
|
*/
|
|
public function get_game_ccustom_service_qq($game_id){
|
|
$gameModel = new GameModel();
|
|
$qq = $gameModel->get_table_fields("ccustom_service_qq",$game_id);
|
|
$this->set_message(200,"成功",$data);
|
|
}
|
|
} |