基础管理-线路工程管理
This commit is contained in:
parent
8e4662b68b
commit
220f00bb8a
|
|
@ -1,4 +1,4 @@
|
|||
let form, layer, util,laydate, idParam, phoneParam;
|
||||
let form, layer, util,laydate, idParam, phoneParam,proId;
|
||||
let arr = ['background', 'web', 'mobile', 'wx'];
|
||||
let background, web, mobile, wx;
|
||||
let data = [], appResList = [];
|
||||
|
|
@ -7,6 +7,7 @@ let startDate, endDate;
|
|||
function setParams(params) {
|
||||
console.log(params)
|
||||
idParam = JSON.parse(params).id;
|
||||
proId = JSON.parse(params).proId;
|
||||
layui.use(['form', 'layer', 'util', 'laydate'], function () {
|
||||
form = layui.form;
|
||||
layer = layui.layer;
|
||||
|
|
@ -14,11 +15,18 @@ function setParams(params) {
|
|||
laydate = layui.laydate;
|
||||
var $ = layui.jquery;
|
||||
|
||||
// 默认选择WGS-84
|
||||
// $('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click');
|
||||
$('#wgs84Fields').show();
|
||||
$('#2000Fields').hide();
|
||||
// 设置验证规则
|
||||
$('input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]').removeAttr('lay-verify');
|
||||
$('input[name="longitude"], input[name="latitude"]').attr('lay-verify', 'required|number');
|
||||
|
||||
console.log(idParam + "idParam")
|
||||
if (idParam) {
|
||||
getTowerById();
|
||||
}
|
||||
|
||||
// 初始化表单
|
||||
form.render();
|
||||
|
||||
|
|
@ -27,7 +35,6 @@ function setParams(params) {
|
|||
let system = $(this).data('system');
|
||||
$('.coordinate-option').removeClass('active');
|
||||
$(this).addClass('active');
|
||||
|
||||
if(system === 'WGS-84') {
|
||||
$('#wgs84Fields').show();
|
||||
$('#2000Fields').hide();
|
||||
|
|
@ -53,7 +60,29 @@ function setParams(params) {
|
|||
number: [
|
||||
/^-?\d+\.?\d*$/,
|
||||
'请输入有效的数字'
|
||||
]
|
||||
],
|
||||
customSortNumber: function (value) {
|
||||
if (value < 1) { // 验证是否小于1
|
||||
return '排序号不能小于1';
|
||||
}
|
||||
},
|
||||
// 经度验证
|
||||
longitude: function (value, item) {
|
||||
if (value) {
|
||||
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) {
|
||||
if (!/^[\-\+]?((90(\.0{1,6})?)|(([0-8]?\d)(\.\d{1,6})?))$/.test(value)) {
|
||||
return '请输入正确的纬度(-90.0~+90.0)';
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 表单提交
|
||||
|
|
@ -61,52 +90,26 @@ function setParams(params) {
|
|||
let formData = data.field;
|
||||
let currentSystem = $('.coordinate-option.active').data('system');
|
||||
formData.coordinateSystem = currentSystem;
|
||||
|
||||
// 验证必填项
|
||||
if(!formData.towerName) {
|
||||
layer.msg('请输入杆塔名称', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
if(!formData.sortNumber) {
|
||||
layer.msg('请输入排序号', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
|
||||
// 根据坐标系验证必填项
|
||||
if(currentSystem === 'WGS-84') {
|
||||
if(!formData.longitude) {
|
||||
layer.msg('请输入经度', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
if(!formData.latitude) {
|
||||
layer.msg('请输入纬度', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
if(!formData.centralMeridian) {
|
||||
layer.msg('请输入中央子午线', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
if(!formData.longitude2000) {
|
||||
layer.msg('请输入经度', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
if(!formData.latitude2000) {
|
||||
layer.msg('请输入纬度', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 处理提交数据
|
||||
if(currentSystem === 'WGS-84') {
|
||||
delete formData.longitude2000;
|
||||
delete formData.latitude2000;
|
||||
delete formData.centralMeridian;
|
||||
formData.uploadType = "1";
|
||||
formData.lon = formData.longitude;
|
||||
formData.lat = formData.latitude;
|
||||
} else {
|
||||
delete formData.longitude;
|
||||
delete formData.latitude;
|
||||
formData.uploadType = "2";
|
||||
formData.lon = formData.longitude2000;
|
||||
formData.lat = formData.latitude2000;
|
||||
}
|
||||
|
||||
if(formData.sort<1){
|
||||
layer.msg('排序号不能小于1', {icon: 2});
|
||||
return false;
|
||||
}
|
||||
formData.proId=proId;
|
||||
saveData(formData);
|
||||
return false;
|
||||
});
|
||||
|
|
@ -117,7 +120,7 @@ function setParams(params) {
|
|||
// 根据id获取杆塔信息
|
||||
function getTowerById() {
|
||||
let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, time: 0});
|
||||
let url = dataUrl + "/tower/getById";
|
||||
let url = dataUrl + "/tbTower/getTbTowerById";
|
||||
let params = {
|
||||
id: idParam,
|
||||
encryptedData: encryptCBC(JSON.stringify({id: idParam}))
|
||||
|
|
@ -139,10 +142,41 @@ function getTowerById() {
|
|||
// 设置表单数据
|
||||
function setFormData(data) {
|
||||
if(data) {
|
||||
// 先设置基本表单数据
|
||||
form.val("towerForm", data);
|
||||
// 设置坐标系
|
||||
|
||||
// 根据 uploadType 设置坐标系选择
|
||||
if(data.uploadType) {
|
||||
$('.coordinate-option').removeClass('active');
|
||||
$(`.coordinate-option[data-system="${data.coordinateSystem}"]`).addClass('active').trigger('click');
|
||||
switch(data.uploadType) {
|
||||
case "1":
|
||||
// WGS-84地心坐标系
|
||||
$('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click');
|
||||
break;
|
||||
case "2":
|
||||
// 2000国家大地坐标系
|
||||
$('.coordinate-option[data-system="2000"]').addClass('active').trigger('click');
|
||||
break;
|
||||
default:
|
||||
// 默认选择WGS-84
|
||||
$('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click');
|
||||
}
|
||||
}
|
||||
|
||||
// 根据坐标系类型设置值
|
||||
if(data.uploadType == "1"){
|
||||
// 设置WGS-84的经纬度值
|
||||
$('input[name="longitude"]').val(data.lon);
|
||||
$('input[name="latitude"]').val(data.lat);
|
||||
} else if(data.uploadType == "2"){
|
||||
// 设置2000坐标系的经纬度和中央子午线
|
||||
$('input[name="longitude2000"]').val(data.lon);
|
||||
$('input[name="latitude2000"]').val(data.lat);
|
||||
$('input[name="centralMeridian"]').val(data.centralMeridian);
|
||||
}
|
||||
|
||||
// 重新渲染表单
|
||||
form.render();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -152,13 +186,13 @@ function saveData2() {
|
|||
|
||||
// 保存数据
|
||||
function saveData(data) {
|
||||
console.log("保存数据", data)
|
||||
let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
let url = dataUrl + "/tower/add";
|
||||
let url = dataUrl + "/tbTower/addTbTower";
|
||||
let params = data; // 修改这里,因为data已经是处理好的数据
|
||||
if (params.id) {
|
||||
url = dataUrl + "/tower/update";
|
||||
url = dataUrl + "/tbTower/updateTbTower";
|
||||
}
|
||||
|
||||
console.log("杆塔管理的新增修改", params);
|
||||
params = {
|
||||
encryptedData: encryptCBC(JSON.stringify(params))
|
||||
|
|
@ -202,5 +236,6 @@ function closePage(type) {
|
|||
parent.layer.close(index); //再执行关闭
|
||||
if (type === 1) {
|
||||
parent.reloadData()
|
||||
parent.parent.reloadData()
|
||||
}
|
||||
}
|
||||
|
|
@ -14,7 +14,7 @@ function setParams(params) {
|
|||
|
||||
function pages(pageNum, pageSize, typeNum) {
|
||||
let params = getReqParams(pageNum, pageSize, typeNum);
|
||||
let url = dataUrl + "/users/getList"
|
||||
let url = dataUrl + "/tbTower/getTbTowerList"
|
||||
ajaxRequest(url, "POST", params, true, function () {
|
||||
}, function (result) {
|
||||
console.log(result);
|
||||
|
|
@ -70,10 +70,10 @@ function initTable(dataList, limit, page) {
|
|||
return (page - 1) * limit + d.LAY_INDEX;
|
||||
}
|
||||
},
|
||||
{field: "loginName", title: "杆塔号", unresize: true, align: "center"},
|
||||
{field: "username", title: "经度", unresize: true, align: "center"},
|
||||
{field: "username", title: "纬度", unresize: true, align: "center"},
|
||||
{field: "roleName", title: "排序号", unresize: true, align: "center"},
|
||||
{field: "towerName", title: "杆塔号", unresize: true, align: "center"},
|
||||
{field: "lon", title: "经度", unresize: true, align: "center"},
|
||||
{field: "lat", title: "纬度", unresize: true, align: "center"},
|
||||
{field: "sort", title: "排序号", unresize: true, align: "center"},
|
||||
{
|
||||
title: "操作", unresize: true, width: 200, align: "center",
|
||||
templet: function (d) {
|
||||
|
|
@ -109,6 +109,7 @@ function getReqParams(page, limit, type) {
|
|||
obj = {
|
||||
page: page + "",
|
||||
limit: limit + "",
|
||||
proId: idParam,
|
||||
towerName: $('#towerName').val()
|
||||
};
|
||||
console.log("杆塔管理查询条件", obj)
|
||||
|
|
@ -136,7 +137,8 @@ function reloadData() {
|
|||
function addData(id) {
|
||||
let title = '修改'
|
||||
let param = {
|
||||
'id': id
|
||||
'id': id,
|
||||
'proId':idParam
|
||||
}
|
||||
openIframe2("editPro", title, "towerFormTemp.html", '1000px', '625px', param);
|
||||
}
|
||||
|
|
@ -144,7 +146,8 @@ function addData(id) {
|
|||
function addDataTower(id) {
|
||||
let title = '新增'
|
||||
let param = {
|
||||
'id': id
|
||||
'id': id,
|
||||
'proId':idParam
|
||||
}
|
||||
openIframe2("addDataTower", title, "towerFormTemp.html", '1000px', '625px', param);
|
||||
}
|
||||
|
|
@ -155,7 +158,7 @@ function delData(id) {
|
|||
move: false
|
||||
}, function () {
|
||||
let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0});
|
||||
let url = dataUrl + "/users/delById";
|
||||
let url = dataUrl + "/tbTower/delTbTower";
|
||||
let params = {
|
||||
'id': id
|
||||
}
|
||||
|
|
@ -166,10 +169,11 @@ function delData(id) {
|
|||
}, function (result) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
if (result.code === 200) {
|
||||
parent.layer.msg(result.msg, {icon: 1})
|
||||
parent.layer.msg(result.data, {icon: 1})
|
||||
parent.reloadData()
|
||||
query()
|
||||
} else if (result.code === 500) {
|
||||
layer.alert(result.msg, {icon: 2})
|
||||
layer.alert(result.data, {icon: 2})
|
||||
}
|
||||
}, function (xhr) {
|
||||
layer.close(loadingMsg); // 关闭提示层
|
||||
|
|
@ -232,7 +236,34 @@ function addRopeway(id){
|
|||
}
|
||||
|
||||
function exportTower(){
|
||||
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 + "/tbTower/tbTowerExport?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();
|
||||
}
|
||||
|
||||
function importTower(){
|
||||
|
|
|
|||
|
|
@ -59,15 +59,15 @@
|
|||
<label class="layui-form-label"><span class="required-mark">*</span>杆塔:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="towerName" lay-verify="required" autocomplete="off"
|
||||
placeholder="请输入杆塔名称" class="layui-input">
|
||||
placeholder="请输入杆塔名称" class="layui-input" maxlength="30">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>排序号:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="sortNumber" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入排序号" class="layui-input">
|
||||
<input type="text" name="sort" lay-verify="required|number|customSortNumber" autocomplete="off"
|
||||
placeholder="请输入排序号" class="layui-input" maxlength="10">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -88,16 +88,16 @@
|
|||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>经度:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="longitude" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入经度" class="layui-input">
|
||||
<input type="text" name="longitude" lay-verify="required|longitude" autocomplete="off"
|
||||
placeholder="请输入经度(-180.0~+180.0)" maxlength="10" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>纬度:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="latitude" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入纬度" class="layui-input">
|
||||
<input type="text" name="latitude" lay-verify="required|latitude" autocomplete="off"
|
||||
placeholder="请输入纬度(-90.0~+90.0)" maxlength="10" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -107,24 +107,24 @@
|
|||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>中央子午线:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="centralMeridian" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入中央子午线" class="layui-input">
|
||||
<input type="text" name="centralMeridian" lay-verify="required" autocomplete="off"
|
||||
placeholder="请输入中央子午线" class="layui-input" maxlength="30">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>经度:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="longitude2000" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入经度" class="layui-input">
|
||||
<input type="text" name="longitude2000" lay-verify="required|longitude" autocomplete="off"
|
||||
placeholder="请输入经度(-180.0~+180.0)" maxlength="10" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="required-mark">*</span>纬度:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="latitude2000" lay-verify="required|number" autocomplete="off"
|
||||
placeholder="请输入纬度" class="layui-input">
|
||||
<input type="text" name="latitude2000" lay-verify="required|latitude" autocomplete="off"
|
||||
placeholder="请输入纬度(-90.0~+90.0)" maxlength="10" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Reference in New Issue