后端【修复】:修复后台配送方式多地图选择,保存多地点失效的问题。

This commit is contained in:
大灰灰
2024-11-25 14:54:45 +08:00
parent 4b602c0bf8
commit d8072d0fc0
2 changed files with 58 additions and 43 deletions

View File

@@ -146,12 +146,7 @@
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[0]" required value="0" lay-verify="required" class="layui-input layui-inline-3">
</td>
<td>
<!--<a class="layui-btn layui-btn-xs addarea-class">
添加地区
</a>-->
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">
删除
</a>
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">删除</a>
</td>
</tr>
</tbody>
@@ -185,12 +180,7 @@
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[{{ d.id }}]" required value="0" lay-verify="required" class="layui-input layui-inline-3">
</td>
<td>
<!--<a class="layui-btn layui-btn-xs addarea-class">
添加地区
</a>-->
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">
删除
</a>
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">删除</a>
</td>
</tr>
</script>
@@ -281,18 +271,18 @@
var checked = dtree.getCheckbarNodesParam(DTree);
if (checked) {
var html = '已选择地区:';
var areaParentName;
var areaParentName = '';
var ids = [];
$.each(checked, function (i, obj) {
if (obj.parentId <= 0) {
html = html + obj.context + ',';
areaParentName = obj.context;
areaParentName += obj.context + ',';
}
ids.push({ 'id': obj.nodeId, 'pid': obj.parentId, 'name': obj.context, ischecked: obj.checked });
});
html = html.substring(0, html.length - 1) + ' <a href="javascript:void(0);" class="selectArea">请选择地区</a>';
html = html + "<input type='hidden' name='areaId[" + id + "]' value='" + JSON.stringify(ids) + "'>";
html = html + "<input type='hidden' name='areaParentName[" + id + "]' value='" + areaParentName + "'>";
html = html + "<input type='hidden' name='areaParentName[" + id + "]' value='" + areaParentName.substring(0, areaParentName.length - 1) + "'>";
tdObj.parent().html(html);
layer.close(index);
}
@@ -302,7 +292,7 @@
$(".layui-table").on('click', '.addarea-class', function (e) {
var getTpl = tr_tpl.innerHTML;
var lastId = $(this).parent().parent().parent().find('tr').last().attr('data-id');
var lastId = $("#view").find('tr').last().attr('data-id');
var tmpData = {};
tmpData.id = parseInt(lastId) + 1;
@@ -314,6 +304,25 @@
$(".layui-table").on('click', '.del-class', function (e) {
$(this).parent().parent().remove();
var trs = $("#view").find('tr');
for (var i = 0; i < trs.length; i++) {
//获取id序号。
var dataid = $(trs[i]).attr('data-id');
//修改tr的id。
$(trs[i]).attr('data-id', i);
//修改不同name的name标签。
var areaIdInput = $(trs[i]).find('input[name="areaId[' + dataid + ']"]');
var areaParentNameInput = $(trs[i]).find('input[name="areaParentName[' + dataid + ']"]');
var firstunitAreaPriceInput = $(trs[i]).find('input[name="firstunitAreaPrice[' + dataid + ']"]');
var continueunitAreaPriceInput = $(trs[i]).find('input[name="continueunitAreaPrice[' + dataid + ']"]');
areaIdInput.attr('name', 'areaId[' + i + ']');
areaParentNameInput.attr('name', 'areaParentName[' + i + ']');
firstunitAreaPriceInput.attr('name', 'firstunitAreaPrice[' + i + ']');
continueunitAreaPriceInput.attr('name', 'continueunitAreaPrice[' + i + ']');
}
form.render();
})
form.verify({

View File

@@ -152,12 +152,7 @@
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[{{ index }}]" required value="{{ item.continueunitAreaPrice || 0 }}" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-3">
</td>
<td>
<!--<a class="layui-btn layui-btn-xs addarea-class">
添加地区
</a>-->
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">
删除
</a>
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">删除</a>
</td>
</tr>
@@ -178,12 +173,7 @@
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[0]" required value="0" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-3">
</td>
<td>
<!--<a class="layui-btn layui-btn-xs addarea-class">
添加地区
</a>-->
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">
删除
</a>
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">删除</a>
</td>
</tr>
{{# } }}
@@ -210,20 +200,15 @@
<a href="javascript:void(0);" class="selectArea">请选择地区</a>
</td>
<td>
<label class="layui-form-label layui-inline-2">首重费用</label>
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="firstunitAreaPrice[{{ d.id }}]" required value="0" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-1">
<label class="layui-form-label layui-inline-2 layui-form-required">首重费用</label>
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="firstunitAreaPrice[{{ d.id }}]" required value="0" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-3">
</td>
<td>
<label class="layui-form-label layui-inline-2">续重费用</label>
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[{{ d.id }}]" required value="0" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-1">
<label class="layui-form-label layui-inline-2 layui-form-required">续重费用</label>
<input type="number" lay-affix="number" min="0" max="999999" step="0.1" lay-precision="2" name="continueunitAreaPrice[{{ d.id }}]" required value="0" lay-verify="required" placeholder="" autocomplete="off" class="layui-input layui-inline-3">
</td>
<td>
<!--<a class="layui-btn layui-btn-xs addarea-class">
添加地区
</a>-->
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">
删除
</a>
<a class="layui-btn layui-btn-danger layui-btn-xs del-class">删除</a>
</td>
</tr>
</script>
@@ -327,18 +312,19 @@
var checked = dtree.getCheckbarNodesParam(DTree);
if (checked) {
var html = '已选择地区:';
var areaParentName;
var areaParentName='';
var ids = [];
$.each(checked, function (i, obj) {
if (obj.parentId <= 0) {
html = html + obj.context + ',';
areaParentName = obj.context;
areaParentName += obj.context + ',';
}
ids.push({ 'id': obj.nodeId, 'pid': obj.parentId, 'name': obj.context, ischecked: obj.checked });
});
html = html.substring(0, html.length - 1) + ' <a href="javascript:void(0);" class="selectArea">请选择地区</a>';
html = html + "<input type='hidden' name='areaId[" + id + "]' value='" + JSON.stringify(ids) + "'>";
html = html + "<input type='hidden' name='areaParentName[" + id + "]' value='" + areaParentName + "'>";
html = html + "<input type='hidden' name='areaParentName[" + id + "]' value='" + areaParentName.substring(0, areaParentName.length - 1) + "'>";
tdObj.parent().html(html);
layer.close(index);
}
@@ -348,18 +334,38 @@
$(".layui-table").on('click', '.addarea-class', function (e) {
var getTpl = tr_tpl.innerHTML;
var lastId = $(this).parent().parent().parent().find('tr').last().attr('data-id');
var lastId = $("#view").find('tr').last().attr('data-id');
var tmpData = {};
tmpData.id = parseInt(lastId) + 1;
laytpl(getTpl).render(tmpData, function (html) {
$("#view").append(html);
form.render();
});
form.render(null, 'LAY-app-CoreCmsShip-createForm');
});
$(".layui-table").on('click', '.del-class', function (e) {
$(this).parent().parent().remove();
var trs = $("#view").find('tr');
for (var i = 0; i < trs.length; i++) {
//获取id序号。
var dataid = $(trs[i]).attr('data-id');
//修改tr的id。
$(trs[i]).attr('data-id', i);
//修改不同name的name标签。
var areaIdInput = $(trs[i]).find('input[name="areaId[' + dataid + ']"]');
var areaParentNameInput = $(trs[i]).find('input[name="areaParentName[' + dataid + ']"]');
var firstunitAreaPriceInput = $(trs[i]).find('input[name="firstunitAreaPrice[' + dataid + ']"]');
var continueunitAreaPriceInput = $(trs[i]).find('input[name="continueunitAreaPrice[' + dataid + ']"]');
areaIdInput.attr('name', 'areaId[' + i + ']');
areaParentNameInput.attr('name', 'areaParentName[' + i + ']');
firstunitAreaPriceInput.attr('name', 'firstunitAreaPrice[' + i + ']');
continueunitAreaPriceInput.attr('name', 'continueunitAreaPrice[' + i + ']');
}
form.render();
})
form.verify({