时段降雨日报;时段水位日报
parent
658c0c5cf6
commit
f6d1745fa0
|
|
@ -0,0 +1,57 @@
|
|||
package com.gunshi.project.xyt.controller;
|
||||
|
||||
import com.gunshi.core.result.R;
|
||||
import com.gunshi.db.dto.DateRangeSo;
|
||||
import com.gunshi.project.xyt.entity.vo.SdJyRbVo;
|
||||
import com.gunshi.project.xyt.entity.vo.SdSwRbVo;
|
||||
import com.gunshi.project.xyt.service.StatisticsService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 描述: 报图报表
|
||||
* author: xusan
|
||||
* date: 2024-07-08 17:40:37
|
||||
*/
|
||||
@Tag(name = "报图报表")
|
||||
@RestController
|
||||
@RequestMapping(value="/statistics")
|
||||
public class StatisticsController{
|
||||
|
||||
@Autowired
|
||||
private StatisticsService service;
|
||||
|
||||
@Operation(summary = "时段降雨日报表")
|
||||
@PostMapping("/sdJyRb")
|
||||
public R<List<SdJyRbVo>> sdJyRb(@Validated @RequestBody DateRangeSo dateRangeSo) {
|
||||
return R.ok(service.sdJyRb(dateRangeSo));
|
||||
}
|
||||
|
||||
@Operation(summary = "时段降雨日报表导出")
|
||||
@PostMapping( "/sdJyRb/export")
|
||||
public void export(@RequestBody @Validated DateRangeSo dateRangeSo, HttpServletResponse response) {
|
||||
service.sdJyRbExport(dateRangeSo,response);
|
||||
}
|
||||
|
||||
@Operation(summary = "时段水位日报表")
|
||||
@PostMapping("/sdSwRb")
|
||||
public R<List<SdSwRbVo>> sdSwRb(@Validated @RequestBody DateRangeSo dateRangeSo) {
|
||||
return R.ok(service.sdSwRb(dateRangeSo));
|
||||
}
|
||||
|
||||
@Operation(summary = "时段水位日报表导出")
|
||||
@PostMapping("/sdSwRb/export")
|
||||
public void sdSwRbExport(@Validated @RequestBody DateRangeSo dateRangeSo, HttpServletResponse response) {
|
||||
service.sdSwRbExport(dateRangeSo,response);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,176 @@
|
|||
package com.gunshi.project.xyt.entity.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class SdJyRbVo {
|
||||
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@ExcelProperty({"${title}","日期"})
|
||||
@ColumnWidth(15)
|
||||
private String date;
|
||||
|
||||
/**
|
||||
* 第9小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","9时"})
|
||||
private BigDecimal drpH9;
|
||||
|
||||
/**
|
||||
* 第10小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","10时"})
|
||||
private BigDecimal drpH10;
|
||||
|
||||
/**
|
||||
* 第11小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","11时"})
|
||||
private BigDecimal drpH11;
|
||||
|
||||
/**
|
||||
* 第12小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","12时"})
|
||||
private BigDecimal drpH12;
|
||||
|
||||
/**
|
||||
* 第13小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","13时"})
|
||||
private BigDecimal drpH13;
|
||||
|
||||
/**
|
||||
* 第14小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","14时"})
|
||||
private BigDecimal drpH14;
|
||||
|
||||
/**
|
||||
* 第15小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","15时"})
|
||||
private BigDecimal drpH15;
|
||||
|
||||
/**
|
||||
* 第16小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","16时"})
|
||||
private BigDecimal drpH16;
|
||||
|
||||
/**
|
||||
* 第17小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","17时"})
|
||||
private BigDecimal drpH17;
|
||||
|
||||
/**
|
||||
* 第18小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","18时"})
|
||||
private BigDecimal drpH18;
|
||||
|
||||
/**
|
||||
* 第19小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","19时"})
|
||||
private BigDecimal drpH19;
|
||||
|
||||
/**
|
||||
* 第20小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","20时"})
|
||||
private BigDecimal drpH20;
|
||||
|
||||
/**
|
||||
* 第21小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","21时"})
|
||||
private BigDecimal drpH21;
|
||||
|
||||
/**
|
||||
* 第22小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","22时"})
|
||||
private BigDecimal drpH22;
|
||||
|
||||
/**
|
||||
* 第23小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","23时"})
|
||||
private BigDecimal drpH23;
|
||||
|
||||
/**
|
||||
* 第24小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","24时"})
|
||||
private BigDecimal drpH24;
|
||||
|
||||
|
||||
/**
|
||||
* 第1小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","1时"})
|
||||
private BigDecimal drpH1;
|
||||
|
||||
/**
|
||||
* 第2小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","2时"})
|
||||
private BigDecimal drpH2;
|
||||
|
||||
/**
|
||||
* 第3小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","3时"})
|
||||
private BigDecimal drpH3;
|
||||
|
||||
/**
|
||||
* 第4小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","4时"})
|
||||
private BigDecimal drpH4;
|
||||
|
||||
/**
|
||||
* 第5小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","5时"})
|
||||
private BigDecimal drpH5;
|
||||
|
||||
/**
|
||||
* 第6小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","6时"})
|
||||
private BigDecimal drpH6;
|
||||
|
||||
/**
|
||||
* 第7小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","7时"})
|
||||
private BigDecimal drpH7;
|
||||
|
||||
/**
|
||||
* 第8小时降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","8时"})
|
||||
private BigDecimal drpH8;
|
||||
|
||||
/**
|
||||
* 日降水量
|
||||
*/
|
||||
@ExcelProperty({"${title}","日累计"})
|
||||
@ColumnWidth(15)
|
||||
private BigDecimal drpD;
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,176 @@
|
|||
package com.gunshi.project.xyt.entity.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.excel.annotation.write.style.ColumnWidth;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class SdSwRbVo {
|
||||
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@ExcelProperty({"${title}","日期"})
|
||||
@ColumnWidth(15)
|
||||
private String date;
|
||||
|
||||
/**
|
||||
* 第0小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","0时"})
|
||||
private BigDecimal rzH24;
|
||||
|
||||
|
||||
/**
|
||||
* 第1小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","1时"})
|
||||
private BigDecimal rzH1;
|
||||
|
||||
/**
|
||||
* 第2小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","2时"})
|
||||
private BigDecimal rzH2;
|
||||
|
||||
/**
|
||||
* 第3小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","3时"})
|
||||
private BigDecimal rzH3;
|
||||
|
||||
/**
|
||||
* 第4小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","4时"})
|
||||
private BigDecimal rzH4;
|
||||
|
||||
/**
|
||||
* 第5小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","5时"})
|
||||
private BigDecimal rzH5;
|
||||
|
||||
/**
|
||||
* 第6小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","6时"})
|
||||
private BigDecimal rzH6;
|
||||
|
||||
/**
|
||||
* 第7小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","7时"})
|
||||
private BigDecimal rzH7;
|
||||
|
||||
/**
|
||||
* 第8小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","8时"})
|
||||
private BigDecimal rzH8;
|
||||
|
||||
/**
|
||||
* 第9小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","9时"})
|
||||
private BigDecimal rzH9;
|
||||
|
||||
/**
|
||||
* 第10小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","10时"})
|
||||
private BigDecimal rzH10;
|
||||
|
||||
/**
|
||||
* 第11小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","11时"})
|
||||
private BigDecimal rzH11;
|
||||
|
||||
/**
|
||||
* 第12小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","12时"})
|
||||
private BigDecimal rzH12;
|
||||
|
||||
/**
|
||||
* 第13小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","13时"})
|
||||
private BigDecimal rzH13;
|
||||
|
||||
/**
|
||||
* 第14小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","14时"})
|
||||
private BigDecimal rzH14;
|
||||
|
||||
/**
|
||||
* 第15小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","15时"})
|
||||
private BigDecimal rzH15;
|
||||
|
||||
/**
|
||||
* 第16小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","16时"})
|
||||
private BigDecimal rzH16;
|
||||
|
||||
/**
|
||||
* 第17小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","17时"})
|
||||
private BigDecimal rzH17;
|
||||
|
||||
/**
|
||||
* 第18小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","18时"})
|
||||
private BigDecimal rzH18;
|
||||
|
||||
/**
|
||||
* 第19小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","19时"})
|
||||
private BigDecimal rzH19;
|
||||
|
||||
/**
|
||||
* 第20小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","20时"})
|
||||
private BigDecimal rzH20;
|
||||
|
||||
/**
|
||||
* 第21小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","21时"})
|
||||
private BigDecimal rzH21;
|
||||
|
||||
/**
|
||||
* 第22小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","22时"})
|
||||
private BigDecimal rzH22;
|
||||
|
||||
/**
|
||||
* 第23小时水位
|
||||
*/
|
||||
@ExcelProperty({"${title}","23时"})
|
||||
private BigDecimal rzH23;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 日平均
|
||||
*/
|
||||
@ExcelProperty({"${title}","平均"})
|
||||
@ColumnWidth(15)
|
||||
private BigDecimal rzAvg;
|
||||
|
||||
}
|
||||
|
|
@ -1,8 +1,12 @@
|
|||
package com.gunshi.project.xyt.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.gunshi.project.xyt.entity.vo.StRzVo;
|
||||
import com.gunshi.project.xyt.model.StPptnRH;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 描述: 降雨量小时表
|
||||
|
|
@ -12,4 +16,7 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
@Mapper
|
||||
public interface StPptnRHMapper extends BaseMapper<StPptnRH> {
|
||||
|
||||
List<StPptnRH> queryList(@Param("start") String start,@Param("end") String end);
|
||||
|
||||
List<StRzVo> queryRzList(@Param("start") String start,@Param("end") String end);
|
||||
}
|
||||
|
|
@ -0,0 +1,286 @@
|
|||
package com.gunshi.project.xyt.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
import com.gunshi.db.dto.DateRangeSo;
|
||||
import com.gunshi.project.xyt.entity.vo.SdJyRbVo;
|
||||
import com.gunshi.project.xyt.entity.vo.SdSwRbVo;
|
||||
import com.gunshi.project.xyt.entity.vo.StRzVo;
|
||||
import com.gunshi.project.xyt.mapper.StPptnRHMapper;
|
||||
import com.gunshi.project.xyt.model.StPptnRH;
|
||||
import com.gunshi.project.xyt.util.DateUtil;
|
||||
import com.gunshi.project.xyt.util.ExcelUtil;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 描述: 报图报表
|
||||
* author: xusan
|
||||
* date: 2024-07-08 17:30:37
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public class StatisticsService {
|
||||
|
||||
@Autowired
|
||||
private StPptnRHMapper stPptnRHMapper;
|
||||
|
||||
private static final String TIME_END_PREFIX = " 08:00:00";
|
||||
|
||||
private static final String ZERO_TIME_END_PREFIX = " 00:00:00";
|
||||
|
||||
public List<SdJyRbVo> sdJyRb(DateRangeSo dateRangeSo) {
|
||||
List<SdJyRbVo> res = new ArrayList<>();
|
||||
String start = DateUtil.convertDateToString(dateRangeSo.getStart()) + TIME_END_PREFIX;
|
||||
String end = DateUtil.getPlusDate(dateRangeSo.getEnd(), 1) + TIME_END_PREFIX;
|
||||
List<String> dates = DateUtil.getDatesBetween(dateRangeSo.getStart(), dateRangeSo.getEnd(), false);
|
||||
List<StPptnRH> list = stPptnRHMapper.queryList(start, end);
|
||||
for (String date : dates) {
|
||||
SdJyRbVo vo = new SdJyRbVo();
|
||||
vo.setDate(date);
|
||||
getDrp(vo, list);
|
||||
res.add(vo);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
private void getDrp(SdJyRbVo vo, List<StPptnRH> list) {
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
String date = vo.getDate();
|
||||
BigDecimal drpD = new BigDecimal(0);
|
||||
Date start = DateUtil.convertStringToDate(date + TIME_END_PREFIX);
|
||||
String end = DateUtil.getPlusTime(date + TIME_END_PREFIX, 24);
|
||||
List<StPptnRH> dayList = list.stream().filter(o -> o.getTm().compareTo(start) > 0 && o.getTm().compareTo(DateUtil.convertStringToDate(end)) <= 0).collect(Collectors.toList());
|
||||
SimpleDateFormat simpleDateFormatHH = new SimpleDateFormat("HH");
|
||||
for (int i = 0; i < dayList.size(); i++) {
|
||||
StPptnRH stPptnRH = dayList.get(i);
|
||||
if (stPptnRH.getDrp() != null) {
|
||||
vo = setHourDrp(vo, simpleDateFormatHH.format(stPptnRH.getTm()), stPptnRH.getDrp());
|
||||
drpD = drpD.add(stPptnRH.getDrp());
|
||||
}
|
||||
}
|
||||
vo.setDrpD(drpD);
|
||||
}
|
||||
}
|
||||
|
||||
private SdJyRbVo setHourDrp(SdJyRbVo vo, String HH, BigDecimal drp) {
|
||||
switch (HH) {
|
||||
case "01":
|
||||
vo.setDrpH1(drp);
|
||||
break;
|
||||
case "02":
|
||||
vo.setDrpH2(drp);
|
||||
break;
|
||||
case "03":
|
||||
vo.setDrpH3(drp);
|
||||
break;
|
||||
case "04":
|
||||
vo.setDrpH4(drp);
|
||||
break;
|
||||
case "05":
|
||||
vo.setDrpH5(drp);
|
||||
break;
|
||||
case "06":
|
||||
vo.setDrpH6(drp);
|
||||
break;
|
||||
case "07":
|
||||
vo.setDrpH7(drp);
|
||||
break;
|
||||
case "08":
|
||||
vo.setDrpH8(drp);
|
||||
break;
|
||||
case "09":
|
||||
vo.setDrpH9(drp);
|
||||
break;
|
||||
case "10":
|
||||
vo.setDrpH10(drp);
|
||||
break;
|
||||
case "11":
|
||||
vo.setDrpH11(drp);
|
||||
break;
|
||||
case "12":
|
||||
vo.setDrpH12(drp);
|
||||
break;
|
||||
case "13":
|
||||
vo.setDrpH13(drp);
|
||||
break;
|
||||
case "14":
|
||||
vo.setDrpH14(drp);
|
||||
break;
|
||||
case "15":
|
||||
vo.setDrpH15(drp);
|
||||
break;
|
||||
case "16":
|
||||
vo.setDrpH16(drp);
|
||||
break;
|
||||
case "17":
|
||||
vo.setDrpH17(drp);
|
||||
break;
|
||||
case "18":
|
||||
vo.setDrpH18(drp);
|
||||
break;
|
||||
case "19":
|
||||
vo.setDrpH19(drp);
|
||||
break;
|
||||
case "20":
|
||||
vo.setDrpH20(drp);
|
||||
break;
|
||||
case "21":
|
||||
vo.setDrpH21(drp);
|
||||
break;
|
||||
case "22":
|
||||
vo.setDrpH22(drp);
|
||||
break;
|
||||
case "23":
|
||||
vo.setDrpH23(drp);
|
||||
break;
|
||||
case "00":
|
||||
vo.setDrpH24(drp);
|
||||
break;
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
|
||||
public void sdJyRbExport(DateRangeSo dateRangeSo, HttpServletResponse response) {
|
||||
List<SdJyRbVo> list = sdJyRb(dateRangeSo);
|
||||
String start = DateUtil.convertDateToChineseYmd(dateRangeSo.getStart());
|
||||
String end = DateUtil.convertDateToChineseYmd(dateRangeSo.getEnd());
|
||||
String fileName = start + "-" + end + "小时降雨量日报表";
|
||||
ExcelUtil.exportExcel(list, fileName, SdJyRbVo.class, response, fileName);
|
||||
}
|
||||
|
||||
public List<SdSwRbVo> sdSwRb(DateRangeSo dateRangeSo) {
|
||||
List<SdSwRbVo> res = new ArrayList<>();
|
||||
String start = DateUtil.convertDateToString(dateRangeSo.getStart()) + ZERO_TIME_END_PREFIX;
|
||||
String end = DateUtil.getPlusDate(dateRangeSo.getEnd(), 1) + ZERO_TIME_END_PREFIX;
|
||||
List<String> dates = DateUtil.getDatesBetween(dateRangeSo.getStart(), dateRangeSo.getEnd(), false);
|
||||
List<StRzVo> list = stPptnRHMapper.queryRzList(start,end);
|
||||
for (String date : dates) {
|
||||
SdSwRbVo vo = new SdSwRbVo();
|
||||
vo.setDate(date);
|
||||
getRz(vo, list);
|
||||
res.add(vo);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
private void getRz(SdSwRbVo vo, List<StRzVo> list) {
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
String date = vo.getDate();
|
||||
BigDecimal rzD = new BigDecimal(0);
|
||||
Integer count = 0;
|
||||
String start = date + ZERO_TIME_END_PREFIX;
|
||||
String end = DateUtil.getPlusTime(date + ZERO_TIME_END_PREFIX, 24);
|
||||
List<StRzVo> dayList = list.stream().filter(o -> o.getTm().compareTo(start) >= 0 && o.getTm().compareTo(end) < 0).collect(Collectors.toList());
|
||||
SimpleDateFormat simpleDateFormatHH = new SimpleDateFormat("HH");
|
||||
for (int i = 0; i < dayList.size(); i++) {
|
||||
StRzVo stRzVo = dayList.get(i);
|
||||
if (stRzVo.getRz() != null) {
|
||||
vo = setHourRz(vo, simpleDateFormatHH.format(DateUtil.convertStringToDate(stRzVo.getTm())), stRzVo.getRz());
|
||||
rzD = rzD.add(stRzVo.getRz());
|
||||
count++;
|
||||
}
|
||||
}
|
||||
vo.setRzAvg(rzD.divide(new BigDecimal(count),2, RoundingMode.HALF_UP));
|
||||
}
|
||||
}
|
||||
|
||||
private SdSwRbVo setHourRz(SdSwRbVo vo, String HH, BigDecimal rz) {
|
||||
switch (HH) {
|
||||
case "01":
|
||||
vo.setRzH1(rz);
|
||||
break;
|
||||
case "02":
|
||||
vo.setRzH2(rz);
|
||||
break;
|
||||
case "03":
|
||||
vo.setRzH3(rz);
|
||||
break;
|
||||
case "04":
|
||||
vo.setRzH4(rz);
|
||||
break;
|
||||
case "05":
|
||||
vo.setRzH5(rz);
|
||||
break;
|
||||
case "06":
|
||||
vo.setRzH6(rz);
|
||||
break;
|
||||
case "07":
|
||||
vo.setRzH7(rz);
|
||||
break;
|
||||
case "08":
|
||||
vo.setRzH8(rz);
|
||||
break;
|
||||
case "09":
|
||||
vo.setRzH9(rz);
|
||||
break;
|
||||
case "10":
|
||||
vo.setRzH10(rz);
|
||||
break;
|
||||
case "11":
|
||||
vo.setRzH11(rz);
|
||||
break;
|
||||
case "12":
|
||||
vo.setRzH12(rz);
|
||||
break;
|
||||
case "13":
|
||||
vo.setRzH13(rz);
|
||||
break;
|
||||
case "14":
|
||||
vo.setRzH14(rz);
|
||||
break;
|
||||
case "15":
|
||||
vo.setRzH15(rz);
|
||||
break;
|
||||
case "16":
|
||||
vo.setRzH16(rz);
|
||||
break;
|
||||
case "17":
|
||||
vo.setRzH17(rz);
|
||||
break;
|
||||
case "18":
|
||||
vo.setRzH18(rz);
|
||||
break;
|
||||
case "19":
|
||||
vo.setRzH19(rz);
|
||||
break;
|
||||
case "20":
|
||||
vo.setRzH20(rz);
|
||||
break;
|
||||
case "21":
|
||||
vo.setRzH21(rz);
|
||||
break;
|
||||
case "22":
|
||||
vo.setRzH22(rz);
|
||||
break;
|
||||
case "23":
|
||||
vo.setRzH23(rz);
|
||||
break;
|
||||
case "00":
|
||||
vo.setRzH24(rz);
|
||||
break;
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
|
||||
public void sdSwRbExport(DateRangeSo dateRangeSo, HttpServletResponse response) {
|
||||
List<SdSwRbVo> list = sdSwRb(dateRangeSo);
|
||||
String start = DateUtil.convertDateToChineseYmd(dateRangeSo.getStart());
|
||||
String end = DateUtil.convertDateToChineseYmd(dateRangeSo.getEnd());
|
||||
String fileName = start + "-" + end + "时段水位日报表";
|
||||
ExcelUtil.exportExcel(list, fileName, SdSwRbVo.class, response, fileName);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -23,6 +23,8 @@ public class DateUtil {
|
|||
|
||||
private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
||||
private static SimpleDateFormat chineseYmd = new SimpleDateFormat("yyyy年MM月dd日");
|
||||
|
||||
private static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
private static DateTimeFormatter ymdformat = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
|
|
@ -53,6 +55,10 @@ public class DateUtil {
|
|||
return df.format(date);
|
||||
}
|
||||
|
||||
public static String convertDateToChineseYmd(Date date){
|
||||
return chineseYmd.format(date);
|
||||
}
|
||||
|
||||
public static long hoursBetweenDate(Date start,Date end){
|
||||
long startTime = start.getTime();
|
||||
long endTime = end.getTime();
|
||||
|
|
@ -119,6 +125,12 @@ public class DateUtil {
|
|||
return minusTime.format(formatter);
|
||||
}
|
||||
|
||||
public static String getPlusTime(String str,long hour){
|
||||
LocalDateTime dateTime = LocalDateTime.parse(str, formatter);
|
||||
LocalDateTime plusTime = dateTime.plusHours(hour);
|
||||
return plusTime.format(formatter);
|
||||
}
|
||||
|
||||
public static String getPlusDate(Date date,long day){
|
||||
String str = convertDateToString(date);
|
||||
LocalDate localDate = LocalDate.parse(str, ymdformat);
|
||||
|
|
|
|||
|
|
@ -2,4 +2,16 @@
|
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.gunshi.project.xyt.mapper.StPptnRHMapper">
|
||||
|
||||
<select id="queryList" resultType="com.gunshi.project.xyt.model.StPptnRH">
|
||||
select tm,drp from public.st_pptn_r_h where tm <![CDATA[>]]> #{start} and tm <![CDATA[<=]]> #{end}
|
||||
and stcd = (select stcd from public.att_res_base where res_code = '42120250085')
|
||||
order by tm asc
|
||||
</select>
|
||||
|
||||
<select id="queryRzList" resultType="com.gunshi.project.xyt.entity.vo.StRzVo">
|
||||
select tm,rz from public.st_rsvr_r where tm <![CDATA[>=]]> #{start} and tm <![CDATA[<]]> #{end}
|
||||
and TRIM(TO_CHAR(tm, 'MI:SS')) = '00:00'
|
||||
and stcd = (select stcd from public.att_res_base where res_code = '42120250085')
|
||||
order by tm asc
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
Loading…
Reference in New Issue