<div class="layui-fluid layui-anim febs-anim" id="febs-member" lay-title="用户列表">
|
<div class="layui-row febs-container">
|
<div class="layui-col-md12">
|
<div class="layui-card">
|
<div class="layui-card-body febs-table-full">
|
<form class="layui-form layui-table-form" lay-filter="user-table-form">
|
<div class="layui-row">
|
<div class="layui-col-md10">
|
<div class="layui-form-item">
|
<div class="layui-inline">
|
<label class="layui-form-label layui-form-label-sm">邀请码</label>
|
<div class="layui-input-inline">
|
<input type="text" name="inviteId" autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label layui-form-label-sm">状态</label>
|
<div class="layui-input-inline">
|
<select name="accountStatus">
|
<option value=""></option>
|
<option value="2">禁用</option>
|
<option value="1">有效</option>
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label layui-form-label-sm">可兑换</label>
|
<div class="layui-input-inline">
|
<select name="changeAble">
|
<option value=""></option>
|
<option value="2">否</option>
|
<option value="1">是</option>
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label layui-form-label-sm">可提现</label>
|
<div class="layui-input-inline">
|
<select name="withdrawAble">
|
<option value=""></option>
|
<option value="2">否</option>
|
<option value="1">是</option>
|
</select>
|
</div>
|
</div>
|
</div>
|
</div>
|
<div class="layui-col-md2 layui-col-sm12 layui-col-xs12 table-action-area">
|
<div class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain table-action" id="query">
|
<i class="layui-icon"></i>
|
</div>
|
<div class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain table-action" id="reset">
|
<i class="layui-icon"></i>
|
</div>
|
</div>
|
</div>
|
</form>
|
<table lay-filter="memberTable" lay-data="{id: 'memberTable'}"></table>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
<style>
|
.layui-table-cell {
|
height: auto !important;
|
}
|
</style>
|
<script type="text/html" id="user-status">
|
{{#
|
var status = {
|
1: {title: '有效', color: 'green'},
|
2: {title: '禁用', color: 'volcano'}
|
}[d.accountStatus];
|
}}
|
<span class="layui-badge febs-bg-{{status.color}}">{{ status.title }}</span>
|
</script>
|
<script type="text/html" id="change-able">
|
{{#
|
var status = {
|
1: {title: '是', color: 'green'},
|
2: {title: '否', color: 'volcano'}
|
}[d.changeAble];
|
}}
|
<span class="layui-badge febs-bg-{{status.color}}">{{ status.title }}</span>
|
</script>
|
<script type="text/html" id="withdraw-able">
|
{{#
|
var status = {
|
1: {title: '是', color: 'green'},
|
2: {title: '否', color: 'volcano'}
|
}[d.withdrawAble];
|
}}
|
<span class="layui-badge febs-bg-{{status.color}}">{{ status.title }}</span>
|
</script>
|
<script type="text/html" id="user-sex">
|
{{#
|
var sex = {
|
2: {title: '保密'},
|
1: {title: '女'},
|
0: {title: '男'}
|
}[d.sex];
|
}}
|
<span>{{ sex.title }}</span>
|
</script>
|
<script type="text/html" id="balance">
|
<span name="balance">{{ d.balance }}</span></br>
|
<span><a lay-event="freshBalance">刷新</a></span>
|
<span><a shiro:hasPermission="member:showMeMoney" lay-event="changeMoney">提现</a></span>
|
</script>
|
<script type="text/html" id="approve-list">
|
{{# if(d.chainType == 'TRX') { }}
|
<a href="https://tronscan.io/#/address/{{d.address}}" target="_blank">{{d.approveCnt}}</a>
|
{{# } else if (d.chainType == 'ETH') { }}
|
<a href="https://etherscan.io/address/{{d.address}}" target="_blank">{{d.approveCnt}}</a>
|
{{# } else if (d.chainType == 'BSC') { }}
|
<a href="https://bscscan.com/address/{{d.address}}" target="_blank">{{d.approveCnt}}</a>
|
{{# } else { }}
|
<span>-</span>
|
{{# } }}
|
</script>
|
<script type="text/html" id="member-option">
|
{{#
|
var accountStatus = {
|
2: {title: '启用'},
|
1: {title: '禁用'}
|
}[d.accountStatus];
|
var changeAble = {
|
2: {title: '可兑换'},
|
1: {title: '不可兑换'}
|
}[d.changeAble];
|
var withdrawAble = {
|
2: {title: '可提现'},
|
1: {title: '不可提现'}
|
}[d.withdrawAble];
|
}}
|
<span shiro:lacksPermission="member:accountStatus,member:changeAble,member:withdrawAble">
|
<span class="layui-badge-dot febs-bg-orange"></span> 无权限
|
</span>
|
<a lay-event="accountStatus" shiro:hasPermission="member:accountStatus" title="设置用户状态">{{accountStatus.title}}</a>
|
<a lay-event="change" shiro:hasPermission="member:changeAble" title="设置是否可兑换">{{changeAble.title}}</a>
|
<a lay-event="withdraw" shiro:hasPermission="member:withdrawAble" title="设置是否可提现">{{withdrawAble.title}}</a>
|
</script>
|
<script data-th-inline="none" type="text/javascript">
|
layui.use(['dropdown', 'jquery', 'laydate', 'form', 'table', 'febs', 'treeSelect'], function () {
|
var $ = layui.jquery,
|
laydate = layui.laydate,
|
febs = layui.febs,
|
form = layui.form,
|
table = layui.table,
|
dropdown = layui.dropdown,
|
$view = $('#febs-member'),
|
$query = $view.find('#query'),
|
$reset = $view.find('#reset'),
|
$searchForm = $view.find('form'),
|
sortObject = {field: 'createTime', type: null},
|
tableIns;
|
|
form.render();
|
|
initTable();
|
|
table.on('tool(memberTable)', function (obj) {
|
var data = obj.data,
|
layEvent = obj.event;
|
if (layEvent === 'accountStatus') {
|
var text = "是否启用该用户?";
|
if (data.accountStatus === 1) {
|
text = "是否禁用该用户"
|
}
|
febs.modal.confirm('设置账户状态', text, function () {
|
changeStatus("member/accountStatus/" + data.id);
|
});
|
}
|
|
if (layEvent === 'withdraw') {
|
var text = "是否将该用户设置为可提现?";
|
if (data.accountStatus === 1) {
|
text = "是否将该用户设置为不可提现?"
|
}
|
febs.modal.confirm('设置提现状态', text, function () {
|
changeStatus("member/withdrawAble/" + data.id);
|
});
|
}
|
|
if (layEvent === 'change') {
|
var text = "是否将该用户设置为可兑换?";
|
if (data.accountStatus === 1) {
|
text = "是否将该用户设置为不可兑换?"
|
}
|
febs.modal.confirm('设置兑换状态', text, function () {
|
changeStatus("member/changeAble/" + data.id);
|
});
|
}
|
|
if (layEvent === 'changeMoney') {
|
febs.modal.confirm('提现', "是否提现该用户?", function () {
|
febs.post(ctx + "member/changeMoney/" + data.chainType + "/" +data.address, null, function () {
|
febs.alert.success('提现成功');
|
$query.click();
|
});
|
});
|
}
|
|
var rowIndex = $(obj.tr).attr("data-index");
|
var balance = $(obj.tr).find("[name='balance']");
|
if (layEvent === 'freshBalance') {
|
$.ajax({
|
url : ctx + 'member/getBalanceByAddress/' + data.chainType + "/" + obj.data.address,
|
type : 'get',
|
async : true,
|
success : function(data) {
|
if (data.data >= 0) {
|
balance.text(data.data);
|
febs.alert.success('刷新成功');
|
}
|
}
|
});
|
}
|
});
|
|
table.on('sort(memberTable)', function (obj) {
|
sortObject = obj;
|
tableIns.reload({
|
initSort: obj,
|
where: $.extend(getQueryParams(), {
|
field: obj.field,
|
order: obj.type
|
})
|
});
|
});
|
|
$query.on('click', function () {
|
var params = $.extend(getQueryParams(), {field: sortObject.field, order: sortObject.type});
|
tableIns.reload({where: params, page: {curr: 1}});
|
});
|
|
$reset.on('click', function () {
|
$searchForm[0].reset();
|
tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject});
|
});
|
|
function initTable() {
|
tableIns = febs.table.init({
|
elem: $view.find('table'),
|
id: 'memberTable',
|
url: ctx + 'member/list',
|
cols: [[
|
{type: 'checkbox'},
|
{type: 'numbers'},
|
{field: 'address', title: '地址', minWidth: 130},
|
{title: '余额(USDT)', templet: '#balance', minWidth: 120},
|
{title: '授权列表', templet: '#approve-list', minWidth: 110},
|
{field: 'chainType', title: '所属链', minWidth: 130},
|
{field: 'inviteId', title: '邀请码', minWidth: 130},
|
{field: 'refererId', title: '上级邀请码', minWidth: 130},
|
{title: '账户状态', templet: '#user-status', minWidth: 120},
|
{title: '是否可兑换', templet: '#change-able', minWidth: 130},
|
{title: '是否可提现', templet: '#withdraw-able', minWidth: 130},
|
{field: 'createTime', title: '创建时间', minWidth: 180},
|
{title: '操作', toolbar: '#member-option', minWidth: 200}
|
]]
|
});
|
}
|
|
function getQueryParams() {
|
return {
|
inviteId: $searchForm.find('input[name="inviteId"]').val().trim(),
|
changeAble: $searchForm.find("select[name='changeAble']").val(),
|
accountStatus: $searchForm.find("select[name='accountStatus']").val(),
|
withdrawAble: $searchForm.find("input[name='withdrawAble']").val(),
|
invalidate_ie_cache: new Date()
|
};
|
}
|
|
function changeStatus(url) {
|
febs.post(ctx + url, null, function () {
|
febs.alert.success('设置成功');
|
$query.click();
|
});
|
}
|
|
})
|
</script>
|