Commit a8614811 by jianan

保费到期提醒12

parent 556b5d3c
package com.yd.csf.service.component; package com.yd.csf.service.component;
import com.alibaba.excel.EasyExcel; 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.RenewalDuePolicy;
import com.yd.csf.service.dto.RenewalReminderData; import com.yd.csf.service.dto.RenewalReminderData;
import com.yd.csf.service.model.PolicyFollow; import com.yd.csf.service.model.PolicyFollow;
import com.yd.csf.service.vo.RenewalPolicyExportDTO; import com.yd.csf.service.vo.RenewalPolicyExportDTO;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.poi.ss.usermodel.BorderStyle;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
...@@ -33,6 +36,7 @@ public class RenewalPolicyReportService { ...@@ -33,6 +36,7 @@ public class RenewalPolicyReportService {
List<RenewalPolicyExportDTO> rows = toRows(data); List<RenewalPolicyExportDTO> rows = toRows(data);
try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { try (ByteArrayOutputStream out = new ByteArrayOutputStream()) {
EasyExcel.write(out, RenewalPolicyExportDTO.class) EasyExcel.write(out, RenewalPolicyExportDTO.class)
.registerWriteHandler(cellStyleStrategy())
.sheet("续期保单") .sheet("续期保单")
.doWrite(rows); .doWrite(rows);
return out.toByteArray(); return out.toByteArray();
...@@ -51,6 +55,21 @@ public class RenewalPolicyReportService { ...@@ -51,6 +55,21 @@ public class RenewalPolicyReportService {
today.format(DAY_FMT)); 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) { private List<RenewalPolicyExportDTO> toRows(RenewalReminderData data) {
List<RenewalPolicyExportDTO> rows = new ArrayList<>(); List<RenewalPolicyExportDTO> rows = new ArrayList<>();
if (data == null || CollectionUtils.isEmpty(data.getDuePolicies())) { if (data == null || CollectionUtils.isEmpty(data.getDuePolicies())) {
......
...@@ -2,9 +2,6 @@ package com.yd.csf.service.vo; ...@@ -2,9 +2,6 @@ package com.yd.csf.service.vo;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat; 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 lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -14,9 +11,6 @@ import java.util.Date; ...@@ -14,9 +11,6 @@ import java.util.Date;
* 续期保单清单导出 DTO,列顺序与表头严格对齐 policy报表模版.xlsx(30 列) * 续期保单清单导出 DTO,列顺序与表头严格对齐 policy报表模版.xlsx(30 列)
*/ */
@Data @Data
@ContentRowHeight(15)
@HeadRowHeight(20)
@ColumnWidth(20)
public class RenewalPolicyExportDTO { public class RenewalPolicyExportDTO {
@ExcelProperty("id") @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