类 FsTableUtil
java.lang.Object
cn.isliu.core.utils.FsTableUtil
飞书表格工具类
提供处理飞书表格数据和格式的工具方法,
包括数据处理、样式设置、选项设置等功能
-
嵌套类概要
嵌套类 -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明static StringaddLineBreaks(String text, int charsPerLine) 按指定字符数给文本添加换行符static StringaddLineBreaksPer8Chars(String text) 每8个字符添加一个换行符(默认方法)static List<List<FsTableUtil.HeaderCell>>buildHierarchicalHeaders(Map<String, FieldProperty> fieldsMap) 构建多层级表头结构,支持按层级排序和合并 根据需求实现层级分组和order排序: 1.static StringgetColumnName(int columnIndex) static StringgetColumnNameByNuNumber(int columnNumber) static StringgetDefaultTableStyle(String sheetId, int size, Map<String, FieldProperty> fieldsMap, TableConf tableConf) getDefaultTableStyle(String sheetId, Map<String, FieldProperty> fieldsMap, TableConf tableConf) static List<FsTableData>getFsTableData(Sheet sheet, String spreadsheetToken, TableConf tableConf) 获取飞书表格数据 从指定的工作表中读取并处理表格数据static List<FsTableData>getFsTableData(Sheet sheet, String spreadsheetToken, TableConf tableConf, List<String> ignoreUniqueFields) 获取飞书表格数据(支持忽略唯一字段)getHeadTemplateBuilder(String sheetId, List<String> headers, Map<String, FieldProperty> fieldsMap, TableConf tableConf) getHeadTemplateBuilder(String sheetId, List<String> headers, Map<String, FieldProperty> fieldsMap, List<String> includeFields, TableConf tableConf) getHeadTemplateBuilder(String sheetId, List<String> headers, Map<String, FieldProperty> fieldsMap, List<String> includeFields, TableConf tableConf, Map<String, String> fieldDescriptions) static List<CustomCellService.CellRequest>getMergeCell(String sheetId, Map<String, FieldProperty> fieldsMap) static TableConfgetTableConf(Class<?> zClass) getTitlePostionMap(Sheet sheet, String spreadsheetToken, TableConf tableConf) groupFieldsByLevel(Map<String, FieldProperty> fieldsMap) 根据层级分组字段属性,并按order排序static TableDataprocessSheetData(Sheet metadata, List<List<Object>> values) 处理表格数据,将合并单元格转换为对象,并补齐合并区域的值static voidsetTableOptions(String spreadsheetToken, List<String> headers, Map<String, FieldProperty> fieldsMap, String sheetId, boolean enableDesc) static voidsetTableOptions(String spreadsheetToken, List<String> headers, Map<String, FieldProperty> fieldsMap, String sheetId, boolean enableDesc, Map<String, Object> customProperties)
-
构造器详细资料
-
FsTableUtil
public FsTableUtil()
-
-
方法详细资料
-
getFsTableData
public static List<FsTableData> getFsTableData(Sheet sheet, String spreadsheetToken, TableConf tableConf) 获取飞书表格数据 从指定的工作表中读取并处理表格数据- 参数:
sheet- 工作表对象spreadsheetToken- 电子表格Token- 返回:
- 飞书表格数据列表
-
getFsTableData
public static List<FsTableData> getFsTableData(Sheet sheet, String spreadsheetToken, TableConf tableConf, List<String> ignoreUniqueFields) 获取飞书表格数据(支持忽略唯一字段)- 参数:
sheet- 工作表对象spreadsheetToken- 电子表格TokentableConf- 表格配置ignoreUniqueFields- 计算唯一标识时忽略的字段列表- 返回:
- 飞书表格数据列表
-
processSheetData
处理表格数据,将合并单元格转换为对象,并补齐合并区域的值 -
getColumnName
-
getColumnNameByNuNumber
-
getTitlePostionMap
-
setTableOptions
-
setTableOptions
-
getHeadTemplateBuilder
public static CustomValueService.ValueRequest getHeadTemplateBuilder(String sheetId, List<String> headers, Map<String, FieldProperty> fieldsMap, TableConf tableConf) -
getHeadTemplateBuilder
public static CustomValueService.ValueRequest getHeadTemplateBuilder(String sheetId, List<String> headers, Map<String, FieldProperty> fieldsMap, List<String> includeFields, TableConf tableConf) -
getHeadTemplateBuilder
-
getDefaultTableStyle
-
getDefaultTableStyle
public static CustomCellService.StyleCellsBatchBuilder getDefaultTableStyle(String sheetId, Map<String, FieldProperty> fieldsMap, TableConf tableConf) -
groupFieldsByLevel
根据层级分组字段属性,并按order排序- 参数:
fieldsMap- 字段属性映射- 返回:
- 按层级分组的映射,key为层级,value为该层级的字段名数组(已按order排序)
-
buildHierarchicalHeaders
public static List<List<FsTableUtil.HeaderCell>> buildHierarchicalHeaders(Map<String, FieldProperty> fieldsMap) 构建多层级表头结构,支持按层级排序和合并 根据需求实现层级分组和order排序: 1. 按全局order排序,但确保同一分组的字段相邻 2. 同一分组内的字段能够正确合并- 参数:
fieldsMap- 字段属性映射- 返回:
- 多层级表头结构,外层为行,内层为列
-
getMergeCell
public static List<CustomCellService.CellRequest> getMergeCell(String sheetId, Map<String, FieldProperty> fieldsMap) -
getTableConf
-
addLineBreaks
按指定字符数给文本添加换行符- 参数:
text- 需要处理的文本charsPerLine- 每行字符数- 返回:
- 添加换行符后的文本
-
addLineBreaksPer8Chars
每8个字符添加一个换行符(默认方法)- 参数:
text- 需要处理的文本- 返回:
- 添加换行符后的文本
-