基础管理-线路工程管理
This commit is contained in:
parent
a9d08575c0
commit
12a55f235a
|
|
@ -12,7 +12,7 @@
|
||||||
<if test="baiduLon != null">baidu_lon,</if>
|
<if test="baiduLon != null">baidu_lon,</if>
|
||||||
<if test="baiduLat != null ">baidu_lat,</if>
|
<if test="baiduLat != null ">baidu_lat,</if>
|
||||||
<if test="sort != null ">sort,</if>
|
<if test="sort != null ">sort,</if>
|
||||||
is_actvice
|
is_active
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="threeSpanId != null ">#{threeSpanId},</if>
|
<if test="threeSpanId != null ">#{threeSpanId},</if>
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
<if test="highwayWidth != null ">highway_width,</if>
|
<if test="highwayWidth != null ">highway_width,</if>
|
||||||
<if test="createTime != null">create_time,</if>
|
<if test="createTime != null">create_time,</if>
|
||||||
<if test="createUserId != null ">create_user_id,</if>
|
<if test="createUserId != null ">create_user_id,</if>
|
||||||
is_actvice
|
is_active
|
||||||
</trim>
|
</trim>
|
||||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||||
<if test="proId != null ">#{proId},</if>
|
<if test="proId != null ">#{proId},</if>
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
let form, layer, util,laydate, idParam, phoneParam;
|
let form, layer, util,laydate, idParam,proId;
|
||||||
let arr = ['background', 'web', 'mobile', 'wx'];
|
let arr = ['background', 'web', 'mobile', 'wx'];
|
||||||
let background, web, mobile, wx;
|
let background, web, mobile, wx;
|
||||||
let data = [], appResList = [];
|
let data = [], appResList = [], towerList = [];
|
||||||
|
|
||||||
let startDate, endDate;
|
let startDate, endDate;
|
||||||
function setParams(params) {
|
function setParams(params) {
|
||||||
console.log(params)
|
console.log(params)
|
||||||
idParam = JSON.parse(params).id;
|
idParam = JSON.parse(params).id;
|
||||||
|
proId = JSON.parse(params).proId;
|
||||||
layui.use(['form', 'layer', 'util', 'laydate'], function () {
|
layui.use(['form', 'layer', 'util', 'laydate'], function () {
|
||||||
form = layui.form;
|
form = layui.form;
|
||||||
layer = layui.layer;
|
layer = layui.layer;
|
||||||
|
|
@ -14,140 +15,200 @@ function setParams(params) {
|
||||||
laydate = layui.laydate;
|
laydate = layui.laydate;
|
||||||
var $ = layui.jquery;
|
var $ = layui.jquery;
|
||||||
|
|
||||||
console.log(idParam + "idParam")
|
crossLineFields()
|
||||||
if (idParam) {
|
if (idParam) {
|
||||||
getThreeSpanById();
|
getThreeSpanById();
|
||||||
} else {
|
|
||||||
// 确保默认选中跨线路并触发相关验证规则
|
|
||||||
$('.span-type-option[data-type="cross-line"]').trigger('click');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 初始化表单
|
// 初始化表单
|
||||||
form.render();
|
form.render();
|
||||||
loadTowerOptions();
|
loadTowerOptions();
|
||||||
|
|
||||||
// 跨越类型切换
|
$('.span-type-option').on('click', function() {
|
||||||
$('.span-type-option').click(function() {
|
|
||||||
$('.span-type-option').removeClass('active');
|
$('.span-type-option').removeClass('active');
|
||||||
$(this).addClass('active');
|
$(this).addClass('active');
|
||||||
let type = $(this).data('type');
|
let type = $(this).data('type');
|
||||||
|
|
||||||
// 隐藏所有输入框
|
|
||||||
$('#crossLineFields, #crossPublicFields, #crossRailwayFields').hide();
|
|
||||||
// 移除所有验证规则
|
|
||||||
$('input[name^="upper"], input[name^="lower"], input[name^="road"], input[name^="railway"]').removeAttr('lay-verify');
|
|
||||||
|
|
||||||
// 显示对应的输入框并设置验证规则
|
|
||||||
switch(type) {
|
switch(type) {
|
||||||
case 'cross-line':
|
case 'cross-line':
|
||||||
$('#crossLineFields').show();
|
$('#crossLineFields').show();
|
||||||
$('input[name="upperLine"], input[name="lowerLine"]').attr('lay-verify', 'required');
|
$('#crossPublicFields').hide();
|
||||||
|
$('#crossRailwayFields').hide();
|
||||||
|
crossLineFields()
|
||||||
break;
|
break;
|
||||||
case 'cross-public':
|
case 'cross-public':
|
||||||
|
$('#crossLineFields').hide();
|
||||||
$('#crossPublicFields').show();
|
$('#crossPublicFields').show();
|
||||||
$('input[name="roadName"], input[name="roadLevel"]').attr('lay-verify', 'required');
|
$('#crossRailwayFields').hide();
|
||||||
|
crossPublicFields()
|
||||||
break;
|
break;
|
||||||
case 'cross-railway':
|
case 'cross-railway':
|
||||||
|
$('#crossLineFields').hide();
|
||||||
|
$('#crossPublicFields').hide();
|
||||||
$('#crossRailwayFields').show();
|
$('#crossRailwayFields').show();
|
||||||
$('input[name="railwayName"], input[name="railwayType"]').attr('lay-verify', 'required');
|
crossRailwayFields()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
form.render();
|
||||||
});
|
});
|
||||||
|
|
||||||
// 监听杆塔选择
|
// 监听杆塔选择
|
||||||
form.on('select(towerSelect)', function(data) {
|
form.on('select(towerSelect)', function(data) {
|
||||||
// 这里可以根据选择的杆塔自动填写相关信息
|
|
||||||
if(data.value) {
|
if(data.value) {
|
||||||
getTowerInfo(data.value);
|
// 获取当前选中的索引
|
||||||
|
let currentIndex = -1;
|
||||||
|
for(let i = 0; i < towerList.length; i++) {
|
||||||
|
if(towerList[i].id == data.value) {
|
||||||
|
currentIndex = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 先清空第二个下拉框
|
||||||
|
let $nextTowerSelect = $('#nextTowerName');
|
||||||
|
$nextTowerSelect.empty();
|
||||||
|
|
||||||
|
// 如果找到当前索引且不是最后一个
|
||||||
|
if(currentIndex !== -1 && currentIndex < towerList.length - 1) {
|
||||||
|
// 获取下一个杆塔的信息
|
||||||
|
let nextTower = towerList[currentIndex + 1];
|
||||||
|
|
||||||
|
// 设置隐藏的ID
|
||||||
|
$('#nextTowerId').val(nextTower.id);
|
||||||
|
|
||||||
|
// 创建新的option元素并添加
|
||||||
|
let newOption = new Option(nextTower.towerName, nextTower.id);
|
||||||
|
$nextTowerSelect.append(newOption);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// 清空ID
|
||||||
|
$('#nextTowerId').val('');
|
||||||
|
// 创建提示选项
|
||||||
|
let newOption = new Option('选择的已经是最后一个', '');
|
||||||
|
$nextTowerSelect.append(newOption);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 重新渲染select
|
||||||
|
layui.form.render('select');
|
||||||
|
|
||||||
|
} else {
|
||||||
|
// 当没有选择值时,重置为默认状态
|
||||||
|
$('#nextTowerId').val('');
|
||||||
|
let $nextTowerSelect = $('#nextTowerName');
|
||||||
|
$nextTowerSelect.empty();
|
||||||
|
let newOption = new Option('根据杆塔行序号自动填写下方杆塔序号', '');
|
||||||
|
$nextTowerSelect.append(newOption);
|
||||||
|
layui.form.render('select');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 表单验证
|
// 表单验证规则
|
||||||
form.verify({
|
form.verify({
|
||||||
required: function(value, item) {
|
number: function(value, item) {
|
||||||
if(!value) {
|
if(value && !/^-?\d+\.?\d*$/.test(value)) {
|
||||||
return '必填项不能为空';
|
return '请输入数字';
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
number: [
|
// 经度验证
|
||||||
/^-?\d+\.?\d*$/,
|
longitude: function(value, item) {
|
||||||
'请输入有效的数字'
|
// 如果为空则直接通过验证
|
||||||
]
|
if(!value || value.trim() === '') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 如果经度有值,则纬度也必须填写
|
||||||
|
let latInput = $(item).closest('.layui-form-item').find('input[name^="crossTowerLatitude"]');
|
||||||
|
let latValue = latInput.val();
|
||||||
|
if(!latValue || latValue.trim() === '') {
|
||||||
|
return '经度和纬度需要同时填写';
|
||||||
|
}
|
||||||
|
// 验证经度格式
|
||||||
|
if(!/^[\-\+]?((180(\.0{1,6})?)|((\d{1,2}|1[0-7]\d)(\.\d{1,6})?))$/.test(value)) {
|
||||||
|
return '请输入正确的经度(-180.0~+180.0)';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 纬度验证
|
||||||
|
latitude: function(value, item) {
|
||||||
|
// 如果为空则直接通过验证
|
||||||
|
if(!value || value.trim() === '') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 如果纬度有值,则经度也必须填写
|
||||||
|
let lonInput = $(item).closest('.layui-form-item').find('input[name^="crossTowerLongitude"]');
|
||||||
|
let lonValue = lonInput.val();
|
||||||
|
if(!lonValue || lonValue.trim() === '') {
|
||||||
|
return '经度和纬度需要同时填写';
|
||||||
|
}
|
||||||
|
// 验证纬度格式
|
||||||
|
if(!/^[\-\+]?((90(\.0{1,6})?)|(([0-8]?\d)(\.\d{1,6})?))$/.test(value)) {
|
||||||
|
return '请输入正确的纬度(-90.0~+90.0)';
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 表单提交
|
// 表单提交验证
|
||||||
form.on('submit(formData)', function(data) {
|
form.on('submit(formData)', function(data) {
|
||||||
let formData = data.field;
|
let formData = data.field;
|
||||||
let spanType = $('.span-type-option.active').data('type');
|
let currentSystem = $('.span-type-option.active').data('type');
|
||||||
|
if(currentSystem === 'cross-line'){
|
||||||
if(!spanType) {
|
delete formData.verticalClearDistance;
|
||||||
layer.msg('请选择跨越类型', {icon: 2});
|
delete formData.towerSpacing;
|
||||||
return false;
|
delete formData.highwayWidth;
|
||||||
|
|
||||||
|
delete formData.verticalClearDistances;
|
||||||
|
delete formData.towerSpacings;
|
||||||
|
delete formData.intersectionAngles;
|
||||||
|
formData.spanType ="1";
|
||||||
|
}else if (currentSystem === 'cross-public'){
|
||||||
|
delete formData.upperLine;
|
||||||
|
delete formData.lowerLine;
|
||||||
|
delete formData.intersectionAngle;
|
||||||
|
delete formData.verticalDistance;
|
||||||
|
delete formData.safetyMargin;
|
||||||
|
|
||||||
|
delete formData.crossTowerLongitude1;
|
||||||
|
delete formData.crossTowerLatitude1;
|
||||||
|
delete formData.crossTowerLongitude2;
|
||||||
|
delete formData.crossTowerLatitude2;
|
||||||
|
delete formData.crossTowerLongitude3;
|
||||||
|
delete formData.crossTowerLatitude3;
|
||||||
|
delete formData.crossTowerLongitude4;
|
||||||
|
delete formData.crossTowerLatitude4;
|
||||||
|
|
||||||
|
delete formData.verticalClearDistances;
|
||||||
|
delete formData.towerSpacings;
|
||||||
|
delete formData.intersectionAngles;
|
||||||
|
|
||||||
|
formData.spanType ="2";
|
||||||
|
}else if(currentSystem === 'cross-railway'){
|
||||||
|
delete formData.upperLine;
|
||||||
|
delete formData.lowerLine;
|
||||||
|
delete formData.intersectionAngle;
|
||||||
|
delete formData.verticalDistance;
|
||||||
|
delete formData.safetyMargin;
|
||||||
|
|
||||||
|
delete formData.crossTowerLongitude1;
|
||||||
|
delete formData.crossTowerLatitude1;
|
||||||
|
delete formData.crossTowerLongitude2;
|
||||||
|
delete formData.crossTowerLatitude2;
|
||||||
|
delete formData.crossTowerLongitude3;
|
||||||
|
delete formData.crossTowerLatitude3;
|
||||||
|
delete formData.crossTowerLongitude4;
|
||||||
|
delete formData.crossTowerLatitude4;
|
||||||
|
|
||||||
|
delete formData.verticalClearDistance;
|
||||||
|
delete formData.towerSpacing;
|
||||||
|
delete formData.highwayWidth;
|
||||||
|
|
||||||
|
formData.verticalClearDistance = formData.verticalClearDistances;
|
||||||
|
formData.towerSpacing = formData.towerSpacings;
|
||||||
|
formData.intersectionAngle = formData.intersectionAngles;
|
||||||
|
|
||||||
|
formData.spanType ="3";
|
||||||
}
|
}
|
||||||
formData.spanType = spanType;
|
console.log(currentSystem)
|
||||||
|
formData.proId=proId;
|
||||||
// 验证必填项
|
|
||||||
if(!formData.towerId) {
|
|
||||||
layer.msg('请选择杆塔', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 根据跨越类型验证必填项
|
|
||||||
switch(spanType) {
|
|
||||||
case 'cross-line':
|
|
||||||
if(!formData.upperLine) {
|
|
||||||
layer.msg('请输入上层线路', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.lowerLine) {
|
|
||||||
layer.msg('请输入下层线路', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.crossAngle) {
|
|
||||||
layer.msg('请输入交叉角度', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.verticalDistance) {
|
|
||||||
layer.msg('请输入垂直距离', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.safetyMargin) {
|
|
||||||
layer.msg('请输入安全裕度', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'cross-public':
|
|
||||||
if(!formData.verticalClearance) {
|
|
||||||
layer.msg('请输入垂直净距', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.towerSpacing) {
|
|
||||||
layer.msg('请输入杆塔间距', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.roadWidth) {
|
|
||||||
layer.msg('请输入公路宽度', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'cross-railway':
|
|
||||||
if(!formData.verticalClearance) {
|
|
||||||
layer.msg('请输入垂直净距', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.towerSpacing) {
|
|
||||||
layer.msg('请输入杆塔间距', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if(!formData.crossAngle) {
|
|
||||||
layer.msg('请输入交叉角度', {icon: 2});
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
saveData(formData);
|
saveData(formData);
|
||||||
return false;
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
@ -155,31 +216,24 @@ function setParams(params) {
|
||||||
|
|
||||||
// 加载杆塔选项
|
// 加载杆塔选项
|
||||||
function loadTowerOptions() {
|
function loadTowerOptions() {
|
||||||
let url = dataUrl + "/tower/list";
|
let url = dataUrl + "/tbTower/getTbTowerAll";
|
||||||
ajaxRequest(url, "GET", {}, true, null, function(result) {
|
|
||||||
if(result.code === 200) {
|
|
||||||
let options = '<option value="">选择项目</option>';
|
|
||||||
result.data.forEach(item => {
|
|
||||||
options += `<option value="${item.id}">${item.towerName}</option>`;
|
|
||||||
});
|
|
||||||
$('select[name="towerId"]').html(options);
|
|
||||||
form.render('select');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 获取杆塔信息
|
|
||||||
function getTowerInfo(towerId) {
|
|
||||||
let url = dataUrl + "/tower/getById";
|
|
||||||
let params = {
|
|
||||||
id: towerId,
|
|
||||||
encryptedData: encryptCBC(JSON.stringify({id: towerId}))
|
|
||||||
};
|
|
||||||
|
|
||||||
|
let params = {"proId":proId};
|
||||||
|
params = {
|
||||||
|
encryptedData: encryptCBC(JSON.stringify(params))
|
||||||
|
}
|
||||||
ajaxRequest(url, "POST", params, true, null, function(result) {
|
ajaxRequest(url, "POST", params, true, null, function(result) {
|
||||||
if(result.code === 200) {
|
if(result.code === 200) {
|
||||||
// 可以根据杆塔信息自动填写一些表单项
|
let options = '<option value="">选择杆塔</option>';
|
||||||
console.log("获取到杆塔信息:", result.data);
|
// 保存杆塔列表数据
|
||||||
|
towerList = result.data;
|
||||||
|
towerList.forEach(item => {
|
||||||
|
options += `<option value="${item.id}">${item.towerName}</option>`;
|
||||||
|
});
|
||||||
|
// 为两个select都添加选项
|
||||||
|
$('select[name="towerId"]').html(options);
|
||||||
|
$('select[name="nextTowerName"]').html('<option value="">根据杆塔行序号自动填写下方杆塔序号</option>');
|
||||||
|
form.render('select');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -187,7 +241,7 @@ function getTowerInfo(towerId) {
|
||||||
// 根据id获取三跨信息
|
// 根据id获取三跨信息
|
||||||
function getThreeSpanById() {
|
function getThreeSpanById() {
|
||||||
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, time: 0});
|
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, time: 0});
|
||||||
let url = dataUrl + "/threeSpan/getById";
|
let url = dataUrl + "/tbThreeSpan/getTbThreeSpanById";
|
||||||
let params = {
|
let params = {
|
||||||
id: idParam,
|
id: idParam,
|
||||||
encryptedData: encryptCBC(JSON.stringify({id: idParam}))
|
encryptedData: encryptCBC(JSON.stringify({id: idParam}))
|
||||||
|
|
@ -222,18 +276,40 @@ function saveData2() {
|
||||||
|
|
||||||
// 保存数据
|
// 保存数据
|
||||||
function saveData(data) {
|
function saveData(data) {
|
||||||
|
// 组装经纬度数据
|
||||||
|
let tbSpanTowerList = [];
|
||||||
|
for(let i = 1; i <= 4; i++) {
|
||||||
|
let lon = data[`crossTowerLongitude${i}`];
|
||||||
|
let lat = data[`crossTowerLatitude${i}`];
|
||||||
|
|
||||||
|
// 只有当经纬度都有值时才添加到列表
|
||||||
|
if(lon && lat) {
|
||||||
|
tbSpanTowerList.push({
|
||||||
|
lon: lon,
|
||||||
|
lat: lat,
|
||||||
|
sort: i // 使用循环索引作为排序号
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// 删除原始的经纬度字段
|
||||||
|
delete data[`crossTowerLongitude${i}`];
|
||||||
|
delete data[`crossTowerLatitude${i}`];
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将经纬度列表添加到提交数据中
|
||||||
|
data.tbSpanTowerList = tbSpanTowerList;
|
||||||
|
|
||||||
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||||
let url = dataUrl + "/threeSpan/add";
|
let url = dataUrl + "/tbThreeSpan/addTbThreeSpan";
|
||||||
let params = data;
|
let params = data;
|
||||||
if (params.id) {
|
if (params.id) {
|
||||||
url = dataUrl + "/threeSpan/update";
|
url = dataUrl + "/tbThreeSpan/updateTbThreeSpan";
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("三跨管理的新增修改", params);
|
console.log("三跨管理的新增修改", params);
|
||||||
params = {
|
params = {
|
||||||
encryptedData: encryptCBC(JSON.stringify(params))
|
encryptedData: encryptCBC(JSON.stringify(params))
|
||||||
}
|
}
|
||||||
|
|
||||||
// 禁用所有输入框和按钮
|
// 禁用所有输入框和按钮
|
||||||
function disableForm() {
|
function disableForm() {
|
||||||
$('input, select').attr('disabled', true);
|
$('input, select').attr('disabled', true);
|
||||||
|
|
@ -257,7 +333,9 @@ function saveData(data) {
|
||||||
parent.layer.msg(result.msg, {icon: 1});
|
parent.layer.msg(result.msg, {icon: 1});
|
||||||
} else {
|
} else {
|
||||||
layer.alert(result.msg, {icon: 2})
|
layer.alert(result.msg, {icon: 2})
|
||||||
enableForm();
|
setTimeout(function () {
|
||||||
|
enableForm();
|
||||||
|
},3000)
|
||||||
}
|
}
|
||||||
}, function (xhr) {
|
}, function (xhr) {
|
||||||
layer.close(loadingMsg);
|
layer.close(loadingMsg);
|
||||||
|
|
@ -266,11 +344,87 @@ function saveData(data) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function crossLineFields(){
|
||||||
|
$('input[name="upperLine"]').attr('lay-verify', 'required');
|
||||||
|
$('input[name="lowerLine"]').attr('lay-verify', 'required');
|
||||||
|
$('input[name="intersectionAngle"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="verticalDistance"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="safetyMargin"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="crossTowerLongitude1"]').attr('lay-verify', 'longitude');
|
||||||
|
$('input[name="crossTowerLatitude1"]').attr('lay-verify', 'latitude');
|
||||||
|
$('input[name="crossTowerLongitude2"]').attr('lay-verify', 'longitude');
|
||||||
|
$('input[name="crossTowerLatitude2"]').attr('lay-verify', 'latitude');
|
||||||
|
$('input[name="crossTowerLongitude3"]').attr('lay-verify', 'longitude');
|
||||||
|
$('input[name="crossTowerLatitude3"]').attr('lay-verify', 'latitude');
|
||||||
|
$('input[name="crossTowerLongitude4"]').attr('lay-verify', 'longitude');
|
||||||
|
$('input[name="crossTowerLatitude4"]').attr('lay-verify', 'latitude');
|
||||||
|
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistance"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="towerSpacing"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="highwayWidth"]').removeAttr('lay-verify');
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistances"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="towerSpacings"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="intersectionAngles"]').removeAttr('lay-verify');
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function crossPublicFields(){
|
||||||
|
$('input[name="upperLine"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="lowerLine"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="intersectionAngle"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="verticalDistance"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="safetyMargin"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude1"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude1"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude2"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude2"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude3"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude3"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude4"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude4"]').removeAttr('lay-verify');
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistance"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="towerSpacing"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="highwayWidth"]').attr('lay-verify', 'required|number');
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistances"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="towerSpacings"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="intersectionAngles"]').removeAttr('lay-verify');
|
||||||
|
}
|
||||||
|
|
||||||
|
function crossRailwayFields(){
|
||||||
|
$('input[name="upperLine"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="lowerLine"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="intersectionAngle"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="verticalDistance"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="safetyMargin"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude1"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude1"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude2"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude2"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude3"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude3"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLongitude4"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="crossTowerLatitude4"]').removeAttr('lay-verify');
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistance"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="towerSpacing"]').removeAttr('lay-verify');
|
||||||
|
$('input[name="highwayWidth"]').removeAttr('lay-verify');
|
||||||
|
|
||||||
|
$('input[name="verticalClearDistances"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="towerSpacings"]').attr('lay-verify', 'required|number');
|
||||||
|
$('input[name="intersectionAngles"]').attr('lay-verify', 'required|number');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 关闭页面
|
// 关闭页面
|
||||||
function closePage(type) {
|
function closePage(type) {
|
||||||
let index = parent.layer.getFrameIndex(window.name);
|
let index = parent.layer.getFrameIndex(window.name);
|
||||||
parent.layer.close(index);
|
parent.layer.close(index);
|
||||||
if (type === 1) {
|
if (type === 1) {
|
||||||
parent.reloadData()
|
parent.reloadData()
|
||||||
|
parent.parent.reloadData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -14,7 +14,7 @@ function setParams(params) {
|
||||||
|
|
||||||
function pages(pageNum, pageSize, typeNum) {
|
function pages(pageNum, pageSize, typeNum) {
|
||||||
let params = getReqParams(pageNum, pageSize, typeNum);
|
let params = getReqParams(pageNum, pageSize, typeNum);
|
||||||
let url = dataUrl + "/users/getList"
|
let url = dataUrl + "/tbThreeSpan/getTbThreeSpanList"
|
||||||
ajaxRequest(url, "POST", params, true, function () {
|
ajaxRequest(url, "POST", params, true, function () {
|
||||||
}, function (result) {
|
}, function (result) {
|
||||||
console.log(result);
|
console.log(result);
|
||||||
|
|
@ -70,9 +70,43 @@ function initTable(dataList, limit, page) {
|
||||||
return (page - 1) * limit + d.LAY_INDEX;
|
return (page - 1) * limit + d.LAY_INDEX;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{field: "loginName", title: "杆塔号", unresize: true, align: "center"},
|
{field: "towerName", title: "杆塔号", unresize: true, align: "center"},
|
||||||
{field: "username", title: "跨越类型", unresize: true, align: "center"},
|
{field: "", title: "跨越类型", unresize: true, align: "center",
|
||||||
{field: "username", title: "跨越信息", unresize: true, align: "center"},
|
templet: function (d) {
|
||||||
|
if(d.spanType == 1){
|
||||||
|
return '跨线路';
|
||||||
|
}else if(d.spanType == 2){
|
||||||
|
return '跨公路';
|
||||||
|
}else if(d.spanType == 3){
|
||||||
|
return '跨铁路';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{field: "", title: "跨越信息", unresize: true, align: "center",
|
||||||
|
templet: function (d) {
|
||||||
|
if(d.spanType == 1){
|
||||||
|
var html = '';
|
||||||
|
html+="上层线路:" + d.upperLine + "<br><br>";
|
||||||
|
html+="下层线路:" + d.lowerLine + "<br><br>";
|
||||||
|
html+="交叉角度:" + d.intersectionAngle + "<br><br>";
|
||||||
|
html+="垂直距离:" + d.verticalDistance + "<br><br>";
|
||||||
|
html+="安全裕度:" + d.safetyMargin + "<br><br>";
|
||||||
|
return html;
|
||||||
|
}else if(d.spanType == 2){
|
||||||
|
var html = '';
|
||||||
|
html+="垂直净距:" + d.verticalClearDistance + "<br><br>";
|
||||||
|
html+="杆塔间距:" + d.towerSpacing + "<br><br>";
|
||||||
|
html+="公路宽度:" + d.highwayWidth + "<br><br>";
|
||||||
|
return html;
|
||||||
|
}else if(d.spanType == 3){
|
||||||
|
var html = '';
|
||||||
|
html+="垂直净距:" + d.verticalClearDistance + "<br><br>";
|
||||||
|
html+="杆塔间距:" + d.towerSpacing + "<br><br>";
|
||||||
|
html+="交叉角度:" + d.intersectionAngle + "<br><br>";
|
||||||
|
return html;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
title: "操作", unresize: true, width: 200, align: "center",
|
title: "操作", unresize: true, width: 200, align: "center",
|
||||||
templet: function (d) {
|
templet: function (d) {
|
||||||
|
|
@ -102,13 +136,14 @@ function initTable(dataList, limit, page) {
|
||||||
function getReqParams(page, limit, type) {
|
function getReqParams(page, limit, type) {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
if (type === 2) {
|
if (type === 2) {
|
||||||
$('#towerName').val('')
|
$('#keyWord').val('')
|
||||||
layui.form.render();
|
layui.form.render();
|
||||||
}
|
}
|
||||||
obj = {
|
obj = {
|
||||||
page: page + "",
|
page: page + "",
|
||||||
limit: limit + "",
|
limit: limit + "",
|
||||||
towerName: $('#towerName').val()
|
proId: idParam,
|
||||||
|
keyWord: $('#keyWord').val()
|
||||||
};
|
};
|
||||||
console.log("杆塔管理查询条件", obj)
|
console.log("杆塔管理查询条件", obj)
|
||||||
obj={
|
obj={
|
||||||
|
|
@ -121,7 +156,7 @@ function getReqParams(page, limit, type) {
|
||||||
function query(type) {
|
function query(type) {
|
||||||
pageNum = 1;
|
pageNum = 1;
|
||||||
if(type === 2){
|
if(type === 2){
|
||||||
$('#towerName').val('')
|
$('#keyWord').val('')
|
||||||
layui.form.render();
|
layui.form.render();
|
||||||
}
|
}
|
||||||
pages(1, limitSize,type);
|
pages(1, limitSize,type);
|
||||||
|
|
@ -135,7 +170,8 @@ function reloadData() {
|
||||||
function addData(id) {
|
function addData(id) {
|
||||||
let title = '修改'
|
let title = '修改'
|
||||||
let param = {
|
let param = {
|
||||||
'id': id
|
'id': id,
|
||||||
|
'proId':idParam
|
||||||
}
|
}
|
||||||
openIframe2("editPro", title, "threeSpanFormTemp.html", '1000px', '625px', param);
|
openIframe2("editPro", title, "threeSpanFormTemp.html", '1000px', '625px', param);
|
||||||
}
|
}
|
||||||
|
|
@ -143,7 +179,8 @@ function addData(id) {
|
||||||
function addDataThreeSpan(id) {
|
function addDataThreeSpan(id) {
|
||||||
let title = '新增'
|
let title = '新增'
|
||||||
let param = {
|
let param = {
|
||||||
'id': id
|
'id': id,
|
||||||
|
'proId':idParam
|
||||||
}
|
}
|
||||||
openIframe2("addDataThreeSpan", title, "threeSpanFormTemp.html", '1000px', '625px', param);
|
openIframe2("addDataThreeSpan", title, "threeSpanFormTemp.html", '1000px', '625px', param);
|
||||||
}
|
}
|
||||||
|
|
@ -154,7 +191,7 @@ function delData(id) {
|
||||||
move: false
|
move: false
|
||||||
}, function () {
|
}, function () {
|
||||||
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||||
let url = dataUrl + "/users/delById";
|
let url = dataUrl + "/tbThreeSpan/delTbThreeSpan";
|
||||||
let params = {
|
let params = {
|
||||||
'id': id
|
'id': id
|
||||||
}
|
}
|
||||||
|
|
@ -165,10 +202,11 @@ function delData(id) {
|
||||||
}, function (result) {
|
}, function (result) {
|
||||||
layer.close(loadingMsg); // 关闭提示层
|
layer.close(loadingMsg); // 关闭提示层
|
||||||
if (result.code === 200) {
|
if (result.code === 200) {
|
||||||
parent.layer.msg(result.msg, {icon: 1})
|
parent.layer.msg(result.data, {icon: 1})
|
||||||
|
parent.reloadData()
|
||||||
query()
|
query()
|
||||||
} else if (result.code === 500) {
|
} else if (result.code === 500) {
|
||||||
layer.alert(result.msg, {icon: 2})
|
layer.alert(result.data, {icon: 2})
|
||||||
}
|
}
|
||||||
}, function (xhr) {
|
}, function (xhr) {
|
||||||
layer.close(loadingMsg); // 关闭提示层
|
layer.close(loadingMsg); // 关闭提示层
|
||||||
|
|
@ -178,5 +216,32 @@ function delData(id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function exportThreeSpan(){
|
function exportThreeSpan(){
|
||||||
alert("导出")
|
let obj = {
|
||||||
|
towerName: $('#towerName').val(),
|
||||||
|
}
|
||||||
|
let params = {
|
||||||
|
encryptedData: encryptCBC(JSON.stringify(obj))
|
||||||
|
}
|
||||||
|
let loadingMsg = layer.msg("数据导出中,请稍候...", {icon: 16, scrollbar: false, time: 0,});
|
||||||
|
let url = dataUrl + "/tbThreeSpan/tbProjectExport?token=" + tokens + "&encryptedData=" + encodeURIComponent(encryptCBC(JSON.stringify(obj)));
|
||||||
|
let xhr = new XMLHttpRequest();
|
||||||
|
xhr.open("post", url, true);
|
||||||
|
xhr.responseType = "blob"; // 转换流
|
||||||
|
xhr.setRequestHeader('Content-Type','application/json;charset=UTF-8')
|
||||||
|
xhr.onload = function () {
|
||||||
|
layer.close(loadingMsg);
|
||||||
|
if (this.status === 200) {
|
||||||
|
let blob = this.response;
|
||||||
|
var a = document.createElement("a");
|
||||||
|
var url = window.URL.createObjectURL(blob);
|
||||||
|
a.href = url;
|
||||||
|
a.download = "三跨管理" + ".xlsx"; // 文件名
|
||||||
|
} else {
|
||||||
|
layer.msg("数据导出发生异常,请稍后重试", {icon: 16, scrollbar: false, time: 2000});
|
||||||
|
}
|
||||||
|
a.click();
|
||||||
|
window.URL.revokeObjectURL(url);
|
||||||
|
};
|
||||||
|
// xhr.send(params);
|
||||||
|
xhr.send();
|
||||||
}
|
}
|
||||||
|
|
@ -41,11 +41,14 @@
|
||||||
border-color: #409eff;
|
border-color: #409eff;
|
||||||
color: #409eff;
|
color: #409eff;
|
||||||
}
|
}
|
||||||
|
.layui-form-mid{
|
||||||
|
padding: 0px !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="main-box">
|
<div id="main-box">
|
||||||
<form class="layui-form" lay-filter="threeSpanForm">
|
<form class="layui-form" lay-filter="threeSpanForm" onsubmit="return false;">
|
||||||
<input type="hidden" name="id" id="id">
|
<input type="hidden" name="id" id="id">
|
||||||
|
|
||||||
<div class="layui-form-item" style="margin-top: 2%;">
|
<div class="layui-form-item" style="margin-top: 2%;">
|
||||||
|
|
@ -59,21 +62,28 @@
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>杆塔:</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>杆塔:</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline" style="width: 30%;">
|
||||||
<select name="towerId" lay-verify="required" lay-filter="towerSelect">
|
<select id="towerId" name="towerId" lay-verify="required" lay-filter="towerSelect">
|
||||||
<option value="">选择项目</option>
|
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-form-mid layui-word-aux">根据杆塔行序号自动填写下方杆塔序号</div>
|
<div class="layui-form-mid layui-word-aux" >
|
||||||
|
<select id="nextTowerName" name="nextTowerName">
|
||||||
|
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<input type="hidden" id="nextTowerId" name="nextTowerId">
|
||||||
|
<!-- <input type="text" id="nextTowerName" name="nextTowerName">-->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 跨线路输入框 -->
|
<!-- 跨线路字段 -->
|
||||||
<div id="crossLineFields">
|
<div id="crossLineFields" >
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>上层线路:</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>上层线路:</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="upperLine" lay-verify="required" autocomplete="off"
|
<input type="text" name="upperLine" lay-verify="required" autocomplete="off"
|
||||||
placeholder="请输入上层线路" class="layui-input">
|
placeholder="请输入上层线路" class="layui-input" maxlength="30">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
@ -81,23 +91,26 @@
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>下层线路:</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>下层线路:</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="lowerLine" lay-verify="required" autocomplete="off"
|
<input type="text" name="lowerLine" lay-verify="required" autocomplete="off"
|
||||||
placeholder="请输入下层线路" class="layui-input">
|
placeholder="请输入下层线路" class="layui-input" maxlength="30">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>交叉角度:</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>交叉角度:</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="crossAngle" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="intersectionAngle"
|
||||||
placeholder="请输入交叉角度" class="layui-input">
|
lay-verify="required|number"
|
||||||
|
autocomplete="off"
|
||||||
|
placeholder="请输入交叉角度"
|
||||||
|
class="layui-input" maxlength="30">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>垂直距离(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>垂直距离(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="verticalDistance" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="verticalDistance" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入垂直距离" class="layui-input">
|
placeholder="请输入垂直距离" class="layui-input" maxlength="30">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
@ -105,82 +118,90 @@
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>安全裕度(°):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>安全裕度(°):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="safetyMargin" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="safetyMargin" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入安全裕度" class="layui-input">
|
placeholder="请输入安全裕度" class="layui-input" maxlength="30">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 跨越杆塔经纬度信息 -->
|
<!-- 跨越杆塔经纬度信息 -->
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">跨越杆塔信息:</label>
|
<label class="layui-form-label">跨越杆塔信息</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
||||||
<div class="layui-input-inline" style="width: 140px;">
|
<div class="layui-input-inline" style="width: 260px;">
|
||||||
<input type="text" name="crossTowerLongitude1" autocomplete="off"
|
<input type="text" name="crossTowerLongitude1" autocomplete="off"
|
||||||
placeholder="经度" class="layui-input">
|
placeholder="请输入经度(-180.0~+180.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="longitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-input-inline" style="width: 140px; margin-right: 0;">
|
<div class="layui-input-inline" style="width: 260px; margin-right: 0;">
|
||||||
<input type="text" name="crossTowerLatitude1" autocomplete="off"
|
<input type="text" name="crossTowerLatitude1" autocomplete="off"
|
||||||
placeholder="纬度" class="layui-input">
|
placeholder="请输入纬度(-90.0~+90.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="latitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-form-mid" style="padding: 0 8px;">1</div>
|
<div class="layui-form-mid" style="padding: 10px 10px !important;">1</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
||||||
<div class="layui-input-inline" style="width: 140px;">
|
<div class="layui-input-inline" style="width: 260px;">
|
||||||
<input type="text" name="crossTowerLongitude2" autocomplete="off"
|
<input type="text" name="crossTowerLongitude2" autocomplete="off"
|
||||||
placeholder="经度" class="layui-input">
|
placeholder="请输入经度(-180.0~+180.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="longitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-input-inline" style="width: 140px; margin-right: 0;">
|
<div class="layui-input-inline" style="width: 260px; margin-right: 0;">
|
||||||
<input type="text" name="crossTowerLatitude2" autocomplete="off"
|
<input type="text" name="crossTowerLatitude2" autocomplete="off"
|
||||||
placeholder="纬度" class="layui-input">
|
placeholder="请输入纬度(-90.0~+90.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="latitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-form-mid" style="padding: 0 8px;">2</div>
|
<div class="layui-form-mid" style="padding: 10px 10px !important;">2</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
||||||
<div class="layui-input-inline" style="width: 140px;">
|
<div class="layui-input-inline" style="width: 260px;">
|
||||||
<input type="text" name="crossTowerLongitude3" autocomplete="off"
|
<input type="text" name="crossTowerLongitude3" autocomplete="off"
|
||||||
placeholder="经度" class="layui-input">
|
placeholder="请输入经度(-180.0~+180.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="longitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-input-inline" style="width: 140px; margin-right: 0;">
|
<div class="layui-input-inline" style="width: 260px; margin-right: 0;">
|
||||||
<input type="text" name="crossTowerLatitude3" autocomplete="off"
|
<input type="text" name="crossTowerLatitude3" autocomplete="off"
|
||||||
placeholder="纬度" class="layui-input">
|
placeholder="请输入纬度(-90.0~+90.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="latitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-form-mid" style="padding: 0 8px;">3</div>
|
<div class="layui-form-mid" style="padding: 10px 10px !important;">3</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
<label class="layui-form-label">跨越杆塔经纬度:</label>
|
||||||
<div class="layui-input-inline" style="width: 140px;">
|
<div class="layui-input-inline" style="width: 260px;">
|
||||||
<input type="text" name="crossTowerLongitude4" autocomplete="off"
|
<input type="text" name="crossTowerLongitude4" autocomplete="off"
|
||||||
placeholder="经度" class="layui-input">
|
placeholder="请输入经度(-180.0~+180.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="longitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-input-inline" style="width: 140px; margin-right: 0;">
|
<div class="layui-input-inline" style="width: 260px; margin-right: 0;">
|
||||||
<input type="text" name="crossTowerLatitude4" autocomplete="off"
|
<input type="text" name="crossTowerLatitude4" autocomplete="off"
|
||||||
placeholder="纬度" class="layui-input">
|
placeholder="请输入纬度(-90.0~+90.0)"
|
||||||
|
class="layui-input" maxlength="10" lay-verify="latitude">
|
||||||
</div>
|
</div>
|
||||||
<div class="layui-form-mid" style="padding: 0 8px;">4</div>
|
<div class="layui-form-mid" style="padding: 10px 10px !important;">4</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 跨公路输入框 -->
|
<!-- 跨公路字段 -->
|
||||||
<div id="crossPublicFields" style="display: none;">
|
<div id="crossPublicFields" style="display: none;">
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>垂直净距(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>垂直净距(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="verticalClearance" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="verticalClearDistance" id="verticalClearDistance" autocomplete="off"
|
||||||
placeholder="请输入垂直净距" class="layui-input">
|
placeholder="请输入垂直净距" class="layui-input" lay-verify="required|number">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>杆塔间距(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>杆塔间距(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="towerSpacing" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="towerSpacing" id="towerSpacing" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入杆塔间距" class="layui-input">
|
placeholder="请输入杆塔间距" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -188,18 +209,18 @@
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>公路宽度(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>公路宽度(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="roadWidth" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="highwayWidth" id="highwayWidth" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入公路宽度" class="layui-input">
|
placeholder="请输入公路宽度" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 跨铁路输入框 -->
|
<!-- 跨铁路字段 -->
|
||||||
<div id="crossRailwayFields" style="display: none;">
|
<div id="crossRailwayFields" style="display: none;">
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>垂直净距(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>垂直净距(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="verticalClearance" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="verticalClearDistances" id="verticalClearDistances" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入垂直净距" class="layui-input">
|
placeholder="请输入垂直净距" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -207,7 +228,7 @@
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>杆塔间距(m):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>杆塔间距(m):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="towerSpacing" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="towerSpacings" id="towerSpacings" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入杆塔间距" class="layui-input">
|
placeholder="请输入杆塔间距" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -215,7 +236,7 @@
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label"><span class="required-mark">*</span>交叉角度(°):</label>
|
<label class="layui-form-label"><span class="required-mark">*</span>交叉角度(°):</label>
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" name="crossAngle" lay-verify="required|number" autocomplete="off"
|
<input type="text" name="intersectionAngles" id="intersectionAngles" lay-verify="required|number" autocomplete="off"
|
||||||
placeholder="请输入交叉角度" class="layui-input">
|
placeholder="请输入交叉角度" class="layui-input">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<div class="layui-inline" style="padding: 0 0 0 10px;">
|
<div class="layui-inline" style="padding: 0 0 0 10px;">
|
||||||
<div class="layui-input-inline">
|
<div class="layui-input-inline">
|
||||||
<input type="text" id="towerName" name="towerName" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入杆塔号">
|
<input type="text" id="keyWord" name="keyWord" maxlength="30" class="layui-input" autocomplete="off" placeholder="请输入杆塔号">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue