mirror of
https://gitee.com/zoujingli/ThinkAdmin.git
synced 2025-04-25 19:06:38 +08:00
修改会员升级
This commit is contained in:
parent
eb4ced8645
commit
e238645b94
@ -80,6 +80,11 @@ class Upgrade extends Controller
|
|||||||
$vo['teams_direct_status'] = isset($vo['teams_direct_status']) ? 1 : 0;
|
$vo['teams_direct_status'] = isset($vo['teams_direct_status']) ? 1 : 0;
|
||||||
$vo['teams_indirect_status'] = isset($vo['teams_indirect_status']) ? 1 : 0;
|
$vo['teams_indirect_status'] = isset($vo['teams_indirect_status']) ? 1 : 0;
|
||||||
$vo['order_amount_status'] = isset($vo['order_amount_status']) ? 1 : 0;
|
$vo['order_amount_status'] = isset($vo['order_amount_status']) ? 1 : 0;
|
||||||
|
// 默认等级去除条件
|
||||||
|
if (empty($vo['number'])) {
|
||||||
|
$vo['rebate_rule'] = [];
|
||||||
|
foreach ($vo as $k => &$v) if (is_numeric(stripos($k, '_status'))) $v = 0;
|
||||||
|
}
|
||||||
// 根据数量判断状态
|
// 根据数量判断状态
|
||||||
$vo['teams_users_status'] = intval($vo['teams_users_status'] && $vo['teams_users_number'] > 0);
|
$vo['teams_users_status'] = intval($vo['teams_users_status'] && $vo['teams_users_number'] > 0);
|
||||||
$vo['teams_direct_status'] = intval($vo['teams_direct_status'] && $vo['teams_direct_number'] > 0);
|
$vo['teams_direct_status'] = intval($vo['teams_direct_status'] && $vo['teams_direct_number'] > 0);
|
||||||
@ -108,7 +113,7 @@ class Upgrade extends Controller
|
|||||||
$order = 'number asc,utime desc';
|
$order = 'number asc,utime desc';
|
||||||
}
|
}
|
||||||
foreach (BaseUserUpgrade::mk()->order($order)->select() as $number => $upgrade) {
|
foreach (BaseUserUpgrade::mk()->order($order)->select() as $number => $upgrade) {
|
||||||
$upgrade->save(['number' => $number + 1]);
|
$upgrade->save(['number' => $number]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,14 +3,16 @@
|
|||||||
top: 0;
|
top: 0;
|
||||||
left: -10px;
|
left: -10px;
|
||||||
right: -10px;
|
right: -10px;
|
||||||
bottom: 2px;
|
bottom: 3px;
|
||||||
color: #fff;
|
color: #FFF;
|
||||||
|
display: flex;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
font-size: 24px;
|
font-size: 18px;
|
||||||
text-align: center;
|
border-radius: 3px;
|
||||||
line-height: 190px;
|
align-items: center;
|
||||||
border-radius: 5px;
|
justify-content: center;
|
||||||
background: rgba(0, 0, 0, 0.6);
|
background: rgba(0, 0, 0, 0.4);
|
||||||
|
text-shadow: #666 1px 1px 3px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
@ -21,9 +23,9 @@
|
|||||||
<legend><span class="layui-badge layui-bg-cyan">用户等级</span></legend>
|
<legend><span class="layui-badge layui-bg-cyan">用户等级</span></legend>
|
||||||
<div class="layui-form-item layui-row layui-col-space15">
|
<div class="layui-form-item layui-row layui-col-space15">
|
||||||
<div class="layui-col-xs3 block relative">
|
<div class="layui-col-xs3 block relative">
|
||||||
<b class="color-green label-required-prev">等级序号</b><span class="margin-left-5 color-desc">Serial</span>
|
<span class="help-label label-required-prev"><b>等级序号</b>Serial</span>
|
||||||
<select class="layui-select" name="number" lay-filter="number">
|
<select class="layui-select" name="number" lay-filter="number">
|
||||||
{for start="1" end="$max" name="i"}{if isset($vo.number) and $vo.number eq $i}
|
{for start="0" end="$max" name="i"}{if isset($vo.number) and $vo.number eq $i}
|
||||||
<option selected value="{$i}">当前 VIP {$vo.number} 等级</option>
|
<option selected value="{$i}">当前 VIP {$vo.number} 等级</option>
|
||||||
{else}
|
{else}
|
||||||
<option value="{$i}">设置 VIP {$i} 等级</option>
|
<option value="{$i}">设置 VIP {$i} 等级</option>
|
||||||
@ -31,7 +33,7 @@
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label class="layui-col-xs9 block relative">
|
<label class="layui-col-xs9 block relative">
|
||||||
<b class="color-green label-required-prev">等级名称</b><span class="margin-left-5 color-desc">Name</span>
|
<span class="help-label label-required-prev"><b>等级名称</b>Name</span>
|
||||||
<input class="layui-input" name="name" placeholder="请输入等级名称" required value="{$vo.name|default=''}">
|
<input class="layui-input" name="name" placeholder="请输入等级名称" required value="{$vo.name|default=''}">
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
@ -135,12 +137,13 @@
|
|||||||
|
|
||||||
<fieldset class="layui-form-item">
|
<fieldset class="layui-form-item">
|
||||||
<legend><span class="layui-badge layui-bg-cyan">奖利规则</span></legend>
|
<legend><span class="layui-badge layui-bg-cyan">奖利规则</span></legend>
|
||||||
<div class="layui-form-item notselect">
|
<div class="layui-form-item notselect relative">
|
||||||
{foreach $prizes as $prize}{if isset($vo.rebate_rule) && is_array($vo.rebate_rule) && in_array($prize.code, $vo.rebate_rule)}
|
{foreach $prizes as $prize}{if isset($vo.rebate_rule) && is_array($vo.rebate_rule) && in_array($prize.code, $vo.rebate_rule)}
|
||||||
<label class="think-checkbox"><input checked lay-ignore name="rebate_rule[]" type="checkbox" value="{$prize.code}"> {$prize.name}</label>
|
<label class="think-checkbox"><input checked lay-ignore name="rebate_rule[]" type="checkbox" value="{$prize.code}"> {$prize.name}</label>
|
||||||
{else}
|
{else}
|
||||||
<label class="think-checkbox"><input lay-ignore name="rebate_rule[]" type="checkbox" value="{$prize.code}"> {$prize.name}</label>
|
<label class="think-checkbox"><input lay-ignore name="rebate_rule[]" type="checkbox" value="{$prize.code}"> {$prize.name}</label>
|
||||||
{/if}{/foreach}
|
{/if}{/foreach}
|
||||||
|
<div data-level-zero class="layui-hide notselect">默认等级,无需配置升级规则</div>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
||||||
@ -162,14 +165,14 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
$(function () {
|
||||||
(function ($ele) {
|
var $elem = $('[data-level-zero]');
|
||||||
layui.form.on('select(number)', apply);
|
layui.form.on('select(number)', apply);
|
||||||
apply({value: parseInt("{$vo.number|default='0'}")});
|
apply({value: parseInt("{$vo.number|default='0'}")});
|
||||||
|
|
||||||
function apply(data) {
|
function apply(data) {
|
||||||
data.value > 0 ? $ele.addClass('layui-hide') : $ele.removeClass('layui-hide');
|
data.value > 0 ? $elem.addClass('layui-hide') : $elem.removeClass('layui-hide');
|
||||||
}
|
}
|
||||||
})($('[data-level-zero]'));
|
});
|
||||||
</script>
|
</script>
|
||||||
</form>
|
</form>
|
||||||
|
@ -6,11 +6,10 @@
|
|||||||
<!--{/if}-->
|
<!--{/if}-->
|
||||||
|
|
||||||
<!--{if auth("sync")}-->
|
<!--{if auth("sync")}-->
|
||||||
<button class='layui-btn layui-btn-sm layui-btn-primary' data-queue="{:url('sync')}">添加用户</button>
|
<button class='layui-btn layui-btn-sm layui-btn-primary' data-queue="{:url('sync')}">同步用户</button>
|
||||||
<!--{/if}-->
|
<!--{/if}-->
|
||||||
{/block}
|
{/block}
|
||||||
|
|
||||||
|
|
||||||
{block name="content"}
|
{block name="content"}
|
||||||
<div class="think-box-shadow">
|
<div class="think-box-shadow">
|
||||||
<table id="UpgradeTable" data-url="{:sysuri()}" data-target-search="form.form-search"></table>
|
<table id="UpgradeTable" data-url="{:sysuri()}" data-target-search="form.form-search"></table>
|
||||||
@ -24,10 +23,14 @@
|
|||||||
$('#UpgradeTable').layTable({
|
$('#UpgradeTable').layTable({
|
||||||
even: true, height: 'full',
|
even: true, height: 'full',
|
||||||
cols: [[
|
cols: [[
|
||||||
{field: 'number', title: '等级名称', align: 'left', minWidth: 140, templet: '<div>[ VIP{{d.number}} ] {{d.name}}</div>'},
|
{
|
||||||
|
field: 'number', title: '等级名称', align: 'left', minWidth: 140, templet: function (d) {
|
||||||
|
return laytpl('<div>[ <b class="color-blue">VIP{{d.number}}</b> ] {{d.name}}</div>').render(d);
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
field: 'upgrade_team', title: '团队计数', align: 'center', minWidth: 80, templet: function (d) {
|
field: 'upgrade_team', title: '团队计数', align: 'center', minWidth: 80, templet: function (d) {
|
||||||
if (!d.upgrade_team || d.upgrade_team < 1) return '';
|
if (!d.upgrade_team || d.upgrade_team < 1) return '-';
|
||||||
return '<b class="layui-icon layui-icon-ok-circle color-green"></b>';
|
return '<b class="layui-icon layui-icon-ok-circle color-green"></b>';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -39,7 +42,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
field: 'goods_vip_status', title: '入会礼包', align: 'center', minWidth: 80, templet: function (d) {
|
field: 'goods_vip_status', title: '入会礼包', align: 'center', minWidth: 80, templet: function (d) {
|
||||||
if (!d.goods_vip_status || d.goods_vip_status < 1) return '';
|
if (!d.goods_vip_status || d.goods_vip_status < 1) return '-';
|
||||||
return '<b class="layui-icon layui-icon-ok-circle color-green"></b>';
|
return '<b class="layui-icon layui-icon-ok-circle color-green"></b>';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -68,7 +71,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
field: 'rebate_rule', title: '奖利规则', align: 'center', minWidth: 140, templet: function (d) {
|
field: 'rebate_rule', title: '奖利规则', align: 'center', minWidth: 100, templet: function (d) {
|
||||||
return (d.html = ''), (d.rebate_rule || []).forEach(function (rule) {
|
return (d.html = ''), (d.rebate_rule || []).forEach(function (rule) {
|
||||||
d.html += laytpl('<span class="layui-badge layui-bg-gray">{{d.v}}</span>').render({v: rule});
|
d.html += laytpl('<span class="layui-badge layui-bg-gray">{{d.v}}</span>').render({v: rule});
|
||||||
}), d.html || '-';
|
}), d.html || '-';
|
||||||
|
Loading…
x
Reference in New Issue
Block a user