layui.use(['form',], function () { var form = layui.form, repeat_flag = false; form.render(); form.on('radio(printer_type)', function (e) { $('.printer-type').hide() $('.printer-type.' + e.value).show() }) form.on('select(brand)', function (data) { var value = data.value; if (value == '365') { $('.feie').hide(); $('.yilianyun').hide(); $("input[name='user']").attr("lay-verify", ""); $("input[name='ukey']").attr("lay-verify", ""); $("input[name='open_id']").attr("lay-verify", ""); $("input[name='apikey']").attr("lay-verify", ""); } if (value == 'feie') { $('.feie').show(); $('.yilianyun').hide(); $("input[name='user']").attr("lay-verify", "cloudRequired"); $("input[name='ukey']").attr("lay-verify", "cloudRequired"); $("input[name='open_id']").attr("lay-verify", ""); $("input[name='apikey']").attr("lay-verify", ""); } if (value == 'yilianyun') { $('.yilianyun').show(); $('.feie').hide(); $("input[name='open_id']").attr("lay-verify", "cloudRequired"); $("input[name='apikey']").attr("lay-verify", "cloudRequired"); $("input[name='user']").attr("lay-verify", ""); $("input[name='ukey']").attr("lay-verify", ""); } }); form.on('switch(recharge_open)', function (data) { if (data.elem.checked) { $('.recharge-content').removeClass('layui-hide'); $('.recharge-content [name="recharge_template_id"]').attr('lay-verify', 'required'); } else { $('.recharge-content').addClass('layui-hide'); $('.recharge-content [name="recharge_template_id"]').attr('lay-verify', ''); } }); form.on('switch(change_shifts_open)', function (data) { if (data.elem.checked) { $('.change_shifts-content').removeClass('layui-hide'); $('.change_shifts-content [name="change_shifts_template_id"]').attr('lay-verify', 'required'); } else { $('.change_shifts-content').addClass('layui-hide'); $('.change_shifts-content [name="change_shifts_template_id"]').attr('lay-verify', ''); } }); form.on('switch(order_pay_open)', function (data) { if (data.elem.checked) { $('.order_pay_item').removeClass('layui-hide'); $('.order_pay_item [name="order_pay_template_id"]').attr('lay-verify', 'required'); } else { $('.order_pay_item').addClass('layui-hide'); $('.order_pay_item [name="order_pay_template_id"]').attr('lay-verify', ''); } }); form.on('switch(take_delivery_open)', function (data) { if (data.elem.checked) { $('.take_delivery_item').removeClass('layui-hide'); $('.take_delivery_item [name="take_delivery_template_id"]').attr('lay-verify', 'required'); } else { $('.take_delivery_item').addClass('layui-hide'); $('.take_delivery_item [name="take_delivery_template_id"]').attr('lay-verify', ''); } }); form.on('switch(manual_open)', function (data) { if (data.elem.checked) { $('.default_item').removeClass('layui-hide'); $('.default_item [name="template_id"]').attr('lay-verify', 'required'); } else { $('.default_item').addClass('layui-hide'); $('.default_item [name="template_id"]').attr('lay-verify', ''); } }); var printer_type = $('input[name="printer_type"]:checked').val() $(`input[name="printer_type"][value="${printer_type}"]`).next('.layui-unselect.layui-form-radio').click() var brand = $('select[name="brand"] option:checked').val() $("select[name='brand']") .siblings("div.layui-form-select") .find("dl dd[lay-value='" + brand + "']") .click(); form.verify({ time: function (value) { var now_time = (new Date()).getTime(); var start_time = (new Date($("#start_time").val())).getTime(); var end_time = (new Date(value)).getTime(); if (now_time > end_time) { return '结束时间不能小于当前时间!' } if (start_time > end_time) { return '结束时间不能小于开始时间!'; } }, flnum: function (value) { var arrMen = value.split("."); var val = 0; if (arrMen.length == 2) { val = arrMen[1]; } if (val.length > 2) { return '保留小数点后两位!' } }, int: function (value) { if (value <= 1 || value % 1 != 0) { return '请输入大于1的正整数!' } }, cloudRequired: function (value, ele) { if ($('[name="printer_type"]:checked').val() == 'cloud' && !/[\S]+/.test(value)) { var label = $(ele).parents('.layui-form-item').find('.layui-form-label').text().replace(':', '').replace('*', '') return label + '不能为空' } }, localRequired: function (value, ele) { if ($('[name="printer_type"]:checked').val() == 'local' && !/[\S]+/.test(value)) { var label = $(ele).parents('.layui-form-item').find('.layui-form-label').text().replace(':', '').replace('*', '') return label + '不能为空' } }, networkRequired: function (value, ele) { if ($('[name="printer_type"]:checked').val() == 'newwork' && !/[\S]+/.test(value)) { var label = $(ele).parents('.layui-form-item').find('.layui-form-label').text().replace(':', '').replace('*', '') return label + '不能为空' } } }); form.on('submit(save)', function (data) { var field = data.field; if (field.brand == 'feie') { field.open_id = field.user; field.apikey = field.ukey; } var order_pay_order_type_arr = []; if (field.order_pay_open) { $(".order-pay-order-type").each(function () { if ($(this).is(":checked")) { order_pay_order_type_arr.push($(this).val()); } }); if (order_pay_order_type_arr == "") { layer.msg('请选择支付打印的订单类型'); return false; } } field.order_pay_order_type = order_pay_order_type_arr.toString(); var take_delivery_order_type_arr = []; if (field.order_pay_open) { $(".order-pay-order-type").each(function () { if ($(this).is(":checked")) { take_delivery_order_type_arr.push($(this).val()); } }); if (take_delivery_order_type_arr == "") { layer.msg('请选择收货打印的订单类型'); return false; } } field.take_delivery_order_type = take_delivery_order_type_arr.toString(); if (repeat_flag) return; repeat_flag = true; $.ajax({ type: 'POST', dataType: 'JSON', url: field.printer_id ? ns.url("printer://shop/printer/edit") : ns.url("printer://shop/printer/add"), data: field, async: false, success: function (res) { repeat_flag = false; if (res.code == 0) { layer.confirm(field.printer_id ? '编辑成功' : '添加成功', { title: '操作提示', btn: ['返回列表', field.printer_id ? '继续编辑' : '继续添加'], closeBtn: 0, yes: function () { location.href = ns.url("printer://shop/printer/lists"); }, btn2: function () { if (field.printer_id) window.location.reload(); else location.href = ns.url("printer://shop/printer/add"); } }); } else { layer.msg(res.message); } } }) }); }); function back() { location.href = ns.url("printer://shop/printer/lists"); }