Merge branch 'release' of 47.111.118.107:wmtx/platform into feature/testing_resource_admin
commit
f490f10ee5
@ -0,0 +1,414 @@
|
||||
<extend name="Public/base" />
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
|
||||
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="__CSS__/pro_promote.css" type="text/css" />
|
||||
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/provincecityarea/AreaData_min.js"></script>
|
||||
<script src="__STATIC__/layer/layer.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<script src="__STATIC__/jquery.form.js"></script>
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
|
||||
<style>
|
||||
.tabcon1711 input.time {
|
||||
width: 150px;
|
||||
}
|
||||
#form .txt_area {
|
||||
width: 300px;
|
||||
height: 150px;
|
||||
}
|
||||
.tabcon1711 .form_unit {
|
||||
margin-left: 2px;
|
||||
}
|
||||
.tabcon1711 .mustmark {
|
||||
margin-left:-7px;
|
||||
}
|
||||
.list-ratio {
|
||||
display: table;
|
||||
}
|
||||
.list-ratio .li-ratio {
|
||||
display: flex;
|
||||
margin-bottom: 20px;
|
||||
align-items: center;
|
||||
}
|
||||
.list-ratio .li-ratio .turnover, .list-ratio .li-ratio .turnover-ratio {
|
||||
position: relative;
|
||||
}
|
||||
.list-ratio .li-ratio .turnover span, .list-ratio .li-ratio .turnover-ratio .error-message {
|
||||
color: red;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 30px;
|
||||
white-space: nowrap;
|
||||
display: none;
|
||||
}
|
||||
.iconfont-btn {
|
||||
cursor: pointer;
|
||||
}
|
||||
.iconfont-style {
|
||||
font-size: 18px;
|
||||
color: #fff;
|
||||
border-radius: 4px;
|
||||
border: 0;
|
||||
padding: 5px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.iconfont-selected {
|
||||
background-color: #0A9AF2;
|
||||
}
|
||||
.iconfont-selected:hover {
|
||||
background-color: #03a9f4;
|
||||
}
|
||||
.iconfont-unselected {
|
||||
background-color: #999;
|
||||
}
|
||||
.iconfont-unselected:hover {
|
||||
background-color: #ababab;
|
||||
}
|
||||
|
||||
input[type=number]{
|
||||
padding: 4px 6px;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
color: #555;
|
||||
vertical-align: middle;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ccc;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
-webkit-transition: border linear .2s, box-shadow linear .2s;
|
||||
-moz-transition: border linear .2s, box-shadow linear .2s;
|
||||
-o-transition: border linear .2s, box-shadow linear .2s;
|
||||
transition: border linear .2s, box-shadow linear .2s;
|
||||
}
|
||||
</style>
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
<h3 class="page_title">新增</h3>
|
||||
<p class="description_text">说明:选择仅内团推广的游戏,选中的游戏推广员将不进行业绩提成</p>
|
||||
</div>
|
||||
|
||||
<!-- 标签页导航 -->
|
||||
<div class="tab-wrap">
|
||||
<div class="tab-content tabcon1711">
|
||||
<!-- 表单 -->
|
||||
<form id="form" action="{:U('addcompanybelonggame')}" method="post" class="form-horizontal">
|
||||
<!-- 基础文档模型 -->
|
||||
<div id="tab1" class="tab-pane in tab1">
|
||||
<table border="0" cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>生效期限:</td>
|
||||
<td class="r table_radio">
|
||||
<div style="float: left;">
|
||||
<input type="text" class="txt time" name="begin_time" id="begin_time" placeholder="起始时间" value="">-
|
||||
<input type="text" class="txt time" name="end_time" id="end_time" placeholder="结束时间" value="">
|
||||
</div>
|
||||
<span class="notice-text"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>游戏:</td>
|
||||
<td class="r">
|
||||
<a class="ajax-view submit_btn mlspacing" data-id="{$data.id}" style="margin-left:0">选择游戏</a>
|
||||
<span class="notice-text"></span>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>已申请游戏:</td>
|
||||
<td class="r promote_id" id="game_name">
|
||||
无
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="form-item cf">
|
||||
<input style="display: none" value="" name="game_ids" class="show_game_ids">
|
||||
<button class="submit_btn mlspacing" id="submit" type="submit" target-form="form-horizontal">
|
||||
保存
|
||||
</button>
|
||||
<a class="submit_btn " alt="返回上一页" title="返回上一页" href="javascript:window.history.back();" >
|
||||
返回
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
<div class="pro_promot" style="display:none">
|
||||
<form action="{:U('MarketPercentage/showGame')}" id="ajaxForm" method="post" />
|
||||
<input type="hidden" name="promote_id" id="se_promote_id" value="" />
|
||||
<div class="pro_promot_main">
|
||||
<div class="pro_promot_title">
|
||||
<div class="fl pro_promot_title_text">
|
||||
<div class="fl pro_promot_title_bigtext"> 可申请游戏</div> </div>
|
||||
<div class="pro_promot_close fr"><img src="__IMG__/icon_close.png"></div>
|
||||
</div>
|
||||
<div class="pro_promot_con">
|
||||
<!-- <div class="pro_promot_account">推广员账号:<span class="pro_promot_number"></span></div>-->
|
||||
<div class="pro_promot_select">
|
||||
<div class="pro_promot_select_title fl">选择游戏:</div>
|
||||
<div class="pro_promot_select_list fl">
|
||||
<a class="pro_promot_select_list_con fl active pro_promot_all pro_promot_mr20">全部 </a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="A">A</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="B">B</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="C">C</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="D">D</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="E">E</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="F">F</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="G">G</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="H">H</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="I">I</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="J">J</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="K">K</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="L">L</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="M">M</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="N">N</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="O">O</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="P">P</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Q">Q</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="R">R</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="S">S</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="T">T</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="U">U</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="V">V</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="W">W</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="X">X</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Y">Y</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Z">Z</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="pro_promot_game">
|
||||
<div class="jsgamecheckallbox z_clearfix" >
|
||||
<label class="custom-label">
|
||||
<input type="checkbox" class="form_control jsgamecheckall" >
|
||||
<i class="label_icon"></i>
|
||||
<span class="label_text">全选</span></label>
|
||||
</div>
|
||||
<ul id="game_list" class="z_clearfix game_list" style="clear: both;">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="pro_promot_btn">
|
||||
<div class="fl pro_promot_btn_confirm">确定</div>
|
||||
<div class="fr pro_promot_btn_cancel">取消</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</block>
|
||||
|
||||
<block name="script">
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
||||
<script src="__STATIC__/czinputcheck.js?v=1.29" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
//导航高亮
|
||||
highlight_subnav("{:U('addcompanybelonggame')}");
|
||||
$(".select_gallery").select2();
|
||||
|
||||
$(function(){
|
||||
$('.time').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
language: "zh-CN",
|
||||
minView: 2,
|
||||
autoclose: true
|
||||
});
|
||||
|
||||
$('#submit').click(function (e) {
|
||||
|
||||
//查看是否报错
|
||||
var target = $('#form').get(0).action;
|
||||
var query = $('#form').serialize();
|
||||
|
||||
var starttime = $.trim($('#begin_time').val());
|
||||
var endtime = $.trim($('#end_time').val());
|
||||
|
||||
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
|
||||
|
||||
var that = this;
|
||||
$(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
|
||||
$.post(target,query).success(function(data){
|
||||
if(data.status == 1) {
|
||||
layer.msg(data.msg);
|
||||
setTimeout(function(){
|
||||
window.location.href = "{:U('MarketPercentage/companybelonggame')}";
|
||||
},2000);
|
||||
} else {
|
||||
layer.msg(data.msg);
|
||||
$(that).addClass('disabled').attr('autocomplete','on').prop('disabled',false);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
showTab();
|
||||
|
||||
var game_data = [];
|
||||
var push_data = [];
|
||||
|
||||
$('#relation_game_id').change(function (e) {
|
||||
var original_package_name = $('#relation_game_id option:selected').data("original");
|
||||
if(original_package_name == ''){
|
||||
original_package_name = '未配置原包名'
|
||||
}
|
||||
$("#original_package_name").html(original_package_name);
|
||||
});
|
||||
|
||||
//点击字母按照条件按钮筛选
|
||||
$(".pro_promot_select_list_con").click(function(){
|
||||
//选中高亮样式
|
||||
$(this).addClass('active');
|
||||
$(this).siblings().removeClass('active');
|
||||
|
||||
var that = $(this);
|
||||
var index = $(this).attr("data-index");
|
||||
|
||||
$("#game_list li").each(function(index,ele){
|
||||
var short = $(this).attr('data-short');
|
||||
$(this).show();
|
||||
if(that.attr('data-index')){
|
||||
if(that.attr('data-index')!=short.charAt(0)){
|
||||
$(this).hide();
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
//打开弹窗
|
||||
$(".ajax-view").click(function(){
|
||||
//获取游戏列表
|
||||
var url = "{:U('MarketPercentage/getPromoteGame')}";
|
||||
var id = $(this).attr('data-id');
|
||||
var checked = 'checked';
|
||||
|
||||
|
||||
|
||||
$.post(url,{id:id},function(res){
|
||||
if(res.code==1){
|
||||
|
||||
$(".pro_promot_select_list a").eq(0).addClass('active');
|
||||
$(".pro_promot_select_list a").eq(0).siblings().removeClass('active');
|
||||
|
||||
var game_list = res.data.game_list;
|
||||
var lis = [];
|
||||
|
||||
$.each(game_list,function(index,ele){
|
||||
if(ele.game_name.length>6){
|
||||
ele.game_name = ele.game_name .substring(0,6)+"..."
|
||||
}
|
||||
lis.push('<li class="fl pro_promot_game_con" data-short="'+ele.short+'">');
|
||||
|
||||
if(game_data.indexOf(ele.id)>-1){
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" checked="checked" id="gameCheck'+index+'" />');
|
||||
}else{
|
||||
$(".jsgamecheckall").attr('checked',false);
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" id="gameCheck'+index+'" />');
|
||||
checked = '';
|
||||
}
|
||||
|
||||
lis.push('<label for="gameCheck'+index+'" class="fl"></label>');
|
||||
lis.push('<span class="fl pro_promot_game_name">'+ele.game_name+'</span>');
|
||||
lis.push('</li>');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").attr('checked',checked);
|
||||
|
||||
$("#game_list").html(lis.join(''));
|
||||
|
||||
$(".pro_promot").css("display","block");
|
||||
|
||||
jsgameid();
|
||||
|
||||
}else{
|
||||
var tip_msg = res.info ? res.info : '操作失败';
|
||||
layer.msg(tip_msg);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
//保存修改
|
||||
$(".pro_promot_btn_confirm").click(function(){
|
||||
$("#ajaxForm").ajaxSubmit(function(res){
|
||||
|
||||
if (res.status == 1) {
|
||||
$("#game_name").empty();
|
||||
layer.msg(res.msg);
|
||||
|
||||
var data = res.data;
|
||||
|
||||
var span = "";
|
||||
|
||||
for (var key in data) {
|
||||
span += "<span style='margin-left: 15px'>"+data[key]['relation_game_name']+"</span>";
|
||||
|
||||
if ((parseInt(key)+1)%5 == 0) {
|
||||
span += "<br>";
|
||||
}
|
||||
game_data.push(data[key]['relation_game_id']);
|
||||
push_data.push(data[key]['relation_game_id']);
|
||||
|
||||
}
|
||||
|
||||
// push_data = JSON.stringify(push_data);
|
||||
|
||||
$(".show_game_ids").val(push_data);
|
||||
|
||||
$("#game_name").append(span);
|
||||
$(".pro_promot").hide();
|
||||
} else {
|
||||
layer.msg(res.msg);
|
||||
}
|
||||
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
//关闭弹窗
|
||||
$(".pro_promot_close").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
});
|
||||
//取消修改
|
||||
$(".pro_promot_btn_cancel").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
layer.msg('修改已取消');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").click(function(){
|
||||
$(this).closest('.jsgamecheckallbox').siblings("#game_list").find(".jsgameid").prop("checked", this.checked);
|
||||
});
|
||||
|
||||
//可申请游戏 全选及全选反选 功能 @author zwm date 20180604
|
||||
function jsgameid(){
|
||||
$(".jsgameid").click(function(){
|
||||
var option = $(this).closest('ul').find(".jsgameid"),
|
||||
checkall = $(this).closest('ul').siblings('.jsgamecheckallbox').find('.jsgamecheckall');
|
||||
option.each(function(i){
|
||||
if(!this.checked){
|
||||
checkall.prop("checked", false);
|
||||
return false;
|
||||
}else{
|
||||
checkall.prop("checked", true);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
</script>
|
||||
</block>
|
||||
|
@ -0,0 +1,272 @@
|
||||
<extend name="Public/base"/>
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<link rel="stylesheet" href="__CSS__/pro_promote.css" type="text/css" />
|
||||
<script src="__STATIC__/jquery.form.js"></script>
|
||||
<script src="__STATIC__/layer/layer.js"></script>
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/layer/extend/layer.ext.js"></script>
|
||||
<link rel="stylesheet" href="__CSS__/promote.css" type="text/css"/>
|
||||
<style>
|
||||
.select2-container--default .select2-selection--single {
|
||||
color: #000;
|
||||
resize: none;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
||||
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
|
||||
height:28px;border-radius:3px;font-size:12px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||
line-height:35px;
|
||||
line-height:28px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||
height:26px;
|
||||
}
|
||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||
height:26px;line-height:26px;font-size:12px;
|
||||
}
|
||||
.select2-results__option[aria-selected] {font-size:12px;}
|
||||
.layui-layer-dialog .layui-layer-content{color:red}
|
||||
.textarea-style {
|
||||
width: 195px;
|
||||
height: 150px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
.mustmark {
|
||||
color: #FF0000;
|
||||
font-style: normal;
|
||||
margin: 0 3px;
|
||||
margin-left:-7px
|
||||
}
|
||||
tr{
|
||||
border-bottom: 1px solid #e6e6e6;
|
||||
}
|
||||
.data_list table td{
|
||||
line-height: 2;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="cf top_nav_list">
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
<h3 class="page_title">仅内团推广游戏</h3>
|
||||
<p class="description_text">说明:仅内团推广游戏数据</p>
|
||||
</div>
|
||||
<div class="fl button_list">
|
||||
<div class="tools">
|
||||
<a class=" " href="{:U('addcompanybelonggame')}"><span class="button_icon button_icon1"></span>新增</a>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 高级搜索 -->
|
||||
<div class="jssearch fl cf search_list">
|
||||
<div class="input-list search-title-box">
|
||||
<label>搜索:</label>
|
||||
</div>
|
||||
<div class="input-list input-list-game search_label_rehab">
|
||||
<select id="relation_game_id" name="relation_game_id" class="select_gallery" >
|
||||
<option value="">现包名</option>
|
||||
<volist name="gameList" id="vo">
|
||||
<option value="{$vo.relation_game_id}" <if condition="$vo.relation_game_id eq I('relation_game_id')">selected</if> >{$vo.relation_game_name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="input-list">
|
||||
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}" placeholder="生效时间开始" />
|
||||
-
|
||||
<div class="input-append date" style="display:inline-block">
|
||||
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="生效时间结束" />
|
||||
<span class="add-on"><i class="icon-th"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="search" url="{:U('MarketPercentage/companybelonggame','model='.$model['name'] .'&row='.I('row') . '&group=' . $group,false)}">搜索</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 数据列表 -->
|
||||
<div class="data_list">
|
||||
<div class="">
|
||||
<table>
|
||||
<!-- 表头 -->
|
||||
<thead>
|
||||
<tr>
|
||||
<th>生效时间</th>
|
||||
<th>原包名</th>
|
||||
<th>现包名</th>
|
||||
<th>游戏类型</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<!-- 列表 -->
|
||||
<tbody>
|
||||
<if condition = "empty($data)">
|
||||
<tr>
|
||||
<td colspan="16" class="text-center">aOh! 暂时还没有内容!</td>
|
||||
</tr>
|
||||
<else/>
|
||||
<volist name="data" id="data">
|
||||
<tr>
|
||||
<td rowspan="{$data.row}">{$data.begin_time}-{$data.end_time}</td>
|
||||
<td>{$data['game_data']['0']['original_package_name']|default="--"}</td>
|
||||
<td>{$data['game_data']['0']['relation_game_name']|default="--"}</td>
|
||||
<td>{$data['game_data']['0']['game_type_name']|default="--"}</td>
|
||||
<td rowspan="{$data.row}">
|
||||
<a href="{:U('editcompanybelonggame', array('id'=>$data['id']))}" class="">修改</a>
|
||||
<a data-url="{:U('delcompanybelonggame', array('id'=>$data['id']))}" class="ratio_del">删除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<if condition="$data['row'] gt 1">
|
||||
<foreach name="data['game_data']" item="game_data" key="gamekey">
|
||||
<if condition="$gamekey neq 0">
|
||||
<tr>
|
||||
<td>{$game_data['original_package_name']|default="--"}</td>
|
||||
<td>{$game_data['relation_game_name']|default="--"}</td>
|
||||
<td>{$game_data['game_type_name']|default="--"}</td>
|
||||
</tr>
|
||||
</if>
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
</volist>
|
||||
</if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="page">
|
||||
<!-- <a class="sch-btn export-btn" id="downloadexcel" url="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}">导出</a>-->
|
||||
{$_page|default=''}
|
||||
</div>
|
||||
<!--弹出层-->
|
||||
<div class="promote-layer mb20">
|
||||
<form id="ajaxForm" action="{:U('set_withdraw')}" method="post">
|
||||
<ol class="promote-con">
|
||||
<li class="promote-con-con " id="deny">
|
||||
<div class="mb20">
|
||||
<span class="promote-name">备注:</span>
|
||||
<textarea class="textarea-style" name="remark" id="remark"></textarea>
|
||||
</div>
|
||||
<a class="ajax-post pack" style="cursor: pointer;" target-form="ids" url="{:U('setStatus',array('status'=>-1))}"><div class="promote-btn">拒绝</div></a>
|
||||
</li>
|
||||
</ol>
|
||||
</form>
|
||||
</div>
|
||||
</block>
|
||||
|
||||
<block name="script">
|
||||
<script>
|
||||
<volist name=":I('get.')" id="vo">
|
||||
Think.setValue('{$key}',"{$vo}");
|
||||
</volist>
|
||||
$(".select_gallery").select2();
|
||||
</script>
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
//导航高亮
|
||||
highlight_subnav("{:U('MarketPercentage/companybelonggame')}");
|
||||
$(function(){
|
||||
|
||||
$('#time_start').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
language: "zh-CN",
|
||||
minView: 2,
|
||||
autoclose: true
|
||||
});
|
||||
$('#time_end').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
language: "zh-CN",
|
||||
minView: 2,
|
||||
autoclose: true
|
||||
});
|
||||
|
||||
$('#datetimepicker').datetimepicker({
|
||||
format: 'yyyy-mm',
|
||||
language:"zh-CN",
|
||||
// minView:2,
|
||||
weekStart: 1,
|
||||
todayBtn: true,
|
||||
todayHighlight: false,
|
||||
startView: 3,
|
||||
minView: 3,
|
||||
forceParse: 0,
|
||||
autoclose:true,
|
||||
pickerPosition:'bottom-left'
|
||||
})
|
||||
|
||||
//搜索功能
|
||||
$("#search").click(function(){
|
||||
var url = $(this).attr('url');
|
||||
var query = $('.jssearch').find('input').serialize();
|
||||
query += "&"+$('.jssearch').find('select').serialize();
|
||||
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
|
||||
query = query.replace(/^&/g,'');
|
||||
if( url.indexOf('?')>0 ){
|
||||
url += '&' + query;
|
||||
}else{
|
||||
url += '?' + query;
|
||||
}
|
||||
window.location.href = url;
|
||||
});
|
||||
//回车自动提交
|
||||
$('.jssearch').find('input').keyup(function(event){
|
||||
if(event.keyCode===13){
|
||||
$("#search").click();
|
||||
}
|
||||
});
|
||||
$("#downloadexcel").on("click",function(){
|
||||
var url = $(this).attr("url");
|
||||
var title = '游戏分成比例模板,请耐心等待数据处理....';
|
||||
var index = layer.load(2);
|
||||
layer.open({
|
||||
type: 2,
|
||||
title: title,
|
||||
shadeClose: false,
|
||||
shade: 0.8,
|
||||
area: ['40%', '30%'],
|
||||
content: url,
|
||||
success:function(){
|
||||
layer.closeAll();
|
||||
}
|
||||
|
||||
});
|
||||
})
|
||||
$(".ratio_del").on("click",function(){
|
||||
var url = $(this).data("url");
|
||||
layer.confirm('删除后将无法恢复,请慎重选择', {
|
||||
closeBtn:0,
|
||||
title:false,
|
||||
btn: ['取消','删除'] //按钮
|
||||
}, function(index){
|
||||
layer.close(index);
|
||||
}, function(){
|
||||
$.get(url,function(data){
|
||||
if(data.status == 1){
|
||||
layer.msg('<span style="color:white">'+data.msg+'<span>',{time: 1000},function(){
|
||||
window.location.reload();
|
||||
});
|
||||
|
||||
}else{
|
||||
layer.msg(data.msg,{icon: 2});
|
||||
}
|
||||
});
|
||||
});
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
</block>
|
@ -0,0 +1,419 @@
|
||||
<extend name="Public/base" />
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<link rel="stylesheet" type="text/css" href="__CSS__/admin_table.css" media="all">
|
||||
<link href="__STATIC__/icons_alibaba/iconfont.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="__CSS__/pro_promote.css" type="text/css" />
|
||||
<script type="text/javascript" src="__STATIC__/uploadify/jquery.uploadify.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/provincecityarea/AreaData_min.js"></script>
|
||||
<script src="__STATIC__/layer/layer.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<script src="__STATIC__/jquery.form.js"></script>
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
|
||||
<style>
|
||||
.tabcon1711 input.time {
|
||||
width: 150px;
|
||||
}
|
||||
#form .txt_area {
|
||||
width: 300px;
|
||||
height: 150px;
|
||||
}
|
||||
.tabcon1711 .form_unit {
|
||||
margin-left: 2px;
|
||||
}
|
||||
.tabcon1711 .mustmark {
|
||||
margin-left:-7px;
|
||||
}
|
||||
.list-ratio {
|
||||
display: table;
|
||||
}
|
||||
.list-ratio .li-ratio {
|
||||
display: flex;
|
||||
margin-bottom: 20px;
|
||||
align-items: center;
|
||||
}
|
||||
.list-ratio .li-ratio .turnover, .list-ratio .li-ratio .turnover-ratio {
|
||||
position: relative;
|
||||
}
|
||||
.list-ratio .li-ratio .turnover span, .list-ratio .li-ratio .turnover-ratio .error-message {
|
||||
color: red;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 30px;
|
||||
white-space: nowrap;
|
||||
display: none;
|
||||
}
|
||||
.iconfont-btn {
|
||||
cursor: pointer;
|
||||
}
|
||||
.iconfont-style {
|
||||
font-size: 18px;
|
||||
color: #fff;
|
||||
border-radius: 4px;
|
||||
border: 0;
|
||||
padding: 5px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.iconfont-selected {
|
||||
background-color: #0A9AF2;
|
||||
}
|
||||
.iconfont-selected:hover {
|
||||
background-color: #03a9f4;
|
||||
}
|
||||
.iconfont-unselected {
|
||||
background-color: #999;
|
||||
}
|
||||
.iconfont-unselected:hover {
|
||||
background-color: #ababab;
|
||||
}
|
||||
|
||||
input[type=number]{
|
||||
padding: 4px 6px;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
color: #555;
|
||||
vertical-align: middle;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ccc;
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
box-shadow: inset 0 1px 1px rgba(0,0,0,0.075);
|
||||
-webkit-transition: border linear .2s, box-shadow linear .2s;
|
||||
-moz-transition: border linear .2s, box-shadow linear .2s;
|
||||
-o-transition: border linear .2s, box-shadow linear .2s;
|
||||
transition: border linear .2s, box-shadow linear .2s;
|
||||
}
|
||||
</style>
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
<h3 class="page_title">编辑</h3>
|
||||
<p class="description_text">说明:选择仅内团推广的游戏,选中的游戏推广员将不进行业绩提成</p>
|
||||
</div>
|
||||
|
||||
<!-- 标签页导航 -->
|
||||
<div class="tab-wrap">
|
||||
<div class="tab-content tabcon1711">
|
||||
<!-- 表单 -->
|
||||
<form id="form" action="{:U('editcompanybelonggame')}" method="post" class="form-horizontal">
|
||||
<!-- 基础文档模型 -->
|
||||
<div id="tab1" class="tab-pane in tab1">
|
||||
<table border="0" cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>生效期限:</td>
|
||||
<td class="r table_radio">
|
||||
<div style="float: left;">
|
||||
<input type="text" class="txt time" name="begin_time" id="begin_time" placeholder="起始时间" value="{$data['begin_time']}" <if condition="$data['is_start'] eq 1">disabled</if>>-
|
||||
<input type="hidden" name="is_start" value="{$data['is_start']}">
|
||||
<input type="text" class="txt time" name="end_time" id="end_time" placeholder="结束时间" value="{$data['end_time']}">
|
||||
</div>
|
||||
<span class="notice-text"></span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>游戏:</td>
|
||||
<td class="r">
|
||||
<a class="ajax-view submit_btn mlspacing" data-id="{$data.id}" data-is="{$data['is_start']}" style="margin-left:0">选择游戏</a>
|
||||
<span class="notice-text"></span>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="l"><i class="mustmark">*</i>已申请游戏:</td>
|
||||
<td class="r promote_id" id="game_name">
|
||||
{$data['span_str']}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- {$data['game_ids']}-->
|
||||
<div class="form-item cf">
|
||||
<input style="display: none" value="{$_GET['id']}" name="id" >
|
||||
<input style="display: none" value="{$data['ids']}" name="game_ids" class="show_game_ids">
|
||||
<button class="submit_btn mlspacing" id="submit" type="submit" target-form="form-horizontal">
|
||||
保存
|
||||
</button>
|
||||
<a class="submit_btn " alt="返回上一页" title="返回上一页" href="javascript:window.history.back();" >
|
||||
返回
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
<div class="pro_promot" style="display:none">
|
||||
<form action="{:U('MarketPercentage/showGame')}" id="ajaxForm" method="post" />
|
||||
<input type="hidden" name="promote_id" id="se_promote_id" value="" />
|
||||
<div class="pro_promot_main">
|
||||
<div class="pro_promot_title">
|
||||
<div class="fl pro_promot_title_text">
|
||||
<div class="fl pro_promot_title_bigtext"> 可申请游戏</div> </div>
|
||||
<div class="pro_promot_close fr"><img src="__IMG__/icon_close.png"></div>
|
||||
</div>
|
||||
<div class="pro_promot_con">
|
||||
<!-- <div class="pro_promot_account">推广员账号:<span class="pro_promot_number"></span></div>-->
|
||||
<div class="pro_promot_select">
|
||||
<div class="pro_promot_select_title fl">选择游戏:</div>
|
||||
<div class="pro_promot_select_list fl">
|
||||
<a class="pro_promot_select_list_con fl active pro_promot_all pro_promot_mr20">全部 </a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="A">A</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="B">B</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="C">C</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="D">D</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="E">E</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="F">F</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="G">G</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="H">H</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="I">I</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="J">J</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="K">K</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="L">L</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="M">M</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="N">N</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="O">O</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="P">P</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Q">Q</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="R">R</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="S">S</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="T">T</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="U">U</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="V">V</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="W">W</a>
|
||||
<a class="pro_promot_select_list_con fl pro_promot_mr20" data-index="X">X</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Y">Y</a>
|
||||
<a class="pro_promot_select_list_con fl" data-index="Z">Z</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="pro_promot_game">
|
||||
<div class="jsgamecheckallbox z_clearfix" >
|
||||
<label class="custom-label">
|
||||
<input type="checkbox" class="form_control jsgamecheckall" >
|
||||
<i class="label_icon"></i>
|
||||
<span class="label_text">全选</span></label>
|
||||
</div>
|
||||
<ul id="game_list" class="z_clearfix game_list" style="clear: both;">
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="pro_promot_btn">
|
||||
<div class="fl pro_promot_btn_confirm">确定</div>
|
||||
<div class="fr pro_promot_btn_cancel">取消</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</block>
|
||||
|
||||
<block name="script">
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
||||
<script src="__STATIC__/czinputcheck.js?v=1.29" type="text/javascript"></script>
|
||||
<script type="text/javascript">
|
||||
//导航高亮
|
||||
highlight_subnav("{:U('editcompanybelonggame')}");
|
||||
$(".select_gallery").select2();
|
||||
|
||||
$(function(){
|
||||
$('.time').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
language: "zh-CN",
|
||||
minView: 2,
|
||||
autoclose: true
|
||||
});
|
||||
|
||||
$('#submit').click(function (e) {
|
||||
//查看是否报错
|
||||
var target = $('#form').get(0).action;
|
||||
var query = $('#form').serialize();
|
||||
|
||||
var starttime = $.trim($('#begin_time').val());
|
||||
var endtime = $.trim($('#end_time').val());
|
||||
|
||||
if (starttime && endtime && starttime > endtime) {layer.msg('开始时间必须小于等于结束时间');return false;}
|
||||
|
||||
var that = this;
|
||||
$(that).addClass('disabled').attr('autocomplete','off').prop('disabled',true);
|
||||
$.post(target,query).success(function(data){
|
||||
if(data.status == 1) {
|
||||
layer.msg(data.msg);
|
||||
setTimeout(function(){
|
||||
window.location.href = "{:U('MarketPercentage/companybelonggame')}";
|
||||
},2000);
|
||||
} else {
|
||||
layer.msg(data.msg);
|
||||
$(that).addClass('disabled').attr('autocomplete','on').prop('disabled',false);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
showTab();
|
||||
// var get_push_data = "{$data['game_ids']}";
|
||||
var game_data = "{$data['game_ids']}";
|
||||
|
||||
var push_data = "{$data['ids']}";
|
||||
|
||||
$('#relation_game_id').change(function (e) {
|
||||
var original_package_name = $('#relation_game_id option:selected').data("original");
|
||||
if(original_package_name == ''){
|
||||
original_package_name = '未配置原包名'
|
||||
}
|
||||
$("#original_package_name").html(original_package_name);
|
||||
});
|
||||
|
||||
//点击字母按照条件按钮筛选
|
||||
$(".pro_promot_select_list_con").click(function(){
|
||||
//选中高亮样式
|
||||
$(this).addClass('active');
|
||||
$(this).siblings().removeClass('active');
|
||||
|
||||
var that = $(this);
|
||||
var index = $(this).attr("data-index");
|
||||
|
||||
$("#game_list li").each(function(index,ele){
|
||||
var short = $(this).attr('data-short');
|
||||
$(this).show();
|
||||
if(that.attr('data-index')){
|
||||
if(that.attr('data-index')!=short.charAt(0)){
|
||||
$(this).hide();
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
//打开弹窗
|
||||
$(".ajax-view").click(function(){
|
||||
//获取游戏列表
|
||||
var url = "{:U('MarketPercentage/getPromoteGame')}";
|
||||
var id = $(this).attr('data-id');
|
||||
var is_show = $(this).attr('data-is');
|
||||
var checked = 'checked';
|
||||
|
||||
if (is_show == 1) {
|
||||
layer.msg("已经结算过的时间不能修改游戏");
|
||||
return;
|
||||
}
|
||||
|
||||
$.post(url,{id:id},function(res){
|
||||
if(res.code==1){
|
||||
|
||||
$(".pro_promot_select_list a").eq(0).addClass('active');
|
||||
$(".pro_promot_select_list a").eq(0).siblings().removeClass('active');
|
||||
|
||||
var game_list = res.data.game_list;
|
||||
var lis = [];
|
||||
|
||||
$.each(game_list,function(index,ele){
|
||||
if(ele.game_name.length>6){
|
||||
ele.game_name = ele.game_name .substring(0,6)+"..."
|
||||
}
|
||||
lis.push('<li class="fl pro_promot_game_con" data-short="'+ele.short+'">');
|
||||
|
||||
if(game_data.indexOf(ele.id)>-1){
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" checked="checked" id="gameCheck'+index+'" />');
|
||||
}else{
|
||||
$(".jsgamecheckall").attr('checked',false);
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" id="gameCheck'+index+'" />');
|
||||
checked = '';
|
||||
}
|
||||
|
||||
lis.push('<label for="gameCheck'+index+'" class="fl"></label>');
|
||||
lis.push('<span class="fl pro_promot_game_name">'+ele.game_name+'</span>');
|
||||
lis.push('</li>');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").attr('checked',checked);
|
||||
|
||||
$("#game_list").html(lis.join(''));
|
||||
|
||||
$(".pro_promot").css("display","block");
|
||||
|
||||
jsgameid();
|
||||
|
||||
}else{
|
||||
var tip_msg = res.info ? res.info : '操作失败';
|
||||
layer.msg(tip_msg);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
//保存修改
|
||||
$(".pro_promot_btn_confirm").click(function(){
|
||||
$("#ajaxForm").ajaxSubmit(function(res){
|
||||
|
||||
if (res.status == 1) {
|
||||
$("#game_name").empty();
|
||||
layer.msg(res.msg);
|
||||
|
||||
var data = res.data;
|
||||
|
||||
var span = "";
|
||||
push_data = [];
|
||||
game_data = [];
|
||||
for (var key in data) {
|
||||
span += "<span style='margin-left: 15px'>"+data[key]['relation_game_name']+"</span>";
|
||||
|
||||
if ((parseInt(key)+1)%5 == 0) {
|
||||
span += "<br>";
|
||||
}
|
||||
game_data.push(data[key]['relation_game_id']);
|
||||
push_data.push(data[key]['relation_game_id']);
|
||||
|
||||
}
|
||||
|
||||
$(".show_game_ids").val(push_data);
|
||||
|
||||
$("#game_name").append(span);
|
||||
$(".pro_promot").hide();
|
||||
} else {
|
||||
layer.msg(res.msg);
|
||||
}
|
||||
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
//关闭弹窗
|
||||
$(".pro_promot_close").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
});
|
||||
//取消修改
|
||||
$(".pro_promot_btn_cancel").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
layer.msg('修改已取消');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").click(function(){
|
||||
$(this).closest('.jsgamecheckallbox').siblings("#game_list").find(".jsgameid").prop("checked", this.checked);
|
||||
});
|
||||
|
||||
//可申请游戏 全选及全选反选 功能 @author zwm date 20180604
|
||||
function jsgameid(){
|
||||
$(".jsgameid").click(function(){
|
||||
var option = $(this).closest('ul').find(".jsgameid"),
|
||||
checkall = $(this).closest('ul').siblings('.jsgamecheckallbox').find('.jsgamecheckall');
|
||||
option.each(function(i){
|
||||
if(!this.checked){
|
||||
checkall.prop("checked", false);
|
||||
return false;
|
||||
}else{
|
||||
checkall.prop("checked", true);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
</script>
|
||||
</block>
|
||||
|
@ -0,0 +1,507 @@
|
||||
<extend name="Public/base"/>
|
||||
|
||||
<block name="body">
|
||||
<link rel="stylesheet" href="__CSS__/select2.min.css" type="text/css" />
|
||||
<link rel="stylesheet" href="__CSS__/pro_promote.css" type="text/css" />
|
||||
<script src="__STATIC__/jquery.form.js"></script>
|
||||
<script src="__STATIC__/layer/layer.js"></script>
|
||||
<script type="text/javascript" src="__JS__/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/select2.min.js"></script>
|
||||
<style>
|
||||
.select2-container--default .select2-selection--single {
|
||||
color: #000;
|
||||
resize: none;
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-color: #a7b5bc #ced9df #ced9df #a7b5bc;
|
||||
box-shadow: 0px 3px 3px #F7F8F9 inset;height:35px;
|
||||
height:28px;border-radius:3px;font-size:12px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
||||
line-height:35px;
|
||||
line-height:28px;
|
||||
}
|
||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
||||
height:26px;
|
||||
}
|
||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||
height:26px;line-height:26px;font-size:12px;
|
||||
}
|
||||
.select2-results__option[aria-selected] {font-size:12px;}
|
||||
.layui-layer-dialog .layui-layer-content{color:red}
|
||||
</style>
|
||||
|
||||
<div class="cf main-place top_nav_list navtab_list">
|
||||
<h3 class="page_title">非外团游戏结算数据统计</h3>
|
||||
<p class="description_text">说明:不开放给外团游戏流水数据统计</p>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="cf top_nav_list">
|
||||
<div class="fl button_list">
|
||||
<div class="tools">
|
||||
<if condition="$caculate_check eq true">
|
||||
<empty name="show_status">
|
||||
<a class="recaculate" url="{:U('reCaculateBonus?pay_time='.$_GET['pay_time'])}" style="width: 60px;text-align: center;padding-right: 0;margin-right: 0;">重算</a>
|
||||
</empty>
|
||||
</if>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 高级搜索 -->
|
||||
<div class="jssearch fl cf search_list">
|
||||
<div class="input-list search-title-box">
|
||||
<label>搜索:</label>
|
||||
</div>
|
||||
<div class="input-list input-list-resway search_label_rehab">
|
||||
<select id="company_id" name="company_id" class="select_gallery" style="width:150px;">
|
||||
<option value="">请选择推广公司</option>
|
||||
<volist name=":getPromoteCompany()" id="vo">
|
||||
<option value="{$vo.id}" <if condition="I('company_id') && $vo.id eq I('company_id')">selected
|
||||
</if> >{$vo.company_name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
<!-- <div class="input-list input-list-promote search_label_rehab">-->
|
||||
<!-- <select id="pay_time" name="pay_time" class="select_gallery" style="width:150px;">-->
|
||||
<!-- <option value="">请选择月份</option>-->
|
||||
<!-- <volist name=":getMonth()" id="vo">-->
|
||||
<!-- <option value="{$vo}" <if condition="$vo eq $_GET['pay_time']">selected=selected</if>>{$vo}</option>-->
|
||||
<!-- </volist>-->
|
||||
<!-- </select>-->
|
||||
<!-- </div>-->
|
||||
<div class="input-list">
|
||||
<input type="text" readonly id="time_start" name="time_start" class="" value="{:I('time_start')}" placeholder="开始时间" />
|
||||
-
|
||||
<div class="input-append date" id="datetimepicker" style="display:inline-block">
|
||||
<input type="text" readonly id="time_end" name="time_end" class="" value="{:I('time_end')}" placeholder="结束时间" />
|
||||
<span class="add-on"><i class="icon-th"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-list input-list-parent search_label_rehab">
|
||||
<select id="promote_id" name="promote_id" class="select_gallery" style="width:120px;">
|
||||
<option value="">请选择会长账号</option>
|
||||
<volist name=":promote_listsMarket(1)" id="vo">
|
||||
<option data-company_belong="{$vo['company_belong']}" data-belong="{:getCompanyBlong($vo['company_belong'])}" promote_id-id="{$vo.id}" value="{$vo.id}" <if condition="$vo.id eq $_GET['promote_id']">selected=selected</if>>{$vo.account}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-list input-list-parent search_label_rehab">
|
||||
<select id="admin_id" name="admin_id" class="select_gallery" style="width:120px;">
|
||||
<option value="">请选择人员</option>
|
||||
<volist name=":getMarketAdmin()" id="vo">
|
||||
<option value="{$vo.uid}" <if condition="$vo.uid eq $_GET['admin_id']">selected=selected</if>>{$vo.real_name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-list input-list-game search_label_rehab">
|
||||
<select id="relation_game_id" name="relation_game_id" class="select_gallery" style="width:120px;">
|
||||
<option value="" selected="">请选择游戏</option>
|
||||
<volist name=':get_game_list(null,2)' id='vo'>
|
||||
<option value="{$vo.relation_game_id}" <if condition="$vo.relation_game_id eq $_GET['relation_game_id']"></if>>{$vo.relation_game_name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
<input type="hidden" name="" value="" class="sortBy">
|
||||
<input type="hidden" name="type" value="{$_GET['type']}">
|
||||
<div class="input-list">
|
||||
<a class="sch-btn" href="javascript:;" id="search" url="{:U('indexuncaculate','model='.$model['name'] .'&row='.I('row'),false)}">搜索</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 数据列表 -->
|
||||
<div class="data_list">
|
||||
<empty name="show_status">
|
||||
<div class="">
|
||||
<table>
|
||||
<!-- 表头 -->
|
||||
<thead>
|
||||
<tr>
|
||||
<th>时间</th>
|
||||
<th>公司名称</th>
|
||||
<th>会长账号</th>
|
||||
<th>内外团</th>
|
||||
<th>所属市场专员</th>
|
||||
<th>类型</th>
|
||||
<th >游戏名称</th>
|
||||
<th >总流水</th>
|
||||
<th>上游结算流水</th>
|
||||
<th>下游结算流水</th>
|
||||
<th>支付渠道费用</th>
|
||||
<th><a href="{:U('editTaxRatio')}" style="text-decoration:none;">公司税费</a></th>
|
||||
<th>税后毛利额</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<!-- 列表 -->
|
||||
<tbody>
|
||||
<if condition = "empty($list_data)">
|
||||
<tr>
|
||||
<td colspan="16" class="text-center">aOh! 暂时还没有内容!</td>
|
||||
</tr>
|
||||
</if>
|
||||
<notemtpy name = "list_data">
|
||||
<volist name="list_data" id="data">
|
||||
<tr>
|
||||
<td>{$data.pay_time}</td>
|
||||
<td>{$data.company_name}</td>
|
||||
<td>{$data.promote_account}</td>
|
||||
<td>{$data.company_belong}</td>
|
||||
<td>{$data.real_name}</td>
|
||||
<td>{$data['develop_type']}</td>
|
||||
<td>{$data['game_name']}</td>
|
||||
<td>{$data['pay_amount']}</td>
|
||||
<td>{$data['cp_amount']}</td>
|
||||
<td>{$data['promote_amount']}</td>
|
||||
<td>{$data['channel_amount']}</td>
|
||||
<td>{$data['company_tax']}</td>
|
||||
<td>{$data['company_profit']}</td>
|
||||
</tr>
|
||||
</volist>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td>合计</td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td>{$sum['pay_amount']}</td>
|
||||
<td>{$sum['cp_amount']}</td>
|
||||
<td>{$sum['promote_amount']}</td>
|
||||
<td>{$sum['channel_amount']}</td>
|
||||
<td>{$sum['company_tax']}</td>
|
||||
<td>{$sum['company_profit']}</td>
|
||||
</tr>
|
||||
</notemtpy>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<else/>
|
||||
</empty>
|
||||
|
||||
</div>
|
||||
<div class="page">
|
||||
<if condition="$role_export_check eq true ">
|
||||
<a class="sch-btn" href="{:U(CONTROLLER_NAME.'/'.ACTION_NAME,array_merge(['export'=>1],I('get.')))}" target="_blank">导出</a>
|
||||
</if>
|
||||
{$_page|default=''}
|
||||
</div>
|
||||
|
||||
</block>
|
||||
|
||||
<block name="script">
|
||||
<script>
|
||||
<volist name=":I('get.')" id="vo">
|
||||
Think.setValue('{$key}',"{$vo}");
|
||||
</volist>
|
||||
$(".select_gallery").select2();
|
||||
</script>
|
||||
<link href="__STATIC__/datetimepicker/css/datetimepicker.css" rel="stylesheet" type="text/css">
|
||||
<php>if(C('COLOR_STYLE')=='blue_color') echo '<link href="__STATIC__/datetimepicker/css/datetimepicker_blue.css" rel="stylesheet" type="text/css">';</php>
|
||||
<link href="__STATIC__/datetimepicker/css/dropdown.css" rel="stylesheet" type="text/css">
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
|
||||
<script type="text/javascript" src="__STATIC__/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js" charset="UTF-8"></script>
|
||||
<script type="text/javascript">
|
||||
//导航高亮
|
||||
highlight_subnav('{:U('MarketPercentage/indexuncaculate')}');
|
||||
$(function(){
|
||||
//搜索功能
|
||||
$("#search").click(function(){
|
||||
var url = $(this).attr('url');
|
||||
var query = $('.jssearch').find('input').serialize();
|
||||
query += "&"+$('.jssearch').find('select').serialize();
|
||||
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g,'');
|
||||
query = query.replace(/^&/g,'');
|
||||
if( url.indexOf('?')>0 ){
|
||||
url += '&' + query;
|
||||
}else{
|
||||
url += '?' + query;
|
||||
}
|
||||
|
||||
var start = $("#time_start").val();
|
||||
var end = $("#time_end").val();
|
||||
if(start !='' && end != ''){
|
||||
if (Date.parse(start) > Date.parse(end)){
|
||||
layer.msg('开始时间必须小于等于结束时间');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
window.location.href = url;
|
||||
});
|
||||
$(".paixu").click(function(){
|
||||
var that=$(this);
|
||||
$data_order=that.attr('data-order');
|
||||
$order_type='{$userarpu_order}';
|
||||
if($order_type==''||$order_type=='4'){
|
||||
$(".sortBy").attr('name','data_order');
|
||||
val='3,'+$data_order;
|
||||
$(".sortBy").attr('value',val);
|
||||
$("#search").click();
|
||||
}else if($order_type=='3'){
|
||||
$(".sortBy").attr('name','data_order');
|
||||
val='4,'+$data_order;
|
||||
$(".sortBy").attr('value',val);
|
||||
$("#search").click();
|
||||
}
|
||||
});
|
||||
//回车自动提交
|
||||
$('.jssearch').find('input').keyup(function(event){
|
||||
if(event.keyCode===13){
|
||||
$("#search").click();
|
||||
}
|
||||
});
|
||||
$("#admin").on('click',function(event) {
|
||||
var navlist = $(this).find('.i_list_li');
|
||||
if (navlist.hasClass('hidden')) {
|
||||
navlist.removeClass('hidden');
|
||||
$(this).find('#i_list_id').focus().val('');
|
||||
} else {
|
||||
navlist.addClass('hidden');
|
||||
}
|
||||
$(document).one("click", function(){
|
||||
navlist.addClass('hidden');
|
||||
});
|
||||
event.stopPropagation();
|
||||
});
|
||||
|
||||
$('#admin #i_list_id').on('keyup',function(event) {
|
||||
var val = $.trim($(this).val()).toLowerCase();
|
||||
$(this).closest('.drop-down').find('#i_list_idh').val(val);
|
||||
});
|
||||
|
||||
$("#admin #i_list_li").find("a").each(function(){
|
||||
$(this).click(function(){
|
||||
var text = $.trim($(this).text()).toLowerCase();
|
||||
$(this).closest('.drop-down').find("#i_list_id").val(text);
|
||||
$(this).closest('.drop-down').find('#i_list_idh').val(text);
|
||||
})
|
||||
});
|
||||
|
||||
$('#time_start').datetimepicker({
|
||||
format: 'yyyy-mm',
|
||||
language:"zh-CN",
|
||||
// minView:2,
|
||||
weekStart: 1,
|
||||
todayBtn: true,
|
||||
todayHighlight: false,
|
||||
startView: 3,
|
||||
minView: 3,
|
||||
forceParse: 0,
|
||||
autoclose:true,
|
||||
pickerPosition:'bottom-left'
|
||||
});
|
||||
|
||||
$('#datetimepicker').datetimepicker({
|
||||
format: 'yyyy-mm',
|
||||
language:"zh-CN",
|
||||
// minView:2,
|
||||
weekStart: 1,
|
||||
todayBtn: true,
|
||||
todayHighlight: false,
|
||||
startView: 3,
|
||||
minView: 3,
|
||||
forceParse: 0,
|
||||
autoclose:true,
|
||||
pickerPosition:'bottom-left'
|
||||
})
|
||||
|
||||
//下拉内容框
|
||||
$(".drop-down2").on('click',function(event) {
|
||||
var navlist = $(this).find('.i_list_li');
|
||||
if (navlist.hasClass('hidden')) {
|
||||
navlist.removeClass('hidden');
|
||||
$('#i_list_id').focus().val('');
|
||||
} else {
|
||||
navlist.addClass('hidden');
|
||||
}
|
||||
$(document).one("click", function(){
|
||||
navlist.addClass('hidden');
|
||||
});
|
||||
event.stopPropagation();
|
||||
});
|
||||
/* 状态搜索子菜单 */
|
||||
/*渠道删除*/
|
||||
$('.delete').click(function(){
|
||||
var id = $(this).attr('data-id');
|
||||
layer.confirm('渠道删除后,下级渠道同时被删除,所属数据归属于自然渠道!', {
|
||||
title:'确定要删除该渠道?',
|
||||
icon:0,
|
||||
btn: ['删除','取消'] //按钮
|
||||
}, function(){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "{:U('del_promote')}",
|
||||
dataType: 'json',
|
||||
async: false,
|
||||
data: {id:id},
|
||||
success:function(data){
|
||||
if(data.status==1){
|
||||
layer.msg(data.msg);
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
}
|
||||
}
|
||||
});
|
||||
}, function(){
|
||||
layer.close();
|
||||
});
|
||||
|
||||
})
|
||||
|
||||
$('.recaculate').click(function(){
|
||||
var url = $(this).attr('url');
|
||||
layer.confirm('是否确认重算提成!', {
|
||||
title:'重算提成?',
|
||||
icon:0,
|
||||
btn: ['重算','取消'] //按钮
|
||||
}, function(){
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: url,
|
||||
dataType: 'json',
|
||||
async: false,
|
||||
success:function(data){
|
||||
if(data.status == 1) {
|
||||
layer.msg("重新计算需要时间,请等待10分钟后再查看");
|
||||
setTimeout(function(){
|
||||
window.location.reload();
|
||||
},1500);
|
||||
} else {
|
||||
layer.msg(data.info);
|
||||
}
|
||||
},
|
||||
});
|
||||
}, function(){
|
||||
layer.close();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
})
|
||||
|
||||
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
|
||||
//点击字母按照条件按钮筛选
|
||||
$(".pro_promot_select_list_con").click(function(){
|
||||
//选中高亮样式
|
||||
$(this).addClass('active');
|
||||
$(this).siblings().removeClass('active');
|
||||
|
||||
var that = $(this);
|
||||
var index = $(this).attr("data-index");
|
||||
|
||||
$("#game_list li").each(function(index,ele){
|
||||
var short = $(this).attr('data-short');
|
||||
$(this).show();
|
||||
if(that.attr('data-index')){
|
||||
if(that.attr('data-index')!=short.charAt(0)){
|
||||
$(this).hide();
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
//打开弹窗
|
||||
$(".ajax-view").click(function(){
|
||||
//获取游戏列表
|
||||
var url = "{:U('Promote/getPromoteGame')}";
|
||||
var id = $(this).attr('data-id');
|
||||
var checked = 'checked';
|
||||
|
||||
|
||||
|
||||
$.post(url,{id:id},function(res){
|
||||
if(res.code==1){
|
||||
|
||||
$(".pro_promot_select_list a").eq(0).addClass('active');
|
||||
$(".pro_promot_select_list a").eq(0).siblings().removeClass('active');
|
||||
|
||||
var game_list = res.data.game_list;
|
||||
var promote_info = res.data.promote_info;
|
||||
var lis = [];
|
||||
|
||||
$.each(game_list,function(index,ele){
|
||||
if(ele.game_name.length>6){
|
||||
ele.game_name = ele.game_name .substring(0,6)+"..."
|
||||
}
|
||||
lis.push('<li class="fl pro_promot_game_con" data-short="'+ele.short+'">');
|
||||
|
||||
|
||||
if(promote_info['game_ids']==''){
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" checked="checked" id="gameCheck'+index+'" />');
|
||||
}else{
|
||||
if(promote_info['game_ids'].indexOf(ele.id)>-1){
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" checked="checked" id="gameCheck'+index+'" />');
|
||||
}else{
|
||||
$(".jsgamecheckall").attr('checked',false);
|
||||
lis.push('<input type="checkbox" value="'+ele.id+'" name="game_ids[]" class="fl pro_promot_game_check jsgameid" id="gameCheck'+index+'" />');
|
||||
checked = '';
|
||||
}
|
||||
}
|
||||
|
||||
lis.push('<label for="gameCheck'+index+'" class="fl"></label>');
|
||||
lis.push('<span class="fl pro_promot_game_name">'+ele.game_name+'</span>');
|
||||
lis.push('</li>');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").attr('checked',checked);
|
||||
|
||||
$("#game_list").html(lis.join(''));
|
||||
$(".pro_promot_number").text(res.data.promote_info.account);
|
||||
$("#se_promote_id").val(res.data.promote_info.id);
|
||||
$(".pro_promot").css("display","block");
|
||||
|
||||
jsgameid();
|
||||
|
||||
}else{
|
||||
var tip_msg = res.info ? res.info : '操作失败';
|
||||
layer.msg(tip_msg);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
//保存修改
|
||||
$(".pro_promot_btn_confirm").click(function(){
|
||||
$("#ajaxForm").ajaxSubmit(function(res){
|
||||
layer.msg(res.msg);
|
||||
$(".pro_promot").hide();
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
//关闭弹窗
|
||||
$(".pro_promot_close").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
});
|
||||
//取消修改
|
||||
$(".pro_promot_btn_cancel").click(function(){
|
||||
$(".pro_promot").css("display","none");
|
||||
layer.msg('修改已取消');
|
||||
});
|
||||
|
||||
$(".jsgamecheckall").click(function(){
|
||||
$(this).closest('.jsgamecheckallbox').siblings("#game_list").find(".jsgameid").prop("checked", this.checked);
|
||||
});
|
||||
|
||||
//可申请游戏 全选及全选反选 功能 @author zwm date 20180604
|
||||
function jsgameid(){
|
||||
$(".jsgameid").click(function(){
|
||||
var option = $(this).closest('ul').find(".jsgameid"),
|
||||
checkall = $(this).closest('ul').siblings('.jsgamecheckallbox').find('.jsgamecheckall');
|
||||
option.each(function(i){
|
||||
if(!this.checked){
|
||||
checkall.prop("checked", false);
|
||||
return false;
|
||||
}else{
|
||||
checkall.prop("checked", true);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</block>
|
@ -0,0 +1,218 @@
|
||||
<extend name="Public/promote_base"/>
|
||||
<block name="css">
|
||||
<link href="__CSS__/20180207/account.css" rel="stylesheet" >
|
||||
<link href="__STATIC__/icons_alibaba/iconfont.css?v=1.3" rel="stylesheet">
|
||||
<style>
|
||||
.form-group {
|
||||
float: left;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.form-group label {
|
||||
line-height: 34px;
|
||||
height: 34px;
|
||||
}
|
||||
.iconsort {
|
||||
font-size: 1rem;
|
||||
}
|
||||
.normal_table tr .sort {
|
||||
color: #145ccd;
|
||||
cursor: pointer;
|
||||
}
|
||||
.trunk-search .select-time .txt {
|
||||
width: 100px;
|
||||
}
|
||||
.title-cursor-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
</block>
|
||||
<block name="body">
|
||||
<div class="page-list normal_list promote-mychlid-list">
|
||||
<div class="trunk-title">
|
||||
<div class="location">
|
||||
<div class="location-container">当前位置:<span>数据管理></span><span>游戏分区数据汇总</span></div>
|
||||
</div>
|
||||
<img src="__IMG__/20180207/icon_normal_game.png">
|
||||
<span class="title_main">游戏分区数据汇总</span>
|
||||
</div>
|
||||
<div class="trunk-content article">
|
||||
<div class="trunk-search clearfix jssearch">
|
||||
<div class="form-group normal_space">
|
||||
<select id="game_id" name="game_id" class="reselect select_gallery">
|
||||
<option game-id="0" value="">请选择游戏</option>
|
||||
<?php foreach($games as $game):?>
|
||||
<option game-id="<?=$game['id']?>" value="<?=$game['id']?>" <?php if($game['id'] == I('game_id')):?>selected="selected"<?php endif;?>>
|
||||
<?=$game['game_name']?>
|
||||
</option>
|
||||
<?php endforeach;?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group normal_space">
|
||||
<span id="server_js">
|
||||
<select id="server_id" name="server_id" class="reselect select_gallery" data-default="<?=I('server_id', '')?>">
|
||||
<option server-id="0" value="">请选择区服</option>
|
||||
<?php foreach($servers as $server):?>
|
||||
<option server-id="<?=$server['server_id']?>" value="<?=$server['server_id']?>" <?php if($server['server_id'] == I('server_id')):?>selected="selected"<?php endif;?>>
|
||||
<?=$server['server_name']?>
|
||||
</option>
|
||||
<?php endforeach;?>
|
||||
</select>
|
||||
</span>
|
||||
</div>
|
||||
<include file="Public/promote_select" />
|
||||
<div class="form-group normal_space fr">
|
||||
<label>起止时间:</label>
|
||||
<input type="text" class="txt range-date" name="time_range" placeholder="创建时间" value="{$start} 至 {$end}" >
|
||||
</div>
|
||||
<div class="form-group normal_space">
|
||||
<input type="hidden" name="last_sort_name" id="last_sort_name" value="{:I('sort_name', '')}">
|
||||
<input type="hidden" name="sort_name" id="sort_name" value="{:I('sort_name', '')}">
|
||||
<input type="hidden" name="sort" id="sort" value="{$sort}">
|
||||
<input type="submit" class="submit" id='submit' url="{:U('Query/gameData','model='.$model['name'],false)}"
|
||||
value="查询">
|
||||
</div>
|
||||
</div>
|
||||
<div class="trunk-list list_normal">
|
||||
<table class="table normal_table">
|
||||
<tr class="odd">
|
||||
<th>游戏名称</th>
|
||||
<th>区服名称</th>
|
||||
<th class="sort" sort-name="count" class="title-cursor-pointer">创角数
|
||||
<if condition="'count' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="amount" class="title-cursor-pointer">消费金额
|
||||
<if condition="'amount' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
</tr>
|
||||
<empty name="records">
|
||||
<tr><td colspan="13" class="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="records" id="vo">
|
||||
<tr>
|
||||
<td>{$vo.game_name}</td>
|
||||
<td>{$vo.server_name}</td>
|
||||
<td><?=intval($vo['count'])?></td>
|
||||
<td><?=floatval($vo['amount'])?></td>
|
||||
</tr>
|
||||
</volist>
|
||||
</empty>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="pagenation clearfix">
|
||||
<?php if ($loginer['level'] !== 4) :?>
|
||||
<a id="sch-btn" data-href="{:U('download/gameData_data_export',array_merge(['xlsname'=>'ceshi'],I('get.')))}" class="ajax-get">导出</a>
|
||||
<?php endif ;?>
|
||||
{$pagination}
|
||||
</div>
|
||||
</div>
|
||||
<div class="page-explain promote-mychlid-explain">
|
||||
<div class="trunk-content article border_normal">
|
||||
<!-- <table class="desccontent">
|
||||
<tr><td class="title" style="width: 100px;display: inline-block;">二级渠道说明:</td><td class="det">推广员默认为一级渠道,一级渠道可通过推广员后台新增二级渠道;二级渠道由一级渠道管理开启权限,并由一级渠道给二级渠道结算,结算可到财务管理操作。</td></tr>
|
||||
</table>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</block>
|
||||
<block name="script">
|
||||
<link rel="stylesheet" href="__STATIC__/flatpickr/flatpickr.min.css">
|
||||
<script src="__STATIC__/flatpickr/flatpickr.min.js"></script>
|
||||
<script src="__STATIC__/flatpickr/l10n/zh.js"></script>
|
||||
<script type="text/javascript" src="__JS__/20170831/select2.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/common.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
setValue('row', '{:I("get.row",10)}');
|
||||
|
||||
var defaultDate = $('.range-date').val()
|
||||
defaultDate = defaultDate == '' ? [] : defaultDate.split(' 至 ')
|
||||
$('.range-date').flatpickr({
|
||||
mode: 'range',
|
||||
locale: 'zh',
|
||||
dateFormat: "Y-m-d",
|
||||
defaultDate: defaultDate,
|
||||
})
|
||||
$('.select_gallery').select2()
|
||||
|
||||
$("#game_id").change(function () {
|
||||
$.ajax({
|
||||
url: "{:U('getServers')}",
|
||||
type: "post",
|
||||
data: { game_id: $("#game_id option:selected").attr('game-id') },
|
||||
dataType: 'json',
|
||||
success: function (result ) {
|
||||
if (result.status == 1) {
|
||||
var servers = result.data.servers
|
||||
var str = "<option value=''>请选择区服</option>"
|
||||
for (var i in servers){
|
||||
str += "<option value='"+servers[i].server_id+"'>"+servers[i].server_name+"</option>"
|
||||
}
|
||||
$("#server_id").empty()
|
||||
$("#server_id").append(str)
|
||||
$("#server_id").select2()
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
$("#server_js").click(function (event) {
|
||||
var game_id = $("#game_id").val();
|
||||
if (game_id == 0) {
|
||||
layer.msg('请先选择游戏');
|
||||
}
|
||||
});
|
||||
|
||||
var promoteUrl = "{:U('Query/getSubPromotes')}"
|
||||
initPromoteSelect(promoteUrl)
|
||||
|
||||
$('.sort').click(function () {
|
||||
var element = $(this);
|
||||
var sortName = element.attr('sort-name');
|
||||
var sort = parseInt($('#sort').val());
|
||||
|
||||
sort = (sort === 1) ? 2 : 1;
|
||||
$('#sort').val(sort);
|
||||
$('#sort_name').val(sortName);
|
||||
$('#submit').trigger('click');
|
||||
});
|
||||
|
||||
$('#submit').click(function () {
|
||||
console.log('ssb')
|
||||
var url = $(this).attr('url');
|
||||
console.log(url);
|
||||
var query = $('.jssearch').find('input').serialize();
|
||||
query += "&" + $('.jssearch').find('select').serialize();
|
||||
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g, '');
|
||||
query = query.replace(/^&/g, '');
|
||||
if (url.indexOf('?') > 0) {
|
||||
url += '&' + query;
|
||||
} else {
|
||||
url += '?' + query;
|
||||
}
|
||||
window.location.href = url;
|
||||
|
||||
});
|
||||
})
|
||||
</script>
|
||||
</block>
|
@ -0,0 +1,295 @@
|
||||
<extend name="Public/promote_base"/>
|
||||
<block name="css">
|
||||
<link href="__CSS__/20180207/account.css" rel="stylesheet" >
|
||||
<link href="__STATIC__/icons_alibaba/iconfont.css?v=1.3" rel="stylesheet">
|
||||
<style>
|
||||
.form-group {
|
||||
float: left;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.form-group label {
|
||||
line-height: 34px;
|
||||
height: 34px;
|
||||
}
|
||||
.iconsort {
|
||||
font-size: 1rem;
|
||||
}
|
||||
.normal_table tr .sort {
|
||||
color: #145ccd;
|
||||
cursor: pointer;
|
||||
}
|
||||
.trunk-search .select-time .txt {
|
||||
width: 100px;
|
||||
}
|
||||
.title-cursor-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
</block>
|
||||
<block name="body">
|
||||
<div class="page-list normal_list promote-mychlid-list">
|
||||
<div class="trunk-title">
|
||||
<div class="location">
|
||||
<div class="location-container">当前位置:<span>数据管理></span><span>用户留存率</span></div>
|
||||
</div>
|
||||
<img src="__IMG__/20180207/icon_normal_game.png">
|
||||
<span class="title_main">用户留存率</span>
|
||||
</div>
|
||||
<div class="trunk-content article">
|
||||
<div class="trunk-search clearfix jssearch">
|
||||
<div class="form-group normal_space">
|
||||
<select id="game-select" name="game_id" class="reselect select_gallery" style="width: 220px;" >
|
||||
<option value="0">请选择游戏</option>
|
||||
<volist name="baseGames" id="game">
|
||||
<option value="{$game.id}" <if condition="I('game_id') eq $game['id']">selected</if>>{$game.name}</option>
|
||||
</volist>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group normal_space">
|
||||
<select id="sdk_version" name="device_type" class="reselect select_gallery" style="width: 220px;" >
|
||||
<option value="">请选择设备类型</option>
|
||||
<option value="android" <if condition="I('device_type') === 'android'">selected</if>>Andriod</option>
|
||||
<option value="ios" <if condition="I('device_type') === 'ios'">selected</if>>IOS</option>
|
||||
</select>
|
||||
</div>
|
||||
<include file="Public/promote_select" />
|
||||
<div class="form-group normal_space fr">
|
||||
<label>起止时间:</label>
|
||||
<input type="text" class="txt range-date" name="time_range" placeholder="创建时间" value="{$start} 至 {$end}" >
|
||||
</div>
|
||||
<div class="form-group normal_space">
|
||||
<input type="hidden" name="last_sort_name" id="last_sort_name" value="{:I('sort_name', '')}">
|
||||
<input type="hidden" name="sort_name" id="sort_name" value="{:I('sort_name', '')}">
|
||||
<input type="hidden" name="sort" id="sort" value="{$sort}">
|
||||
<input type="submit" class="submit" id='submit' url="{:U('Query/userretention','model='.$model['name'],false)}"
|
||||
value="查询">
|
||||
</div>
|
||||
</div>
|
||||
<div class="trunk-list list_normal">
|
||||
<table class="table normal_table">
|
||||
<tr class="odd">
|
||||
<th class="sort" sort-name="date" class="title-cursor-pointer">日期
|
||||
<if condition="'date' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th>游戏名称</th>
|
||||
<th>渠道名称</th>
|
||||
<th class="sort" sort-name="register_count" class="title-cursor-pointer">新增玩家
|
||||
<if condition="'register_count' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day1" class="title-cursor-pointer">1日留存
|
||||
<if condition="'retention_day1' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day2" class="title-cursor-pointer">2日留存
|
||||
<if condition="'retention_day2' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day3" class="title-cursor-pointer">3日留存
|
||||
<if condition="'retention_day3' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day4" class="title-cursor-pointer">4日留存
|
||||
<if condition="'retention_day4' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day5" class="title-cursor-pointer">5日留存
|
||||
<if condition="'retention_day5' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day6" class="title-cursor-pointer">6日留存
|
||||
<if condition="'retention_day6' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day7" class="title-cursor-pointer">7日留存
|
||||
<if condition="'retention_day7' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day15" class="title-cursor-pointer">15日留存
|
||||
<if condition="'retention_day15' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
<th class="sort" sort-name="retention_day30" class="title-cursor-pointer">30日留存
|
||||
<if condition="'retention_day30' == I('sort_name', '')">
|
||||
<if condition="1 == $sort">
|
||||
<i class="iconfont iconsort-down"></i>
|
||||
<else/>
|
||||
<i class="iconfont iconsort-up"></i>
|
||||
</if>
|
||||
<else/>
|
||||
<i class="iconfont iconsort"></i>
|
||||
</if>
|
||||
</th>
|
||||
</tr>
|
||||
<empty name="data">
|
||||
<tr><td colspan="13" class="text-align: center;height: 45vh;"">
|
||||
<?= $error ? '<span style="color: #ff0000;">' . $error . '</span>': '<img src="__IMG__/20180207/icon_wushujv2.png"/><p style="line-height: 40px;color: #A5A5A5;">暂无数据</p>' ?></td>
|
||||
</tr>
|
||||
<else />
|
||||
<volist name="data" id="vo">
|
||||
<tr>
|
||||
<td>{$vo.date}</td>
|
||||
<td>{$vo.game_name}</td>
|
||||
<td>{$vo.promote_name}</td>
|
||||
<td>{$vo.register_count}</td>
|
||||
<?php if ($vo['register_count']>0):?>
|
||||
<td>{$vo['retention_day1']}%</td>
|
||||
<td>{$vo['retention_day2']}%</td>
|
||||
<td>{$vo['retention_day3']}%</td>
|
||||
<td>{$vo['retention_day4']}%</td>
|
||||
<td>{$vo['retention_day5']}%</td>
|
||||
<td>{$vo['retention_day6']}%</td>
|
||||
<td>{$vo['retention_day7']}%</td>
|
||||
<td>{$vo['retention_day15']}%</td>
|
||||
<td>{$vo['retention_day30']}%</td>
|
||||
<?php else:?>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<td>--</td>
|
||||
<?php endif;?>
|
||||
</tr>
|
||||
</volist>
|
||||
</empty>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
<div class="pagenation clearfix">
|
||||
<?php if ($loginer['level'] !== 4) :?>
|
||||
<a id="sch-btn" data-href="{:U('download/userretention_data_export',array_merge(['xlsname'=>'ceshi'],I('get.')))}" class="ajax-get">导出</a>
|
||||
<?php endif ;?>
|
||||
</div>
|
||||
</div>
|
||||
<div class="page-explain promote-mychlid-explain">
|
||||
<div class="trunk-content article border_normal">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</block>
|
||||
<block name="script">
|
||||
<link rel="stylesheet" href="__STATIC__/flatpickr/flatpickr.min.css">
|
||||
<script src="__STATIC__/flatpickr/flatpickr.min.js"></script>
|
||||
<script src="__STATIC__/flatpickr/l10n/zh.js"></script>
|
||||
<script type="text/javascript" src="__JS__/20170831/select2.min.js"></script>
|
||||
<script type="text/javascript" src="__JS__/common.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
setValue('row', '{:I("get.row",10)}');
|
||||
|
||||
var defaultDate = $('.range-date').val()
|
||||
defaultDate = defaultDate == '' ? [] : defaultDate.split(' 至 ')
|
||||
$('.range-date').flatpickr({
|
||||
mode: 'range',
|
||||
locale: 'zh',
|
||||
dateFormat: "Y-m-d",
|
||||
defaultDate: defaultDate,
|
||||
})
|
||||
$('.select_gallery').select2()
|
||||
var promoteUrl = "{:U('Query/getSubPromotes')}"
|
||||
initPromoteSelect(promoteUrl)
|
||||
|
||||
$('.sort').click(function () {
|
||||
var element = $(this);
|
||||
var sortName = element.attr('sort-name');
|
||||
var sort = parseInt($('#sort').val());
|
||||
|
||||
sort = (sort === 1) ? 2 : 1;
|
||||
$('#sort').val(sort);
|
||||
$('#sort_name').val(sortName);
|
||||
$('#submit').trigger('click');
|
||||
});
|
||||
|
||||
$('#submit').click(function () {
|
||||
var url = $(this).attr('url');
|
||||
console.log(url);
|
||||
var query = $('.jssearch').find('input').serialize();
|
||||
query += "&" + $('.jssearch').find('select').serialize();
|
||||
query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g, '');
|
||||
query = query.replace(/^&/g, '');
|
||||
if (url.indexOf('?') > 0) {
|
||||
url += '&' + query;
|
||||
} else {
|
||||
url += '?' + query;
|
||||
}
|
||||
window.location.href = url;
|
||||
|
||||
});
|
||||
})
|
||||
</script>
|
||||
</block>
|
Binary file not shown.
@ -0,0 +1,424 @@
|
||||
/*!
|
||||
* Datetimepicker for Bootstrap
|
||||
*
|
||||
* Copyright 2012 Stefan Petre
|
||||
* Improvements by Andrew Rowls
|
||||
* Licensed under the Apache License v2.0
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
*/
|
||||
.datetimepicker {
|
||||
padding: 4px;
|
||||
margin-top: 1px;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
direction: ltr;
|
||||
}
|
||||
|
||||
.datetimepicker-inline {
|
||||
width: 220px;
|
||||
}
|
||||
|
||||
.datetimepicker.datetimepicker-rtl {
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
.datetimepicker.datetimepicker-rtl table tr td span {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown, .datetimepicker-dropdown-left {
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
[class*=" datetimepicker-dropdown"]:before {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
border-left: 7px solid transparent;
|
||||
border-right: 7px solid transparent;
|
||||
border-bottom: 7px solid #cccccc;
|
||||
border-bottom-color: rgba(0, 0, 0, 0.2);
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
[class*=" datetimepicker-dropdown"]:after {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
border-left: 6px solid transparent;
|
||||
border-right: 6px solid transparent;
|
||||
border-bottom: 6px solid #ffffff;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
[class*=" datetimepicker-dropdown-top"]:before {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
border-left: 7px solid transparent;
|
||||
border-right: 7px solid transparent;
|
||||
border-top: 7px solid #cccccc;
|
||||
border-top-color: rgba(0, 0, 0, 0.2);
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
[class*=" datetimepicker-dropdown-top"]:after {
|
||||
content: '';
|
||||
display: inline-block;
|
||||
border-left: 6px solid transparent;
|
||||
border-right: 6px solid transparent;
|
||||
border-top: 6px solid #ffffff;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-bottom-left:before {
|
||||
top: -7px;
|
||||
right: 6px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-bottom-left:after {
|
||||
top: -6px;
|
||||
right: 7px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-bottom-right:before {
|
||||
top: -7px;
|
||||
left: 6px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-bottom-right:after {
|
||||
top: -6px;
|
||||
left: 7px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-top-left:before {
|
||||
bottom: -7px;
|
||||
right: 6px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-top-left:after {
|
||||
bottom: -6px;
|
||||
right: 7px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-top-right:before {
|
||||
bottom: -7px;
|
||||
left: 6px;
|
||||
}
|
||||
|
||||
.datetimepicker-dropdown-top-right:after {
|
||||
bottom: -6px;
|
||||
left: 7px;
|
||||
}
|
||||
|
||||
.datetimepicker > div {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.datetimepicker.minutes div.datetimepicker-minutes {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.datetimepicker.hours div.datetimepicker-hours {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.datetimepicker.days div.datetimepicker-days {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.datetimepicker.months div.datetimepicker-months {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.datetimepicker.years div.datetimepicker-years {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.datetimepicker table {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.datetimepicker td,
|
||||
.datetimepicker th {
|
||||
text-align: center;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.table-striped .datetimepicker table tr td,
|
||||
.table-striped .datetimepicker table tr th {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.minute:hover {
|
||||
background: #eeeeee;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.hour:hover {
|
||||
background: #eeeeee;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.day:hover {
|
||||
background: #eeeeee;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.old,
|
||||
.datetimepicker table tr td.new {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.disabled,
|
||||
.datetimepicker table tr td.disabled:hover {
|
||||
background: none;
|
||||
color: #999999;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.today,
|
||||
.datetimepicker table tr td.today:hover,
|
||||
.datetimepicker table tr td.today.disabled,
|
||||
.datetimepicker table tr td.today.disabled:hover {
|
||||
background-color: #fde19a;
|
||||
background-image: -moz-linear-gradient(top, #fdd49a, #fdf59a);
|
||||
background-image: -ms-linear-gradient(top, #fdd49a, #fdf59a);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fdd49a), to(#fdf59a));
|
||||
background-image: -webkit-linear-gradient(top, #fdd49a, #fdf59a);
|
||||
background-image: -o-linear-gradient(top, #fdd49a, #fdf59a);
|
||||
background-image: linear-gradient(top, #fdd49a, #fdf59a);
|
||||
background-repeat: repeat-x;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
|
||||
border-color: #fdf59a #fdf59a #fbed50;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.today:hover,
|
||||
.datetimepicker table tr td.today:hover:hover,
|
||||
.datetimepicker table tr td.today.disabled:hover,
|
||||
.datetimepicker table tr td.today.disabled:hover:hover,
|
||||
.datetimepicker table tr td.today:active,
|
||||
.datetimepicker table tr td.today:hover:active,
|
||||
.datetimepicker table tr td.today.disabled:active,
|
||||
.datetimepicker table tr td.today.disabled:hover:active,
|
||||
.datetimepicker table tr td.today.active,
|
||||
.datetimepicker table tr td.today:hover.active,
|
||||
.datetimepicker table tr td.today.disabled.active,
|
||||
.datetimepicker table tr td.today.disabled:hover.active,
|
||||
.datetimepicker table tr td.today.disabled,
|
||||
.datetimepicker table tr td.today:hover.disabled,
|
||||
.datetimepicker table tr td.today.disabled.disabled,
|
||||
.datetimepicker table tr td.today.disabled:hover.disabled,
|
||||
.datetimepicker table tr td.today[disabled],
|
||||
.datetimepicker table tr td.today:hover[disabled],
|
||||
.datetimepicker table tr td.today.disabled[disabled],
|
||||
.datetimepicker table tr td.today.disabled:hover[disabled] {
|
||||
background-color: #fdf59a;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.today:active,
|
||||
.datetimepicker table tr td.today:hover:active,
|
||||
.datetimepicker table tr td.today.disabled:active,
|
||||
.datetimepicker table tr td.today.disabled:hover:active,
|
||||
.datetimepicker table tr td.today.active,
|
||||
.datetimepicker table tr td.today:hover.active,
|
||||
.datetimepicker table tr td.today.disabled.active,
|
||||
.datetimepicker table tr td.today.disabled:hover.active {
|
||||
background-color: #fbf069;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.active,
|
||||
.datetimepicker table tr td.active:hover,
|
||||
.datetimepicker table tr td.active.disabled,
|
||||
.datetimepicker table tr td.active.disabled:hover {
|
||||
background-color: #006dcc;
|
||||
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
|
||||
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: linear-gradient(top, #0088cc, #0044cc);
|
||||
background-repeat: repeat-x;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
|
||||
border-color: #0044cc #0044cc #002a80;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
|
||||
color: #ffffff;
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.active:hover,
|
||||
.datetimepicker table tr td.active:hover:hover,
|
||||
.datetimepicker table tr td.active.disabled:hover,
|
||||
.datetimepicker table tr td.active.disabled:hover:hover,
|
||||
.datetimepicker table tr td.active:active,
|
||||
.datetimepicker table tr td.active:hover:active,
|
||||
.datetimepicker table tr td.active.disabled:active,
|
||||
.datetimepicker table tr td.active.disabled:hover:active,
|
||||
.datetimepicker table tr td.active.active,
|
||||
.datetimepicker table tr td.active:hover.active,
|
||||
.datetimepicker table tr td.active.disabled.active,
|
||||
.datetimepicker table tr td.active.disabled:hover.active,
|
||||
.datetimepicker table tr td.active.disabled,
|
||||
.datetimepicker table tr td.active:hover.disabled,
|
||||
.datetimepicker table tr td.active.disabled.disabled,
|
||||
.datetimepicker table tr td.active.disabled:hover.disabled,
|
||||
.datetimepicker table tr td.active[disabled],
|
||||
.datetimepicker table tr td.active:hover[disabled],
|
||||
.datetimepicker table tr td.active.disabled[disabled],
|
||||
.datetimepicker table tr td.active.disabled:hover[disabled] {
|
||||
background-color: #0044cc;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td.active:active,
|
||||
.datetimepicker table tr td.active:hover:active,
|
||||
.datetimepicker table tr td.active.disabled:active,
|
||||
.datetimepicker table tr td.active.disabled:hover:active,
|
||||
.datetimepicker table tr td.active.active,
|
||||
.datetimepicker table tr td.active:hover.active,
|
||||
.datetimepicker table tr td.active.disabled.active,
|
||||
.datetimepicker table tr td.active.disabled:hover.active {
|
||||
background-color: #003399;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span {
|
||||
display: block;
|
||||
width: 23%;
|
||||
height: 54px;
|
||||
line-height: 54px;
|
||||
float: left;
|
||||
margin: 1%;
|
||||
cursor: pointer;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.datetimepicker .datetimepicker-hours span {
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
.datetimepicker .datetimepicker-hours table tr td span.hour_am,
|
||||
.datetimepicker .datetimepicker-hours table tr td span.hour_pm {
|
||||
width: 14.6%;
|
||||
}
|
||||
|
||||
.datetimepicker .datetimepicker-hours fieldset legend,
|
||||
.datetimepicker .datetimepicker-minutes fieldset legend {
|
||||
margin-bottom: inherit;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.datetimepicker .datetimepicker-minutes span {
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span:hover {
|
||||
background: #eeeeee;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span.disabled,
|
||||
.datetimepicker table tr td span.disabled:hover {
|
||||
background: none;
|
||||
color: #999999;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span.active,
|
||||
.datetimepicker table tr td span.active:hover,
|
||||
.datetimepicker table tr td span.active.disabled,
|
||||
.datetimepicker table tr td span.active.disabled:hover {
|
||||
background-color: #006dcc;
|
||||
background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -ms-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
|
||||
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: -o-linear-gradient(top, #0088cc, #0044cc);
|
||||
background-image: linear-gradient(top, #0088cc, #0044cc);
|
||||
background-repeat: repeat-x;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0088cc', endColorstr='#0044cc', GradientType=0);
|
||||
border-color: #0044cc #0044cc #002a80;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
|
||||
color: #ffffff;
|
||||
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span.active:hover,
|
||||
.datetimepicker table tr td span.active:hover:hover,
|
||||
.datetimepicker table tr td span.active.disabled:hover,
|
||||
.datetimepicker table tr td span.active.disabled:hover:hover,
|
||||
.datetimepicker table tr td span.active:active,
|
||||
.datetimepicker table tr td span.active:hover:active,
|
||||
.datetimepicker table tr td span.active.disabled:active,
|
||||
.datetimepicker table tr td span.active.disabled:hover:active,
|
||||
.datetimepicker table tr td span.active.active,
|
||||
.datetimepicker table tr td span.active:hover.active,
|
||||
.datetimepicker table tr td span.active.disabled.active,
|
||||
.datetimepicker table tr td span.active.disabled:hover.active,
|
||||
.datetimepicker table tr td span.active.disabled,
|
||||
.datetimepicker table tr td span.active:hover.disabled,
|
||||
.datetimepicker table tr td span.active.disabled.disabled,
|
||||
.datetimepicker table tr td span.active.disabled:hover.disabled,
|
||||
.datetimepicker table tr td span.active[disabled],
|
||||
.datetimepicker table tr td span.active:hover[disabled],
|
||||
.datetimepicker table tr td span.active.disabled[disabled],
|
||||
.datetimepicker table tr td span.active.disabled:hover[disabled] {
|
||||
background-color: #0044cc;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span.active:active,
|
||||
.datetimepicker table tr td span.active:hover:active,
|
||||
.datetimepicker table tr td span.active.disabled:active,
|
||||
.datetimepicker table tr td span.active.disabled:hover:active,
|
||||
.datetimepicker table tr td span.active.active,
|
||||
.datetimepicker table tr td span.active:hover.active,
|
||||
.datetimepicker table tr td span.active.disabled.active,
|
||||
.datetimepicker table tr td span.active.disabled:hover.active {
|
||||
background-color: #003399;
|
||||
}
|
||||
|
||||
.datetimepicker table tr td span.old {
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.datetimepicker th.switch {
|
||||
width: 145px;
|
||||
}
|
||||
|
||||
.datetimepicker th span.glyphicon {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.datetimepicker thead tr:first-child th,
|
||||
.datetimepicker tfoot tr:first-child th {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.datetimepicker thead tr:first-child th:hover,
|
||||
.datetimepicker tfoot tr:first-child th:hover {
|
||||
background: #eeeeee;
|
||||
}
|
||||
|
||||
/* add by xiaomin */
|
||||
.datetimepicker tfoot tr th.clear:hover {
|
||||
background: #eeeeee;
|
||||
cursor:pointer;
|
||||
}
|
||||
|
||||
.input-append.date .add-on i,
|
||||
.input-prepend.date .add-on i,
|
||||
.input-group.date .input-group-addon span {
|
||||
cursor: pointer;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -0,0 +1,17 @@
|
||||
/**
|
||||
* Simplified Chinese translation for bootstrap-datetimepicker
|
||||
* Yuan Cheung <advanimal@gmail.com>
|
||||
*/
|
||||
;(function($){
|
||||
$.fn.datetimepicker.dates['zh-CN'] = {
|
||||
days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"],
|
||||
daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六", "周日"],
|
||||
daysMin: ["日", "一", "二", "三", "四", "五", "六", "日"],
|
||||
months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
|
||||
monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
|
||||
today: "今天",
|
||||
clear: "清空", // add by xiaomin
|
||||
suffix: [],
|
||||
meridiem: ["上午", "下午"]
|
||||
};
|
||||
}(jQuery));
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue