jh-admin/addon/printer/shop/view/public/js/printer.js

228 lines
6.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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");
}