From f7c31fd48ec3e31b95b05447738bfc4794b21e2c Mon Sep 17 00:00:00 2001 From: suerwei <18810552194@163.com> Date: 星期五, 17 五月 2024 18:11:25 +0800 Subject: [PATCH] 钻孔导入功能 --- javaweb-plus/javaweb-cms/src/main/java/com/javaweb/geo/service/impl/HoleServiceImpl.java | 61 ++++++++++++++++++++++++++++++ 1 files changed, 61 insertions(+), 0 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..088a3ee 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\\" ; /** * 鏌ヨ閽诲瓟 @@ -151,4 +162,54 @@ 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); + for (Hole item : list) { + + 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