From 39caebba35fc84824f5cd51d189fe322d5145803 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Tue, 09 Nov 2021 16:15:14 +0800
Subject: [PATCH] 1.山洪
---
src/main/java/org/springblade/modules/mountainrain/controller/SmariverController.java | 99 ++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 89 insertions(+), 10 deletions(-)
diff --git a/src/main/java/org/springblade/modules/mountainrain/controller/SmariverController.java b/src/main/java/org/springblade/modules/mountainrain/controller/SmariverController.java
index 7a2de0e..b3da702 100644
--- a/src/main/java/org/springblade/modules/mountainrain/controller/SmariverController.java
+++ b/src/main/java/org/springblade/modules/mountainrain/controller/SmariverController.java
@@ -19,20 +19,28 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
+import org.apache.poi.hssf.usermodel.HSSFSheet;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
+import org.apache.poi.ss.usermodel.CellType;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.log.annotation.ApiLog;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.api.R;
+import org.springblade.modules.mountainrain.entity.Yucbig;
import org.springblade.modules.mountainrain.entity.Yucsma;
import org.springblade.modules.mountainrain.excel.MgrExcel;
import org.springblade.modules.mountainrain.excel.MgrImporter;
+import org.springblade.modules.mountainrain.service.IBigriverService;
import org.springblade.modules.mountainrain.service.ISmariverService;
import org.springblade.modules.mountainrain.wrapper.SmariverWrapper;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.validation.Valid;
+import java.io.IOException;
+import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -50,7 +58,7 @@
public class SmariverController extends BladeController {
private ISmariverService iSmariverService;
-
+ private IBigriverService iBigriverService;
/**
* 详情
*/
@@ -86,15 +94,15 @@
return R.status(iSmariverService.updateById(yucsma));
}
- /**
- * 中小河流预报数据导入
- */
- @PostMapping("import-mgr")
- public R importmgr(MultipartFile file) {
- MgrImporter mgrImporter = new MgrImporter(iSmariverService, false);
- ExcelUtil.save(file, mgrImporter, MgrExcel.class);
- return R.success("操作成功");
- }
+// /**
+// * 中小河流预报数据导入
+// */
+// @PostMapping("import-mgr")
+// public R importmgr(MultipartFile file) {
+// MgrImporter mgrImporter = new MgrImporter(iSmariverService, false);
+// ExcelUtil.save(file, mgrImporter, MgrExcel.class);
+// return R.success("操作成功");
+// }
/**
* 中小河流预警
@@ -129,4 +137,75 @@
return R.data(list);
}
+
+
+ @PostMapping("import-mgr")
+ public void importmgr(MultipartFile file) throws IOException, InvalidFormatException {
+ InputStream is = file.getInputStream();
+ HSSFWorkbook workbook = new HSSFWorkbook(is);
+ //确定版本
+ boolean isExcel2003 = file.getOriginalFilename().endsWith("xls") ? true : false;
+ List<Map<String, Object>> returnMap;//返回execlClass类见下
+ if (isExcel2003) { //判断版本
+ HSSFSheet sheet = workbook.getSheetAt(1);
+ sheet.getRow(4).getCell(12).setCellType(CellType.STRING);
+ sheet.getRow(4).getCell(13).setCellType(CellType.STRING);
+ sheet.getRow(4).getCell(14).setCellType(CellType.STRING);
+ sheet.getRow(4).getCell(15).setCellType(CellType.STRING);
+ sheet.getRow(4).getCell(8).setCellType(CellType.STRING);
+ //发布时间
+ String ftimes = sheet.getRow(1).getCell(11).getStringCellValue();
+ String substring = ftimes.substring(5, ftimes.length());
+ String year = substring.substring(0, substring.lastIndexOf("年"));
+ String yues = substring.substring(substring.indexOf("年")+1, substring.lastIndexOf("月"));
+ String yue;
+ if (yues.length()==1){
+ yue=0+yues;
+ }
+ else {
+ yue=yues;
+ }
+ String r = substring.substring(substring.indexOf("月")+1, substring.lastIndexOf("日"));
+ String ms = substring.substring(substring.indexOf("日")+1, substring.lastIndexOf("时"));
+ String ftime=year+"-"+yue+"-"+r+" "+ms+":00:00";
+ //河名
+ String river = sheet.getRow(4).getCell(0).getStringCellValue();
+ //站点名称
+ String stnames = sheet.getRow(4).getCell(1).getStringCellValue();
+ String stcd = iBigriverService.selectINfo(stnames);
+ //预报时间
+ String ytimes = sheet.getRow(4).getCell(12).getStringCellValue();
+ String[] split = ytimes.split(",");
+ String a;
+ if (split[0].length()==1){
+ a=0+yues;
+ }
+ else {
+ a=yues;
+ }
+ String ytime=year+"-"+a+"-"+split[1]+" "+split[2]+":00:00";
+ //预测水位
+ String yuz = sheet.getRow(4).getCell(13).getStringCellValue();
+ //预警流量
+ String yq = sheet.getRow(4).getCell(14).getStringCellValue();
+ //预警水位
+ String yjsw = sheet.getRow(4).getCell(15).getStringCellValue();
+ String qzsw = sheet.getRow(4).getCell(8).getStringCellValue();
+ Yucsma yucsma=new Yucsma();
+ yucsma.setStcd(stcd);
+ yucsma.setStname(stnames);
+ yucsma.setRiver(river);
+ yucsma.setFtime(ftime);
+ yucsma.setYjsw(yjsw);
+ yucsma.setYtime(ytime);
+ yucsma.setYuz(yuz);
+ yucsma.setYq(yq);
+ yucsma.setQzsw(qzsw);
+ iSmariverService.save(yucsma);
+ } else {
+ //有多少个sheet
+ int sheets = workbook.getNumberOfSheets();
+ System.out.println("其他:" + sheets);
+ }
+ }
}
--
Gitblit v1.9.3