游戏管理->混服管理 游戏管理->分成比例
commit
3a9afae16e
@ -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