From 9606980aa32de18b4fc1cb7e3450b90c636cbf84 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 10 十月 2024 18:14:10 +0800
Subject: [PATCH] 取图片依赖注释
---
ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java | 22 ++++++++++++++++++----
1 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java
index 8020953..10c8a12 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java
@@ -1,10 +1,15 @@
package com.ycl.platform.service.impl;
import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelWriter;
+import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.platform.domain.entity.CalculateRecord;
import com.ycl.platform.domain.entity.CalculateReport;
+import com.ycl.platform.domain.entity.CalculateRule;
import com.ycl.platform.domain.excel.CalculateExport;
import com.ycl.platform.domain.form.CalculateReportBackfillForm;
import com.ycl.platform.domain.form.CalculateReportForm;
@@ -14,8 +19,10 @@
import com.ycl.platform.mapper.CalculateRecordMapper;
import com.ycl.platform.mapper.CalculateReportMapper;
import com.ycl.platform.service.CalculateReportService;
+import com.ycl.platform.service.ICalculateRuleService;
import com.ycl.system.Result;
import com.ycl.system.page.PageUtil;
+import com.ycl.utils.SecurityUtils;
import enumeration.general.CalculateReportStatusEnum;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
@@ -44,7 +51,7 @@
@RequiredArgsConstructor
public class CalculateReportServiceImpl extends ServiceImpl<CalculateReportMapper, CalculateReport> implements CalculateReportService {
- private final CalculateReportMapper calculateReportMapper;
+ private final ICalculateRuleService calculateRuleService;
private final CalculateRecordMapper calculateRecordMapper;
/**
@@ -118,6 +125,7 @@
@Override
public Result page(CalculateReportQuery query) {
IPage<CalculateReportVO> page = PageUtil.getPage(query, CalculateReportVO.class);
+ query.setUnitId(SecurityUtils.getUnitId());
baseMapper.page(query, page);
page.getRecords().stream().forEach(item -> {
if (Objects.isNull(item)) {
@@ -211,13 +219,19 @@
calculateExport.setNum(list.stream().mapToInt(CalculateExport::getNum).sum());
calculateExport.setScore(100 + list.stream().mapToInt(CalculateExport::getScore).sum());
list.add(calculateExport);
+ // 鑾峰彇瑙勫垯
+ List<CalculateRule> ruleList = calculateRuleService.list(new LambdaQueryWrapper<CalculateRule>().eq(CalculateRule::getContractId, contractId));
// 杈撳嚭鏂囦欢
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setCharacterEncoding("utf-8");
String fileName = URLEncoder.encode("鏍哥畻鎶ュ憡", StandardCharsets.UTF_8).replace("\\+", "%20");
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
- EasyExcel.write(response.getOutputStream(), CalculateExport.class)
- .sheet("鏍哥畻鎶ュ憡")
- .doWrite(list);
+ // 澧炲姞sheet
+ try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).build()){
+ WriteSheet sheet = EasyExcel.writerSheet(0, "鏍哥畻鎶ュ憡").head(CalculateExport.class).build();
+ excelWriter.write(list, sheet);
+ WriteSheet sheet2 = EasyExcel.writerSheet(1, "鏍哥畻瑙勫垯").head(CalculateRule.class).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).build();
+ excelWriter.write(ruleList, sheet2);
+ }
}
}
--
Gitblit v1.8.0