1:pdf导出中文文字ttf文件(请勿移动)

2:同样5分钟的时间差
master
yangzhe123 2025-11-04 13:33:57 +08:00
parent d1d835ff02
commit 56da4f7282
3 changed files with 13 additions and 7 deletions

View File

@ -7,7 +7,6 @@ import com.gunshi.project.hsz.mapper.ForecastProjectMapper;
import com.gunshi.project.hsz.model.ForecastProject; import com.gunshi.project.hsz.model.ForecastProject;
import com.gunshi.project.hsz.model.ForecastResults; import com.gunshi.project.hsz.model.ForecastResults;
import com.itextpdf.io.font.PdfEncodings; import com.itextpdf.io.font.PdfEncodings;
import com.itextpdf.kernel.colors.Color;
import com.itextpdf.kernel.colors.DeviceRgb; import com.itextpdf.kernel.colors.DeviceRgb;
import com.itextpdf.kernel.events.Event; import com.itextpdf.kernel.events.Event;
import com.itextpdf.kernel.events.IEventHandler; import com.itextpdf.kernel.events.IEventHandler;
@ -20,13 +19,10 @@ import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage; import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter; import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas; import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.kernel.pdf.colorspace.PdfColorSpace;
import com.itextpdf.layout.Canvas;
import com.itextpdf.layout.Document; import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell; import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Paragraph; import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Table; import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.properties.TextAlignment;
import com.itextpdf.layout.properties.UnitValue; import com.itextpdf.layout.properties.UnitValue;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
@ -34,7 +30,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.awt.*;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.io.IOException; import java.io.IOException;
import java.math.BigDecimal; import java.math.BigDecimal;

View File

@ -126,6 +126,16 @@ public class ForecastResultsService extends ServiceImpl<ForecastResultsMapper, F
return voList; return voList;
} }
private Date addMinites(Date date,Integer minite) {
Instant instant = date.toInstant().plus(minite, ChronoUnit.MINUTES);
return Date.from(instant);
}
private Date deleteMinites(Date date,Integer minite) {
Instant instant = date.toInstant().minus(minite, ChronoUnit.MINUTES);
return Date.from(instant);
}
/** /**
* @description: ForecastResultVo * @description: ForecastResultVo
* @param forecastTask * @param forecastTask
@ -152,6 +162,8 @@ public class ForecastResultsService extends ServiceImpl<ForecastResultsMapper, F
Date nowHourTime = forecastTask.getNowTime(); Date nowHourTime = forecastTask.getNowTime();
Date startTime = forecastTask.getStartTime(); Date startTime = forecastTask.getStartTime();
Date endTime = forecastTask.getEndTime(); Date endTime = forecastTask.getEndTime();
//TODO 由于endTime为整点数据而监测时间为整点数据过五分
endTime = addMinites(endTime,5);
// 获取整个时间线的降雨数据 // 获取整个时间线的降雨数据
List<StPptnR> pptnRAllList = new ArrayList<>(); List<StPptnR> pptnRAllList = new ArrayList<>();
List<StPptnR> pptnRFutureList = new ArrayList<>(); List<StPptnR> pptnRFutureList = new ArrayList<>();
@ -263,8 +275,7 @@ public class ForecastResultsService extends ServiceImpl<ForecastResultsMapper, F
//TODO 将过五分数据转为整点数据 //TODO 将过五分数据转为整点数据
rsvrRRealList.stream().forEach(o->{ rsvrRRealList.stream().forEach(o->{
// 转换为 Instant 操作后再转回 Date // 转换为 Instant 操作后再转回 Date
Instant instant = o.getTm().toInstant().minus(5, ChronoUnit.MINUTES); o.setTm(deleteMinites(o.getTm(),5));
o.setTm(Date.from(instant));
}); });
List<StRsvrR> resultList = reorganizeRsvrRData(rsvrRRealList, dt); List<StRsvrR> resultList = reorganizeRsvrRData(rsvrRRealList, dt);
List<Date[]> periods = splitByDay8To8(startTime, endTime); List<Date[]> periods = splitByDay8To8(startTime, endTime);