| | |
| | | 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 org.springframework.stereotype.Service; |
| | | import com.javaweb.common.core.text.Convert; |
| | | import org.springframework.util.ObjectUtils; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | /** |
| | | * 钻孔Service业务层处理 |
| | |
| | | |
| | | @Autowired |
| | | private HoleYantuMapper holeYantuMapper; |
| | | |
| | | |
| | | @Autowired |
| | | private IProjectService projectService; |
| | | |
| | | private String fileSaveDir = Global.getProfile() + "\\template\\" ; |
| | | |
| | | /** |
| | | * 查询钻孔 |
| | |
| | | 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; |
| | | } |
| | | |
| | | |
| | | |
| | | } |