From 1a8cda96af68063885a7cd16135767e3e352b6e0 Mon Sep 17 00:00:00 2001 From: lSun <15893999301@qq.com> Date: Tue, 29 Apr 2025 14:02:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E7=AE=A1=E7=90=86-=E7=BA=BF?= =?UTF-8?q?=E8=B7=AF=E5=B7=A5=E7=A8=8B=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/controller/DownloadController.java | 71 ++++++++++++++++++ .../basic/dao/ProManagementDao.java | 4 +- .../impl/ProManagementServiceImpl.java | 3 +- .../config/BnsSecurityConfig.java | 2 +- .../杆塔管理-2000国家大地坐标系导入模版.xlsx | Bin 0 -> 9506 bytes .../杆塔管理-WGS-84地心坐标系导入模版.xlsx | Bin 0 -> 9484 bytes .../mappers/basic/ProManagementMapper.xml | 6 +- .../basic/lineManagement/child/importTower.js | 46 +++++++++--- .../lineManagement/child/threeSpanList.js | 6 +- .../basic/lineManagement/child/towerList.js | 56 +------------- 10 files changed, 120 insertions(+), 74 deletions(-) create mode 100644 src/main/java/com/bonus/digitalSignage/basic/controller/DownloadController.java create mode 100644 src/main/resources/download/杆塔管理-2000国家大地坐标系导入模版.xlsx create mode 100644 src/main/resources/download/杆塔管理-WGS-84地心坐标系导入模版.xlsx diff --git a/src/main/java/com/bonus/digitalSignage/basic/controller/DownloadController.java b/src/main/java/com/bonus/digitalSignage/basic/controller/DownloadController.java new file mode 100644 index 0000000..7b295c0 --- /dev/null +++ b/src/main/java/com/bonus/digitalSignage/basic/controller/DownloadController.java @@ -0,0 +1,71 @@ +package com.bonus.digitalSignage.basic.controller; + +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.apache.poi.util.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ResourceLoader; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.InputStream; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.Objects; + +@Api(tags = "下载") +@RestController +@RequestMapping("/download") +@Slf4j +public class DownloadController { + public static Logger logger = LoggerFactory.getLogger(DownloadController.class); + + @Resource + private ResourceLoader resourceLoader; + + @ApiOperation(value = "模板", httpMethod = "GET") + @GetMapping("download") + public void download(HttpServletRequest request, HttpServletResponse response, String filename) { + InputStream inputStream = null; + ServletOutputStream servletOutputStream = null; + try { + String path = "download/" + filename; + org.springframework.core.io.Resource resource = resourceLoader.getResource("classpath:" + path); + response.setContentType("application/vnd.ms-excel"); + response.addHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + response.addHeader("charset", "utf-8"); + response.addHeader("Pragma", "no-cache"); + String encodeName = URLEncoder.encode(filename, StandardCharsets.UTF_8.toString()); + response.setHeader("Content-Disposition", "attachment; filename=\"" + encodeName + "\"; filename*=utf-8''" + encodeName); + + inputStream = resource.getInputStream(); + servletOutputStream = response.getOutputStream(); + IOUtils.copy(inputStream, servletOutputStream); + response.flushBuffer(); + } catch (Exception e) { + e.printStackTrace(); + } finally { + try { + if (servletOutputStream != null) { + servletOutputStream.close(); + } + if (inputStream != null) { + inputStream.close(); + } + // 召唤jvm的垃圾回收器 + System.gc(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + +} diff --git a/src/main/java/com/bonus/digitalSignage/basic/dao/ProManagementDao.java b/src/main/java/com/bonus/digitalSignage/basic/dao/ProManagementDao.java index 1ec8f91..62cae74 100644 --- a/src/main/java/com/bonus/digitalSignage/basic/dao/ProManagementDao.java +++ b/src/main/java/com/bonus/digitalSignage/basic/dao/ProManagementDao.java @@ -15,14 +15,12 @@ public interface ProManagementDao { List getAll(); - ProManagementVo getProId(ProManagementVo bean); - int addPro(ProManagementVo bean); int updatePro(ProManagementVo bean); int deletePro(ProManagementVo bean); -// int getProId(ProManagementVo bean); + int getProId(ProManagementVo bean); } diff --git a/src/main/java/com/bonus/digitalSignage/basic/service/impl/ProManagementServiceImpl.java b/src/main/java/com/bonus/digitalSignage/basic/service/impl/ProManagementServiceImpl.java index 29727e8..4fba1bb 100644 --- a/src/main/java/com/bonus/digitalSignage/basic/service/impl/ProManagementServiceImpl.java +++ b/src/main/java/com/bonus/digitalSignage/basic/service/impl/ProManagementServiceImpl.java @@ -48,8 +48,7 @@ public class ProManagementServiceImpl implements ProManagementService { @Override public int getProId(ProManagementVo bean) { - return 0; -// return dao.getProId(bean); + return dao.getProId(bean); } diff --git a/src/main/java/com/bonus/digitalSignage/config/BnsSecurityConfig.java b/src/main/java/com/bonus/digitalSignage/config/BnsSecurityConfig.java index 2a04ec1..7e0f58f 100644 --- a/src/main/java/com/bonus/digitalSignage/config/BnsSecurityConfig.java +++ b/src/main/java/com/bonus/digitalSignage/config/BnsSecurityConfig.java @@ -54,7 +54,7 @@ public class BnsSecurityConfig extends WebSecurityConfigurerAdapter { http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); http.authorizeRequests() .antMatchers("/", "/*.html", "/favicon.ico", "/css/**", "/js/**", "/fonts/**", "/layui/**", "/img/**" - , "/webjars/**", "/pages/**","/login","/loginApp/**", + , "/webjars/**", "/pages/**","/login","/loginApp/**","/download/**", "/statics/**","/websocketServer/**","/api/download/**") .permitAll().anyRequest().authenticated(); http.formLogin().loginProcessingUrl("/login") diff --git a/src/main/resources/download/杆塔管理-2000国家大地坐标系导入模版.xlsx b/src/main/resources/download/杆塔管理-2000国家大地坐标系导入模版.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..60bcf56b699f2aa298fdabe60af310946137d38b GIT binary patch literal 9506 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/download/杆塔管理-WGS-84地心坐标系导入模版.xlsx b/src/main/resources/download/杆塔管理-WGS-84地心坐标系导入模版.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2348e14cbe62d0699b87a9e9d7c7d34fb73158a1 GIT binary patch literal 9484 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 a7xq`JfV>pckB1cvRA2)Gk~<`M!u>z3Yjk)3 literal 0 HcmV?d00001 diff --git a/src/main/resources/mappers/basic/ProManagementMapper.xml b/src/main/resources/mappers/basic/ProManagementMapper.xml index f6d4569..de620bd 100644 --- a/src/main/resources/mappers/basic/ProManagementMapper.xml +++ b/src/main/resources/mappers/basic/ProManagementMapper.xml @@ -15,9 +15,9 @@ po.is_active = '1' - + SELECT count(1) FROM `tb_project` + WHERE depart_id = #{id} diff --git a/src/main/resources/static/js/basic/lineManagement/child/importTower.js b/src/main/resources/static/js/basic/lineManagement/child/importTower.js index fb1fc2a..8141774 100644 --- a/src/main/resources/static/js/basic/lineManagement/child/importTower.js +++ b/src/main/resources/static/js/basic/lineManagement/child/importTower.js @@ -1,4 +1,10 @@ +let form, layer, util,laydate, idParam, phoneParam,proId; +let arr = ['background', 'web', 'mobile', 'wx']; +let background, web, mobile, wx; function setParams(params) { + console.log(params) + idParam = JSON.parse(params).id; + proId = JSON.parse(params).proId; layui.use(['upload', 'layer'], function(){ var upload = layui.upload; var layer = layui.layer; @@ -27,26 +33,45 @@ function setParams(params) { document.getElementById('downloadTemplateWGS84').addEventListener('click', function() { layer.msg('开始下载WGS-84坐标系模板'); // 实际项目中替换为真实的下载链接 - // window.location.href = 'path/to/wgs84_template.xlsx'; + window.location.href =ctxPath + '/download/download?filename=杆塔管理-WGS-84地心坐标系导入模版.xlsx'; }); // 2000国家大地坐标系模板下载 document.getElementById('downloadTemplate2000').addEventListener('click', function() { layer.msg('开始下载2000国家大地坐标系模板'); // 实际项目中替换为真实的下载链接 - // window.location.href = 'path/to/2000_template.xlsx'; + window.location.href = ctxPath +'/download/download?filename=杆塔管理-2000国家大地坐标系导入模版.xlsx'; }); + let WG = { + uploadType: '1', + proId:proId + } + console.log("WG",WG) + let paramsWG = { + encryptedData: encryptCBC(JSON.stringify(WG)) + } + + let WG2 = { + uploadType: '2', + proId:proId + } + console.log("WG2",WG2) + let paramsWG2 = { + encryptedData: encryptCBC(JSON.stringify(WG2)) + } + // WGS-84坐标系文件上传 upload.render({ elem: '#uploadFileWGS84', - url: '', // 上传接口 + url: ctxPath + '/tbTower/tbTowerImport', // 上传接口 + headers: { + "token": tokens + }, accept: 'file', exts: 'xls|xlsx', size: 10240, // 限制文件大小10MB - data: { - system: 'wgs84' - }, + data: paramsWG, before: function(obj) { layer.load(); // 上传loading }, @@ -67,13 +92,14 @@ function setParams(params) { // 2000国家大地坐标系文件上传 upload.render({ elem: '#uploadFile2000', - url: '', // 上传接口 + url: ctxPath + '/tbTower/tbTowerImport', // 上传接口 + headers: { + "token": tokens + }, accept: 'file', exts: 'xls|xlsx', size: 10240, // 限制文件大小10MB - data: { - system: '2000' - }, + data: paramsWG2, before: function(obj) { layer.load(); // 上传loading }, diff --git a/src/main/resources/static/js/basic/lineManagement/child/threeSpanList.js b/src/main/resources/static/js/basic/lineManagement/child/threeSpanList.js index dd524f4..2fc4781 100644 --- a/src/main/resources/static/js/basic/lineManagement/child/threeSpanList.js +++ b/src/main/resources/static/js/basic/lineManagement/child/threeSpanList.js @@ -70,7 +70,11 @@ function initTable(dataList, limit, page) { return (page - 1) * limit + d.LAY_INDEX; } }, - {field: "towerName", title: "杆塔号", unresize: true, align: "center"}, + {field: "towerName", title: "杆塔号", unresize: true, align: "center", + templet: function (d) { + return d.towerName+"-"+d.nextTowerName; + } + }, {field: "", title: "跨越类型", unresize: true, align: "center", templet: function (d) { if(d.spanType == 1){ diff --git a/src/main/resources/static/js/basic/lineManagement/child/towerList.js b/src/main/resources/static/js/basic/lineManagement/child/towerList.js index 73ac338..063f13f 100644 --- a/src/main/resources/static/js/basic/lineManagement/child/towerList.js +++ b/src/main/resources/static/js/basic/lineManagement/child/towerList.js @@ -182,59 +182,6 @@ function delData(id) { }) } -// 启用/停用/解除锁定 -function editUserAccountStatus(id, status, type) { - let url = dataUrl + "/sys/user/editUserAccountStatus?token=" + token; - let params = { - 'id': id, - 'accountStatus': status, - 'type': type - } - ajaxRequest(url, "POST", params, true, function () { - }, function (result) { - if (result.code === 200) { - if (type) { - reloadData(); - } - parent.layer.msg(result.msg, {icon: 1}) - } else if (result.code === 500) { - layer.alert(result.msg, {icon: 2}) - } - }, function (xhr) { - error(xhr) - }); -} - -// 管理员修改密码 -function resetPwd(id) { - let param = { - 'id': id, - 'type': '1' - } - openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param); -} - -function addTower(id){ - let param = { - 'id': id - } - openIframe2("tower", '杆塔管理', "child/towerList.html", '1200px', '625px', param); -} - -function addThreeSpan(id){ - let param = { - 'id': id - } - openIframe2("threeSpan", '“三跨”管理', "child/threeSpanList.html", '1200px', '625px', param); -} - -function addRopeway(id){ - let param = { - 'id': id - } - openIframe2("ropeway", '索道运输', "child/ropewayList.html", '1200px', '625px', param); -} - function exportTower(){ let obj = { towerName: $('#towerName').val(), @@ -269,7 +216,8 @@ function exportTower(){ function importTower(){ let param = { - 'id': '' + 'id': '', + 'proId':idParam } openIframe2("ropeway", '数据导入', "importTower.html", '1000px', '625px', param); } \ No newline at end of file