Commit a8614811 by jianan

保费到期提醒12

parent 556b5d3c
package com.yd.csf.service.component;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.yd.csf.service.dto.RenewalDuePolicy;
import com.yd.csf.service.dto.RenewalReminderData;
import com.yd.csf.service.model.PolicyFollow;
import com.yd.csf.service.vo.RenewalPolicyExportDTO;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.springframework.stereotype.Component;
import java.io.ByteArrayOutputStream;
......@@ -33,6 +36,7 @@ public class RenewalPolicyReportService {
List<RenewalPolicyExportDTO> rows = toRows(data);
try (ByteArrayOutputStream out = new ByteArrayOutputStream()) {
EasyExcel.write(out, RenewalPolicyExportDTO.class)
.registerWriteHandler(cellStyleStrategy())
.sheet("续期保单")
.doWrite(rows);
return out.toByteArray();
......@@ -51,6 +55,21 @@ public class RenewalPolicyReportService {
today.format(DAY_FMT));
}
/**
* 表头无样式(无填充/无边框/默认字体),数据区四边细边框
*/
private HorizontalCellStyleStrategy cellStyleStrategy() {
WriteCellStyle headStyle = new WriteCellStyle();
WriteCellStyle contentStyle = new WriteCellStyle();
contentStyle.setBorderTop(BorderStyle.THIN);
contentStyle.setBorderBottom(BorderStyle.THIN);
contentStyle.setBorderLeft(BorderStyle.THIN);
contentStyle.setBorderRight(BorderStyle.THIN);
return new HorizontalCellStyleStrategy(headStyle, contentStyle);
}
private List<RenewalPolicyExportDTO> toRows(RenewalReminderData data) {
List<RenewalPolicyExportDTO> rows = new ArrayList<>();
if (data == null || CollectionUtils.isEmpty(data.getDuePolicies())) {
......
......@@ -2,9 +2,6 @@ package com.yd.csf.service.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.math.BigDecimal;
......@@ -14,9 +11,6 @@ import java.util.Date;
* 续期保单清单导出 DTO,列顺序与表头严格对齐 policy报表模版.xlsx(30 列)
*/
@Data
@ContentRowHeight(15)
@HeadRowHeight(20)
@ColumnWidth(20)
public class RenewalPolicyExportDTO {
@ExcelProperty("id")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment