寻爱-后台-分区
This commit is contained in:
@@ -1,84 +1,128 @@
|
||||
<template>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<!-- Content Header (Page header) -->
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<!-- .content -->
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<form action="" id="searchForm" method="POST">
|
||||
<select name="search-type" id="search-type">
|
||||
<option value="0">请选择</option>
|
||||
<option value="1">幸运许愿池偏差类型</option>
|
||||
<option value="4">梦幻许愿池池偏差类型</option>
|
||||
</select>
|
||||
</form>
|
||||
<button class="btn btn-primary" id="searchBtn">搜索</button>
|
||||
<button id="add" class="btn btn-default">
|
||||
<i class="glyphicon glyphicon-plus"></i>新增
|
||||
</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="modal fade" id="deviateRangeModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
|
||||
aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title" id="modalLabel">偏差范围</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<form class="form-horizontal" id="deviateRangeForm">
|
||||
<input id="deviateRangeId" type="hidden" name="id" />
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">下限:</label>
|
||||
<div class="col-sm-8">
|
||||
<input type="number" id="deviateLowerLimit" name="lowerLimit" class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">上限:</label>
|
||||
<div class="col-sm-8">
|
||||
<input type="number" id="deviateUpperLimit" name="upperLimit" class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group type">
|
||||
<label for="type" class="col-sm-3 control-label">选择类型:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="type" id="type" data-btn-class="btn btn-warning">
|
||||
<option value="1">幸运许愿池偏差类型</option>
|
||||
<option value="4">梦幻许愿池池偏差类型</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">创建者:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="creator" name="creator" class="validate[required]" placeholder="必填项">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
|
||||
<button type="button" class="btn btn-primary" id="save">保存</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<!-- Content Header (Page header) -->
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<!-- .content -->
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<form action=""
|
||||
id="searchForm"
|
||||
method="POST">
|
||||
<select name="search-type"
|
||||
id="search-type">
|
||||
<option value="1">幸运许愿池偏差类型</option>
|
||||
<option value="4">梦幻许愿池池偏差类型</option>
|
||||
</select>
|
||||
<select id="partitionId"></select>
|
||||
</form>
|
||||
<button class="btn btn-primary"
|
||||
id="searchBtn">搜索</button>
|
||||
<button id="add"
|
||||
class="btn btn-default">
|
||||
<i class="glyphicon glyphicon-plus"></i>新增
|
||||
</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<div class="modal fade"
|
||||
id="deviateRangeModal"
|
||||
tabindex="-1"
|
||||
role="dialog"
|
||||
aria-labelledby="modalLabel">
|
||||
<div class="modal-dialog"
|
||||
role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
aria-label="Close"><span aria-hidden="true">×</span></button>
|
||||
<h4 class="modal-title"
|
||||
id="modalLabel">偏差范围</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<form class="form-horizontal"
|
||||
id="deviateRangeForm">
|
||||
<input id="deviateRangeId"
|
||||
type="hidden"
|
||||
name="id" />
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">下限:</label>
|
||||
<div class="col-sm-8">
|
||||
<input type="number"
|
||||
id="deviateLowerLimit"
|
||||
name="lowerLimit"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">上限:</label>
|
||||
<div class="col-sm-8">
|
||||
<input type="number"
|
||||
id="deviateUpperLimit"
|
||||
name="upperLimit"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group type">
|
||||
<label for="type"
|
||||
class="col-sm-3 control-label">选择类型:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="type"
|
||||
id="type"
|
||||
data-btn-class="btn btn-warning">
|
||||
<option value="1">幸运许愿池偏差类型</option>
|
||||
<option value="4">梦幻许愿池池偏差类型</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group deviatePartitionId">
|
||||
<label for="type"
|
||||
class="col-sm-3 control-label">选择分区:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="partitionId"
|
||||
id="deviatePartitionId"
|
||||
data-btn-class="btn btn-warning">
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label class="col-sm-3 control-label">创建者:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text"
|
||||
id="creator"
|
||||
name="creator"
|
||||
class="validate[required]"
|
||||
placeholder="必填项">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button"
|
||||
class="btn btn-default"
|
||||
data-dismiss="modal">关闭</button>
|
||||
<button type="button"
|
||||
class="btn btn-primary"
|
||||
id="save">保存</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
@@ -86,160 +130,190 @@ import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
import ComboboxHelper from '@/assets/plugins/bootstrap-combobox/js/bootstrap-combobox-helper';
|
||||
|
||||
export default {
|
||||
name: "DeviateRangeManageAdminView",
|
||||
setup() {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
$(function () {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'id', title: 'id', align: 'center', width: '15%' },
|
||||
{ field: 'lowerLimit', title: '下限', align: 'center', width: '15%' },
|
||||
{ field: 'upperLimit', title: '上限', width: '20%' },
|
||||
{ field: 'creator', title: '创建人', align: 'center', width: '5%' },
|
||||
{
|
||||
field: 'tmp', title: '操作', align: 'center', width: '20%', formatter: function (val, row, index) {
|
||||
var key = row.id;
|
||||
return "<button class='btn btn-sm btn-success opt-edit' data-id=" + key + ">编辑</button> " +
|
||||
"<button class='btn btn-sm btn-danger opt-del' data-id=" + key + ">删除</button>";
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: true,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams(params) { //设置查询参数
|
||||
var param = {
|
||||
pageNumber: params.pageNumber,
|
||||
pageSize: params.pageSize,
|
||||
type: parseInt($("#search-type").val())
|
||||
};
|
||||
return param;
|
||||
},
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/deviateRange/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
});
|
||||
name: "DeviateRangeManageAdminView",
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created () {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData () {
|
||||
$.ajax({
|
||||
type: 'get',
|
||||
url: '/partition/listPartitionInfo',
|
||||
dataType: 'json',
|
||||
success: function (json) {
|
||||
if (json.code == 200) {
|
||||
var deviatePartitionId = $("#deviatePartitionId");
|
||||
deviatePartitionId.empty();
|
||||
|
||||
var partitionId = $("#partitionId");
|
||||
partitionId.empty();
|
||||
|
||||
// 构建下拉组合框
|
||||
ComboboxHelper.build(null, '#status');
|
||||
ComboboxHelper.build(null, '#type');
|
||||
$("#deviateRangeForm").validationEngine();
|
||||
// 遍历数据并添加 option
|
||||
$.each(json.data, function (index, item) {
|
||||
// 创建新的 option 元素
|
||||
var option = $('<option></option>')
|
||||
.attr('value', item.id) // 设置 value 属性
|
||||
.text(item.desc); // 设置文本内容
|
||||
|
||||
$("#add").click(function () {
|
||||
// 打开编辑弹窗
|
||||
$('#deviateRangeId').val('');
|
||||
$("#deviateRangeModal").modal('show');
|
||||
$("#deviateRangeForm")[0].reset();
|
||||
});
|
||||
|
||||
$("#table").on("click", '.opt-del', function () {
|
||||
if (confirm("你确认删除该记录吗?" +
|
||||
"\r\n删除偏差范围,会一起删除偏差奖池对应的配置,请谨慎操作!")) {
|
||||
var id = $(this).attr("data-id");
|
||||
$.ajax({
|
||||
type: 'post',
|
||||
url: "/admin/deviateRange/del",
|
||||
data: { 'deviateRangeId': id },
|
||||
dataType: "json",
|
||||
success: function (res) {
|
||||
if (res.code == 200) {
|
||||
$("#tipMsg").text("删除成功");
|
||||
$("#tipModal").modal('show');
|
||||
TableHelper.doRefresh("#table");
|
||||
} else {
|
||||
$("#tipMsg").text("删除失败,错误信息:" + res.message);
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$("#table").on("click", '.opt-edit', function () {
|
||||
var id = $(this).attr("data-id");
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: "/admin/deviateRange/one",
|
||||
data: { 'deviateRangeId': id },
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
if (data) {
|
||||
$("#deviateRangeId").val(data.id);
|
||||
$("#deviateLowerLimit").val(data.lowerLimit);
|
||||
$("#deviateUpperLimit").val(data.upperLimit);
|
||||
$("#creator").val(data.creator);
|
||||
ComboboxHelper.setDef("#type", data.type);
|
||||
// 打开编辑弹窗
|
||||
$("#deviateRangeModal").modal('show');
|
||||
} else {
|
||||
$("#tipMsg").text("获取偏差范围出错");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$("#save").click(function () {
|
||||
if ($("#deviateRangeForm").validationEngine('validate')) {
|
||||
var lowerLimit = parseInt($('#deviateLowerLimit').val());
|
||||
var upperLimit = parseInt($('#deviateUpperLimit').val());
|
||||
if (lowerLimit > upperLimit) {
|
||||
$("#tipMsg").text("偏差下限不能大于上限");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
$("#save").prop('disabled', true);
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: "/admin/deviateRange/save",
|
||||
data: $('#deviateRangeForm').serialize(),
|
||||
dataType: "json",
|
||||
success: function (res) {
|
||||
$("#save").prop('disabled', false);
|
||||
if (res.code == 200) {
|
||||
$("#deviateRangeModal").modal('hide');
|
||||
$("#tipMsg").text("保存成功");
|
||||
$("#tipModal").modal('show');
|
||||
TableHelper.doRefresh("#table");
|
||||
} else {
|
||||
$("#tipMsg").text("保存失败,错误信息:" + res.message);
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// 筛选按钮点击事件
|
||||
$('#searchBtn').on('click', function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
});
|
||||
// 追加到 select 元素
|
||||
partitionId.append(option.clone());
|
||||
|
||||
deviatePartitionId.append(option.clone());
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
$(function () {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'id', title: 'id', align: 'center', width: '15%' },
|
||||
{ field: 'lowerLimit', title: '下限', align: 'center', width: '15%' },
|
||||
{ field: 'upperLimit', title: '上限', width: '20%' },
|
||||
{ field: 'creator', title: '创建人', align: 'center', width: '5%' },
|
||||
{
|
||||
field: 'tmp', title: '操作', align: 'center', width: '20%', formatter: function (val, row, index) {
|
||||
var key = row.id;
|
||||
return "<button class='btn btn-sm btn-success opt-edit' data-id=" + key + ">编辑</button> " +
|
||||
"<button class='btn btn-sm btn-danger opt-del' data-id=" + key + ">删除</button>";
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: true,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams (params) { //设置查询参数
|
||||
var param = {
|
||||
pageNumber: params.pageNumber,
|
||||
pageSize: params.pageSize,
|
||||
type: parseInt($("#search-type").val()),
|
||||
partitionId: parseInt($("#partitionId").val())
|
||||
};
|
||||
return param;
|
||||
},
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/deviateRange/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// 构建下拉组合框
|
||||
ComboboxHelper.build(null, '#status');
|
||||
ComboboxHelper.build(null, '#type');
|
||||
$("#deviateRangeForm").validationEngine();
|
||||
|
||||
$("#add").click(function () {
|
||||
// 打开编辑弹窗
|
||||
$('#deviateRangeId').val('');
|
||||
$("#deviateRangeModal").modal('show');
|
||||
$("#deviateRangeForm")[0].reset();
|
||||
});
|
||||
|
||||
$("#table").on("click", '.opt-del', function () {
|
||||
if (confirm("你确认删除该记录吗?" +
|
||||
"\r\n删除偏差范围,会一起删除偏差奖池对应的配置,请谨慎操作!")) {
|
||||
var id = $(this).attr("data-id");
|
||||
$.ajax({
|
||||
type: 'post',
|
||||
url: "/admin/deviateRange/del",
|
||||
data: { 'deviateRangeId': id },
|
||||
dataType: "json",
|
||||
success: function (res) {
|
||||
if (res.code == 200) {
|
||||
$("#tipMsg").text("删除成功");
|
||||
$("#tipModal").modal('show');
|
||||
TableHelper.doRefresh("#table");
|
||||
} else {
|
||||
$("#tipMsg").text("删除失败,错误信息:" + res.message);
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$("#table").on("click", '.opt-edit', function () {
|
||||
var id = $(this).attr("data-id");
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: "/admin/deviateRange/one",
|
||||
data: { 'deviateRangeId': id },
|
||||
dataType: "json",
|
||||
success: function (data) {
|
||||
if (data) {
|
||||
$("#deviateRangeId").val(data.id);
|
||||
$("#deviateLowerLimit").val(data.lowerLimit);
|
||||
$("#deviateUpperLimit").val(data.upperLimit);
|
||||
$("#deviatePartitionId").val(data.partitionId);
|
||||
$("#creator").val(data.creator);
|
||||
ComboboxHelper.setDef("#type", data.type);
|
||||
// 打开编辑弹窗
|
||||
$("#deviateRangeModal").modal('show');
|
||||
} else {
|
||||
$("#tipMsg").text("获取偏差范围出错");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$("#save").click(function () {
|
||||
if ($("#deviateRangeForm").validationEngine('validate')) {
|
||||
var lowerLimit = parseInt($('#deviateLowerLimit').val());
|
||||
var upperLimit = parseInt($('#deviateUpperLimit').val());
|
||||
if (lowerLimit > upperLimit) {
|
||||
$("#tipMsg").text("偏差下限不能大于上限");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
$("#save").prop('disabled', true);
|
||||
$.ajax({
|
||||
type: "post",
|
||||
url: "/admin/deviateRange/save",
|
||||
data: $('#deviateRangeForm').serialize(),
|
||||
dataType: "json",
|
||||
success: function (res) {
|
||||
$("#save").prop('disabled', false);
|
||||
if (res.code == 200) {
|
||||
$("#deviateRangeModal").modal('hide');
|
||||
$("#tipMsg").text("保存成功");
|
||||
$("#tipModal").modal('show');
|
||||
TableHelper.doRefresh("#table");
|
||||
} else {
|
||||
$("#tipMsg").text("保存失败,错误信息:" + res.message);
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// 筛选按钮点击事件
|
||||
$('#searchBtn').on('click', function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,332 +1,400 @@
|
||||
<template>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
|
||||
<section class="content">
|
||||
<section class="content">
|
||||
|
||||
<div id="toolbar">
|
||||
<form action="" id="searchForm" method="POST">
|
||||
<div class="col-sm-12">
|
||||
<div class="col-sm-4">
|
||||
<label for="timeBegin" class="qry_col control-label">日期:</label>
|
||||
<input type="text" name="timeBegin" id="timeBegin" class="input-sm" placeholder="起始时间">
|
||||
- <input type="text" name="timeEnd" id="timeEnd" class="input-sm" placeholder="结束时间">
|
||||
</div>
|
||||
<label for="erbanNo" class="qry_col control-label">平台号:</label>
|
||||
<div class="col-sm-2">
|
||||
<input type="text" name="erbanNo" id="erbanNo" class="input-sm" placeholder="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<label for="boxType" class="qry_col control-label">许愿池类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="boxType" id="boxType" class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value="" selected="selected">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</div>
|
||||
<label for="poolType" class="qry_col control-label">奖池类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="poolType" id="poolType" class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value="" selected="selected">全部</option>
|
||||
<option value="1">幸运新人奖池</option>
|
||||
<option value="2">幸运普通奖池</option>
|
||||
<option value="3">幸运白名单奖池</option>
|
||||
<option value="4">幸运偏差奖池</option>
|
||||
<option value="12">幸运次数奖池</option>
|
||||
<option value="7">梦幻普通奖池</option>
|
||||
<option value="9">梦幻偏差奖池</option>
|
||||
<option value="10">梦幻新人奖池</option>
|
||||
<option value="11">梦幻白名单奖池</option>
|
||||
</select>
|
||||
</div>
|
||||
<label for="dataType" class="qry_col control-label">数据类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="dataType" id="dataType" class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value="1" selected="selected">普通用户数据</option>
|
||||
<option value="2">被排除用户的数据</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<button class="btn btn-primary" id="searchBtn">筛选</button>
|
||||
<div class="tips">因数据量庞大,默认不会显示每天的结果,默认只展示平台总收益情况,请先选择时间范围再搜索</div>
|
||||
<div class="dataCount">
|
||||
<p>
|
||||
<span>抽奖记录总数:</span>
|
||||
<span id="countNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户投入钻石总数:</span>
|
||||
<span id="userPay"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>总平台总价值:</span>
|
||||
<span id="platformNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>总实际总价值:</span>
|
||||
<span id="actualNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得礼物中钻石数:</span>
|
||||
<span id="giftNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得非礼物总钻石数:</span>
|
||||
<span id="notGiftNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得实物总数:</span>
|
||||
<span id="realGiftNum"></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="table"></div>
|
||||
</section>
|
||||
<div id="toolbar">
|
||||
<form action=""
|
||||
id="searchForm"
|
||||
method="POST">
|
||||
<div class="col-sm-12">
|
||||
<label for="partitionId"
|
||||
class="qry_col control-label">分区:</label>
|
||||
<div class="col-sm-2">
|
||||
<select id="partitionId"
|
||||
class="input-sm"></select>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<label for="timeBegin"
|
||||
class="qry_col control-label">日期:</label>
|
||||
<input type="text"
|
||||
name="timeBegin"
|
||||
id="timeBegin"
|
||||
class="input-sm"
|
||||
placeholder="起始时间">
|
||||
- <input type="text"
|
||||
name="timeEnd"
|
||||
id="timeEnd"
|
||||
class="input-sm"
|
||||
placeholder="结束时间">
|
||||
</div>
|
||||
<label for="erbanNo"
|
||||
class="qry_col control-label">平台号:</label>
|
||||
<div class="col-sm-2">
|
||||
<input type="text"
|
||||
name="erbanNo"
|
||||
id="erbanNo"
|
||||
class="input-sm"
|
||||
placeholder="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<label for="boxType"
|
||||
class="qry_col control-label">许愿池类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="boxType"
|
||||
id="boxType"
|
||||
class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value=""
|
||||
selected="selected">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</div>
|
||||
<label for="poolType"
|
||||
class="qry_col control-label">奖池类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="poolType"
|
||||
id="poolType"
|
||||
class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value=""
|
||||
selected="selected">全部</option>
|
||||
<option value="1">幸运新人奖池</option>
|
||||
<option value="2">幸运普通奖池</option>
|
||||
<option value="3">幸运白名单奖池</option>
|
||||
<option value="4">幸运偏差奖池</option>
|
||||
<option value="12">幸运次数奖池</option>
|
||||
<option value="7">梦幻普通奖池</option>
|
||||
<option value="9">梦幻偏差奖池</option>
|
||||
<option value="10">梦幻新人奖池</option>
|
||||
<option value="11">梦幻白名单奖池</option>
|
||||
</select>
|
||||
</div>
|
||||
<label for="dataType"
|
||||
class="qry_col control-label">数据类型:</label>
|
||||
<div class="col-sm-2">
|
||||
<select name="dataType"
|
||||
id="dataType"
|
||||
class="col-sm-2 form-control"
|
||||
data-btn-class="btn-warning">
|
||||
<option value="1"
|
||||
selected="selected">普通用户数据</option>
|
||||
<option value="2">被排除用户的数据</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<button class="btn btn-primary"
|
||||
id="searchBtn">筛选</button>
|
||||
<div class="tips">因数据量庞大,默认不会显示每天的结果,默认只展示平台总收益情况,请先选择时间范围再搜索</div>
|
||||
<div class="dataCount">
|
||||
<p>
|
||||
<span>抽奖记录总数:</span>
|
||||
<span id="countNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户投入钻石总数:</span>
|
||||
<span id="userPay"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>总平台总价值:</span>
|
||||
<span id="platformNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>总实际总价值:</span>
|
||||
<span id="actualNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得礼物中钻石数:</span>
|
||||
<span id="giftNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得非礼物总钻石数:</span>
|
||||
<span id="notGiftNum"></span>
|
||||
</p>
|
||||
<p>
|
||||
<span>用户获得实物总数:</span>
|
||||
<span id="realGiftNum"></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div id="table"></div>
|
||||
</section>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
|
||||
export default {
|
||||
name: "PrizeDataAdminNewView",
|
||||
setup() {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
name: "PrizeDataAdminNewView",
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created () {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData () {
|
||||
$(function () {
|
||||
$.ajax({
|
||||
type: 'get',
|
||||
url: '/partition/listPartitionInfo',
|
||||
dataType: 'json',
|
||||
success: function (json) {
|
||||
if (json.code == 200) {
|
||||
//var deviatePartitionId = $("#deviatePartitionId");
|
||||
//deviatePartitionId.empty();
|
||||
|
||||
var partitionId = $("#partitionId");
|
||||
partitionId.empty();
|
||||
|
||||
var defaultOption = $('<option></option>').attr('value', '').text("全部");
|
||||
partitionId.append(defaultOption);
|
||||
|
||||
// 遍历数据并添加 option
|
||||
$.each(json.data, function (index, item) {
|
||||
// 创建新的 option 元素
|
||||
var option = $('<option></option>')
|
||||
.attr('value', item.id) // 设置 value 属性
|
||||
.text(item.desc); // 设置文本内容
|
||||
|
||||
// 追加到 select 元素
|
||||
partitionId.append(option.clone());
|
||||
|
||||
//deviatePartitionId.append(option.clone());
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
$(function () {
|
||||
var picker1 = $('#timeBegin').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
todayBtn: true,
|
||||
autoclose: true,
|
||||
minView: 'month',
|
||||
endDate: new Date()
|
||||
});
|
||||
|
||||
var picker2 = $('#timeEnd').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
todayBtn: true,
|
||||
autoclose: true,
|
||||
minView: 'month',
|
||||
endDate: new Date()
|
||||
});
|
||||
var picker1 = $('#timeBegin').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
todayBtn: true,
|
||||
autoclose: true,
|
||||
minView: 'month',
|
||||
endDate: new Date()
|
||||
});
|
||||
|
||||
var $timeBegin = '', $timeEnd = '';
|
||||
var main = {
|
||||
init: function () {
|
||||
this.eventRegister();
|
||||
this.valueChange();
|
||||
},
|
||||
var picker2 = $('#timeEnd').datetimepicker({
|
||||
format: 'yyyy-mm-dd',
|
||||
todayBtn: true,
|
||||
autoclose: true,
|
||||
minView: 'month',
|
||||
endDate: new Date()
|
||||
});
|
||||
|
||||
eventRegister: function () {
|
||||
picker1.on('changeDate', function () {
|
||||
var date = $('#timeBegin').datetimepicker('getDate');
|
||||
picker2.datetimepicker('setStartDate', date);
|
||||
});
|
||||
picker2.on('changeDate', function () {
|
||||
var date = $('#timeEnd').datetimepicker('getDate');
|
||||
picker1.datetimepicker('setEndDate', date);
|
||||
});
|
||||
var $timeBegin = '', $timeEnd = '';
|
||||
var main = {
|
||||
init: function () {
|
||||
this.eventRegister();
|
||||
this.valueChange();
|
||||
},
|
||||
|
||||
$('#searchBtn').on('click', function () {
|
||||
var $dataCount = $('.dataCount');
|
||||
// var $startDate = $('#timeBegin').val().replace(/\//g,'-');
|
||||
var $startDate;
|
||||
if ($('#timeBegin').val() == "" || $('#timeBegin').val() == 'undefined') {
|
||||
$startDate = '';
|
||||
} else {
|
||||
/*var arr = $('#timeBegin').val().split('/');
|
||||
var length = arr.length;
|
||||
var $startDate = arr[length-1] +'-' + arr[0] + '-' + arr[length - 2];*/
|
||||
$startDate = $('#timeBegin').val();
|
||||
}
|
||||
var $endDate;
|
||||
if ($('#timeEnd').val() == '' || $('#timeEnd').val() == 'undefined') {
|
||||
$endDate = $startDate;
|
||||
} else {
|
||||
/*var arr2 = $('#timeEnd').val().split('/');
|
||||
var length2 = arr2.length;
|
||||
var $endDate = arr2[length2-1] + '-' + arr2[0] + '-' + arr2[length2-2];*/
|
||||
$endDate = $('#timeEnd').val();
|
||||
}
|
||||
eventRegister: function () {
|
||||
picker1.on('changeDate', function () {
|
||||
var date = $('#timeBegin').datetimepicker('getDate');
|
||||
picker2.datetimepicker('setStartDate', date);
|
||||
});
|
||||
picker2.on('changeDate', function () {
|
||||
var date = $('#timeEnd').datetimepicker('getDate');
|
||||
picker1.datetimepicker('setEndDate', date);
|
||||
});
|
||||
|
||||
if ($startDate == '') {
|
||||
$timeBegin = '';
|
||||
$timeEnd = '';
|
||||
} else {
|
||||
$timeBegin = $startDate + ' 00:00:00';
|
||||
$timeEnd = $endDate + ' 23:59:59';
|
||||
}
|
||||
$('#searchBtn').on('click', function () {
|
||||
var $dataCount = $('.dataCount');
|
||||
// var $startDate = $('#timeBegin').val().replace(/\//g,'-');
|
||||
var $startDate;
|
||||
if ($('#timeBegin').val() == "" || $('#timeBegin').val() == 'undefined') {
|
||||
$startDate = '';
|
||||
} else {
|
||||
/*var arr = $('#timeBegin').val().split('/');
|
||||
var length = arr.length;
|
||||
var $startDate = arr[length-1] +'-' + arr[0] + '-' + arr[length - 2];*/
|
||||
$startDate = $('#timeBegin').val();
|
||||
}
|
||||
var $endDate;
|
||||
if ($('#timeEnd').val() == '' || $('#timeEnd').val() == 'undefined') {
|
||||
$endDate = $startDate;
|
||||
} else {
|
||||
/*var arr2 = $('#timeEnd').val().split('/');
|
||||
var length2 = arr2.length;
|
||||
var $endDate = arr2[length2-1] + '-' + arr2[0] + '-' + arr2[length2-2];*/
|
||||
$endDate = $('#timeEnd').val();
|
||||
}
|
||||
|
||||
$.post('/admin/drawlottery/record/totalNew', {
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
dataType: $('#dataType').val()
|
||||
}, function (res) {
|
||||
console.log(res);
|
||||
if ($startDate == '') {
|
||||
$timeBegin = '';
|
||||
$timeEnd = '';
|
||||
} else {
|
||||
$timeBegin = $startDate + ' 00:00:00';
|
||||
$timeEnd = $endDate + ' 23:59:59';
|
||||
}
|
||||
|
||||
if (res.code == 200) {
|
||||
var data = res.data;
|
||||
$dataCount.find('#countNum').html(data.countNum);
|
||||
$dataCount.find('#userPay').html(data.userTotalPay);
|
||||
$dataCount.find('#platformNum').html(data.totalPlatformValue);
|
||||
$dataCount.find('#actualNum').html(data.totalActualValue);
|
||||
$dataCount.find('#giftNum').html(data.totalGiftActualValue);
|
||||
$dataCount.find('#notGiftNum').html(data.totalNotGiftActualValue);
|
||||
$dataCount.find('#realGiftNum').html(data.totalRealGiftActualValue);
|
||||
// TableHelper.doRefresh('#table');
|
||||
tableRefresh();
|
||||
} else {
|
||||
console.log('数据错误,导致加载失败,' + res.code);
|
||||
}
|
||||
})
|
||||
});
|
||||
$.post('/admin/drawlottery/record/totalNew', {
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
dataType: $('#dataType').val(),
|
||||
partitionId: $("#partitionId").val(),
|
||||
}, function (res) {
|
||||
console.log(res);
|
||||
|
||||
$('#table').on('click', '#details', function () {
|
||||
console.log($(this).data('id'));
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
|
||||
valueChange: function () {
|
||||
var $dataCount = $('.dataCount');
|
||||
$.post('/admin/drawlottery/record/totalNew', {
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
dataType: $('#dataType').val()
|
||||
}, function (res) {
|
||||
console.log(res);
|
||||
|
||||
if (res.code == 200) {
|
||||
var data = res.data;
|
||||
$dataCount.find('#countNum').html(data.countNum);
|
||||
$dataCount.find('#userPay').html(data.userTotalPay);
|
||||
$dataCount.find('#platformNum').html(data.totalPlatformValue);
|
||||
$dataCount.find('#actualNum').html(data.totalActualValue);
|
||||
$dataCount.find('#giftNum').html(data.totalGiftActualValue);
|
||||
$dataCount.find('#notGiftNum').html(data.totalNotGiftActualValue);
|
||||
$dataCount.find('#realGiftNum').html(data.totalRealGiftActualValue);
|
||||
TableHelper.doRefresh('#table');
|
||||
} else {
|
||||
console.log('数据错误,导致加载失败,' + res.code);
|
||||
}
|
||||
})
|
||||
}
|
||||
};
|
||||
main.init();
|
||||
|
||||
function tableRefresh() {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{
|
||||
field: 'createTime', title: '日期', align: 'center', valign: 'middle', width: '20%', formatter: function (val, rows, index) {
|
||||
if (val) {
|
||||
var date = new Date(val);
|
||||
return date.format('yyyy-MM-dd')
|
||||
} else {
|
||||
return '-';
|
||||
}
|
||||
}
|
||||
},
|
||||
{ field: 'countNum', title: '抽奖记录数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'userTotalPay', title: '用户投入钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '总平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '总实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalGiftActualValue', title: '用户获得礼物钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalNotGiftActualValue', title: '用户获得非礼物钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalRealGiftActualValue', title: '用户获得实物', align: 'center', valign: 'middle', width: '10%' },
|
||||
// {field: '', title: '操作', align: 'center', valign: 'middle', width: '10%',formatter: function(val,row,index) {
|
||||
// var key = row.createTime;
|
||||
// return '<button class="btn btn-primary btn-sm" id="details" data-id="' + key + '">查看详情</button>';
|
||||
// }}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: 'server',
|
||||
queryParamsType: 'undefined',
|
||||
queryParams: function queryParams(params) {
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
dataType: $('#dataType').val(),
|
||||
};
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'id',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/drawlottery/record/listNew',
|
||||
onLoadSuccess: function () {
|
||||
console.log('load success');
|
||||
},
|
||||
onLOadError: function () {
|
||||
console.log('load fail');
|
||||
}
|
||||
});
|
||||
if (res.code == 200) {
|
||||
var data = res.data;
|
||||
$dataCount.find('#countNum').html(data.countNum);
|
||||
$dataCount.find('#userPay').html(data.userTotalPay);
|
||||
$dataCount.find('#platformNum').html(data.totalPlatformValue);
|
||||
$dataCount.find('#actualNum').html(data.totalActualValue);
|
||||
$dataCount.find('#giftNum').html(data.totalGiftActualValue);
|
||||
$dataCount.find('#notGiftNum').html(data.totalNotGiftActualValue);
|
||||
$dataCount.find('#realGiftNum').html(data.totalRealGiftActualValue);
|
||||
// TableHelper.doRefresh('#table');
|
||||
tableRefresh();
|
||||
} else {
|
||||
console.log('数据错误,导致加载失败,' + res.code);
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
$('#table').on('click', '#details', function () {
|
||||
console.log($(this).data('id'));
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
|
||||
valueChange: function () {
|
||||
var $dataCount = $('.dataCount');
|
||||
$.post('/admin/drawlottery/record/totalNew', {
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
dataType: $('#dataType').val()
|
||||
}, function (res) {
|
||||
console.log(res);
|
||||
|
||||
if (res.code == 200) {
|
||||
var data = res.data;
|
||||
$dataCount.find('#countNum').html(data.countNum);
|
||||
$dataCount.find('#userPay').html(data.userTotalPay);
|
||||
$dataCount.find('#platformNum').html(data.totalPlatformValue);
|
||||
$dataCount.find('#actualNum').html(data.totalActualValue);
|
||||
$dataCount.find('#giftNum').html(data.totalGiftActualValue);
|
||||
$dataCount.find('#notGiftNum').html(data.totalNotGiftActualValue);
|
||||
$dataCount.find('#realGiftNum').html(data.totalRealGiftActualValue);
|
||||
TableHelper.doRefresh('#table');
|
||||
} else {
|
||||
console.log('数据错误,导致加载失败,' + res.code);
|
||||
}
|
||||
})
|
||||
}
|
||||
};
|
||||
main.init();
|
||||
|
||||
function tableRefresh () {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{
|
||||
field: 'createTime', title: '日期', align: 'center', valign: 'middle', width: '20%', formatter: function (val, rows, index) {
|
||||
if (val) {
|
||||
var date = new Date(val);
|
||||
return date.format('yyyy-MM-dd')
|
||||
} else {
|
||||
return '-';
|
||||
}
|
||||
}
|
||||
},
|
||||
{ field: 'countNum', title: '抽奖记录数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'userTotalPay', title: '用户投入钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '总平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '总实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalGiftActualValue', title: '用户获得礼物钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalNotGiftActualValue', title: '用户获得非礼物钻石数', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalRealGiftActualValue', title: '用户获得实物', align: 'center', valign: 'middle', width: '10%' },
|
||||
// {field: '', title: '操作', align: 'center', valign: 'middle', width: '10%',formatter: function(val,row,index) {
|
||||
// var key = row.createTime;
|
||||
// return '<button class="btn btn-primary btn-sm" id="details" data-id="' + key + '">查看详情</button>';
|
||||
// }}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: 'server',
|
||||
queryParamsType: 'undefined',
|
||||
queryParams: function queryParams (params) {
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
startDate: $timeBegin,
|
||||
endDate: $timeEnd,
|
||||
boxType: $('#boxType').val(),
|
||||
poolType: $('#poolType').val(),
|
||||
erbanNo: $('#erbanNo').val(),
|
||||
dataType: $('#dataType').val(),
|
||||
partitionId: $('#partitionId').val(),
|
||||
};
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'id',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/drawlottery/record/listNew',
|
||||
onLoadSuccess: function () {
|
||||
console.log('load success');
|
||||
},
|
||||
onLOadError: function () {
|
||||
console.log('load fail');
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.dataCount {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
margin-top: 10px;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
align-items: center;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.dataCount>p {
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
background: #ccc;
|
||||
margin-right: 10px;
|
||||
.dataCount > p {
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
background: #ccc;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.tips {
|
||||
color: red;
|
||||
font-size: 14px;
|
||||
color: red;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.qry_col {
|
||||
float: left;
|
||||
}</style>
|
||||
float: left;
|
||||
}
|
||||
</style>
|
@@ -12,9 +12,14 @@
|
||||
<div id="toolbar">
|
||||
|
||||
<div class="col-sm-12">
|
||||
<form action="" id="searchForm" method="POST">
|
||||
|
||||
转盘分类:<select name="jackpotType" id="jackpotType" data-btn-class="btn btn-warning">
|
||||
<form action=""
|
||||
id="searchForm"
|
||||
method="POST">
|
||||
分区:<select id="partitionId"
|
||||
class="input-sm"></select>
|
||||
转盘分类:<select name="jackpotType"
|
||||
class="input-sm"
|
||||
id="jackpotType">
|
||||
<option value="1">幸运新人奖池</option>
|
||||
<option value="2">幸运普通奖池</option>
|
||||
<option value="3">幸运白名单奖池</option>
|
||||
@@ -29,17 +34,23 @@
|
||||
</select>
|
||||
<label class="deviateRange">
|
||||
偏差范围:
|
||||
<select name="deviateRange" id="deviateRange" data-btn-class="btn btn-warning">
|
||||
<select name="deviateRange"
|
||||
id="deviateRange"
|
||||
data-btn-class="btn btn-warning">
|
||||
</select>
|
||||
</label>
|
||||
<label class="diamondDeviateRange">
|
||||
偏差范围:
|
||||
<select name="diamondDeviateRange" id="diamondDeviateRange" data-btn-class="btn btn-warning">
|
||||
<select name="diamondDeviateRange"
|
||||
id="diamondDeviateRange"
|
||||
data-btn-class="btn btn-warning">
|
||||
</select>
|
||||
</label>
|
||||
</form>
|
||||
<button class="btn btn-primary" id="searchBtn">搜索</button>
|
||||
<button class="btn btn-primary" id="add">添加奖品</button>
|
||||
<button class="btn btn-primary"
|
||||
id="searchBtn">搜索</button>
|
||||
<button class="btn btn-primary"
|
||||
id="add">添加奖品</button>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-12 jackpot">
|
||||
@@ -51,10 +62,14 @@
|
||||
</p>
|
||||
|
||||
<p class="col-sm-12">
|
||||
<span class="col-sm-3" id="jackpotName"></span>
|
||||
<span class="col-sm-3" id="jackpotNum"></span>
|
||||
<span class="col-sm-3" id="prizeNum"></span>
|
||||
<span class="col-sm-3" id="expectNum"></span>
|
||||
<span class="col-sm-3"
|
||||
id="jackpotName"></span>
|
||||
<span class="col-sm-3"
|
||||
id="jackpotNum"></span>
|
||||
<span class="col-sm-3"
|
||||
id="prizeNum"></span>
|
||||
<span class="col-sm-3"
|
||||
id="expectNum"></span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -65,31 +80,47 @@
|
||||
</section>
|
||||
|
||||
<!-- 添加弹窗 -->
|
||||
<div class="modal fade" id="addModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
||||
<div class="modal fade"
|
||||
id="addModal"
|
||||
tabindex="-1"
|
||||
role="dialog"
|
||||
aria-labelledby="modalLabel">
|
||||
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-dialog"
|
||||
role="document">
|
||||
<div class="modal-content">
|
||||
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<button type="button"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
aria-label="Close">
|
||||
<span aria-hidden="true">x</span>
|
||||
</button>
|
||||
|
||||
<h4 class="modal-title" id="addModalLabel">添加奖品</h4>
|
||||
<h4 class="modal-title"
|
||||
id="addModalLabel">添加奖品</h4>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<form action="" class="form-horizontal" id="addForm">
|
||||
<form action=""
|
||||
class="form-horizontal"
|
||||
id="addForm">
|
||||
|
||||
<!-- 选择奖品 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">选择奖品:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">选择奖品:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="awardType" id="awardType" data-btn-class="btn btn-warning">
|
||||
<select name="awardType"
|
||||
id="awardType"
|
||||
data-btn-class="btn btn-warning">
|
||||
<!-- <option value=""></option> -->
|
||||
</select>
|
||||
|
||||
<select name="awardChoose" id="awardChoose" data-btn-class="btn btn-warning">
|
||||
<select name="awardChoose"
|
||||
id="awardChoose"
|
||||
data-btn-class="btn btn-warning">
|
||||
<!-- <option value=""></option> -->
|
||||
</select>
|
||||
</div>
|
||||
@@ -97,19 +128,29 @@
|
||||
|
||||
<!-- 奖品个数 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">奖品个数:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">奖品个数:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="jackpotNumber" name="jackpotNumber" class=" validate[required]" placeholder="单行输入">
|
||||
<input type="text"
|
||||
id="jackpotNumber"
|
||||
name="jackpotNumber"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 中奖率 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">实际中奖率:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">实际中奖率:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="winningRate" name="winningRate" class=" validate[required]" placeholder="单行输入">%
|
||||
<input type="text"
|
||||
id="winningRate"
|
||||
name="winningRate"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">%
|
||||
<br />
|
||||
<div class="tips">
|
||||
<i class="glyphicon glyphicon-info-sign"></i>中奖率综合为100,当前概率不得超过100
|
||||
@@ -119,10 +160,15 @@
|
||||
|
||||
<!-- 展示中奖率 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">展示中奖率:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">展示中奖率:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="showRate" name="showRate" class=" validate[required]" placeholder="单行输入">%
|
||||
<input type="text"
|
||||
id="showRate"
|
||||
name="showRate"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">%
|
||||
<br />
|
||||
<div class="tips">
|
||||
<i class="glyphicon glyphicon-info-sign"></i>中奖率综合为100,当前概率不得超过100
|
||||
@@ -131,21 +177,41 @@
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">是否默认奖品:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">是否默认奖品:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="itemType" id="itemType" data-btn-class="btn btn-warning">
|
||||
<select name="itemType"
|
||||
id="itemType"
|
||||
data-btn-class="btn btn-warning">
|
||||
<option value="1"> 默认奖品 </option>
|
||||
<option value="2"> 普通奖品 </option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 创建者 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">创建者:</label>
|
||||
<!-- 分区 -->
|
||||
<div class="form-group awardPartitionId">
|
||||
<label for="awardPartitionId"
|
||||
class="col-sm-3 control-label">分区:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="creator" name="creator" class="validate[required]" placeholder="必填项">
|
||||
<select name="awardPartitionId"
|
||||
id="awardPartitionId">
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 创建者 -->
|
||||
<div class="form-group">
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">创建者:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text"
|
||||
id="creator"
|
||||
name="creator"
|
||||
class="validate[required]"
|
||||
placeholder="必填项">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -153,8 +219,12 @@
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-default" type="button" id="addReset">重置</button>
|
||||
<button class="btn btn-primary" type="button" id="addSave">保存</button>
|
||||
<button class="btn btn-default"
|
||||
type="button"
|
||||
id="addReset">重置</button>
|
||||
<button class="btn btn-primary"
|
||||
type="button"
|
||||
id="addSave">保存</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -162,35 +232,56 @@
|
||||
</div>
|
||||
|
||||
<!-- 编辑弹窗 -->
|
||||
<div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal fade"
|
||||
id="editModal"
|
||||
tabindex="-1"
|
||||
role="dialog"
|
||||
aria-labelledby="modalLabel">
|
||||
<div class="modal-dialog"
|
||||
role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<button type="button"
|
||||
class="close"
|
||||
data-dismiss="modal"
|
||||
aria-label="Close">
|
||||
<span aria-hidden="true">x</span>
|
||||
</button>
|
||||
<h4 class="modal-title" id="editModalLabel">编辑奖品</h4>
|
||||
<h4 class="modal-title"
|
||||
id="editModalLabel">编辑奖品</h4>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
<form action="" class="form-horizontal" id="editForm">
|
||||
<input type="hidden" id="editId">
|
||||
<form action=""
|
||||
class="form-horizontal"
|
||||
id="editForm">
|
||||
<input type="hidden"
|
||||
id="editId">
|
||||
<!-- 奖品个数 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">奖品个数:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">奖品个数:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="jackpotNumber2" name="jackpotNumber2" class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
<input type="text"
|
||||
id="jackpotNumber2"
|
||||
name="jackpotNumber2"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 中奖率 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">实际中奖率:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">实际中奖率:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="winningRate2" name="winningRate2" class=" validate[required]" placeholder="单行输入">%
|
||||
<input type="text"
|
||||
id="winningRate2"
|
||||
name="winningRate2"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">%
|
||||
<br />
|
||||
<div class="tips">
|
||||
<i class="glyphicon glyphicon-info-sign"></i>中奖率综合为100,当前概率不得超过100
|
||||
@@ -200,10 +291,15 @@
|
||||
|
||||
<!-- 展示给用户看的中奖率 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">展示中奖率:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">展示中奖率:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="showRate2" name="showRate2" class=" validate[required]" placeholder="单行输入">%
|
||||
<input type="text"
|
||||
id="showRate2"
|
||||
name="showRate2"
|
||||
class=" validate[required]"
|
||||
placeholder="单行输入">%
|
||||
<br />
|
||||
<div class="tips">
|
||||
<i class="glyphicon glyphicon-info-sign"></i>中奖率综合为100,当前概率不得超过100
|
||||
@@ -211,29 +307,52 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">是否默认奖品:</label>
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">是否默认奖品:</label>
|
||||
<div class="col-sm-8">
|
||||
<select name="itemType" id="itemType2" data-btn-class="btn btn-warning">
|
||||
<select name="itemType"
|
||||
id="itemType2"
|
||||
data-btn-class="btn btn-warning">
|
||||
<option value="1"> 默认奖品 </option>
|
||||
<option value="2"> 普通奖品 </option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 创建者 -->
|
||||
<div class="form-group">
|
||||
<label for="" class="col-sm-3 control-label">创建者:</label>
|
||||
<!-- 分区 -->
|
||||
<div class="form-group awardPartitionId">
|
||||
<label for="awardPartitionId2"
|
||||
class="col-sm-3 control-label">分区:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text" id="creator2" name="creator2" class="validate[required]">
|
||||
<select name="awardPartitionId2"
|
||||
id="awardPartitionId2">
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 创建者 -->
|
||||
<div class="form-group">
|
||||
<label for=""
|
||||
class="col-sm-3 control-label">创建者:</label>
|
||||
|
||||
<div class="col-sm-8">
|
||||
<input type="text"
|
||||
id="creator2"
|
||||
name="creator2"
|
||||
class="validate[required]">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button class="btn btn-default" type="button" id="editReset">重置</button>
|
||||
<button class="btn btn-primary" type="button" id="editSave">保存</button>
|
||||
<button class="btn btn-default"
|
||||
type="button"
|
||||
id="editReset">重置</button>
|
||||
<button class="btn btn-primary"
|
||||
type="button"
|
||||
id="editSave">保存</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -243,6 +362,7 @@
|
||||
<script>
|
||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
|
||||
var partitionInfo = {}
|
||||
var idObj = {};
|
||||
var typeObj = {};
|
||||
var pId = '', saveId = '';
|
||||
@@ -251,21 +371,62 @@ var ACCURACY = 1000; // 小数点精度
|
||||
var RATIO_PART = 100000; // 概率换算单位
|
||||
export default {
|
||||
name: "PrizeManageAdminView",
|
||||
setup() {
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
created () {
|
||||
this.initData();
|
||||
|
||||
},
|
||||
mounted() {
|
||||
mounted () {
|
||||
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
initData () {
|
||||
this.$nextTick(function () {
|
||||
var main = {
|
||||
init: function () {
|
||||
$.ajax({
|
||||
type: 'get',
|
||||
url: '/partition/listPartitionInfo',
|
||||
dataType: 'json',
|
||||
success: function (json) {
|
||||
if (json.code == 200) {
|
||||
var awardPartitionId = $("#awardPartitionId");
|
||||
awardPartitionId.empty();
|
||||
|
||||
var awardPartitionId2 = $("#awardPartitionId2");
|
||||
awardPartitionId2.empty();
|
||||
|
||||
var partitionId = $("#partitionId");
|
||||
partitionId.empty();
|
||||
|
||||
var defaultOption = $('<option></option>').attr('value', '').text("全部");
|
||||
partitionId.append(defaultOption);
|
||||
|
||||
// 遍历数据并添加 option
|
||||
$.each(json.data, function (index, item) {
|
||||
// 创建新的 option 元素
|
||||
var option = $('<option></option>')
|
||||
.attr('value', item.id) // 设置 value 属性
|
||||
.text(item.desc); // 设置文本内容
|
||||
|
||||
// 追加到 select 元素
|
||||
partitionId.append(option.clone());
|
||||
|
||||
awardPartitionId.append(option.clone());
|
||||
|
||||
awardPartitionId2.append(option.clone());
|
||||
});
|
||||
|
||||
partitionInfo = json.data.reduce((acc, item) => {
|
||||
acc[item.id] = item.desc;
|
||||
return acc;
|
||||
}, {});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('.deviateRange').hide();
|
||||
$('.chargeDeviateRange').hide();
|
||||
$('.diamondDeviateRange').hide();
|
||||
@@ -358,7 +519,7 @@ export default {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'id', title: '奖品编号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'id', title: '奖品编号', align: 'center', valign: 'middle', width: '3%' },
|
||||
{
|
||||
field: 'prizeName', title: '奖品名称', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
var key = row.prizeId;
|
||||
@@ -448,6 +609,11 @@ export default {
|
||||
}
|
||||
},
|
||||
{ field: 'usePrizeNum', title: '被抽中数量', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'partitionId', title: '分区', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
return partitionInfo[val] || val;
|
||||
}
|
||||
},
|
||||
{
|
||||
field: '', title: '操作', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
var key = row.id;
|
||||
@@ -463,13 +629,14 @@ export default {
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: 'server',
|
||||
queryParamsType: 'undefined',
|
||||
queryParams: function queryParams(params) {
|
||||
queryParams: function queryParams (params) {
|
||||
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
poolType: parseInt($('#jackpotType').val()),
|
||||
deviateRangeId: getDeviateRangeId()
|
||||
deviateRangeId: getDeviateRangeId(),
|
||||
partitionId: $('#partitionId').val(),
|
||||
};
|
||||
|
||||
return param;
|
||||
@@ -587,7 +754,6 @@ export default {
|
||||
$('#addModal').find('#awardType').on('change', function () {
|
||||
$('#awardChoose').find('option').remove();
|
||||
var key = $(this).val();
|
||||
console.log(key);
|
||||
// var str = '<option></option>';
|
||||
// $('#awardChoose').append(str);
|
||||
var str;
|
||||
@@ -611,6 +777,7 @@ export default {
|
||||
$('#editModal').find('#showRate2').val(data.showRatio / ACCURACY);
|
||||
$('#editModal').find('#creator2').val(data.creator);
|
||||
$('#editModal').find('#itemType2').val(data.itemType);
|
||||
$('#editModal').find('#awardPartitionId2').val(data.partitionId);
|
||||
pId = data.prizeId;
|
||||
saveId = id;
|
||||
});
|
||||
@@ -660,7 +827,8 @@ export default {
|
||||
occupationRatio: $('#winningRate').val() * ACCURACY,
|
||||
showRatio: $('#showRate').val() * ACCURACY,
|
||||
creator: $('#creator').val(),
|
||||
itemType: $('#itemType').val()
|
||||
itemType: $('#itemType').val(),
|
||||
partitionId: $('#awardPartitionId').val(),
|
||||
}, function (res) {
|
||||
if (res.code == 200) {
|
||||
$('#addModal').modal('hide');
|
||||
@@ -715,7 +883,8 @@ export default {
|
||||
occupationRatio: $('#winningRate2').val() * ACCURACY,
|
||||
showRatio: $('#showRate2').val() * ACCURACY,
|
||||
creator: $('#creator2').val(),
|
||||
itemType: $('#itemType2').val()
|
||||
itemType: $('#itemType2').val(),
|
||||
partitionId: $('#awardPartitionId2').val(),
|
||||
}, function (res) {
|
||||
if (res.code == 200) {
|
||||
// console.log(res);
|
||||
@@ -774,7 +943,7 @@ export default {
|
||||
|
||||
};
|
||||
|
||||
function clearModal() {
|
||||
function clearModal () {
|
||||
$('#addForm').find('input[type=text],select,input[type=hidden]').each(function () {
|
||||
$(this).val('');
|
||||
});
|
||||
@@ -783,7 +952,7 @@ function clearModal() {
|
||||
});
|
||||
}
|
||||
|
||||
function getDeviateRangeId() {
|
||||
function getDeviateRangeId () {
|
||||
if ($('#deviateRange').val()) {
|
||||
var jackpotType = $('#jackpotType').val();
|
||||
if (jackpotType == '4') {
|
||||
@@ -814,7 +983,7 @@ function getDeviateRangeId() {
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
#toolbar>div:first-child {
|
||||
#toolbar > div:first-child {
|
||||
margin-right: 10px;
|
||||
}
|
||||
</style>
|
@@ -1,179 +1,197 @@
|
||||
<template>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<div class="col-sm-12">
|
||||
<div class="pull-left">
|
||||
<form action="/admin/box/record/export" id="searchForm" method="POST">
|
||||
平台号:<input type="text" id="msNo" name="msNo" class="input-sm" placeholder="请输入平台号">
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<div class="col-sm-12">
|
||||
<div class="pull-left">
|
||||
<form action="/admin/box/record/export"
|
||||
id="searchForm"
|
||||
method="POST">
|
||||
平台号:<input type="text"
|
||||
id="msNo"
|
||||
name="msNo"
|
||||
class="input-sm"
|
||||
placeholder="请输入平台号">
|
||||
|
||||
奖品名称:<input type="text" id="prizeName" name="prizeName" class="input-sm"
|
||||
placeholder="请输入奖品名称">
|
||||
奖品名称:<input type="text"
|
||||
id="prizeName"
|
||||
name="prizeName"
|
||||
class="input-sm"
|
||||
placeholder="请输入奖品名称">
|
||||
|
||||
日期:<input type="text" name="startDate" id="timeBegin" class="input-sm datetime"
|
||||
placeholder="起始时间">
|
||||
- <input type="text" name="endDate" id="timeEnd" class="input-sm datetime"
|
||||
placeholder="结束时间">
|
||||
日期:<input type="text"
|
||||
name="startDate"
|
||||
id="timeBegin"
|
||||
class="input-sm datetime"
|
||||
placeholder="起始时间">
|
||||
- <input type="text"
|
||||
name="endDate"
|
||||
id="timeEnd"
|
||||
class="input-sm datetime"
|
||||
placeholder="结束时间">
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="pull-right">
|
||||
<button id="searchBtn" class="btn btn-primary">筛选</button>
|
||||
<button id="exportBtn" class="btn btn-primary">导出</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="pull-right">
|
||||
<button id="searchBtn"
|
||||
class="btn btn-primary">筛选</button>
|
||||
<button id="exportBtn"
|
||||
class="btn btn-primary">导出</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
|
||||
export default {
|
||||
name: "PrizeRecordAdminView",
|
||||
setup() {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
name: "PrizeRecordAdminView",
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created () {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData () {
|
||||
$(function () {
|
||||
|
||||
$('.datetime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
$(function () {
|
||||
|
||||
$('.datetime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
var main = {
|
||||
init: function () {
|
||||
this.eventRegister();
|
||||
this.getDataFromBack();
|
||||
},
|
||||
|
||||
var main = {
|
||||
init: function () {
|
||||
this.eventRegister();
|
||||
this.getDataFromBack();
|
||||
},
|
||||
eventRegister: function () {
|
||||
|
||||
eventRegister: function () {
|
||||
|
||||
},
|
||||
},
|
||||
|
||||
getDataFromBack: function () {
|
||||
getDataFromBack: function () {
|
||||
|
||||
}
|
||||
};
|
||||
main.init();
|
||||
}
|
||||
};
|
||||
main.init();
|
||||
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'id', title: 'id', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '用户昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'prizeName', title: '奖品名称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'createTime', title: '抽奖时间', align: 'center', valign: 'middle', width: '20%', formatter: function (val, row, index) {
|
||||
if (val) {
|
||||
var date = new Date(val);
|
||||
return date.format('yyyy-MM-dd hh:mm:ss');
|
||||
} else {
|
||||
return '-';
|
||||
}
|
||||
}
|
||||
},
|
||||
{ field: 'platformValue', title: '平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'actualValue', title: '实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'prizePoolType', title: '转盘类型', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
switch (row.prizePoolType) {
|
||||
case 1:
|
||||
return '幸运新人奖池';
|
||||
|
||||
case 2:
|
||||
return '幸运普通奖池';
|
||||
|
||||
case 3:
|
||||
return '幸运白名单奖池';
|
||||
|
||||
case 4:
|
||||
return '幸运偏差奖池';
|
||||
|
||||
case 12:
|
||||
return '幸运次数奖池';
|
||||
|
||||
case 7:
|
||||
return '梦幻普通奖池';
|
||||
|
||||
case 9:
|
||||
return '梦幻偏差奖池';
|
||||
|
||||
case 10:
|
||||
return '梦幻新人奖池';
|
||||
|
||||
case 11:
|
||||
return '梦幻白名单奖池';
|
||||
|
||||
case 13:
|
||||
return '普通管理奖池';
|
||||
|
||||
case 14:
|
||||
return '梦幻管理奖池';
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: 'server',
|
||||
queryParamsType: 'undefined',
|
||||
queryParams: function queryParams(params) {
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
startDate: $('#timeBegin').val(),
|
||||
endDate: $('#timeEnd').val(),
|
||||
msNo: $('#msNo').val(),
|
||||
prizeName: $("#prizeName").val()
|
||||
};
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'id',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/list',
|
||||
onLOadSuccess: function () {
|
||||
console.log('load success');
|
||||
},
|
||||
onLoadError: function () {
|
||||
console.log('load fail');
|
||||
}
|
||||
});
|
||||
// 筛选按钮点击事件
|
||||
$('#searchBtn').on('click', function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
});
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'id', title: 'id', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '用户昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'partition', title: '分区', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'prizeName', title: '奖品名称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'createTime', title: '抽奖时间', align: 'center', valign: 'middle', width: '20%', formatter: function (val, row, index) {
|
||||
if (val) {
|
||||
var date = new Date(val);
|
||||
return date.format('yyyy-MM-dd hh:mm:ss');
|
||||
} else {
|
||||
return '-';
|
||||
}
|
||||
}
|
||||
},
|
||||
{ field: 'platformValue', title: '平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'actualValue', title: '实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'prizePoolType', title: '转盘类型', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
switch (row.prizePoolType) {
|
||||
case 1:
|
||||
return '幸运新人奖池';
|
||||
|
||||
$("#exportBtn").on('click', function () {
|
||||
$("#searchForm").submit();
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
case 2:
|
||||
return '幸运普通奖池';
|
||||
|
||||
case 3:
|
||||
return '幸运白名单奖池';
|
||||
|
||||
case 4:
|
||||
return '幸运偏差奖池';
|
||||
|
||||
case 12:
|
||||
return '幸运次数奖池';
|
||||
|
||||
case 7:
|
||||
return '梦幻普通奖池';
|
||||
|
||||
case 9:
|
||||
return '梦幻偏差奖池';
|
||||
|
||||
case 10:
|
||||
return '梦幻新人奖池';
|
||||
|
||||
case 11:
|
||||
return '梦幻白名单奖池';
|
||||
|
||||
case 13:
|
||||
return '普通管理奖池';
|
||||
|
||||
case 14:
|
||||
return '梦幻管理奖池';
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: 'server',
|
||||
queryParamsType: 'undefined',
|
||||
queryParams: function queryParams (params) {
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
startDate: $('#timeBegin').val(),
|
||||
endDate: $('#timeEnd').val(),
|
||||
msNo: $('#msNo').val(),
|
||||
prizeName: $("#prizeName").val()
|
||||
};
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'id',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/list',
|
||||
onLOadSuccess: function () {
|
||||
console.log('load success');
|
||||
},
|
||||
onLoadError: function () {
|
||||
console.log('load fail');
|
||||
}
|
||||
});
|
||||
// 筛选按钮点击事件
|
||||
$('#searchBtn').on('click', function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
});
|
||||
|
||||
$("#exportBtn").on('click', function () {
|
||||
$("#searchForm").submit();
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
@@ -1,296 +1,315 @@
|
||||
<template>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<label class="source">
|
||||
选择时间: <input type="text" name="startTime" id="startTime" class="input-sm">
|
||||
至 <input type="text" id="endTime" name="endTime" class="input-sm">
|
||||
</label>
|
||||
<label class="source">
|
||||
宝箱类型: <select name="boxType" id="boxType" class="input-sm">
|
||||
<option value="0">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="source">
|
||||
查询凭据:<select name="source" id="source" class="input-sm">
|
||||
<option value="1">平台号</option>
|
||||
<option value="2">偏差范围</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="msNo">
|
||||
平台号:<input type="text" placeholder="请输入草莓号" id="msNo" class="input-sm">
|
||||
</label>
|
||||
<label class="deviation">
|
||||
偏差值: <input type="text" id="minDis" class="input-m"> - <input type="text" id="maxDis"
|
||||
class="input-m">
|
||||
</label>
|
||||
<button id="btnSearch" class="btn btn-sm btn-primary">查询</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<label class="source">
|
||||
选择时间: <input type="text"
|
||||
name="startTime"
|
||||
id="startTime"
|
||||
class="input-sm">
|
||||
至 <input type="text"
|
||||
id="endTime"
|
||||
name="endTime"
|
||||
class="input-sm">
|
||||
</label>
|
||||
<label class="source">
|
||||
宝箱类型: <select name="boxType"
|
||||
id="boxType"
|
||||
class="input-sm">
|
||||
<option value="0">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="source">
|
||||
查询凭据:<select name="source"
|
||||
id="source"
|
||||
class="input-sm">
|
||||
<option value="1">平台号</option>
|
||||
<option value="2">偏差范围</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="msNo">
|
||||
平台号:<input type="text"
|
||||
placeholder="请输入草莓号"
|
||||
id="msNo"
|
||||
class="input-sm">
|
||||
</label>
|
||||
<label class="deviation">
|
||||
偏差值: <input type="text"
|
||||
id="minDis"
|
||||
class="input-m"> - <input type="text"
|
||||
id="maxDis"
|
||||
class="input-m">
|
||||
</label>
|
||||
<button id="btnSearch"
|
||||
class="btn btn-sm btn-primary">查询</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
|
||||
export default {
|
||||
name: "PrizeStatisAdminNewView",
|
||||
setup() {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
$(function () {
|
||||
//searchHistory();
|
||||
var whiteList = {};
|
||||
requestWhiteList(searchHistory());
|
||||
function searchHistory() {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPurchaseMoney', title: '历史抽奖充值总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalDrawMoney', title: '历史抽奖总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '历史获奖平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '历史获奖实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'deviation', title: '偏差值', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
if (val > 0) {
|
||||
return '<span style="color:red">+' + val + '</span>';
|
||||
} else {
|
||||
return '<span style="color:green">' + val + '</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'useNum', title: '历史白名单次数', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'whiteStatus', title: '白名单状态', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondUseNum',
|
||||
title: '梦幻白名单次数',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useDiamondNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondWhiteStatus',
|
||||
title: '梦幻白名单状态',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'tmp',
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
width: '10%',
|
||||
valign: 'middle',
|
||||
formatter: function (val, row, index) {
|
||||
var btnStr = "";
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del normal-box-del' data-id=" + uid + ">移除普通白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set normal-box-set' data-id=" + uid + ">设置普通白名单</button>";
|
||||
}
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del diamond-box-del' data-id=" + uid + ">移除梦幻白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set diamond-box-set' data-id=" + uid + ">设置梦幻白名单</button>";
|
||||
}
|
||||
return btnStr;
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams(params) { //设置查询参数
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
msNo: $('#msNo').val(),
|
||||
boxType: $("#boxType").val(),
|
||||
minDis: $('#minDis').val(),
|
||||
maxDis: $('#maxDis').val(),
|
||||
source: $('#source').val(),
|
||||
startTime: $("#startTime").val(),
|
||||
endTime: $("#endTime").val()
|
||||
};
|
||||
console.log(param);
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'uid',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/statis/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
})
|
||||
name: "PrizeStatisAdminNewView",
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created () {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData () {
|
||||
$(function () {
|
||||
//searchHistory();
|
||||
var whiteList = {};
|
||||
requestWhiteList(searchHistory());
|
||||
function searchHistory () {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'partition', title: '分区', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPurchaseMoney', title: '历史抽奖充值总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalDrawMoney', title: '历史抽奖总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '历史获奖平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '历史获奖实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'deviation', title: '偏差值', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
if (val > 0) {
|
||||
return '<span style="color:red">+' + val + '</span>';
|
||||
} else {
|
||||
return '<span style="color:green">' + val + '</span>';
|
||||
}
|
||||
}
|
||||
|
||||
$('#source').on('change', function () {
|
||||
var source = parseInt($(this).val());
|
||||
if (source == 1) {
|
||||
$('.msNo').show();
|
||||
$('.deviation').hide();
|
||||
} else {
|
||||
$('.msNo').hide();
|
||||
$('.deviation').show();
|
||||
}
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 2);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 2);
|
||||
});
|
||||
$('#btnSearch').on('click', function () {
|
||||
var source = $('#source').val();
|
||||
var msNo = $('#msNo').val();
|
||||
var minDis = $('#minDis').val();
|
||||
var maxDis = $('#maxDis').val();
|
||||
if (source == 1 && msNo == '') {
|
||||
$("#tipMsg").text("请输入平台号");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
} else if (source == 2 && (minDis == '' || maxDis == '')) {
|
||||
$("#tipMsg").text("请输入偏差值");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
requestWhiteList(searchHistory());
|
||||
});
|
||||
|
||||
function editWhiteList(uid, availableNum, boxType) {
|
||||
$.post("/admin/prizeWhiteUser/save", { uid: uid, availableNum: availableNum, boxType: boxType }, function (res) {
|
||||
if (res.code == 200) {
|
||||
if (availableNum > 0) {
|
||||
$("#tipMsg").text("设置成功");
|
||||
} else {
|
||||
$("#tipMsg").text("移除成功");
|
||||
}
|
||||
$("#tipModal").modal('show');
|
||||
|
||||
requestWhiteList(function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
})
|
||||
} else {
|
||||
$("#tipMsg").text("设置失败");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'useNum', title: '历史白名单次数', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
function requestWhiteList(callback) {
|
||||
$.ajax({
|
||||
url: '/admin/prizeWhiteUser/list',
|
||||
success: function (res) {
|
||||
console.log(res);
|
||||
if (res.code == 200) {
|
||||
whiteList = res.data;
|
||||
typeof callback === 'function' && callback();
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'whiteStatus', title: '白名单状态', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化时间选择器
|
||||
$('#startTime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
})
|
||||
$("#endTime").datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'diamondUseNum',
|
||||
title: '梦幻白名单次数',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useDiamondNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondWhiteStatus',
|
||||
title: '梦幻白名单状态',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'tmp',
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
width: '10%',
|
||||
valign: 'middle',
|
||||
formatter: function (val, row, index) {
|
||||
var btnStr = "";
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del normal-box-del' data-id=" + uid + ">移除普通白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set normal-box-set' data-id=" + uid + ">设置普通白名单</button>";
|
||||
}
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del diamond-box-del' data-id=" + uid + ">移除梦幻白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set diamond-box-set' data-id=" + uid + ">设置梦幻白名单</button>";
|
||||
}
|
||||
return btnStr;
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams (params) { //设置查询参数
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
msNo: $('#msNo').val(),
|
||||
boxType: $("#boxType").val(),
|
||||
minDis: $('#minDis').val(),
|
||||
maxDis: $('#maxDis').val(),
|
||||
source: $('#source').val(),
|
||||
startTime: $("#startTime").val(),
|
||||
endTime: $("#endTime").val()
|
||||
};
|
||||
console.log(param);
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'uid',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/statis/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
$('#source').on('change', function () {
|
||||
var source = parseInt($(this).val());
|
||||
if (source == 1) {
|
||||
$('.msNo').show();
|
||||
$('.deviation').hide();
|
||||
} else {
|
||||
$('.msNo').hide();
|
||||
$('.deviation').show();
|
||||
}
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 2);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 2);
|
||||
});
|
||||
$('#btnSearch').on('click', function () {
|
||||
var source = $('#source').val();
|
||||
var msNo = $('#msNo').val();
|
||||
var minDis = $('#minDis').val();
|
||||
var maxDis = $('#maxDis').val();
|
||||
if (source == 1 && msNo == '') {
|
||||
$("#tipMsg").text("请输入平台号");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
} else if (source == 2 && (minDis == '' || maxDis == '')) {
|
||||
$("#tipMsg").text("请输入偏差值");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
requestWhiteList(searchHistory());
|
||||
});
|
||||
|
||||
function editWhiteList (uid, availableNum, boxType) {
|
||||
$.post("/admin/prizeWhiteUser/save", { uid: uid, availableNum: availableNum, boxType: boxType }, function (res) {
|
||||
if (res.code == 200) {
|
||||
if (availableNum > 0) {
|
||||
$("#tipMsg").text("设置成功");
|
||||
} else {
|
||||
$("#tipMsg").text("移除成功");
|
||||
}
|
||||
$("#tipModal").modal('show');
|
||||
|
||||
requestWhiteList(function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
})
|
||||
} else {
|
||||
$("#tipMsg").text("设置失败");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function requestWhiteList (callback) {
|
||||
$.ajax({
|
||||
url: '/admin/prizeWhiteUser/list',
|
||||
success: function (res) {
|
||||
console.log(res);
|
||||
if (res.code == 200) {
|
||||
whiteList = res.data;
|
||||
typeof callback === 'function' && callback();
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 初始化时间选择器
|
||||
$('#startTime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
})
|
||||
$("#endTime").datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.deviation {
|
||||
display: none;
|
||||
display: none;
|
||||
}
|
||||
|
||||
#toolbar label {
|
||||
margin-right: 6px;
|
||||
}</style>
|
||||
margin-right: 6px;
|
||||
}
|
||||
</style>
|
@@ -1,296 +1,315 @@
|
||||
<template>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<label class="source">
|
||||
选择时间: <input type="text" name="startTime" id="startTime" class="input-sm">
|
||||
至 <input type="text" id="endTime" name="endTime" class="input-sm">
|
||||
</label>
|
||||
<label class="source">
|
||||
宝箱类型: <select name="boxType" id="boxType" class="input-sm">
|
||||
<option value="0">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="source">
|
||||
查询凭据:<select name="source" id="source" class="input-sm">
|
||||
<option value="1">平台号</option>
|
||||
<option value="2">偏差范围</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="msNo">
|
||||
平台号:<input type="text" placeholder="请输入草莓号" id="msNo" class="input-sm">
|
||||
</label>
|
||||
<label class="deviation">
|
||||
偏差值: <input type="text" id="minDis" class="input-m"> - <input type="text" id="maxDis"
|
||||
class="input-m">
|
||||
</label>
|
||||
<button id="btnSearch" class="btn btn-sm btn-primary">查询</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div class="box box-primary">
|
||||
<div class="box-body">
|
||||
<section class="content-header">
|
||||
<h1 id="itemTitle"></h1>
|
||||
</section>
|
||||
<section class="content">
|
||||
<div id="table"></div>
|
||||
<div id="toolbar">
|
||||
<label class="source">
|
||||
选择时间: <input type="text"
|
||||
name="startTime"
|
||||
id="startTime"
|
||||
class="input-sm">
|
||||
至 <input type="text"
|
||||
id="endTime"
|
||||
name="endTime"
|
||||
class="input-sm">
|
||||
</label>
|
||||
<label class="source">
|
||||
宝箱类型: <select name="boxType"
|
||||
id="boxType"
|
||||
class="input-sm">
|
||||
<option value="0">全部</option>
|
||||
<option value="1">幸运许愿池</option>
|
||||
<option value="2">梦幻许愿池</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="source">
|
||||
查询凭据:<select name="source"
|
||||
id="source"
|
||||
class="input-sm">
|
||||
<option value="1">平台号</option>
|
||||
<option value="2">偏差范围</option>
|
||||
</select>
|
||||
</label>
|
||||
<label class="msNo">
|
||||
平台号:<input type="text"
|
||||
placeholder="请输入草莓号"
|
||||
id="msNo"
|
||||
class="input-sm">
|
||||
</label>
|
||||
<label class="deviation">
|
||||
偏差值: <input type="text"
|
||||
id="minDis"
|
||||
class="input-m"> - <input type="text"
|
||||
id="maxDis"
|
||||
class="input-m">
|
||||
</label>
|
||||
<button id="btnSearch"
|
||||
class="btn btn-sm btn-primary">查询</button>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||
|
||||
export default {
|
||||
name: "PrizeStatisAdminView",
|
||||
setup() {
|
||||
return {};
|
||||
},
|
||||
created() {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData() {
|
||||
$(function () {
|
||||
//searchHistory();
|
||||
var whiteList = {};
|
||||
requestWhiteList(searchHistory());
|
||||
function searchHistory() {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPurchaseMoney', title: '历史抽奖充值总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalDrawMoney', title: '历史抽奖总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '历史获奖平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '历史获奖实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'deviation', title: '偏差值', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
if (val > 0) {
|
||||
return '<span style="color:red">+' + val + '</span>';
|
||||
} else {
|
||||
return '<span style="color:green">' + val + '</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'useNum', title: '历史白名单次数', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'whiteStatus', title: '白名单状态', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondUseNum',
|
||||
title: '梦幻白名单次数',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useDiamondNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondWhiteStatus',
|
||||
title: '梦幻白名单状态',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'tmp',
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
width: '10%',
|
||||
valign: 'middle',
|
||||
formatter: function (val, row, index) {
|
||||
var btnStr = "";
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del normal-box-del' data-id=" + uid + ">移除普通白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set normal-box-set' data-id=" + uid + ">设置普通白名单</button>";
|
||||
}
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del diamond-box-del' data-id=" + uid + ">移除梦幻白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set diamond-box-set' data-id=" + uid + ">设置梦幻白名单</button>";
|
||||
}
|
||||
return btnStr;
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams(params) { //设置查询参数
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
msNo: $('#msNo').val(),
|
||||
boxType: $("#boxType").val(),
|
||||
minDis: $('#minDis').val(),
|
||||
maxDis: $('#maxDis').val(),
|
||||
source: $('#source').val(),
|
||||
startTime: $("#startTime").val(),
|
||||
endTime: $("#endTime").val()
|
||||
};
|
||||
console.log(param);
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'uid',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/statis/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
})
|
||||
name: "PrizeStatisAdminView",
|
||||
setup () {
|
||||
return {};
|
||||
},
|
||||
created () {
|
||||
this.$nextTick(function () {
|
||||
this.initData();
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
initData () {
|
||||
$(function () {
|
||||
//searchHistory();
|
||||
var whiteList = {};
|
||||
requestWhiteList(searchHistory());
|
||||
function searchHistory () {
|
||||
$('#table').bootstrapTable('destroy');
|
||||
$('#table').bootstrapTable({
|
||||
columns: [
|
||||
{ field: 'uid', title: 'uid', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'erbanNo', title: '平台号', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'nick', title: '昵称', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'partition', title: '分区', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPurchaseMoney', title: '历史抽奖充值总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalDrawMoney', title: '历史抽奖总额', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalPlatformValue', title: '历史获奖平台价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{ field: 'totalActualValue', title: '历史获奖实际价值', align: 'center', valign: 'middle', width: '10%' },
|
||||
{
|
||||
field: 'deviation', title: '偏差值', align: 'center', valign: 'middle', width: '10%', formatter: function (val, row, index) {
|
||||
if (val > 0) {
|
||||
return '<span style="color:red">+' + val + '</span>';
|
||||
} else {
|
||||
return '<span style="color:green">' + val + '</span>';
|
||||
}
|
||||
}
|
||||
|
||||
$('#source').on('change', function () {
|
||||
var source = parseInt($(this).val());
|
||||
if (source == 1) {
|
||||
$('.msNo').show();
|
||||
$('.deviation').hide();
|
||||
} else {
|
||||
$('.msNo').hide();
|
||||
$('.deviation').show();
|
||||
}
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 2);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 2);
|
||||
});
|
||||
$('#btnSearch').on('click', function () {
|
||||
var source = $('#source').val();
|
||||
var msNo = $('#msNo').val();
|
||||
var minDis = $('#minDis').val();
|
||||
var maxDis = $('#maxDis').val();
|
||||
if (source == 1 && msNo == '') {
|
||||
$("#tipMsg").text("请输入平台号");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
} else if (source == 2 && (minDis == '' || maxDis == '')) {
|
||||
$("#tipMsg").text("请输入偏差值");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
requestWhiteList(searchHistory());
|
||||
});
|
||||
|
||||
function editWhiteList(uid, availableNum, boxType) {
|
||||
$.post("/admin/prizeWhiteUser/save", { uid: uid, availableNum: availableNum, boxType: boxType }, function (res) {
|
||||
if (res.code == 200) {
|
||||
if (availableNum > 0) {
|
||||
$("#tipMsg").text("设置成功");
|
||||
} else {
|
||||
$("#tipMsg").text("移除成功");
|
||||
}
|
||||
$("#tipModal").modal('show');
|
||||
|
||||
requestWhiteList(function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
})
|
||||
} else {
|
||||
$("#tipMsg").text("设置失败");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'useNum', title: '历史白名单次数', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
function requestWhiteList(callback) {
|
||||
$.ajax({
|
||||
url: '/admin/prizeWhiteUser/list',
|
||||
success: function (res) {
|
||||
console.log(res);
|
||||
if (res.code == 200) {
|
||||
whiteList = res.data;
|
||||
typeof callback === 'function' && callback();
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'whiteStatus', title: '白名单状态', align: 'center', valign: 'middle', width: '5%', formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
|
||||
// 初始化时间选择器
|
||||
$('#startTime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
})
|
||||
$("#endTime").datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
})
|
||||
},
|
||||
{
|
||||
field: 'diamondUseNum',
|
||||
title: '梦幻白名单次数',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid]) {
|
||||
return whiteList[uid].useDiamondNum;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'diamondWhiteStatus',
|
||||
title: '梦幻白名单状态',
|
||||
align: 'center',
|
||||
valign: 'middle',
|
||||
width: '5%',
|
||||
formatter: function (val, row, index) {
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
return '<span style="color:red">待抽奖</span>';
|
||||
} else {
|
||||
return '<span style="color:green">未设置</span>';
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
field: 'tmp',
|
||||
title: '操作',
|
||||
align: 'center',
|
||||
width: '10%',
|
||||
valign: 'middle',
|
||||
formatter: function (val, row, index) {
|
||||
var btnStr = "";
|
||||
var uid = row.uid;
|
||||
if (whiteList[uid] && whiteList[uid].availableNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del normal-box-del' data-id=" + uid + ">移除普通白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set normal-box-set' data-id=" + uid + ">设置普通白名单</button>";
|
||||
}
|
||||
if (whiteList[uid] && whiteList[uid].availableDiamondNum > 0) {
|
||||
btnStr += "<button class='btn btn-sm btn-warning opt-del diamond-box-del' data-id=" + uid + ">移除梦幻白名单</button>";
|
||||
} else {
|
||||
btnStr += "<button class='btn btn-sm btn-success opt-set diamond-box-set' data-id=" + uid + ">设置梦幻白名单</button>";
|
||||
}
|
||||
return btnStr;
|
||||
}
|
||||
}
|
||||
],
|
||||
cache: false,
|
||||
striped: true,
|
||||
showRefresh: false,
|
||||
pageSize: 10,
|
||||
pagination: true,
|
||||
pageList: [10, 20, 30, 50],
|
||||
sidePagination: "server", //表示服务端请求
|
||||
//设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder
|
||||
//设置为limit可以获取limit, offset, search, sort, order
|
||||
queryParamsType: "undefined",
|
||||
queryParams: function queryParams (params) { //设置查询参数
|
||||
var param = {
|
||||
pageSize: params.pageSize,
|
||||
pageNumber: params.pageNumber,
|
||||
msNo: $('#msNo').val(),
|
||||
boxType: $("#boxType").val(),
|
||||
minDis: $('#minDis').val(),
|
||||
maxDis: $('#maxDis').val(),
|
||||
source: $('#source').val(),
|
||||
startTime: $("#startTime").val(),
|
||||
endTime: $("#endTime").val()
|
||||
};
|
||||
console.log(param);
|
||||
return param;
|
||||
},
|
||||
uniqueId: 'uid',
|
||||
toolbar: '#toolbar',
|
||||
url: '/admin/box/record/statis/list',
|
||||
onLoadSuccess: function () { //加载成功时执行
|
||||
console.log("load success");
|
||||
},
|
||||
onLoadError: function () { //加载失败时执行
|
||||
console.log("load fail");
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
$('#source').on('change', function () {
|
||||
var source = parseInt($(this).val());
|
||||
if (source == 1) {
|
||||
$('.msNo').show();
|
||||
$('.deviation').hide();
|
||||
} else {
|
||||
$('.msNo').hide();
|
||||
$('.deviation').show();
|
||||
}
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-set', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 1, 2);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.normal-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 1);
|
||||
});
|
||||
|
||||
$('#table').on('click', '.diamond-box-del', function () {
|
||||
var uid = $(this).data('id');
|
||||
editWhiteList(uid, 0, 2);
|
||||
});
|
||||
$('#btnSearch').on('click', function () {
|
||||
var source = $('#source').val();
|
||||
var msNo = $('#msNo').val();
|
||||
var minDis = $('#minDis').val();
|
||||
var maxDis = $('#maxDis').val();
|
||||
if (source == 1 && msNo == '') {
|
||||
$("#tipMsg").text("请输入平台号");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
} else if (source == 2 && (minDis == '' || maxDis == '')) {
|
||||
$("#tipMsg").text("请输入偏差值");
|
||||
$("#tipModal").modal('show');
|
||||
return;
|
||||
}
|
||||
requestWhiteList(searchHistory());
|
||||
});
|
||||
|
||||
function editWhiteList (uid, availableNum, boxType) {
|
||||
$.post("/admin/prizeWhiteUser/save", { uid: uid, availableNum: availableNum, boxType: boxType }, function (res) {
|
||||
if (res.code == 200) {
|
||||
if (availableNum > 0) {
|
||||
$("#tipMsg").text("设置成功");
|
||||
} else {
|
||||
$("#tipMsg").text("移除成功");
|
||||
}
|
||||
$("#tipModal").modal('show');
|
||||
|
||||
requestWhiteList(function () {
|
||||
TableHelper.doRefresh('#table');
|
||||
})
|
||||
} else {
|
||||
$("#tipMsg").text("设置失败");
|
||||
$("#tipModal").modal('show');
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function requestWhiteList (callback) {
|
||||
$.ajax({
|
||||
url: '/admin/prizeWhiteUser/list',
|
||||
success: function (res) {
|
||||
console.log(res);
|
||||
if (res.code == 200) {
|
||||
whiteList = res.data;
|
||||
typeof callback === 'function' && callback();
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 初始化时间选择器
|
||||
$('#startTime').datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
})
|
||||
$("#endTime").datetimepicker({
|
||||
format: 'yyyy-mm-dd hh:ii:00',
|
||||
autoclose: true
|
||||
});
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.deviation {
|
||||
display: none;
|
||||
display: none;
|
||||
}
|
||||
|
||||
#toolbar label {
|
||||
margin-right: 6px;
|
||||
}</style>
|
||||
margin-right: 6px;
|
||||
}
|
||||
</style>
|
Reference in New Issue
Block a user