diff --git a/WebRoot/Excel/01cef667-2d15-47cf-bd58-34178d692bb0.xlsx b/WebRoot/Excel/01cef667-2d15-47cf-bd58-34178d692bb0.xlsx new file mode 100644 index 00000000..241e9e77 Binary files /dev/null and b/WebRoot/Excel/01cef667-2d15-47cf-bd58-34178d692bb0.xlsx differ diff --git a/WebRoot/Excel/3662fd75-1846-4ec9-9748-6c7f7527907a.xlsx b/WebRoot/Excel/3662fd75-1846-4ec9-9748-6c7f7527907a.xlsx new file mode 100644 index 00000000..6b6ca485 Binary files /dev/null and b/WebRoot/Excel/3662fd75-1846-4ec9-9748-6c7f7527907a.xlsx differ diff --git a/WebRoot/Excel/59390b65-b496-4e21-a862-552c0eac6c79.xlsx b/WebRoot/Excel/59390b65-b496-4e21-a862-552c0eac6c79.xlsx new file mode 100644 index 00000000..6b0aa738 Binary files /dev/null and b/WebRoot/Excel/59390b65-b496-4e21-a862-552c0eac6c79.xlsx differ diff --git a/WebRoot/Excel/60233299-91a0-420c-88c4-7a325ddbcdfa.xlsx b/WebRoot/Excel/60233299-91a0-420c-88c4-7a325ddbcdfa.xlsx new file mode 100644 index 00000000..6f9d623b Binary files /dev/null and b/WebRoot/Excel/60233299-91a0-420c-88c4-7a325ddbcdfa.xlsx differ diff --git a/WebRoot/Excel/71b5cbe5-4070-4953-89e2-429294b4ee97.xlsx b/WebRoot/Excel/71b5cbe5-4070-4953-89e2-429294b4ee97.xlsx new file mode 100644 index 00000000..e153cc0b Binary files /dev/null and b/WebRoot/Excel/71b5cbe5-4070-4953-89e2-429294b4ee97.xlsx differ diff --git a/WebRoot/Excel/749d5c9e-62a3-4348-adb4-874c63f9b989.xlsx b/WebRoot/Excel/749d5c9e-62a3-4348-adb4-874c63f9b989.xlsx new file mode 100644 index 00000000..6991053d Binary files /dev/null and b/WebRoot/Excel/749d5c9e-62a3-4348-adb4-874c63f9b989.xlsx differ diff --git a/WebRoot/Excel/cf779cbd-6d6c-4b8e-8fa7-e970dd53c2d6.xlsx b/WebRoot/Excel/cf779cbd-6d6c-4b8e-8fa7-e970dd53c2d6.xlsx new file mode 100644 index 00000000..19156c10 Binary files /dev/null and b/WebRoot/Excel/cf779cbd-6d6c-4b8e-8fa7-e970dd53c2d6.xlsx differ diff --git a/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java b/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java index 99b6458b..2943a788 100644 --- a/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java +++ b/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java @@ -308,6 +308,14 @@ public class CollectController extends Controller { if (!StrKit.isBlank(options)) { PoiUtil.addValidation(wb, i, options, data_start_row, data_start_row + 20000, colIdx, colIdx);//范围 } + //1 文本 + //2 数值 + //4 日期(年-月-日) + //3 数值(小数) +// int data_type_id = record.getInt("data_type_id"); +// if (data_type_id == 2) PoiUtil.setIntegerStyle(wb, i, colIdx, data_start_row, data_start_row + 20000); +// if (data_type_id == 3) PoiUtil.setFloatStyle(wb, i, colIdx, data_start_row, data_start_row + 20000); +// if (data_type_id == 4) PoiUtil.setDateStyle(wb, i, colIdx, data_start_row, data_start_row + 20000); colIdx++; } } diff --git a/src/main/java/com/dsideal/QingLong/Util/PoiUtil.java b/src/main/java/com/dsideal/QingLong/Util/PoiUtil.java index 9923d8f5..8a943607 100644 --- a/src/main/java/com/dsideal/QingLong/Util/PoiUtil.java +++ b/src/main/java/com/dsideal/QingLong/Util/PoiUtil.java @@ -43,7 +43,7 @@ public class PoiUtil { txt += "(*)"; XSSFRichTextString richText = new XSSFRichTextString(txt);//全部文字 - richText.applyFont(0, len - 1, fontBlack); // 从第0个字符到第2个字符应用font1 + richText.applyFont(0, len, fontBlack); // 从第0个字符到第2个字符应用font1 richText.applyFont(len, len + 3, fontRed); // 从第2个字符到第4个字符应用font2 cell.setCellValue(richText);//设置文字 } @@ -273,4 +273,80 @@ public class PoiUtil { } return list; } + + /** + * 功能:设置整数类型格式 + * + * @param wb + * @param sheetIdx + * @param colIdx + * @param firstRow + * @param lastRow + */ + public static void setIntegerStyle(Workbook wb, int sheetIdx, int colIdx, int firstRow, int lastRow) { + // 设置整数类型的样式 + CellStyle integerStyle = wb.createCellStyle(); + integerStyle.setDataFormat((short) BuiltinFormats.getBuiltinFormat("0")); // 设置为整数类型 + + for (int i = firstRow; i <= lastRow; i++) { + Row row = wb.getSheetAt(sheetIdx).getRow(i); + if (row == null) row=wb.getSheetAt(sheetIdx).createRow(i); + // 设置整数类型的值 + Cell integerCell = row.getCell(colIdx); + if (integerCell == null) { + integerCell = row.createCell(colIdx); + } + integerCell.setCellStyle(integerStyle); // 应用整数类型的样式 + } + } + + /** + * 功能:设置浮点数类型格式 + * + * @param wb + * @param sheetIdx + * @param colIdx + * @param firstRow + * @param lastRow + */ + public static void setFloatStyle(Workbook wb, int sheetIdx, int colIdx, int firstRow, int lastRow) { + // 设置浮点数类型的样式 + CellStyle floatStyle = wb.createCellStyle(); + floatStyle.setDataFormat((short) BuiltinFormats.getBuiltinFormat("0.00")); // 设置为浮点数类型,保留两位小数 + for (int i = firstRow; i <= lastRow; i++) { + Row row = wb.getSheetAt(sheetIdx).getRow(i); + if (row == null) row=wb.getSheetAt(sheetIdx).createRow(i); + // 设置浮点数类型的值 + Cell floatCell = row.getCell(colIdx); + if (floatCell == null) { + floatCell = row.createCell(colIdx); + } + floatCell.setCellStyle(floatStyle); // 应用浮点数类型的样式 + } + } + + /** + * 功能:设置日期格式 + * + * @param wb + * @param sheetIdx + * @param colIdx + * @param firstRow + * @param lastRow + */ + public static void setDateStyle(Workbook wb, int sheetIdx, int colIdx, int firstRow, int lastRow) { + // 设置日期类型的样式 + CellStyle dateStyle = wb.createCellStyle(); + dateStyle.setDataFormat(wb.getCreationHelper().createDataFormat().getFormat("yyyy-mm-dd")); // 设置为日期类型,格式为yyyy-mm-dd + for (int i = firstRow; i <= lastRow; i++) { + Row row = wb.getSheetAt(sheetIdx).getRow(i); + if (row == null) row=wb.getSheetAt(sheetIdx).createRow(i); + // 设置日期类型的值 + Cell dateCell = row.getCell(colIdx); + if (dateCell == null) { + dateCell = row.createCell(colIdx); + } + dateCell.setCellStyle(dateStyle); // 应用日期类型的样式 + } + } }