From 8722d2bb39c6c0697647e77a879d14b28d3ef0f5 Mon Sep 17 00:00:00 2001 From: zmk <496160012@qq.com> Date: 星期五, 17 五月 2024 19:16:36 +0800 Subject: [PATCH] Merge branch 'master' of ssh://117.78.1.188:29418/dkyChenJiang --- javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java | 136 +++++++++++++++++++++++++++++++++------------ 1 files changed, 99 insertions(+), 37 deletions(-) diff --git a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java index ba7f4c6..b7422a6 100644 --- a/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java +++ b/javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java @@ -1,7 +1,11 @@ package com.javaweb.geo.service.impl; +import java.io.File; import java.util.List; +import cn.hutool.poi.excel.ExcelReader; +import cn.hutool.poi.excel.ExcelUtil; +import com.javaweb.common.config.Global; import com.javaweb.common.utils.DateUtils; import com.javaweb.common.utils.IdGenerate; import com.javaweb.geo.domain.*; @@ -11,6 +15,7 @@ import org.springframework.stereotype.Service; import com.javaweb.common.core.text.Convert; import org.springframework.util.ObjectUtils; +import org.springframework.web.multipart.MultipartFile; /** * 閽诲瓟Service涓氬姟灞傚鐞� @@ -41,6 +46,12 @@ @Autowired private HoleYantuMapper holeYantuMapper; + + + @Autowired + private IProjectService projectService; + + private String fileSaveDir = Global.getProfile() + "\\template\\" ; /** * 鏌ヨ閽诲瓟 @@ -99,44 +110,43 @@ */ @Override public int deleteHoleByIds(String ids) { - // 鎵归噺鍒犻櫎閽诲瓟涓嬮潰鐨勫叧鑱旀暟鎹� - String[] strings = Convert.toStrArray(ids); - if (!ObjectUtils.isEmpty(strings)) { - for (String holeId : strings) { - - // =======鏍囪疮========== - List<HoleBiaoguan> biaoguans = holeBiaoguanMapper.selectHoleBiaoguanByHoleId(holeId); - String[] biaoguanIds = biaoguans.stream().map(HoleBiaoguan::getIds).toArray(String[]::new); - - // =======鍥炴========== - List<HoleHuici> holeHuicis = holeHuiciMapper.selectHoleHuiciByHoleId(holeId); - String[] huiCiIds = holeHuicis.stream().map(HoleHuici::getIds).toArray(String[]::new); - - // =======浜哄憳========== - List<HolePerson> persons = holePersonMapper.selectHolePersonByHoleId(holeId); - String[] personIds = persons.stream().map(HolePerson::getIds).toArray(String[]::new); - - // =======鍙栧湡========== - List<HoleQutu> qutus = holeQutuMapper.selectHoleQutuByHoleId(holeId); - String[] qutuIds = qutus.stream().map(HoleQutu::getIds).toArray(String[]::new); - - // =======姘翠綅========== - List<HoleShuiwei> shuiweis = holeShuiweiMapper.selectHoleShuiWeiByHoleId(holeId); - String[] shuiweiIds = shuiweis.stream().map(HoleShuiwei::getIds).toArray(String[]::new); - - // =======宀╁湡========== - List<HoleYantu> yantus = holeYantuMapper.selectHoleYantuListByHoleId(holeId); - String[] yantusIds = yantus.stream().map(HoleYantu::getIds).toArray(String[]::new); - - holeBiaoguanMapper.deleteHoleBiaoguanByIds(biaoguanIds); - holeHuiciMapper.deleteHoleHuiciByIds(huiCiIds); - holePersonMapper.deleteHolePersonByIds(personIds); - holeQutuMapper.deleteHoleQutuByIds(qutuIds); - holeShuiweiMapper.deleteHoleShuiweiByIds(shuiweiIds); - holeYantuMapper.deleteHoleYantuByIds(yantusIds); - } - } +// String[] strings = Convert.toStrArray(ids); +// if (!ObjectUtils.isEmpty(strings)) { +// for (String holeId : strings) { +// +// // =======鏍囪疮========== +// List<HoleBiaoguan> biaoguans = holeBiaoguanMapper.selectHoleBiaoguanByHoleId(holeId); +// String[] biaoguanIds = biaoguans.stream().map(HoleBiaoguan::getIds).toArray(String[]::new); +// +// // =======鍥炴========== +// List<HoleHuici> holeHuicis = holeHuiciMapper.selectHoleHuiciByHoleId(holeId); +// String[] huiCiIds = holeHuicis.stream().map(HoleHuici::getIds).toArray(String[]::new); +// +// // =======浜哄憳========== +// List<HolePerson> persons = holePersonMapper.selectHolePersonByHoleId(holeId); +// String[] personIds = persons.stream().map(HolePerson::getIds).toArray(String[]::new); +// +// // =======鍙栧湡========== +// List<HoleQutu> qutus = holeQutuMapper.selectHoleQutuByHoleId(holeId); +// String[] qutuIds = qutus.stream().map(HoleQutu::getIds).toArray(String[]::new); +// +// // =======姘翠綅========== +// List<HoleShuiwei> shuiweis = holeShuiweiMapper.selectHoleShuiWeiByHoleId(holeId); +// String[] shuiweiIds = shuiweis.stream().map(HoleShuiwei::getIds).toArray(String[]::new); +// +// // =======宀╁湡========== +// List<HoleYantu> yantus = holeYantuMapper.selectHoleYantuListByHoleId(holeId); +// String[] yantusIds = yantus.stream().map(HoleYantu::getIds).toArray(String[]::new); +// +// holeBiaoguanMapper.deleteHoleBiaoguanByIds(biaoguanIds); +// holeHuiciMapper.deleteHoleHuiciByIds(huiCiIds); +// holePersonMapper.deleteHolePersonByIds(personIds); +// holeQutuMapper.deleteHoleQutuByIds(qutuIds); +// holeShuiweiMapper.deleteHoleShuiweiByIds(shuiweiIds); +// holeYantuMapper.deleteHoleYantuByIds(yantusIds); +// } +// } return holeMapper.deleteHoleByIds(Convert.toStrArray(ids)); } @@ -151,4 +161,56 @@ public int deleteHoleById(String ids) { return holeMapper.deleteHoleById(ids); } + + /** + * 瀵煎叆閽诲瓟 + */ + @Override + public String importHole(String projectId, MultipartFile file, boolean updateSupport) { + try { + String dest = saveExcel(file); + List<Hole> list = readData(dest); + if(!ObjectUtils.isEmpty(list)){ + for (Hole item : list) { + item.setProjectId(projectId); + insertHole(item); + } + } + } catch (Exception e) { + return e.toString(); + } + return "瀵煎叆瀹屾瘯" ; + } + + private String saveExcel(MultipartFile file) { + String filename = file.getOriginalFilename(); + File dir = new File(fileSaveDir); + if (!dir.exists()) { + dir.mkdir(); + } + String addr = fileSaveDir + filename; + try { + File dest = new File(addr); + file.transferTo(dest); + } catch (Exception e) { + return null; + } + return addr; + } + + private List<Hole> readData(String filepath) { + ExcelReader reader = ExcelUtil.getReader(filepath, 0); + reader.addHeaderAlias("閽诲瓟缂栧彿", "code"); + reader.addHeaderAlias("瀛斿彛楂樼▼", "elevation"); + reader.addHeaderAlias("璁捐瀛旀繁", "depth"); + reader.addHeaderAlias("閽诲瓟缁忓害", "longitude"); + reader.addHeaderAlias("閽诲瓟绾害", "latitude"); + reader.addHeaderAlias("杩涘害", "pic1"); + + List<Hole> list = reader.readAll(Hole.class); + return list; + } + + + } -- Gitblit v1.9.1