Commit b188ea55 authored by yanzg's avatar yanzg

接口文档的支持

parent 401aa224
...@@ -20,6 +20,7 @@ import java.util.ArrayList; ...@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.regex.Pattern;
/** /**
* 控制台导出程序 * 控制台导出程序
...@@ -28,6 +29,7 @@ import java.util.Map; ...@@ -28,6 +29,7 @@ import java.util.Map;
* @author 颜佐光 * @author 颜佐光
*/ */
public class ExcelConsole<T extends Object> implements DbRow<T> { public class ExcelConsole<T extends Object> implements DbRow<T> {
private Pattern chinese = Pattern.compile("[\u4e00-\u9fa5]");
/** /**
* 配置信息 * 配置信息
*/ */
...@@ -301,10 +303,6 @@ public class ExcelConsole<T extends Object> implements DbRow<T> { ...@@ -301,10 +303,6 @@ public class ExcelConsole<T extends Object> implements DbRow<T> {
String columnName = column.getName(); String columnName = column.getName();
String value = StringHelper.getFirst(rowHandle.get(t, columnName)); String value = StringHelper.getFirst(rowHandle.get(t, columnName));
// 获取字节数、用于设置最大宽度
int maxBytes = Math.max(columnBytes.getOrDefault(columnPos, 0), value.getBytes().length);
columnBytes.put(columnPos, maxBytes);
// 当不需要合并历史记录时,则创建新的内容 // 当不需要合并历史记录时,则创建新的内容
Cell cell = createCell(row, columnPos, value); Cell cell = createCell(row, columnPos, value);
// 判断列是否需要合并 // 判断列是否需要合并
...@@ -420,6 +418,12 @@ public class ExcelConsole<T extends Object> implements DbRow<T> { ...@@ -420,6 +418,12 @@ public class ExcelConsole<T extends Object> implements DbRow<T> {
* @return * @return
*/ */
private Cell createCell(Row row, int column, String content) { private Cell createCell(Row row, int column, String content) {
// 获取字节数、用于设置最大宽度
int chinaCount = chinese.matcher(content).groupCount();
int bytes = (content.length() - chinaCount) + (int) Math.round(chinaCount * 1.5);
int maxBytes = Math.max(columnBytes.getOrDefault(column, 0), bytes);
columnBytes.put(column, maxBytes);
Cell cell = row.createCell(column); Cell cell = row.createCell(column);
cell.setCellStyle(style); cell.setCellStyle(style);
cell.setCellValue(content); cell.setCellValue(content);
......
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