var form, table, laydate, laytpl, repeat_flag = false, //防重复标识 currentDate = new Date(), minDate = "", reg = { required: /[\S]+/, mobile: /^1([38][0-9]|4[579]|5[0-3,5-9]|6[6]|7[0135678]|9[0-9])\d{8}$/ }, layCascader, areaTree = []; layui.use(['form', 'layCascader', 'laydate', 'laytpl'], function () { form = layui.form; laydate = layui.laydate; laytpl = layui.laytpl; layCascader = layui.layCascader; form.render(); currentDate.setDate(currentDate.getDate() - 7); var birthday = $(".birthday").val(); $("input[name=birthday]").attr("value", ns.time_to_date(birthday, "Y-m-d")); //开始时间 laydate.render({ elem: '#start_date', type: 'datetime' }); //结束时间 laydate.render({ elem: '#end_date', type: 'datetime' }); form.verify({ mobile: function (value) { if (value == '') { return; } if (!ns.parse_mobile(value)) { return '请输入正确的手机号码!'; } }, isemail: function (value) { var reg = /^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/; if (value == '') { return; } if (!reg.test(value)) { return '请输入正确的邮箱!'; } }, num: function (value) { var arrMen = value.split("."); var val = 0; if (arrMen.length == 2) { val = arrMen[1]; } if (value == "") { return false; } if (val.length > 2) { return '保留小数点后两位' } } }); var upload = new Upload({ elem: '#headImg' }); form.on('submit(save)', function (data) { data.field.member_level_name = $(".member_level").find("option[value=" + data.field.member_level + "]").text(); if (data.field.status == undefined) { data.field.status = 0; } // 删除图片 if (!data.field.headimg) upload.delete(); if (repeat_flag) return false; repeat_flag = true; $.ajax({ url: ns.url("shop/member/editMember"), data: data.field, dataType: 'JSON', //服务器返回json格式数据 type: 'POST', //HTTP请求类型 success: function (res) { repeat_flag = false; if (res.code == 0) { layer.confirm('编辑成功', { title: '操作提示', btn: ['返回列表', '继续操作'], yes: function(index, layero) { location.hash = ns.hash("shop/member/memberList") layer.close(index); }, btn2: function(index, layero) { listenerHash(); // 刷新页面 layer.close(index); } }); } else { layer.msg(res.message); } } }); }); //根据账户类型获取来源类型 form.on('select(account_type)', function (data) { $.ajax({ type: "POST", url: ns.url("shop/member/getfromtype"), data: {type: data.value}, dataType: 'JSON', success: function (res) { var html = ''; $.each(res, function (k, v) { html += ''; }); $('.from_type').html(html); form.render(); } }); }); form.on('submit(search)', function (data) { table.reload({ page: { curr: 1 }, where: data.field }); return false; }); form.on('submit(savePoint)', function (data) { if (repeat_flag) return false; repeat_flag = true; if (data.field.adjust_num == 0) { layer.msg('调整数值不能为0'); repeat_flag = false; return; } var after_value = point * 1 + data.field.adjust_num * 1; if (after_value < 0) { layer.msg('调整后积分不可以为负数'); repeat_flag = false; return; } if(after_value >= 99999999){ layer.msg('调整后积分整数位不能超出99999999'); repeat_flag = false; return; } $.ajax({ type: "POST", url: ns.url("shop/member/adjustPoint"), data: data.field, dataType: 'JSON', success: function (res) { layer.msg(res.message); if (res.code == 0) { $("#member_point").html(res.data.point); $("#member_point").next().attr('data-num', res.data.point); point = res.data.point; layer.closeAll('page'); table.reload(); } else { repeat_flag = false; } } }); }); form.on('submit(saveBalance)', function (data) { if (repeat_flag) return false; repeat_flag = true; if (data.field.adjust_num == 0) { layer.msg('调整数值不能为0'); repeat_flag = false; return; } var after_value = balance * 1 + data.field.adjust_num * 1; if (after_value < 0) { layer.msg('调整后储值余额不可以为负数'); repeat_flag = false; return; } if(after_value >= 99999999){ layer.msg('调整后储值余额整数位不能超出99999999'); repeat_flag = false; return; } $.ajax({ type: "POST", url: ns.url("shop/member/adjustBalance"), data: data.field, dataType: 'JSON', success: function (res) { repeat_flag = false; if(res.code == 0) { $("#member_balance").html(res.data.balance); $("#member_balance").next().attr('data-num', res.data.balance); balance = res.data.balance; layer.closeAll('page'); table.reload(); }else{ layer.msg(res.message); } } }); }); form.on('submit(saveGrowth)', function (data) { if (repeat_flag) return false; repeat_flag = true; if (data.field.adjust_num == 0) { layer.msg('调整数值不能为0'); repeat_flag = false; return; } var after_value = growth * 1 + data.field.adjust_num * 1; if (after_value < 0) { layer.msg('调整后成长值不可以为负数'); repeat_flag = false; return; } if(after_value >= 99999999){ layer.msg('调整后成长值整数位不能超出99999999'); repeat_flag = false; return; } $.ajax({ type: "POST", url: ns.url("shop/member/adjustGrowth"), data: data.field, dataType: 'JSON', success: function (res) { layer.msg(res.message); if (res.code == 0) { $("#member_growth").html(res.data.growth); $("#member_growth").next().attr('data-num', res.data.growth); growth = res.data.growth; layer.closeAll('page'); table.reload(); } else { repeat_flag = false; } } }); }); form.on('checkbox(memberlevel)', function (data) { $('#setMemberLevel input[type="checkbox"]').prop('checked', false); $(data.elem).prop('checked', true); form.render(); }) }); /** * 重新渲染结束时间 * */ function reRender() { $("#reg_end_date").remove(); $(".end-time").html(''); laydate.render({ elem: '#reg_end_date', min: minDate }); } function savePoint(e) { var point = $(e).attr('data-num'); var data = { point: point }; laytpl($("#point").html()).render(data, function (html) { layer.open({ title: '调整积分', skin: 'layer-tips-class', type: 1, area: ['800px'], content: html, end: function () { repeat_flag = false; } }); }); $(".integral-bounced .amount input").on("input propertychange", function (val) { var newIntegral = parseInt($(this).val()); if (!isNaN(newIntegral)) $(this).val(newIntegral); var currIntegral = parseInt($(".integral-bounced .account-value").text()); if (newIntegral + currIntegral < 0) { layer.msg("调整数额与当前值积分数相加不能小于0"); $(this).val(-currIntegral); return false; } }) } function saveBalance(e) { var balance = $(e).attr('data-num'); var data = { balance: balance }; laytpl($("#balance").html()).render(data, function (html) { layer.open({ title: '调整储值余额', skin: 'layer-tips-class', type: 1, area: ['800px'], content: html, end: function () { repeat_flag = false; } }); }); } function saveGrowth(e) { var growth = $(e).attr('data-num'); var data = { growth: growth }; laytpl($("#growth").html()).render(data, function (html) { layer.open({ title: '调整成长值', skin: 'layer-tips-class', type: 1, area: ['800px'], content: html, end: function () { repeat_flag = false; } }); }); } function editMember(data, callback) { if (repeat_flag) return false; repeat_flag = true; data.member_id = member_id; $.ajax({ url: ns.url("shop/member/editMember"), data: data, dataType: 'JSON', //服务器返回json格式数据 type: 'POST', //HTTP请求类型 success: function (res) { repeat_flag = false; typeof callback == 'function' && callback(res); } }); } function editMemberLevel() { laytpl($("#memberLevel").html()).render({}, function (html) { layer.open({ title: '设置会员等级', skin: 'select-level-layer', type: 1, area: ['400px', '300px'], content: html, success: function () { form.render(); form.on('radio(level_type)', function (data) { $('.level-type').hide(); $('.level-type.type-' + data.value).show(); }) form.on('select(member_card)', function (data) { $('.member-card').hide(); $('.member-card-' + data.value).show(); }) }, btn: ['保存', '取消'], yes: function () { layer.confirm('是否确定变更该客户的会员等级?', {title: '会员等级变更确认'}, function (index) { var data = { level_type: $('[name="level_type"]:checked').val() || 0, member_id: member_id } data.level_id = data.level_type == 0 ? $('[name="member_level"]').val() : $('[name="member_card"]').val(); if (data.level_id == 0) { layer.msg((data.level_type == 0 ? '请选择会员等级' : '请选择会员卡')); return; } if (data.level_type == 1) data.period_unit = $('[name="member_card_' + data.level_id + '"]:checked').val(); layer.close(index); $.ajax({ type: "POST", url: ns.url("shop/member/handleMember"), data: data, dataType: 'JSON', success: function (res) { listenerHash(); // 刷新页面 layer.msg(res.message); layer.closeAll(); } }); layer.closeAll(); }); } }); }); } function editNickname(event) { var nickname = $(event).prev('span').text(); var html = `