混服模块 分成比例模块
parent
4d19e28633
commit
93b3affa75
@ -0,0 +1,106 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace Home\Controller;
|
||||
|
||||
use Admin\Model\PromoteModel;
|
||||
use Think\Controller;
|
||||
use User\Api\PromoteApi;
|
||||
|
||||
/**
|
||||
* 游戏分成比例控制器
|
||||
*/
|
||||
class GameDivideController extends BaseController
|
||||
{
|
||||
//首页
|
||||
public function index()
|
||||
{
|
||||
$parentId = getParentPromoteId(PID);
|
||||
if ($parentId > 0) {
|
||||
$this->error('权限异常');
|
||||
}
|
||||
|
||||
$securityCode = empty(session('game_divide_second_pwd')) ? '' : session('game_divide_second_pwd');
|
||||
$model = new PromoteApi();
|
||||
$res = $model->verify_er_User(PID, $securityCode);
|
||||
if (!empty($securityCode) && $res) {
|
||||
$map['tab_game.online_status'] = 1;//开发者游戏上线状态
|
||||
$map['tab_game.down_port'] = 1;//游戏端口 第三方接口不能申请
|
||||
$map['tab_game.game_status'] = 1;//游戏状态
|
||||
empty(I('relation_game_id')) || $map['relation_game_id'] = I('relation_game_id');
|
||||
empty(I('sdk_version')) || $map['sdk_version'] = I('sdk_version');
|
||||
empty(I('server_type')) || $map['server_type'] = I('server_type');
|
||||
|
||||
$minRatio = floatval(I('min_ratio', 0));
|
||||
$maxRatio = floatval(I('max_ratio', 0));
|
||||
if (!empty($minRatio) && empty($maxRatio)) {
|
||||
$map['ratio'] = ['egt', $minRatio];
|
||||
} elseif (empty($minRatio) && !empty($maxRatio)) {
|
||||
$map['ratio'] = ['elt', $maxRatio];
|
||||
} elseif (!empty($minRatio) && !empty($maxRatio)) {
|
||||
$map['ratio'] = ['between', [$minRatio, $maxRatio]];
|
||||
}
|
||||
|
||||
$page = intval(I('get.p', 0));
|
||||
$page = $page ? $page : 1; //默认显示第一页数据
|
||||
|
||||
if (isset($_REQUEST['row'])) {
|
||||
$row = $_REQUEST['row'];
|
||||
} else {
|
||||
$row = 10;
|
||||
}
|
||||
|
||||
$data = M('Game', 'tab_')
|
||||
->field('id,icon,game_name,game_type_name,sdk_version,server_type,discount,ratio')
|
||||
->where($map)
|
||||
->order('sort desc')
|
||||
->page($page, $row)
|
||||
->select();
|
||||
$count = M('Game', 'tab_')
|
||||
->where($map)
|
||||
->count();
|
||||
|
||||
//分页
|
||||
$parameter['p'] = I('get.p', 1);
|
||||
$parameter['row'] = I('get.row');
|
||||
empty(I('relation_game_id')) || $parameter['relation_game_id'] = I('relation_game_id');
|
||||
empty(I('sdk_version')) || $parameter['sdk_version'] = I('sdk_version');
|
||||
empty(I('server_type')) || $parameter['server_type'] = I('server_type');
|
||||
empty($minRatio) || $parameter['min_ratio'] = $minRatio;
|
||||
empty($maxRatio) || $parameter['max_ratio'] = $maxRatio;
|
||||
|
||||
$page = set_pagination($count, $row, $parameter);
|
||||
if ($page) {
|
||||
$this->assign('_page', $page);
|
||||
}
|
||||
|
||||
$this->assign('dataList', $data);
|
||||
$this->assign('count', $count);
|
||||
$this->assign('serverType', I('server_type', 0));
|
||||
}
|
||||
|
||||
$this->meta_title = "分成比例";
|
||||
$this->display();
|
||||
}
|
||||
|
||||
public function verifyPassword()
|
||||
{
|
||||
$password = I('post.password');
|
||||
$model = new PromoteApi();
|
||||
$res = $model->verify_er_User(PID, $password);
|
||||
|
||||
if ($res) {
|
||||
session('game_divide_second_pwd', $password);
|
||||
|
||||
$data['status'] = 1;
|
||||
$data['msg'] = '验证成功';
|
||||
|
||||
$this->ajaxReturn($data);
|
||||
} else {
|
||||
$data['status'] = 0;
|
||||
$data['msg'] = '安全密码不正确';
|
||||
|
||||
$this->ajaxReturn($data);
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,315 @@
|
||||
<extend name="Public/promote_base"/>
|
||||
<block name="css">
|
||||
<link rel="stylesheet" href="__CSS__/20170831/select2.min.css" type="text/css"/>
|
||||
<link href="__CSS__/20180207/data.css" rel="stylesheet">
|
||||
<link href="__CSS__/20180207/game.css" rel="stylesheet">
|
||||
<link href="__CSS__/20180207/finance.css" rel="stylesheet">
|
||||
<link href="__CSS__/game_detailed.css" rel="stylesheet">
|
||||
<link href="__CSS__/detailed.css?v=1.1" rel="stylesheet">
|
||||
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
|
||||
|
||||
<style type="text/css">
|
||||
.trunk-list {
|
||||
position: relative;
|
||||
min-height: 66vh;
|
||||
}
|
||||
|
||||
.pagenation {
|
||||
text-align: center;
|
||||
line-height: 5vh;
|
||||
}
|
||||
|
||||
.lwx_dialog_prompt .layui-layer-content {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
.lwx_dialog_title {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.launch_platform_prompt .layui-layer-input, .lwx_dialog_input, .lwx_dialog_select, .lwx_dialog_textarea {
|
||||
display: block;
|
||||
width: 220px;
|
||||
height: 32px;
|
||||
margin: 0 auto;
|
||||
line-height: 32px;
|
||||
padding: 0 5px;
|
||||
border: 1px solid #ccc;
|
||||
box-shadow: 1px 1px 5px rgba(0, 0, 0, .1) inset;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.lwx_dialog_select {
|
||||
width: 272px;
|
||||
}
|
||||
|
||||
.lwx_dialog_textarea {
|
||||
height: 64px;
|
||||
width: 260px;
|
||||
margin-top: 10px;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.lwx_dialog_input {
|
||||
width: 260px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.launch_platform_prompt .layui-layer-btn, .lwx_dialog_prompt .layui-layer-btn {
|
||||
text-align: center;
|
||||
padding-bottom: 25px;
|
||||
}
|
||||
|
||||
.launch_platform_prompt .layui-layer-btn .layui-layer-btn0, .lwx_dialog_prompt .layui-layer-btn .layui-layer-btn0 {
|
||||
width: 81%;
|
||||
line-height: 32px;
|
||||
height: 32px;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.lwx_dialog_notice {
|
||||
position: absolute;
|
||||
bottom: 6px;
|
||||
left: 20px;
|
||||
font-size: 12px;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.lwx_dialog_prompt .select2-container, .select2-container--default .select2-selection--single {
|
||||
width: 272px !important;
|
||||
}
|
||||
|
||||
.applycbtn {
|
||||
display: block;
|
||||
color: #50B370;
|
||||
}
|
||||
|
||||
textarea {
|
||||
font-family: inherit;
|
||||
}
|
||||
|
||||
.trunk-content {
|
||||
margin: 0 2%;
|
||||
}
|
||||
|
||||
.pic-prev:hover, .pic-next:hover {
|
||||
background-color: #4ac5c3;
|
||||
}
|
||||
|
||||
.add-disable {
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.input-number {
|
||||
width: 80px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.input-security {
|
||||
width: 500px;
|
||||
height: 2.5rem;
|
||||
padding-left: 10px;
|
||||
border-radius: 5px;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.btn-security {
|
||||
width: 300px;
|
||||
height: 2.4rem;
|
||||
border: 0;
|
||||
border-radius: 5px;
|
||||
background-color: #358fe4;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.btn-security-close {
|
||||
width: 300px;
|
||||
height: 2.4rem;
|
||||
border: 0;
|
||||
border-radius: 5px;
|
||||
background-color: #fff;
|
||||
color: #999;
|
||||
}
|
||||
</style>
|
||||
</block>
|
||||
|
||||
<block name="body">
|
||||
<div class="page-list normal_list apply-index-list">
|
||||
<div class="trunk-title">
|
||||
<div class="location">
|
||||
<div class="location-container">当前位置:<span>游戏管理></span><span>分成比例</span></div>
|
||||
</div>
|
||||
<if condition="isset($dataList)">
|
||||
<img src="__IMG__/20180207/icon_normal_game.png"><span class="title_main">分成比例</span>
|
||||
<else/>
|
||||
<span class="title_main">安全密码</span>
|
||||
</if>
|
||||
</div>
|
||||
<div class="trunk-content article">
|
||||
<if condition="isset($dataList)">
|
||||
<div class="trunk-search clearfix">
|
||||
<div class="tab marg_top20" style="clear:both;display: flex;"></div>
|
||||
<form action="{:U('index',array('row'=>I('get.row')))}" method="post" enctype="multipart/form-data"
|
||||
class="marg_top20" style="float: left;">
|
||||
<div class="form-group normal_space fl">
|
||||
<select id="relation_game_id" name="relation_game_id" class="reselect select_gallery" style="min-width:200px;width: 175px;">
|
||||
<option value="">请选择游戏</option>
|
||||
<volist name=":get_promote_serach_game()" id="vo">
|
||||
<option value="{$vo.relation_game_id}" title="{$vo.relation_game_name}">{$vo.relation_game_name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group normal_space fl">
|
||||
<select id="sdk_version" name="sdk_version" class="reselect select_gallery" style="width:215px;">
|
||||
<option value="0">请选择设备类型</option>
|
||||
<volist name=":getSDKType()" id="vo" key="k">
|
||||
<option value="{$k}">{$vo}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group normal_space fl">
|
||||
<label class="form-title select-title" style="position: relative;">分成比例:</label>
|
||||
<div class="select-time">
|
||||
<input type="text" id="min_ratio" class="txt input-number" name="min_ratio" placeholder="" value="{:I('min_ratio')}">
|
||||
</div>
|
||||
<label class="form-title select-title zhi_color"> 至 </label>
|
||||
<div class="select-time">
|
||||
<input type="text" id="max_ratio" class="txt input-number" name="max_ratio" placeholder="" value="{:I('max_ratio')}">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group normal_space fl">
|
||||
<div style="display: flex;">
|
||||
<div class="btn btn-role <if condition='$serverType eq 0'>highlight</if>" server-type="0">
|
||||
<p>全部</p>
|
||||
</div>
|
||||
|
||||
<div class="btn btn-role <if condition='$serverType eq 2'>highlight</if>" style="border-left: 0;border-right: 0;" server-type="2">
|
||||
<p>混服</p>
|
||||
</div>
|
||||
|
||||
<div class="btn btn-role <if condition='$serverType eq 1'>highlight</if>" server-type="1">
|
||||
<p>专服</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group normal_space fl" style="display: none;">
|
||||
<input id="server_type" name="server_type">
|
||||
</div>
|
||||
|
||||
<div class="form-group normal_space fl">
|
||||
<input type="submit" class="submit" value="查询">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="trunk-list">
|
||||
<div class="div_bgtab">
|
||||
<table class="table normal_table zwm_tab">
|
||||
<tr class="odd <if condition='get_parent_id(PID) eq 0'>pid</if> zwm_tr">
|
||||
<th>游戏图标</th>
|
||||
<th>游戏名称</th>
|
||||
<th>游戏类型</th>
|
||||
<th>平台</th>
|
||||
<th>混服情况</th>
|
||||
<th>玩家折扣</th>
|
||||
<th>分成比例</th>
|
||||
</tr>
|
||||
<empty name="dataList">
|
||||
<tr>
|
||||
<td colspan="7" style="text-align: center;height: 45vh;">
|
||||
<img src="__IMG__/20180207/icon_wushujv2.png"/>
|
||||
<p style="line-height: 40px;color: #A5A5A5;">暂无数据</p>
|
||||
</td>
|
||||
</tr>
|
||||
<else/>
|
||||
<volist name="dataList" id="vo">
|
||||
<tr>
|
||||
<td><img src="__ROOT__{$vo.icon|get_cover='path'}" style="width: 50px;height: 50px;border-radius: 8px;"/></td>
|
||||
<td>{$vo.game_name}</td>
|
||||
<td>{$vo.game_type_name}</td>
|
||||
<td>{:getSDKTypeName($vo['sdk_version'])}</td>
|
||||
<td><?=($vo['server_type']==1)?'专服':'混服'?></td>
|
||||
<td><?=($vo['discount']==10)?'----':($vo['discount'].'折')?></td>
|
||||
<td>{$vo.ratio}%</td>
|
||||
</tr>
|
||||
</volist>
|
||||
</empty>
|
||||
</table>
|
||||
</div>
|
||||
<div class="pagenation clearfix">
|
||||
{$_page}
|
||||
</div>
|
||||
</div>
|
||||
<else/>
|
||||
<div class="trunk-search clearfix" style="display: grid;">
|
||||
<div class="tab detailed-box" style="margin-top: 40px;align-items: center;">
|
||||
<label class="detailed-title detailed-label" style="margin-right: 20px;">安全密码:</label>
|
||||
<div class="detailed-content-box">
|
||||
<input class="input-security" id="security_password" type="password" placeholder="安全密码">
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab detailed-box">
|
||||
<label class="detailed-title detailed-label" style="margin-right: 20px;"></label>
|
||||
<div class="detailed-content-box" style="display: flex;width: 100%;">
|
||||
<button class="btn-security" style="margin-right: 20px;">确定</button>
|
||||
<button class="btn-security-close">取消</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</if>
|
||||
</div>
|
||||
</div>
|
||||
</block>
|
||||
<block name="script">
|
||||
<script src="__STATIC__/zeroclipboard/jquery.zclip.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/20170831/select2.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setValue('relation_game_id', {$Think.request.relation_game_id |default = '""'});
|
||||
setValue('sdk_version', {$Think.request.sdk_version |default = '""'});
|
||||
setValue('server_type', {$Think.request.server_type |default = 0});
|
||||
setValue('row', '{:I("row",10)}');
|
||||
|
||||
$('.btn-role').on('click', function () {
|
||||
var thisElement = $(this);
|
||||
|
||||
if (!thisElement.hasClass('highlight')) {
|
||||
var serverType = thisElement.attr('server-type');
|
||||
console.log(serverType);
|
||||
|
||||
setValue('server_type', serverType);
|
||||
|
||||
$('.btn-role').removeClass('highlight');
|
||||
thisElement.addClass('highlight');
|
||||
}
|
||||
});
|
||||
|
||||
$(document).ready(function () {
|
||||
$(".select_gallery").select2();
|
||||
|
||||
$('.btn-security').on('click', function () {
|
||||
var password = $('#security_password').val();
|
||||
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: "__URL__/verifyPassword",
|
||||
dataType: "json",
|
||||
data: {'password': password},
|
||||
success: function (data) {
|
||||
if (data.status == 1) {
|
||||
window.location.reload();
|
||||
} else {
|
||||
layer.msg(data.msg, {icon: 5});
|
||||
}
|
||||
},
|
||||
error: function (result) {
|
||||
layer.msg('网络异常', {icon: 5});
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</block>
|
Loading…
Reference in New Issue