field('tab_site_game.*,sg.group_code,sg.group_name,sg.in_num')->join('tab_site_group as sg on sg.site_game_id = tab_site_game.id','left')->where($map)->order('is_top desc,top_time desc')->page($page,$row)->select();// /* 查询记录总数 */ $count = $model->join('tab_site_group as sg on sg.site_game_id = tab_site_game.id','left')->where($map)->count(); //分页 $parameter['p']=I('get.p',1); $parameter['row']=I('get.row'); $page = set_pagination($count,$row,$parameter); if($page) {$this->assign('_page', $page);} $this->assign('p',$p); $this->assign('data',$data); $this->meta_title = "游戏列表"; $this->display(); } public function add(){ if(IS_POST){ $model = D('SiteGame'); $map['promote_id'] = PID; $topData = $model->field('id,game_name')->where($map)->order('top_time desc')->find(); $topId = $topData['id']; $_POST['game_name'] = str_replace(array('(安卓版)','(苹果版)'),'',$_POST['game_name']); $_POST['recommend_status']=implode(',',$_POST['recommend_status']); empty($_POST['description']) || $_POST['description'] = str_replace(array("\r\n", "\r", "\n"),'~~',$_POST['description']); $sdk_version = $_POST['sdk_version']; $game_name = $_POST['game_name']; $condition['game_name'] = $game_name; $condition['sdk_version'] = $sdk_version; $condition['promote_id'] = PID; $is_setting = $model->field('id,game_name')->where($condition)->order('top_time desc')->find(); if($is_setting)$this->error('添加失败:游戏已存在'); $res = $model->saveData(); if($res !== false){ $index = $model->field('id')->order('id desc')->find(); $SiteGroup = D('SiteGroup');$data['site_game_id'] = $index['id']; foreach ($_POST as $k =>$v) { if (strpos($k,'qq_') !== false) { if (($k == 'qq_group_code' || $k == 'qq_pc_url') && empty($v)) {$data='';break;} $data[str_replace('qq_','',$k)] = $v; } } if ($data){ $data['game_name']=$_POST['game_name']; $res = $SiteGroup->saveData2($data); } //添加后保持 置顶状态 $model->where(array('id'=> $topId ,'promote_id'=>PID))->save(array('top_time'=>time())); $condition1['game_name'] = $game_name; $condition1['sdk_version'] = $sdk_version == 1 ? 2 : 1; $data1 = array( 'open_type' => $_POST['open_type'], 'version' => $_POST['version'], 'summary' => $_POST['summary'], 'description' => $_POST['description'], 'recommend_status' => $_POST['recommend_status'], 'game_icon' => $_POST['game_icon'], 'game_img' => $_POST['game_img'], //'screenshot' => $_POST['screenshot'], 'game_bg_img' => $_POST['game_bg_img'], ); $model->where($condition1)->save($data1); $this->success('添加成功!'); }else{ $this->error('添加失败:'.$model->getError()); } }else { $map['promote_id'] = PID; $map['pack_url'] = ['neq', '']; $game = M('apply', 'tab_')->where($map)->select(); foreach ($game as $key=>$val){ $data = M('game', 'tab_')->where(array('id'=>$val['game_id']))->find(); if(!$data){ unset($game[$key]); } } $this->meta_title = "添加游戏"; $this->assign('game', $game); $this->display(); } } public function edit($id=0){ $model = D('SiteGame'); $SiteGroup = D('SiteGroup'); if(IS_POST){ $p = I("post.p",1,'intval'); if ($_POST['cate_type'] == 1) { $_POST['game_name'] = str_replace(array('(安卓版)','(苹果版)'),'',$_POST['game_name']); $_POST['recommend_status']=implode(',',$_POST['recommend_status']); empty($_POST['description']) || $_POST['description'] = str_replace(array("\r\n", "\r", "\n"),'~~',$_POST['description']); $res = $model->saveData(); $game = $model->where(array('id'=>$_POST['id']))->field("game_name,sdk_version,open_type,version,summary,description,recommend_status,game_icon,game_img,screenshot,game_bg_img")->find(); $condition1['game_name'] = $game['game_name']; $condition1['sdk_version'] = $game['sdk_version'] == 1 ? 2 : 1; $data1 = array( 'open_type' => $game['open_type'], 'version' => $game['version'], 'summary' => $game['summary'], 'description' => $game['description'], 'recommend_status' => $game['recommend_status'], 'game_icon' => $game['game_icon'], 'game_img' => $game['game_img'], //'screenshot' => $game['screenshot'], 'game_bg_img' => $game['game_bg_img'] ); $model->where($condition1)->save($data1); if($res !== false){ $this->success('基础信息保存成功!',U('SiteGame/index',array('p'=>$p))); }else{ $this->error('基础信息保存失败:'.$model->getError()); } } elseif ($_POST['cate_type']==2) { foreach ($_POST as $k =>$v) { if (strpos($k,'qq_') !== false) { if (($k == 'qq_group_code' || $k == 'qq_pc_url') && empty($v)) {$data='';break;} $data[str_replace('qq_','',$k)] = $v; } } if ($data){ $res = $SiteGroup->saveData2($data); } if($res !== false){ $this->success('QQ群设置保存成功!',U('SiteGame/index',array('p'=>$p))); }else{ $this->error('QQ群设置保存失败:'.$model->getError()); } } else { $this->error('保存失败'); } }else { $p = I("get.p",1,'intval'); $this->assign('p',$p); $map['promote_id'] = PID; $map['pack_url'] = ['neq', '']; $game = M('apply', 'tab_')->where($map)->select(); $data = $model->get_site_game_detail($id); $qq_data = $SiteGroup->where(array('site_game_id'=>$data['id']))->find(); $this->assign('data',$data); $this->assign('qq_data',$qq_data); $this->assign('game', $game); if ($data['game_source'] == 2) { $this->assign('type', M('game_type','tab_')->field('id,type_name')->where(array('status'=>1,'status_show'=>1))->select()); } $this->meta_title = "编辑游戏"; $this->display(); } } public function del(){ $id = $_POST['id']; M()->startTrans(); $model = D('SiteGame'); $map['id'] = $id; $map['promote_id'] = PID; $game = $model->where($map)->delete(); $map = []; $map['promote_id'] = PID; $map['game_id'] = $id; $serverdata = M('Site_server','tab_')->where($map)->find(); if($serverdata){ $server = D("SiteServer")->where($map)->delete(); } if($game){ D('SiteGroup')->where(array('site_game_id'=>$id,'promote_id'=>PID))->delete(); $this->ajaxReturn(array('status'=>1,'msg'=>"删除成功"));exit; // M()->commit(); }else{ $this->ajaxReturn(array('status'=>0,'msg'=>"删除失败"));exit; // M()->rollback(); } // $this->redirect('index'); } public function game_detail($game_id){ if (!$game_id){ return ''; } $Model = M('game','tab_'); $map['tab_game.id'] =$game_id; $data = $Model ->field('tab_game.id,tab_game.game_name,tab_game.game_type_name as game_type,p.open_name,tab_game.game_size,g.version,category,tab_game.sdk_version,tab_game.game_type_id') ->join('left join tab_game_source g on g.game_id = tab_game.id ') ->join('left join tab_opentype p on tab_game.category = p.id') ->where($map) ->find(); if($data['category'] == 0){ $data['open_name'] = '公测'; } if ($data['game_size']){ $data['game_size'] = substr($data['game_size'],0,-2); } $where['game_name'] = str_replace(array('(安卓版)','(苹果版)'),'',$data['game_name']); $where['sdk_version'] = $data['sdk_version'] == 1 ? 2 : 1; $game = M("site_game","tab_")->where($where)->field("game_type,open_type,version,summary,description,recommend_status,game_icon,game_img,screenshot,game_bg_img")->find(); if($game){ $data['open_type'] = $game['open_type']; $data['version'] = $game['version']; $data['summary'] = $game['summary']; $data['description'] = $game['description']; $data['recommend_status'] = explode(",",$game['recommend_status']); $data['game_icon'] = $game['game_icon']; $data['game_icon_src'] = get_cover($game['game_icon'],'path'); $data['game_img'] = $game['game_img']; $data['game_img_src'] = get_cover($game['game_img'],'path'); $data['screenshot'] = $game['screenshot']; $data['game_bg_img'] = $game['game_bg_img']; $data['game_bg_img_src'] = get_cover($game['game_bg_img'],'path'); } $this->ajaxReturn($data); } public function game_detail1($game_name){ if (!$game_name){ return ''; } $where['game_name'] = $game_name; $game = M("site_game","tab_")->where($where)->field("game_type,open_type,version,summary,description,recommend_status,game_icon,game_img,screenshot,game_bg_img,game_type_id")->find(); $data['open_type'] = $game['open_type']; $data['version'] = $game['version']; $data['summary'] = $game['summary']; $data['description'] = $game['description']; $data['recommend_status'] = explode(",",$game['recommend_status']); $data['game_icon'] = $game['game_icon']; $data['game_icon_src'] = get_cover($game['game_icon'],'path'); $data['game_img'] = $game['game_img']; $data['game_img_src'] = get_cover($game['game_img'],'path'); $data['screenshot'] = $game['screenshot']; $data['game_bg_img'] = $game['game_bg_img']; $data['game_bg_img_src'] = get_cover($game['game_bg_img'],'path'); $data['game_type_id'] = $game['game_type_id']; $this->ajaxReturn($data); } public function game_type() { $data = M('game_type','tab_')->field('id,type_name')->where(array('status'=>1,'status_show'=>1))->select(); $this->ajaxReturn($data); } public function top($id){ $model = D('SiteGame'); $sql = "UPDATE `tab_site_game` SET `is_top`='0' WHERE `is_top` = '1'"; M()->execute($sql); $map['id'] = $id; $data['is_top'] = 1; $model->where($map)->setField($data); $this->redirect('SiteGame/index'); } public function endtop($id){ $model = D('SiteGame'); $map['id'] = $id;//查询创建时间 $data['is_top'] = 0; $model->where($map)->setField($data); $this->redirect('SiteGame/index'); } }