From ae88bca64d28e91341e00913cc2d816f889c5ec8 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Fri, 25 Jul 2025 11:18:59 +0800 Subject: [PATCH] feat(mall): 为幸福社交圈分类添加背景图片功能 --- src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html | 180 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 143 insertions(+), 37 deletions(-) diff --git a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html index 0c1aade..458e70f 100644 --- a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html +++ b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html @@ -1,4 +1,4 @@ -<div class="layui-fluid layui-anim febs-anim" id="febs-member-list" lay-title="会员列表"> +<div class="layui-fluid layui-anim febs-anim" id="febs-member-list" lay-title="用户列表"> <div class="layui-row febs-container"> <div class="layui-col-md12"> <div class="layui-card"> @@ -8,15 +8,43 @@ <div class="layui-col-md10"> <div class="layui-form-item"> <div class="layui-inline"> - <label class="layui-form-label layui-form-label-sm">用户昵称</label> + <label class="layui-form-label layui-form-label-sm">用户名</label> <div class="layui-input-inline"> - <input type="text" placeholder="用户昵称" name="name" autocomplete="off" class="layui-input"> + <input type="text" placeholder="用户名" name="name" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline"> - <label class="layui-form-label layui-form-label-sm">手机号码</label> + <label class="layui-form-label layui-form-label-sm">联系方式</label> <div class="layui-input-inline"> - <input type="text" placeholder="手机号码" name="phone" autocomplete="off" class="layui-input"> + <input type="text" placeholder="联系方式" name="phone" 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="director" class="director-type"> + <option value="">请选择</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="storeMaster" class="storeMaster-type"> + <option value="">请选择</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="accountStatus"> + <option value="">请选择</option> + <option value="1">启用</option> + <option value="2">停用</option> + </select> </div> </div> <div class="layui-inline"> @@ -61,11 +89,11 @@ <a lay-event="edit" shiro:hasPermission="user:update"><i class="layui-icon febs-edit-area febs-blue"></i></a> </script> -<script type="text/html" id="switchStatus"> +<script type="text/html" id="accountStatusSwitch"> {{# if(d.accountStatus === 1) { }} - <input type="checkbox" value={{d.id}} lay-text="正常|禁用" checked lay-skin="switch" lay-filter="switchStatus"> + <input type="checkbox" value={{d.id}} lay-text="启用|停用" checked lay-skin="switch" lay-filter="accountStatusSwitch"> {{# } else { }} - <input type="checkbox" value={{d.id}} lay-text="正常|禁用" lay-skin="switch" lay-filter="switchStatus"> + <input type="checkbox" value={{d.id}} lay-text="启用|停用" lay-skin="switch" lay-filter="accountStatusSwitch"> {{# } }} </script> <script type="text/html" id="switchStoreMaster"> @@ -99,6 +127,14 @@ {{# } }} </script> +<script type="text/html" id="checkLeaderSwitch"> + {{# if(d.checkLeader === 1) { }} + <input type="checkbox" value={{d.id}} lay-text="是|否" checked lay-skin="switch" lay-filter="checkLeaderSwitch"> + {{# } else { }} + <input type="checkbox" value={{d.id}} lay-text="是|否" lay-skin="switch" lay-filter="checkLeaderSwitch"> + {{# } }} +</script> + <script type="text/html" id="isDoctorSwitch"> {{# if(d.doctorState === 1) { }} <input type="checkbox" value={{d.id}} lay-text="是|否" checked lay-skin="switch" lay-filter="isDoctorSwitch"> @@ -111,11 +147,15 @@ background-color: #5FB878 !important; } </style> -<script type="text/html" id="toolbar"> +<script type="text/html" id="memberToolbar"> <div class="layui-btn-container"> - <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="updateReferer">修改推荐人</button> - <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="updateVipLevel">修改会员等级</button> - <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="addCoupon">优惠券派送</button> +<!-- <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="updateReferer">修改推荐人</button>--> + <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" shiro:hasPermission="updateMemberLevel:update" lay-event="updateMemberLevel">修改会员等级</button> + <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" shiro:hasPermission="updateSaleLevel:update" lay-event="updateSaleLevel">修改分销等级</button> + <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" shiro:hasPermission="wallet:update" lay-event="balance">余额修改</button> + <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" shiro:hasPermission="wallet:update" lay-event="prizeScore">积分修改</button> + <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" shiro:hasPermission="wallet:update" lay-event="commission">佣金修改</button> +<!-- <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="addCoupon">优惠券派送</button>--> </div> </script> @@ -144,9 +184,33 @@ elem: '#febs-member-benefits-list-birthday-start', format:'MM-dd' }); + //(下拉框) + $.get(ctx + 'admin/level/levelAll', function (res) { + var data = res.data; + for (let k in data) + { + $(".director-type").append("<option value='" + data[k].code + "'>" + data[k].name + "</option>"); + } + layui.use('form', function () { + var form = layui.form; + form.render(); + }); + }); + //(下拉框) + $.get(ctx + 'admin/level/saleLevelAll', function (res) { + var data = res.data; + for (let k in data) + { + $(".storeMaster-type").append("<option value='" + data[k].code + "'>" + data[k].name + "</option>"); + } + layui.use('form', function () { + var form = layui.form; + form.render(); + }); + }); // 表格初始化 - initTable(); + initMemberListTable(); // 初始化表格操作栏各个按钮功能 table.on('tool(userTable)', function (obj) { @@ -223,13 +287,13 @@ } function closeAccount(id) { febs.get(ctx + 'admin/mallMember/closeAccount/' + id, null, function () { - febs.alert.success('禁用成功'); + febs.alert.success('操作成功'); $query.click(); }); } function openAccount(id) { febs.get(ctx + 'admin/mallMember/openAccount/' + id, null, function () { - febs.alert.success('开启成功'); + febs.alert.success('操作成功'); $query.click(); }); } @@ -259,6 +323,14 @@ checkOrder(data.value); } else { checkOrder(data.value); + } + }) + + form.on('switch(checkLeaderSwitch)', function (data) { + if (data.elem.checked) { + checkLeader(data.value); + } else { + checkLeader(data.value); } }) @@ -292,6 +364,13 @@ }); } + function checkLeader(id) { + febs.get(ctx + 'admin/mallMember/checkLeader/' + id, null, function () { + febs.alert.success('操作成功'); + $query.click(); + }); + } + function upSale(id) { febs.get(ctx + 'admin/mallMember/upSale/' + id, null, function () { febs.alert.success('操作成功'); @@ -318,21 +397,32 @@ tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject}); }); - function initTable() { + function initMemberListTable() { tableIns = febs.table.init({ elem: $view.find('table'), id: 'userTable', url: ctx + 'admin/mallMember/getMallMemberList', - toolbar:"#toolbar", + toolbar:"#memberToolbar", defaultToolbar:[], cols: [[ {type: 'checkbox'}, {type: 'numbers', title: '', width: 80}, - {title: '操作', toolbar: '#memberOption', minWidth: 200, align: 'center'}, - {field: 'phone', title: '手机号码', minWidth: 150,align:'left'}, - {field: 'name', title: '用户昵称', minWidth: 100,align:'left'}, - {field: 'inviteId', title: '邀请码', minWidth: 100,align:'left'}, - {field: 'checkOrder', title: '核销员', templet: '#checkOrderSwitch', minWidth: 100,align:'center'}, + {field: 'checkOrder', title: '状态', templet: '#accountStatusSwitch', minWidth: 100,align:'center'}, + {field: 'checkOrder', title: '活动核销', templet: '#checkOrderSwitch', minWidth: 100,align:'center'}, + {field: 'checkLeader', title: '自提核销', templet: '#checkLeaderSwitch', minWidth: 100,align:'center'}, + {field: 'isSalesman', title: '推销员设置', templet: '#isSalesmanSwitch', minWidth: 100,align:'center'}, + // {title: '操作', toolbar: '#memberOption', minWidth: 200, align: 'center'}, + {field: 'name', title: '用户名', minWidth: 100,align:'center'}, + {field: 'realName', title: '真实姓名', minWidth: 100,align:'center'}, + {field: 'phone', title: '联系方式', minWidth: 150,align:'center'}, + {field: 'balance', title: '余额', minWidth: 150,align:'center'}, + {field: 'score', title: '会员经验', minWidth: 150,align:'center'}, + {field: 'prizeScore', title: '积分', minWidth: 150,align:'center'}, + {field: 'commission', title: '可用佣金', minWidth: 150,align:'center'}, + {field: 'totalScore', title: '总佣金', minWidth: 150,align:'center'}, + {field: 'directorName', title: '会员等级', minWidth: 150,align:'center'}, + {field: 'storeMasterName', title: '分销等级', minWidth: 150,align:'center'}, + {field: 'inviteId', title: '邀请码', minWidth: 100,align:'center'}, {field: 'createdTime', title: '注册时间', minWidth: 180,align:'center'}, ]] }); @@ -378,16 +468,29 @@ }); } - if (layEvent === 'updateVipLevel') { + if (layEvent === 'updateSaleLevel') { var checkData = table.checkStatus('userTable').data; if (checkData.length > 1) { febs.alert.warn('每次只能修改一个用户'); return; } - // var idList = []; - // for (var i = 0; i < checkData.length; i++) { - // idList.push(checkData[i].id); - // } + febs.modal.open('设置分销等级', 'modules/mallMember/saleLevelSetting/' + checkData[0].id, { + btn: ['确认', '取消'], + yes: function (index, layero) { + $('#sale-level-set').find('#submit').trigger('click'); + }, + btn2: function () { + layer.closeAll(); + } + }); + } + + if (layEvent === 'updateMemberLevel') { + var checkData = table.checkStatus('userTable').data; + if (checkData.length > 1) { + febs.alert.warn('每次只能修改一个用户'); + return; + } febs.modal.open('设置会员等级', 'modules/mallMember/vipLevelSetting/' + checkData[0].id, { btn: ['确认', '取消'], yes: function (index, layero) { @@ -424,21 +527,21 @@ if (checkData.length > 1) { febs.alert.warn('请选择一个用户'); } - systemPay("修改余额", checkData[0].id, 1); - } - - if (layEvent === 'score') { - if (checkData.length > 1) { - febs.alert.warn('请选择一个用户'); - } - systemPay("修改赠送积分", checkData[0].id, 2); + systemPay("余额", checkData[0].id, 1); } if (layEvent === 'prizeScore') { if (checkData.length > 1) { febs.alert.warn('请选择一个用户'); } - systemPay("修改竞猜积分", checkData[0].id, 3); + systemPay("积分", checkData[0].id, 2); + } + + if (layEvent === 'commission') { + if (checkData.length > 1) { + febs.alert.warn('请选择一个用户'); + } + systemPay("佣金", checkData[0].id, 3); } if (layEvent === 'agentLevel') { @@ -484,10 +587,13 @@ name: $searchForm.find('input[name="name"]').val().trim(), phone: $searchForm.find('input[name="phone"]').val().trim(), checkOrder: $searchForm.find("select[name='checkOrder']").val(), + accountStatus: $searchForm.find("select[name='accountStatus']").val(), + director: $searchForm.find("select[name='director']").val(), + storeMaster: $searchForm.find("select[name='storeMaster']").val(), }; } - form.on('switch(switchStatus)', function (data) { + form.on('switch(accountStatusSwitch)', function (data) { if (data.elem.checked) { openAccount(data.value); } else { -- Gitblit v1.9.1