<div class="layui-fluid layui-anim febs-anim" id="febs-carriage-rule-add" lay-title="运费模板新增">
|
<div class="layui-row febs-container">
|
<div class="layui-col-md12">
|
<div class="layui-fluid" id="carriage-rule-add">
|
<form class="layui-form" action="" lay-filter="carriage-rule-add-form">
|
<div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
|
<ul class="layui-tab-title">
|
<li class="layui-this">运费模板</li>
|
</ul>
|
<div class="layui-tab-content">
|
<div class="layui-tab-item layui-show">
|
<blockquote class="layui-elem-quote blue-border">基本信息</blockquote>
|
<div class="layui-row layui-col-space10 layui-form-item">
|
<div class="layui-col-lg6">
|
<label class="layui-form-label febs-form-item-require">标题:</label>
|
<div class="layui-input-block">
|
<input type="text" name="ruleName" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
</div>
|
|
<div class="layui-form-item">
|
<label class="layui-form-label febs-form-item-require">计价方式:</label>
|
<div class="layui-input-block">
|
<input type="radio" name="valuationType" value="1" title="按件算" checked />
|
<!-- <input type="radio" name="valuationType" value="2" title="按重量算" />-->
|
</div>
|
</div>
|
|
<blockquote class="layui-elem-quote blue-border">默认规则</blockquote>
|
<div class="layui-form-item">
|
<label class="layui-form-label febs-form-item-require">默认运费:</label>
|
<div class="layui-input-inline" style="width: 80px">
|
<input type="text" name="basicCntDefault" lay-verify="required" autocomplete="off" class="layui-input" >
|
</div>
|
<div class="layui-form-mid">件内,</div>
|
<div class="layui-input-inline" style="width: 80px">
|
<input type="text" name="basicPriceDefault" lay-verify="required" autocomplete="off" class="layui-input" >
|
</div>
|
<div class="layui-form-mid">元,</div>
|
<div class="layui-form-mid">每增加</div>
|
<div class="layui-input-inline" style="width: 80px">
|
<input type="text" name="moreCntDefault" lay-verify="required" autocomplete="off" class="layui-input" >
|
</div>
|
<div class="layui-form-mid">件,增加运费</div>
|
<div class="layui-input-inline" style="width: 80px">
|
<input type="text" name="morePriceDefault" lay-verify="required" autocomplete="off" class="layui-input" >
|
</div>
|
<div class="layui-form-mid">元。</div>
|
</div>
|
<div class="layui-form-item multi-rule-table">
|
<div class="layui-row layui-col-space10 layui-form-item">
|
<blockquote class="layui-elem-quote blue-border">为指定省份设置运费</blockquote>
|
|
<div class="layui-col-lg6">
|
<label class="layui-form-label febs-form-item-require">指定省份:</label>
|
<div class="layui-input-block">
|
<div id="province-set"></div>
|
</div>
|
</div>
|
<div class="layui-col-lg6">
|
<button type="button" class="layui-btn layui-btn-normal layui-btn" id="test3" >添加</button>
|
</div>
|
</div>
|
|
<div class="layui-form-item">
|
<div class="layui-input-block">
|
<table id="multiRule" lay-filter="multiRule"></table>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
<div class="layui-form-item febs-hide">
|
<button class="layui-btn" lay-submit="" lay-filter="carriage-rule-add-form-submit" id="submit">保存</button>
|
</div>
|
</form>
|
</div>
|
</div>
|
</div>
|
</div>
|
<style>
|
.blue-border {
|
border-left-color: #2db7f5;
|
font-size: 18px;
|
}
|
</style>
|
<script type="text/html" id="toolbar">
|
<div class="layui-btn-container">
|
<button class="layui-btn layui-btn-danger layui-btn-sm" type="button" lay-event="delSku">删除</button>
|
</div>
|
</script>
|
<!-- 表格操作栏 end -->
|
<script data-th-inline="javascript">
|
layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','dropdown', 'laydate', 'layedit', 'upload', 'element', 'table', 'xmSelect'], function () {
|
var $ = layui.jquery,
|
febs = layui.febs,
|
layer = layui.layer,
|
table = layui.table,
|
formSelects = layui.formSelects,
|
treeSelect = layui.treeSelect,
|
form = layui.form,
|
laydate = layui.laydate,
|
eleTree = layui.eleTree,
|
$view = $('#carriage-rule-add'),
|
layedit = layui.layedit,
|
upload = layui.upload,
|
validate = layui.validate,
|
element = layui.element;
|
|
form.render();
|
|
formSelects.render();
|
|
var provinceSet = xmSelect.render({
|
el: '#province-set',
|
toolbar: {
|
show: true,
|
list: [ 'ALL', 'CLEAR', 'REVERSE' ]
|
},
|
filterable: true,
|
data: [
|
{name: '北京市',value: 1,selected:false},
|
{name: '天津市',value: 2,selected:false},
|
{name: '河北省',value: 3,selected:false},
|
{name: '山西省',value: 4,selected:false},
|
{name: '辽宁省',value: 5,selected:false},
|
|
{name: '吉林省',value: 6,selected:false},
|
{name: '黑龙江省',value: 7,selected:false},
|
{name: '上海市',value: 8,selected:false},
|
{name: '江苏省',value: 9,selected:false},
|
{name: '浙江省',value: 10,selected:false},
|
|
{name: '安徽省',value: 11,selected:false},
|
{name: '福建省',value: 12,selected:false},
|
{name: '江西省',value: 13,selected:false},
|
{name: '山东省',value: 14,selected:false},
|
{name: '河南省',value: 15,selected:false},
|
|
{name: '湖北省',value: 16,selected:false},
|
{name: '湖南省',value: 17,selected:false},
|
{name: '广东省',value: 18,selected:false},
|
{name: '广西壮族自治区',value: 19,selected:false},
|
{name: '海南省',value: 20,selected:false},
|
|
{name: '重庆市',value: 21,selected:false},
|
{name: '四川省',value: 22,selected:false},
|
{name: '贵州省',value: 23,selected:false},
|
{name: '云南省',value: 24,selected:false},
|
{name: '西藏自治区',value: 25,selected:false},
|
|
{name: '陕西省',value: 26,selected:false},
|
{name: '甘肃省',value: 27,selected:false},
|
{name: '青海省',value: 28,selected:false},
|
{name: '宁夏回族自治区',value: 29,selected:false},
|
{name: '内蒙古自治区',value: 30,selected:false},
|
|
{name: '新疆维吾尔自治区',value: 31,selected:false},
|
{name: '台湾省',value: 32,selected:false},
|
{name: '香港特别行政区',value: 33,selected:false},
|
{name: '澳门特别行政区',value: 34,selected:false},
|
],
|
})
|
let provinceChoiceExist = "";
|
$('#test3').on('click', function (){
|
let provinceChoice = provinceSet.getValue('name');
|
if(provinceChoice == null || provinceChoice == ""){
|
febs.alert.warn('指定省份不能为空');
|
return false;
|
}
|
let provinceChoiceStr = "";
|
for (let i = 0; i < provinceChoice.length; i++) {
|
//判断字符串是否出现过 =-1则没有出现
|
if(provinceChoiceExist.indexOf(provinceChoice[i]) != -1){
|
febs.alert.warn('['+provinceChoice[i]+'],指定省份不能重复');
|
return false;
|
}
|
provinceChoiceStr = provinceChoiceStr + provinceChoice[i]+",";
|
provinceChoiceExist = provinceChoiceExist + provinceChoiceStr;
|
}
|
let data = {};
|
data.areaAddress = provinceChoiceStr;
|
data.basicCnt = 1;
|
data.basicPrice = 1;
|
data.moreCnt = 1;
|
data.morePrice = 1;
|
addTableDate(data);
|
});
|
|
var ruleData=[];
|
var tableIns = table.render({
|
elem: '#multiRule'
|
,limit:999
|
,toolbar:"#toolbar"
|
,defaultToolbar:[]
|
,cols: [
|
[
|
,{align: 'center', title: '请选择', colspan: 2}
|
,{field:'areaAddress', title:'指定省份', width:400, rowspan: 2,align: 'center'}
|
,{align: 'center', title: '规则( 2 件内,2 元,每 1 增加件,增加运费 1 元。)', colspan: 4}
|
],
|
[ //表头
|
{type: 'checkbox', rowspan: 2,align: 'center' }
|
,{field: 'index', title: '序号', width:100, rowspan: 2,align: 'center'}
|
,{field: 'basicCnt', title: '件内', width:200,edit:'text'}
|
,{field: 'basicPrice', title: '运费', width:200,edit:'text'}
|
,{field: 'moreCnt', title: '每增加', width:200,edit:'text'}
|
,{field: 'morePrice', title: '增加运费', width:200,edit:'text'}
|
]]
|
,data: []
|
});
|
|
table.on('toolbar(multiRule)', function(obj){
|
var data = obj.data;
|
var hasData = table.cache['multiRule'];
|
var checkData = table.checkStatus('multiRule').data;
|
|
if (checkData.length <= 0) {
|
febs.alert.warn('请选择删除数据');
|
return;
|
}
|
if(obj.event === 'delSku'){
|
for (let i = 0; i < checkData.length; i++) {
|
var delData = checkData[i];
|
for (let j = 0; j < hasData.length; j++) {
|
if (hasData[j].index == delData.index) {
|
hasData.splice(j, 1);
|
break;
|
}
|
}
|
}
|
|
for (let i = 0; i < hasData.length; i++) {
|
hasData[i].index = i + 1;
|
}
|
|
ruleData=hasData;
|
reloadTable(hasData);
|
}
|
});
|
|
function addTableDate(data) {
|
var hasData = table.cache['multiRule'];
|
|
data.index = hasData.length + 1;
|
ruleData.push(data);
|
|
reloadTable(ruleData);
|
return data.index;
|
}
|
|
function reloadTable(data) {
|
table.reload('multiRule', {
|
data : data
|
});
|
}
|
|
table.on('edit(multiRule)', function(obj){
|
var value = obj.value //得到修改后的值
|
,data = obj.data //得到所在行所有键值
|
,field = obj.field; //得到字段
|
|
for (let i = 0; i < ruleData.length; i++) {
|
if (ruleData[i].index == data.index) {
|
ruleData[i] = data;
|
}
|
}
|
});
|
|
form.on('submit(carriage-rule-add-form-submit)', function (data) {
|
data.field.adminCarriageRuleAddInfoDtos = ruleData;
|
$.ajax({
|
'url':ctx + 'admin/goods/carriageRuleAdd',
|
'type':'post',
|
'dataType':'json',
|
'headers' : {'Content-Type' : 'application/json;charset=utf-8'}, //接口json格式
|
'traditional': true,//ajax传递数组必须添加属性
|
'data':JSON.stringify(data.field),
|
'success':function (data) {
|
if(data.code==200){
|
layer.closeAll();
|
febs.alert.success(data.message);
|
$('#febs-carriage-rule').find('#reset').click();
|
}else{
|
febs.alert.warn(data.message);
|
}
|
},
|
'error':function () {
|
febs.alert.warn('服务器繁忙');
|
}
|
})
|
return false;
|
});
|
});
|
</script>
|