archiveManager/src/main/java/com/ruoyi/domain/ArchiveRecords.java
@@ -26,13 +26,16 @@ @TableId(type = IdType.AUTO) private Long id; @TableField(exist = false) @Excel(name = "序号", headerColor = IndexedColors.BLACK, width = 8) private String num; /** 档案号 */ @Excel(name = "档案号", headerColor = IndexedColors.BLACK) @Excel(name = "档案号", headerColor = IndexedColors.RED, width = 6) private String recordId; /** 发问号 */ @Excel(name = "发文号", headerColor = IndexedColors.BLACK) @Excel(name = "发文号", headerColor = IndexedColors.RED, width = 10) private String inquiryNumber; public String getEveryProjectName() { @@ -43,32 +46,32 @@ this.everyProjectName = everyProjectName; } @Excel(name = "项目名称", headerColor = IndexedColors.BLACK) // @Excel(name = "项目名称", headerColor = IndexedColors.BLACK) private String everyProjectName; /** 案卷题名 */ @Excel(name = "案卷题名", headerColor = IndexedColors.BLACK) @Excel(name = "案卷题名", headerColor = IndexedColors.RED, width = 10) private String caseTitle; /** 公开属性 */ @Excel(name = "公开属性", headerColor = IndexedColors.BLACK) @Excel(name = "公开属性", headerColor = IndexedColors.BLACK, width = 8) private String publicAttribute; /** 编制单位 */ @Excel(name = "编制单位", headerColor = IndexedColors.BLACK) @Excel(name = "编制单位", headerColor = IndexedColors.BLACK, width = 8) private String preparationUnit; /** 编制日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "编制日期", width = 30, dateFormat = "yyyy-MM-dd", headerColor = IndexedColors.BLACK) @Excel(name = "编制日期", width = 11, dateFormat = "yyyy-MM-dd", headerColor = IndexedColors.BLACK) private Date preparationDate; /** 保管期限 */ @Excel(name = "保管期限", headerColor = IndexedColors.BLACK) @Excel(name = "保管期限", headerColor = IndexedColors.BLACK , width = 8) private String retentionPeriod; /** 密级 */ @Excel(name = "密级", headerColor = IndexedColors.BLACK) @Excel(name = "密级", headerColor = IndexedColors.BLACK, width = 6) private String securityClassification; @@ -76,43 +79,43 @@ private String recordStatus; /** 案卷页数 */ @Excel(name = "案卷页数", headerColor = IndexedColors.BLACK) @Excel(name = "案卷页数", headerColor = IndexedColors.BLACK, width = 8) private Long pageCount; /** 立案号 */ @Excel(name = "立案号", headerColor = IndexedColors.BLACK) @Excel(name = "立案号", headerColor = IndexedColors.BLACK, width = 8) private String filingNumber; /** 建设单位 */ @Excel(name = "建设单位", headerColor = IndexedColors.BLACK) @Excel(name = "建设单位", headerColor = IndexedColors.RED, width = 10) private String constructionUnit; /** 建设地址 */ @Excel(name = "建设地址", headerColor = IndexedColors.BLACK) @Excel(name = "建设地址", headerColor = IndexedColors.RED, width = 9) private String constructionAddress; /** 建设项目名称 */ @Excel(name = "建设项目名称", headerColor = IndexedColors.BLACK) @Excel(name = "建设项目名称", headerColor = IndexedColors.RED, width = 14) private String projectName; /** 项目编号 */ @Excel(name = "项目编号", headerColor = IndexedColors.BLACK) @Excel(name = "项目编号", headerColor = IndexedColors.BLACK, width = 8) private String projectNumber; /** 扫描加工公司 */ @Excel(name = "扫描加工公司", headerColor = IndexedColors.BLACK) @Excel(name = "扫描加工公司", headerColor = IndexedColors.BLACK, width = 12) private String scanningCompany; /** 档案管(室)号 */ @Excel(name = "档案管(室)号", headerColor = IndexedColors.BLACK) @Excel(name = "档案管(室)号", headerColor = IndexedColors.BLACK, width = 14) private String archiveRoomNumber; /** 缩微号 */ @Excel(name = "缩微号", headerColor = IndexedColors.BLACK) @Excel(name = "缩微号", headerColor = IndexedColors.BLACK, width = 8) private String microfilmNumber; /** 备注 */ @Excel(name = "备注", headerColor = IndexedColors.BLACK) @Excel(name = "备注", headerColor = IndexedColors.BLACK, width = 8) private String remarks; @TableField(exist = false) @@ -137,7 +140,7 @@ @TableField(exist = false) private String categoryNumberEnd; /** 历史相关发文号 */ @Excel(name = "历史相关发文号") @Excel(name = "历史相关发文号", headerColor = IndexedColors.RED, width = 14) private String historicalReferenceNumber; @TableField(exist = false) @@ -410,6 +413,16 @@ return historicalReferenceNumber; } public void setNum(String num) { this.num = num; } public String getNum() { return num; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) archiveManager/src/main/java/com/ruoyi/domain/vo/ArchiveRecordSmall.java
@@ -8,32 +8,32 @@ public class ArchiveRecordSmall { /** 档案号 */ @Excel(name = "序号", headerColor = IndexedColors.BLACK) @Excel(name = "序号", width=10,headerColor = IndexedColors.BLACK) private Long num; @Excel(name = "立案号", headerColor = IndexedColors.BLACK) @Excel(name = "立案号", width=20,headerColor = IndexedColors.BLACK) private String filingNumber; /** 档案管(室)号 */ @Excel(name = "档案发文号_档号", headerColor = IndexedColors.BLACK) @Excel(name = "档案发文号_档号", width=21,headerColor = IndexedColors.BLACK) private String inqrid; /** 案卷题名 */ @Excel(name = "案卷题名", headerColor = IndexedColors.BLACK) @Excel(name = "案卷题名", width=23,headerColor = IndexedColors.BLACK) private String caseTitle; @Excel(name = "公开属性", headerColor = IndexedColors.BLACK) @Excel(name = "公开属性", width=8,headerColor = IndexedColors.BLACK) private String publicAttribute; /** 缩微号 */ @Excel(name = "电子文件个数", headerColor = IndexedColors.BLACK) @Excel(name = "电子文件个数",width=7, headerColor = IndexedColors.BLACK) private Long cnt; @Excel(name = "备注", headerColor = IndexedColors.BLACK) @Excel(name = "备注", width=5,headerColor = IndexedColors.BLACK) private String remarks; archiveManager/src/main/java/com/ruoyi/mapper/ArchiverecordstouserMapper.java
@@ -32,10 +32,14 @@ Page<RecordToUserCount> selectRecordToUserPage(Page<RecordToUserCount> page, @Param("ew") LambdaQueryWrapper<RecordToUserCount> queryWrapper); @Select("select ad.user_id, user_name, count(*) as cnt, (select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.record_id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='未录入') as swlr,(select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.record_id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='录入完成') as ylr from archiverecordstouser as ad, sys_user as sy,archive_records as ard where ad.user_id=sy.user_id and ard.record_id=ad.archive_records_id group by user_id, user_name\n" + " ") @Select("select ad.user_id, user_name, count(*) as cnt, (select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='未录入') as swlr,\n" + " (select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='未上传附件') as wlrf,\n" + " (select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='待修改') as dxg,\n" + " (select count(*) from archive_records as ar,archiverecordstouser as ats, sys_user as su where ar.id= ats.archive_records_id and ats.user_id=su.user_id and su.user_id=sy.user_id and\n" + " record_status='录入完成') as ylr from archiverecordstouser as ad, sys_user as sy,archive_records as ard where ad.user_id=sy.user_id and ard.id=ad.archive_records_id group by user_id, user_name") List<RecordToUserCount> selectRecordToUserAll(); } archiveManager/src/main/java/com/ruoyi/mapper/DocumentMaterialsMapper.java
@@ -71,4 +71,16 @@ //拿到除其它材料之外的全部数据的个数 @Select("select count(*) FROM document_materials where file_style!='其他材料' and record_id=#{recordId}") int getCount(@Param("recordId") int recordId); //判断卷内目录是否全部上传了附件 @Select("select if(num=total_count, true, false) as res from (\n" + "SELECT\n" + " ROW_NUMBER() OVER (ORDER BY page_number) AS num, SUM(CASE WHEN dm.url IS NOT NULL THEN 1 ELSE 0 END) OVER() AS total_count\n" + " from document_materials as dm, archive_records as ar \n" + " WHERE ar.id = dm.record_id and page_number IN (SELECT MIN(page_number) \n" + " FROM document_materials where record_id=#{recordId}\n" + " GROUP BY stage, title) and ar.id =#{recordId} order by page_number desc limit 1) as res ") Boolean judgeArchiveInfo( @Param("recordId") int recordId); } archiveManager/src/main/java/com/ruoyi/service/IDocumentMaterialsService.java
@@ -97,4 +97,8 @@ //根据页号添加中间记录 public AjaxResult addMiddleRecordsByPageNumbers(Long recordId, Long maxPageNumber); //判断是否已经上传了的附件 public Boolean judgeInfo(int recordId); } archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveRecordsServiceImpl.java
@@ -226,7 +226,12 @@ Long userid = SecurityUtils.getUserId(); LambdaQueryWrapper<ArchiveRecords> lambdaQueryWrapper = buildCondition(archiveRecords,userid); List<ArchiveRecords> beanRecords = list(lambdaQueryWrapper); // 为记录设置序号,从1开始 for (int i = 0; i < beanRecords.size(); i++) { ArchiveRecords record = beanRecords.get(i); record.setNum(String.valueOf(i + 1)); } return beanRecords; } archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java
@@ -422,6 +422,12 @@ return AjaxResult.error("添加中间记录失败:" + e.getMessage()); } } @Override public Boolean judgeInfo(int recordId) { return this.baseMapper.judgeArchiveInfo(recordId); } } ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/DocumentMaterialsController.java
@@ -96,6 +96,18 @@ int cnt = documentMaterialsService.getFileCount(recordId); return AjaxResult.success(cnt); } /** * 判断卷内目录是否上传了附件 */ @PreAuthorize("@ss.hasPermi('system:materials:list')") @GetMapping("/judge/{recordId}") public AjaxResult judge(@PathVariable("recordId") Integer recordId) { Boolean cnt = documentMaterialsService.judgeInfo(recordId); return AjaxResult.success(cnt); } /** * 根据页号添加中间记录的接口 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/archiveAllExportController.java
@@ -445,7 +445,7 @@ ExcelExp e6 = new ExcelExp("移交清单",lrs, ArchiveRecordSmall.class); ExcelExp e6 = new ExcelExp("移交清单","GH" + formattedDate + sequence, lrs, ArchiveRecordSmall.class); // ExcelExp e4 = new ExcelExp("案卷封面", arsi, recordId1, imgr1,sedcode, ArchiveInfoVo.class); List<ExcelExp> mysheet6 = new ArrayList<ExcelExp>(); mysheet6.add(e6); @@ -464,20 +464,26 @@ System.out.println(ids.length); System.out.println("------------------"); for(int i = 0; i < ids.length; i++) { System.out.println(ids[i]); // 获取文件的保存位置,读取数据库, DocumentMaterials documentMaterials = new DocumentMaterials(); documentMaterials.setRecordId(ids[i]); List<DocumentMaterialsVoLarge> docs = documentMaterialsService.selectDocumentMaterialsAllByRecordId(ids[i]); System.out.println(docs.size()+"----009"); System.out.println(docs.size()+"----7777"); //.selectDocumentMaterialsList(documentMaterials); List<DocumentMaterialsVo> dsvs = documentMaterialsService.findArchMInfo(ids[i].toString()); ArchiveInfoVo aIV = iArchiveRecordsService.selectByRecordId(ids[i]); System.out.println(aIV.getInquiryNumber()); System.out.println(aIV.getRecordId()); String adir = aIV.getInquiryNumber() + " " + aIV.getRecordId(); System.out.println(adir); System.out.println(fna+adir); zos.putNextEntry(new ZipEntry(fna + adir + "/")); @@ -494,39 +500,26 @@ } //添加07 的pdf //pdf目录封面 String pdfPathF = "07-案卷封面.pdf"; pdfGenerateService.generatePdf(pdfPathF, ids[i]); // 2. 压缩PDF到ZIP文件 // 添加PDF文件到ZIP ZipEntry zipEntry2 = new ZipEntry(fna + adir +"/"+pdfPathF); zos.putNextEntry(zipEntry2); // String pdfPathF = "07-案卷封面.pdf"; // pdfGenerateService.generatePdf(pdfPathF, ids[i]); // // 2. 压缩PDF到ZIP文件 // // 添加PDF文件到ZIP // ZipEntry zipEntry2 = new ZipEntry(fna + adir +"/"+pdfPathF); // zos.putNextEntry(zipEntry2); // // // 读取PDF文件内容并写入ZIP // try (FileInputStream fis = new FileInputStream(pdfPathF)) { // byte[] buffer = new byte[1024]; // int len; // while ((len = fis.read(buffer)) > 0) { // zos.write(buffer, 0, len); // } // } // 读取PDF文件内容并写入ZIP try (FileInputStream fis = new FileInputStream(pdfPathF)) { byte[] buffer = new byte[1024]; int len; while ((len = fis.read(buffer)) > 0) { zos.write(buffer, 0, len); } } //08-卷内卷内目录的pdf String pdf08Path= "08-卷内目录.pdf"; List<DocumentMaterialsVo> list3 = dsvs; if(list3.size()>0) { pdfGenerateService.generateFileDirectoryPdf(pdf08Path, list3); ZipEntry zipEntry3 = new ZipEntry(fna + adir +"/"+pdf08Path); zos.putNextEntry(zipEntry3); // 读取PDF文件内容并写入ZIP try (FileInputStream fis = new FileInputStream(pdf08Path)) { byte[] buffer = new byte[1024]; int len; while ((len = fis.read(buffer)) > 0) { zos.write(buffer, 0, len); } } } //09-备考表.pdf @@ -652,6 +645,64 @@ // System.out.println(bos2); zos.putNextEntry(entryiv); bos2.writeTo(zos); //pdf目录封面 String pdfPathF = "07-案卷封面.pdf"; // pdfGenerateService.generatePdf(pdfPathF, id); try { if (!getLicenseExcel()) { System.out.println("授权失败"); // return ; } // 读取Excel文件 com.aspose.cells.Workbook wb = poiToAspose(util3.getWb()); // 获取需要导出的sheet(索引从0开始) int targetSheetIndex = 1; com.aspose.cells.Worksheet targetSheet = wb.getWorksheets().get(targetSheetIndex); targetSheet.autoFitRows(true); System.out.println("当前sheet名称:" + targetSheet.getName()); System.out.println("当前sheet索引:" + targetSheet.getIndex()); // 隐藏所有其他工作表 for (int j = 0; j < wb.getWorksheets().getCount(); j++) { if (j != targetSheetIndex) { wb.getWorksheets().get(j).setVisible(false); } } // 设置活动工作表为目标工作表 wb.getWorksheets().setActiveSheetIndex(targetSheetIndex); // 创建PDF保存选项 com.aspose.cells.PdfSaveOptions pdfSaveOptions = new com.aspose.cells.PdfSaveOptions(); pdfSaveOptions.setCompliance(com.aspose.cells.PdfCompliance.PDF_A_1_B); // 创建临时字节输出流 ByteArrayOutputStream baos = new ByteArrayOutputStream(); // 将新的Workbook保存为PDF到临时流 // newWorkbook.save(baos, com.aspose.cells.SaveFormat.PDF); wb.save(baos, pdfSaveOptions); // 将PDF添加到ZIP文件 ZipEntry entry07 = new ZipEntry(fna + adir +"/"+pdfPathF); zos.putNextEntry(entry07); zos.write(baos.toByteArray()); // zos.closeEntry(); // 直接将原始工作簿保存为PDF(只包含可见的工作表) long now = System.currentTimeMillis(); // System.out.println("pdf转换成功,共耗时:" + ((now - old) / 1000.0) + "秒"); } catch (Exception e) { e.printStackTrace(); // 打印详细错误信息 System.err.println("转换失败:" + e.getMessage()); e.printStackTrace(System.err); } // ExcelUtil<ArchiveInfoVo> utilsv = new ExcelUtil<ArchiveInfoVo>(ArchiveInfoVo.class); // // @@ -659,7 +710,7 @@ // List<ArchiveInfoVo> aivs = new ArrayList<>(); // aivs.add(aIV); // utilsv.byteOutputStreamExcel(boss, aivs,"Date List", ""); bos2.writeTo(zos); @@ -691,12 +742,90 @@ zos.putNextEntry(entr); ByteOutputStream bos8 = new ByteOutputStream(); util2.exportExcelManySheet(bos6, mysheet); util2.exportExcelManySheet(bos8, mysheet); // util1.byteOutputStreamExcel(bos1, dsvs,"Date List", ""); bos8.writeTo(zos); //08-卷内卷内目录的pdf String pdf08Path= "08-卷内目录.pdf"; try { if (!getLicenseExcel()) { System.out.println("授权失败"); // return ; } // 读取Excel文件 com.aspose.cells.Workbook wb1 = poiToAspose(util2.getWb()); // 获取需要导出的sheet(索引从0开始) int targetSheetIndex = 1; com.aspose.cells.Worksheet targetSheet = wb1.getWorksheets().get(targetSheetIndex); targetSheet.autoFitRows(true); System.out.println("当前sheet名称:" + targetSheet.getName()); System.out.println("当前sheet索引:" + targetSheet.getIndex()); // 隐藏所有其他工作表 for (int j = 0; j < wb1.getWorksheets().getCount(); j++) { if (j != targetSheetIndex) { wb1.getWorksheets().get(j).setVisible(false); } } // 设置活动工作表为目标工作表 wb1.getWorksheets().setActiveSheetIndex(targetSheetIndex); // 创建PDF保存选项 com.aspose.cells.PdfSaveOptions pdfSaveOptions = new com.aspose.cells.PdfSaveOptions(); pdfSaveOptions.setCompliance(com.aspose.cells.PdfCompliance.PDF_A_1_B); // 创建临时字节输出流 ByteArrayOutputStream baosm = new ByteArrayOutputStream(); // 将新的Workbook保存为PDF到临时流 // newWorkbook.save(baos, com.aspose.cells.SaveFormat.PDF); wb1.save(baosm, pdfSaveOptions); // 将PDF添加到ZIP文件 ZipEntry entry2 = new ZipEntry(fna + adir +"/"+pdf08Path); zos.putNextEntry(entry2); zos.write(baosm.toByteArray()); // zos.closeEntry(); // 直接将原始工作簿保存为PDF(只包含可见的工作表) long now = System.currentTimeMillis(); // System.out.println("pdf转换成功,共耗时:" + ((now - old) / 1000.0) + "秒"); } catch (Exception e) { e.printStackTrace(); // 打印详细错误信息 System.err.println("转换失败:" + e.getMessage()); e.printStackTrace(System.err); } } //把excel转为pdf // // //08-卷内卷内目录的pdf // String pdf08Path= "08-卷内目录.pdf"; // List<DocumentMaterialsVo> list3 = dsvs; // if(list3.size()>0) { // pdfGenerateService.generateFileDirectoryPdf(pdf08Path, list3); // ZipEntry zipEntry3 = new ZipEntry(fna + adir +"/"+pdf08Path); // zos.putNextEntry(zipEntry3); // // // 读取PDF文件内容并写入ZIP // try (FileInputStream fis = new FileInputStream(pdf08Path)) { // byte[] buffer = new byte[1024]; // int len; // while ((len = fis.read(buffer)) > 0) { // zos.write(buffer, 0, len); // } // } // } // // @@ -713,38 +842,40 @@ //在压缩包中添加文件夹 //得到文件名frontCompWithZore(4, dc.get)+ String fname = frontCompWithZore(4, dc.getFileNumber().intValue())+"-"+dc.getTitle()+"-"+frontCompWithZore(4,dc.getPageNumber().intValue())+"." +dc.getUrl().split("\\.")[1]; if(dc.getStage().equals("01-申请材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/01-申请材料/"+fname)); else if(dc.getStage().equals("02-办案过程材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/02-办案过程材料/"+fname)); else if(dc.getStage().equals("03-结论性文件")) zos.putNextEntry(new ZipEntry(fna + adir + "/03-结论性文件/"+fname)); else if(dc.getStage().equals("04-其他材料")) { zos.putNextEntry(new ZipEntry(fna + adir + "/04-其他材料/" + fname)); } else if(dc.getStage().equals("05-档案变更材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/05-档案变更材料/"+fname)); else if(dc.getStage().equals("06-业务数据")) zos.putNextEntry(new ZipEntry(fna + adir + "/06-业务数据/"+fname)); else zos.putNextEntry(new ZipEntry(fna + adir + "/"+fname)); String fname = ""; if(dc.getFileNumber()!=null&&dc.getPageNumber()!=null) { fname = frontCompWithZore(4, dc.getFileNumber().intValue()) + "-" + dc.getTitle() + "-" + frontCompWithZore(4, dc.getPageNumber().intValue()) + "." + dc.getUrl().split("\\.")[1]; if (dc.getStage().equals("01-申请材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/01-申请材料/" + fname)); else if (dc.getStage().equals("02-办案过程材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/02-办案过程材料/" + fname)); else if (dc.getStage().equals("03-结论性文件")) zos.putNextEntry(new ZipEntry(fna + adir + "/03-结论性文件/" + fname)); else if (dc.getStage().equals("04-其他材料")) { zos.putNextEntry(new ZipEntry(fna + adir + "/04-其他材料/" + fname)); } else if (dc.getStage().equals("05-档案变更材料")) zos.putNextEntry(new ZipEntry(fna + adir + "/05-档案变更材料/" + fname)); else if (dc.getStage().equals("06-业务数据")) zos.putNextEntry(new ZipEntry(fna + adir + "/06-业务数据/" + fname)); else zos.putNextEntry(new ZipEntry(fna + adir + "/" + fname)); int len; FileInputStream in = new FileInputStream(tempFile); while ((len = in.read(buf)) != -1){ zos.write(buf, 0, len); } // zos.putNextEntry(new ZipEntry("04-其他材料")); zos.closeEntry(); in.close(); } } //删除压缩包 int len; FileInputStream in = new FileInputStream(tempFile); while ((len = in.read(buf)) != -1){ zos.write(buf, 0, len); } // zos.putNextEntry(new ZipEntry("04-其他材料")); zos.closeEntry(); in.close(); } } //删除压缩包 // if(file.exists()){ // file.delete(); // } @@ -1248,6 +1379,7 @@ System.out.println(filePath); File tempFile = new File(filePath); //在压缩包中添加文件夹 if(res) { zos.putNextEntry(new ZipEntry("01-申请材料/")); ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelExp.java
@@ -12,6 +12,16 @@ private Class clazz; private String recordId; //档案号 public String getIos5() { return ios5; } public void setIos5(String ios5) { this.ios5 = ios5; } private String ios5; //ios编号 private byte[] imgr; //条形码 public byte[] getSedcode() { @@ -28,6 +38,14 @@ this.dataset = dataset; this.clazz = clazz; } public ExcelExp(String fileName, String iso5, List dataset, Class clazz) { this.fileName = fileName; this.ios5 = iso5; this.dataset = dataset; this.clazz = clazz; } public ExcelExp(String fileName, List dataset, String recordId, byte[] imgr, Class clazz) { this.fileName = fileName; ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtilManySheetThird.java
@@ -287,11 +287,11 @@ int column = 0; if(index == 0) { // 合并第一行的前5个单元格 sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 7)); sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 6)); // 创建行并设置高度 row = sheet.createRow(0); row.setHeight((short)(40 * 40)); row.setHeight((short)(20 * 20)); // sheet.addMergedRegion(new CellRangeAddress(1, 1, 0, 7)); @@ -301,6 +301,8 @@ CellStyle style = wb.createCellStyle(); Font font = wb.createFont(); font.setBold(true); font.setFontHeightInPoints((short) 12); font.setFontName("宋体"); style.setFont(font); style.setAlignment(HorizontalAlignment.CENTER); @@ -308,6 +310,7 @@ row = sheet.createRow(1); // row.createCell(0).setCellValue("ISO编号:"); row.createCell(1).setCellValue(list.get(0).getIos5()); // row.createCell(4).setCellValue("档号:"); //拿到档号 row.createCell(5).setCellValue("");