layui.use(['form', 'jquery', 'madmin', 'mhttp', 'layer'], function () {
let form = layui.form;
let $ = layui.jquery;
let layer = layui.layer;
let admin = layui.madmin;
let http = layui.mhttp;
admin.getConfig();
let loading = layer.msg('加载数据中...', {icon: 16, time: 0, shade: 0.3, shadeClose: false});
// 查询应用
let appRet = http.ajax({
url: '/app/all'
});
appRet.then((data) => {
if (data.code === 200) {
let html = '';
for (let i in data.data) {
html += '';
}
$('.app_uid').html(html);
let uid = GetQueryString('uid');
let postData = {uid: uid};
let ret = http.ajax({
url: '/deduction/detail',
data: postData
});
ret.then((data) => {
layer.close(loading);
// 成功显示数据
if (data.code === 200) {
$('.deduction_method_' + data.data.deduction_method).attr('selected', 'selected');
$('.deduction_rule_' + data.data.deduction_rule).attr('selected', 'selected');
$('.che_' + data.data.app_uid).attr('selected', 'selected');
$('.deduction_price').val(data.data.deduction_price);
$('.deduction_pro').val(data.data.deduction_pro);
$('.uid').val(data.data.uid);
// 渲染form
form.render();
} else {
layer.msg(data.message, {
// 失败关闭父窗口
icon: 2,
time: 1000
}, function () {
let index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
});
}
});
form.render();
} else {
$('.app-help').append('获取应用失败,刷新重试!');
}
});
form.on('submit(cps-save)', function (data) {
let createLoading = layer.load();
if (data.field.deduction_price.search(',') != -1) {
layer.confirm('检测到扣量价格有","是否替换为以","分隔?', {
icon: 3,
title: '提示'
}, function (index) {
layer.close(index);
$('.deduction_price').val(data.field.deduction_price.replace(/,/g, ","));
layer.msg('已替换请再次确认!');
});
return false;
}
if (data.field.deduction_pro.search(',') != -1) {
layer.confirm('检测扣量数量格有","是否替换为以","分隔?', {
icon: 3,
title: '提示'
}, function (index) {
layer.close(index);
$('.deduction_pro').val(data.field.deduction_pro.replace(/,/g, ","));
layer.msg('已替换请再次确认!');
});
return false;
}
let deductionPriceObg = [];
if (data.field.deduction_price) {
let priceArray = data.field.deduction_price.split(',');
for (let i in priceArray) {
let priceArrayItem = priceArray[i].split('-');
deductionPriceObg.push({
min_price: priceArrayItem[0],
max_price: priceArrayItem[1]
})
}
}
let deductionProObg = [];
if (data.field.deduction_pro) {
let numberArray = data.field.deduction_pro.split(',');
for (let i in numberArray) {
let numberArrayItem = numberArray[i].split('-');
deductionProObg.push({
number: numberArrayItem[0],
deduction: numberArrayItem[1],
})
}
}
if (deductionPriceObg.length !== deductionProObg.length) {
layer.msg('扣量金额与扣量比例与对映不上!');
return false;
}
let postData = data.field;
postData.jdata = JSON.stringify({
deduction_price: deductionPriceObg,
deduction_number: deductionProObg,
});
let ret = http.ajax({
url: '/deduction/modify',
data: postData
});
ret.then((data) => {
layer.close(createLoading);
if (data.code === 200) {
layer.msg(data.message, {icon: 1, time: 1000}, function () {
// 成功刷父页面
window.parent.location.reload();
// 成功关闭父窗口
let index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
});
} else {
layer.msg(data.message, {icon: 2, time: 1000});
}
});
return false;
});
});