From b1ef4db7c6cb066eaa39881792b4b616db304eb1 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Thu, 12 Jun 2025 16:41:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lineManagement/child/towerFormTemp.js | 253 +++++++++++------- .../lineManagement/child/towerFormTemp.html | 143 +++++----- 2 files changed, 226 insertions(+), 170 deletions(-) diff --git a/src/main/resources/static/js/basic/lineManagement/child/towerFormTemp.js b/src/main/resources/static/js/basic/lineManagement/child/towerFormTemp.js index 98f594e..48c41aa 100644 --- a/src/main/resources/static/js/basic/lineManagement/child/towerFormTemp.js +++ b/src/main/resources/static/js/basic/lineManagement/child/towerFormTemp.js @@ -1,14 +1,15 @@ -let form, layer, util,laydate, idParam, phoneParam,proId; -let arr = ['background', 'web', 'mobile', 'wx']; +let form, layer, util, laydate, idParam, phoneParam, proId; +let arr = ["background", "web", "mobile", "wx"]; let background, web, mobile, wx; -let data = [], appResList = []; +let data = [], + appResList = []; let startDate, endDate; function setParams(params) { - console.log(params) + console.log(params); 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; layer = layui.layer; util = layui.util; @@ -17,17 +18,17 @@ function setParams(params) { // 默认选择WGS-84 // $('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click'); - $('#wgs84Fields').show(); - $('#2000Fields').hide(); - $('input[name="centralMeridian"]').removeAttr('lay-verify'); - $('input[name="longitude2000"]').removeAttr('lay-verify'); - $('input[name="latitude2000"]').removeAttr('lay-verify'); + $("#wgs84Fields").show(); + $("#2000Fields").hide(); + $('input[name="centralMeridian"]').removeAttr("lay-verify"); + $('input[name="longitude2000"]').removeAttr("lay-verify"); + $('input[name="latitude2000"]').removeAttr("lay-verify"); // 设置验证规则 - /* $('input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]').removeAttr('lay-verify'); + /* $('input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]').removeAttr('lay-verify'); $('input[name="longitude"]').attr('lay-verify', 'required|longitude'); $('input[name="latitude"]').attr('lay-verify', 'required|latitude'); */ - console.log(idParam + "idParam") + console.log(idParam + "idParam"); if (idParam) { getTowerById(); } @@ -35,49 +36,72 @@ function setParams(params) { form.render(); // 坐标系切换 - $('.coordinate-option').click(function() { - let system = $(this).data('system'); - $('.coordinate-option').removeClass('active'); - $(this).addClass('active'); - if(system === 'WGS-84') { - $('#wgs84Fields').show(); - $('#2000Fields').hide(); + $(".coordinate-option").click(function () { + let system = $(this).data("system"); + $(".coordinate-option").removeClass("active"); + $(this).addClass("active"); + if (system === "WGS-84") { + $("#wgs84Fields").show(); + $("#2000Fields").hide(); // 设置验证规则 - $('input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]').removeAttr('lay-verify'); - $('input[name="longitude"]').attr('lay-verify', 'required|longitude'); - $('input[name="latitude"]').attr('lay-verify', 'required|latitude'); + $( + 'input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]' + ).removeAttr("lay-verify"); + $('input[name="longitude"]').attr( + "lay-verify", + "required|longitude" + ); + $('input[name="latitude"]').attr( + "lay-verify", + "required|latitude" + ); // $('input[name="longitude"], input[name="latitude"]').attr('lay-verify', 'required|number'); - $('input[name="centralMeridian"]').removeAttr('lay-verify'); + $('input[name="centralMeridian"]').removeAttr("lay-verify"); } else { - $('#wgs84Fields').hide(); - $('#2000Fields').show(); + $("#wgs84Fields").hide(); + $("#2000Fields").show(); // 设置验证规则 - $('input[name="longitude"], input[name="latitude"]').removeAttr('lay-verify'); + $('input[name="longitude"], input[name="latitude"]').removeAttr( + "lay-verify" + ); // $('input[name^="longitude2000"], input[name^="latitude2000"], input[name="centralMeridian"]').attr('lay-verify', 'required|number'); - $('input[name="longitude2000"]').attr('lay-verify', 'required|longitude'); - $('input[name="latitude2000"]').attr('lay-verify', 'required|latitude'); - $('input[name="centralMeridian"]').attr('lay-verify', 'required'); + $('input[name="longitude2000"]').attr( + "lay-verify", + "required|longitude" + ); + $('input[name="latitude2000"]').attr( + "lay-verify", + "required|latitude" + ); + $('input[name="centralMeridian"]').attr( + "lay-verify", + "required|number" + ); } }); // 表单验证 form.verify({ - required: function(value, item) { - if(!value) { - return '必填项不能为空'; + required: function (value, item) { + if (!value) { + return "必填项不能为空"; + } + }, + number: function (value, item) { + const strictPositiveNumberRegex = + /^([1-9]\d*(\.\d+)?|0\.\d*[1-9]\d*)$/; + if (!strictPositiveNumberRegex.test(value)) { + return "请输入有效的数字"; } }, - number: [ - /^-?\d+\.?\d*$/, - '请输入有效的数字' - ], customSortNumber: function (value) { - if (value < 1) { // 验证是否小于1 - return '排序号不能小于1'; + if (value < 1) { + // 验证是否小于1 + return "排序号不能小于1"; } }, // 经度验证 - /* longitude: function (value, item) { + /* 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)'; @@ -116,12 +140,12 @@ function setParams(params) { }); // 表单提交 - form.on('submit(formData)', function(data) { + form.on("submit(formData)", function (data) { let formData = data.field; - let currentSystem = $('.coordinate-option.active').data('system'); + let currentSystem = $(".coordinate-option.active").data("system"); formData.coordinateSystem = currentSystem; // 处理提交数据 - if(currentSystem === 'WGS-84') { + if (currentSystem === "WGS-84") { delete formData.longitude2000; delete formData.latitude2000; delete formData.centralMeridian; @@ -135,70 +159,83 @@ function setParams(params) { formData.lon = formData.longitude2000; formData.lat = formData.latitude2000; } - if(formData.sort<1){ - layer.msg('排序号不能小于1', {icon: 2}); + if (formData.sort < 1) { + layer.msg("排序号不能小于1", { icon: 2 }); return false; } - formData.proId=proId; + formData.proId = proId; saveData(formData); return false; }); - }); } // 根据id获取杆塔信息 function getTowerById() { - let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, time: 0}); + let loadingMsg = layer.msg("数据加载中,请稍候...", { icon: 16, time: 0 }); let url = dataUrl + "/tbTower/getTbTowerById"; let params = { id: idParam, - encryptedData: encryptCBC(JSON.stringify({id: idParam})) + encryptedData: encryptCBC(JSON.stringify({ id: idParam })), }; - ajaxRequest(url, "POST", params, true, null, function(result) { - layer.close(loadingMsg); - if (result.code === 200) { - setFormData(result.data); - } else { - layer.alert(result.msg, {icon: 2}); + ajaxRequest( + url, + "POST", + params, + true, + null, + function (result) { + layer.close(loadingMsg); + if (result.code === 200) { + setFormData(result.data); + } else { + layer.alert(result.msg, { icon: 2 }); + } + }, + function (xhr) { + layer.close(loadingMsg); + error(xhr); } - }, function(xhr) { - layer.close(loadingMsg); - error(xhr); - }); + ); } // 设置表单数据 function setFormData(data) { - if(data) { + if (data) { // 先设置基本表单数据 form.val("towerForm", data); // 根据 uploadType 设置坐标系选择 - if(data.uploadType) { - $('.coordinate-option').removeClass('active'); - switch(data.uploadType) { + if (data.uploadType) { + $(".coordinate-option").removeClass("active"); + switch (data.uploadType) { case "1": // WGS-84地心坐标系 - $('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click'); + $('.coordinate-option[data-system="WGS-84"]') + .addClass("active") + .trigger("click"); break; case "2": // 2000国家大地坐标系 - $('.coordinate-option[data-system="2000"]').addClass('active').trigger('click'); + $('.coordinate-option[data-system="2000"]') + .addClass("active") + .trigger("click"); break; default: // 默认选择WGS-84 - $('.coordinate-option[data-system="WGS-84"]').addClass('active').trigger('click'); + $('.coordinate-option[data-system="WGS-84"]') + .addClass("active") + .trigger("click"); } } // 根据坐标系类型设置值 - if(data.uploadType == "1"){ + if (data.uploadType == "1") { // 设置WGS-84的经纬度值 $('input[name="longitude"]').val(data.lon); $('input[name="latitude"]').val(data.lat); - } else if(data.uploadType == "2"){ + } else if (data.uploadType == "2") { // 设置2000坐标系的经纬度和中央子午线 $('input[name="longitude2000"]').val(data.lon); $('input[name="latitude2000"]').val(data.lat); @@ -211,57 +248,73 @@ function setFormData(data) { } function saveData2() { - $('#formSubmit').trigger('click') + $("#formSubmit").trigger("click"); } // 保存数据 function saveData(data) { - console.log("保存数据", data) - let loadingMsg = layer.msg('数据上传中,请稍候...', {icon: 16, scrollbar: false, time: 0}); + console.log("保存数据", data); + let loadingMsg = layer.msg("数据上传中,请稍候...", { + icon: 16, + scrollbar: false, + time: 0, + }); let url = dataUrl + "/tbTower/addTbTower"; - let params = data; // 修改这里,因为data已经是处理好的数据 + let params = data; // 修改这里,因为data已经是处理好的数据 if (params.id) { url = dataUrl + "/tbTower/updateTbTower"; } console.log("杆塔管理的新增修改", params); params = { - encryptedData: encryptCBC(JSON.stringify(params)) - } + encryptedData: encryptCBC(JSON.stringify(params)), + }; // 禁用所有输入框和按钮 function disableForm() { - $('input').attr('disabled', true); - $('.coordinate-option').css('pointer-events', 'none'); - $('.save, .cancel').addClass("layui-btn-disabled").attr("disabled", true); + $("input").attr("disabled", true); + $(".coordinate-option").css("pointer-events", "none"); + $(".save, .cancel") + .addClass("layui-btn-disabled") + .attr("disabled", true); } // 启用所有输入框和按钮 function enableForm() { - $('input').attr('disabled', false); - $('.coordinate-option').css('pointer-events', 'auto'); - $('.save, .cancel').removeClass("layui-btn-disabled").attr("disabled", false); + $("input").attr("disabled", false); + $(".coordinate-option").css("pointer-events", "auto"); + $(".save, .cancel") + .removeClass("layui-btn-disabled") + .attr("disabled", false); } - ajaxRequest(url, "POST", params, true, function () { - disableForm(); // 请求开始时禁用表单 - }, function (result) { - layer.close(loadingMsg); - if (result.code === 200) { - layer.msg(result.msg, {icon: 1}); - setTimeout(function () { - closePage(1); - },3000) - } else { - layer.alert(result.msg, {icon: 2}) - setTimeout(function () { - enableForm(); - },3000) + ajaxRequest( + url, + "POST", + params, + true, + function () { + disableForm(); // 请求开始时禁用表单 + }, + function (result) { + layer.close(loadingMsg); + if (result.code === 200) { + layer.msg(result.msg, { icon: 1 }); + setTimeout(function () { + closePage(1); + }, 3000); + } else { + layer.alert(result.msg, { icon: 2 }); + setTimeout(function () { + enableForm(); + }, 3000); + } + }, + function (xhr) { + layer.close(loadingMsg); + enableForm(); // 发生错误时启用表单 + error(xhr); } - }, function (xhr) { - layer.close(loadingMsg); - enableForm(); // 发生错误时启用表单 - error(xhr) - }); + ); } // 关闭页面 @@ -269,7 +322,7 @@ function closePage(type) { let index = parent.layer.getFrameIndex(window.name); //先得到当前 iframe层的索引 parent.layer.close(index); //再执行关闭 if (type === 1) { - parent.reloadData() - parent.parent.reloadData() + parent.reloadData(); + parent.parent.reloadData(); } } diff --git a/src/main/resources/static/pages/basic/lineManagement/child/towerFormTemp.html b/src/main/resources/static/pages/basic/lineManagement/child/towerFormTemp.html index c369bc2..c10235e 100644 --- a/src/main/resources/static/pages/basic/lineManagement/child/towerFormTemp.html +++ b/src/main/resources/static/pages/basic/lineManagement/child/towerFormTemp.html @@ -1,10 +1,11 @@ + - + @@ -50,94 +51,96 @@ } + -
-
- +
+ + -
- -
- -
-
- -
- -
- -
-
- -
- -
-
- WGS-84地心坐标系 -
-
- 2000国家大地坐标系 -
-
-
- - -
-
- +
+
- +
- +
- -
-
-
- - -