| | |
| | | String label = readCellData.getStringValue(); |
| | | String value = DictFrameworkUtils.parseDictDataValue(type, label); |
| | | if (value == null) { |
| | | log.error("[convertToJavaData][type({}) 解析不掉 label({})]", type, label); |
| | | // 【本需求】与导出方向一致:字典缺项属数据问题,用 WARN 而不是 ERROR(避免导入时刷红日志) |
| | | log.warn("[convertToJavaData][type({}) 未找到字典项 label({}),按 null 处理]", type, label); |
| | | return null; |
| | | } |
| | | // 将 String 的 value 转换成对应的属性 |
| | |
| | | String value = String.valueOf(object); |
| | | String label = DictFrameworkUtils.getDictDataLabel(type, value); |
| | | if (label == null) { |
| | | log.error("[convertToExcelData][type({}) 转换不了 label({})]", type, value); |
| | | // 【本需求】字典里没有这个值时,属于"数据没配字典",不是系统错误: |
| | | // 原来用 log.error,导出 N 行就会刷 N 条 ERROR(例如"患者性别=0"在字典里没有 0), |
| | | // 现场看着像系统出故障。这里降为 WARN,仍保留可追溯信息。 |
| | | // 返回值保持空单元格(比直接输出原始值 "0" 更合理)。 |
| | | log.warn("[convertToExcelData][type({}) 未找到字典项 value({}),导出为空]", type, value); |
| | | return new WriteCellData<>(""); |
| | | } |
| | | // 生成 Excel 小表格 |