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 | 169 ++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 115 insertions(+), 54 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 1faa0fa..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,8 +1,13 @@ 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.*; import com.javaweb.geo.mapper.*; import com.javaweb.geo.service.*; @@ -10,10 +15,11 @@ import org.springframework.stereotype.Service; import com.javaweb.common.core.text.Convert; import org.springframework.util.ObjectUtils; +import org.springframework.web.multipart.MultipartFile; /** * 閽诲瓟Service涓氬姟灞傚鐞� - * + * * @author zmk * @date 2022-10-20 */ @@ -41,115 +47,170 @@ @Autowired private HoleYantuMapper holeYantuMapper; + + @Autowired + private IProjectService projectService; + + private String fileSaveDir = Global.getProfile() + "\\template\\" ; + /** * 鏌ヨ閽诲瓟 - * + * * @param ids 閽诲瓟ID * @return 閽诲瓟 */ @Override - public Hole selectHoleById(String ids) - { + public Hole selectHoleById(String ids) { return holeMapper.selectHoleById(ids); } /** * 鏌ヨ閽诲瓟鍒楄〃 - * + * * @param hole 閽诲瓟 * @return 閽诲瓟 */ @Override - public List<Hole> selectHoleList(Hole hole) - { + public List<Hole> selectHoleList(Hole hole) { return holeMapper.selectHoleList(hole); } /** * 鏂板閽诲瓟 - * + * * @param hole 閽诲瓟 * @return 缁撴灉 */ @Override - public int insertHole(Hole hole) - { + public int insertHole(Hole hole) { + if(ObjectUtils.isEmpty(hole.getIds())){ + hole.setIds(IdGenerate.nextId()); + } hole.setCreateTime(DateUtils.getNowDate()); return holeMapper.insertHole(hole); } /** * 淇敼閽诲瓟 - * + * * @param hole 閽诲瓟 * @return 缁撴灉 */ @Override - public int updateHole(Hole hole) - { + public int updateHole(Hole hole) { hole.setUpdateTime(DateUtils.getNowDate()); return holeMapper.updateHole(hole); } /** * 鍒犻櫎閽诲瓟瀵硅薄 - * + * * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁ID * @return 缁撴灉 */ @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)); } /** * 鍒犻櫎閽诲瓟淇℃伅 - * + * * @param ids 閽诲瓟ID * @return 缁撴灉 */ @Override - public int deleteHoleById(String ids) - { + 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