Browse Source

feat: 添加进窗列表导出

master
buaixuexideshitongxue 2 weeks ago
parent
commit
d9381a470a
  1. 43
      src/main/java/com/biutag/supervision/controller/report/ReportProjectController.java
  2. 56
      src/main/java/com/biutag/supervision/pojo/vo/entryWindow/EntryWindowExcelVo.java

43
src/main/java/com/biutag/supervision/controller/report/ReportProjectController.java

@ -31,6 +31,7 @@ import com.biutag.supervision.pojo.param.Report.ReportProjectQueryParam;
import com.biutag.supervision.pojo.param.entryWindow.EntryWindowQueryParam; import com.biutag.supervision.pojo.param.entryWindow.EntryWindowQueryParam;
import com.biutag.supervision.pojo.param.statement.StatementQueryParam; import com.biutag.supervision.pojo.param.statement.StatementQueryParam;
import com.biutag.supervision.pojo.request.reportProject.ReportProjectDeleteRequest; import com.biutag.supervision.pojo.request.reportProject.ReportProjectDeleteRequest;
import com.biutag.supervision.pojo.vo.entryWindow.EntryWindowExcelVo;
import com.biutag.supervision.pojo.vo.entryWindow.EntryWindowVo; import com.biutag.supervision.pojo.vo.entryWindow.EntryWindowVo;
import com.biutag.supervision.pojo.vo.excel.ExcelControlPriceVo; import com.biutag.supervision.pojo.vo.excel.ExcelControlPriceVo;
import com.biutag.supervision.pojo.vo.report.ReportHomeVo; import com.biutag.supervision.pojo.vo.report.ReportHomeVo;
@ -211,6 +212,48 @@ public class ReportProjectController {
return Result.success(vo); return Result.success(vo);
} }
@PostMapping("/excelEntryWindowList")
public void excelEntryWindowList(@RequestBody EntryWindowQueryParam queryParam, HttpServletResponse response) {
try {
queryParam.setCurrent(1);
queryParam.setSize(10000);
Result<Page<EntryWindowVo>> result = page(queryParam);
if (result.getCode() != 200) {
throw new RuntimeException("数据查询失败");
}
List<EntryWindowExcelVo> dataList = result.getData().getRecords().stream().map(record -> {
EntryWindowExcelVo vo = new EntryWindowExcelVo();
vo.setReportName(record.getReportName());
vo.setReportType(record.getReportType());
vo.setProjectType(record.getProjectType());
vo.setIsRecessedText(record.getIsRecessed() == 0 ? "进窗" : "退窗");
vo.setNodeText(FlowEnum.contains(record.getNode()));
vo.setAuditUnitStr(StrUtil.removeSuffix(ObjectUtil.defaultIfNull(record.getAuditUnitStr(), ""), "/"));
vo.setProjectUnitStr(StrUtil.removeSuffix(ObjectUtil.defaultIfNull(record.getProjectUnitStr(), ""), "/"));
vo.setProjectPrincipal(record.getProjectPrincipal());
vo.setProjectPhone(record.getProjectPhone());
vo.setPurchaseMethod(record.getPurchaseMethod());
vo.setReportMoney(record.getReportMoney());
vo.setApplicantTime(record.getApplicantTime());
vo.setProjectApprovalMoney(record.getProjectApprovalMoney());
vo.setProjectApprovalTime(record.getProjectApprovalTime());
return vo;
}).collect(Collectors.toList());
String headerValue = "attachment; filename=\"" + URLEncoder.encode("进退窗项目列表.xlsx", "UTF-8") + "\"";
response.setHeader("Content-Disposition", headerValue);
response.setContentType("application/octet-stream");
EasyExcel.write(response.getOutputStream(), EntryWindowExcelVo.class)
.inMemory(Boolean.TRUE)
.sheet("进退窗项目列表")
.doWrite(dataList);
} catch (Exception e) {
log.error("导出进退窗项目列表失败", e);
throw new RuntimeException("导出失败", e);
}
}
//审计情况表报表 //审计情况表报表
@PostMapping("/pageConditionVo") @PostMapping("/pageConditionVo")
public Result<Page<ConditionVo>> pageConditionVo(@RequestBody StatementQueryParam queryParam){ public Result<Page<ConditionVo>> pageConditionVo(@RequestBody StatementQueryParam queryParam){

56
src/main/java/com/biutag/supervision/pojo/vo/entryWindow/EntryWindowExcelVo.java

@ -0,0 +1,56 @@
package com.biutag.supervision.pojo.vo.entryWindow;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
public class EntryWindowExcelVo {
@ExcelProperty(value = "项目名称")
private String reportName;
@ExcelProperty(value = "报审类型")
private String reportType;
@ExcelProperty(value = "项目类别")
private String projectType;
@ExcelProperty(value = "状态")
private String isRecessedText;
@ExcelProperty(value = "当前环节")
private String nodeText;
@ExcelProperty(value = "审计单位")
private String auditUnitStr;
@ExcelProperty(value = "项目单位")
private String projectUnitStr;
@ExcelProperty(value = "项目负责人")
private String projectPrincipal;
@ExcelProperty(value = "项目负责人联系方式")
private String projectPhone;
@ExcelProperty(value = "采购方式")
private String purchaseMethod;
@ExcelProperty(value = "报审金额")
private BigDecimal reportMoney;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ExcelProperty(value = "报审日期")
private LocalDateTime applicantTime;
@ExcelProperty(value = "立项金额")
private BigDecimal projectApprovalMoney;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ExcelProperty(value = "立项日期")
private LocalDateTime projectApprovalTime;
}
Loading…
Cancel
Save