139 lines
4.5 KiB
Markdown
139 lines
4.5 KiB
Markdown
# Excel导入问题解决方案
|
||
|
||
## 常见导入错误及解决方案
|
||
|
||
### 1. "Excel文件格式错误或文件已损坏"
|
||
|
||
**可能原因:**
|
||
- Excel文件已损坏
|
||
- Excel文件格式与系统不兼容
|
||
- Excel文件包含宏、图表或其他复杂元素
|
||
|
||
**解决方案:**
|
||
1. 使用系统提供的模板重新创建数据文件
|
||
2. 确保使用的是`.xlsx`或`.xls`格式
|
||
3. 尝试将Excel另存为Office 2007-2010格式(.xlsx)
|
||
4. 删除文件中的所有宏、图表、公式等复杂元素
|
||
|
||
### 2. "Excel文件格式与系统模板不匹配"
|
||
|
||
**可能原因:**
|
||
- 表头名称与系统定义不一致
|
||
- 表头行被修改或删除
|
||
- 使用了自定义模板而非系统提供的模板
|
||
|
||
**解决方案:**
|
||
1. 使用系统最新的导入模板(点击"下载导入模板"按钮获取)
|
||
2. 确保不要修改表头行的名称和顺序
|
||
3. 仅在表头下方填写数据,不要修改表格结构
|
||
|
||
### 3. "Excel中有必填字段为空"
|
||
|
||
**可能原因:**
|
||
- 缺少必填字段的数据
|
||
- 必填字段的单元格格式可能被修改(如文本变成日期等)
|
||
|
||
**解决方案:**
|
||
1. 检查错误消息中提到的具体行列,确保填写所有必填字段
|
||
2. 必填字段包括:项目、楼宇、楼层、房号、房间数字编号
|
||
3. 确保单元格格式正确(文本字段以文本形式输入)
|
||
|
||
### 4. "数据格式错误"
|
||
|
||
**可能原因:**
|
||
- 数值字段输入了非数字内容
|
||
- 日期格式不正确
|
||
- 单元格中包含特殊字符或格式
|
||
|
||
**解决方案:**
|
||
1. 确保数值字段只包含数字(如建筑面积、计租面积等)
|
||
2. 日期使用标准格式:YYYY-MM-DD
|
||
3. 避免在文本中使用特殊字符,如`<`, `>`, `&`等
|
||
4. 检查单元格格式是否符合要求
|
||
|
||
## 导入前的检查清单
|
||
|
||
1. ✅ 使用系统提供的最新模板
|
||
2. ✅ 确保所有必填字段已填写
|
||
3. ✅ 确保项目、楼宇、楼层在系统中已存在
|
||
4. ✅ 检查数据格式是否正确
|
||
5. ✅ 文件大小不超过10MB
|
||
6. ✅ 房源编号在同一项目、楼宇、楼层下不重复
|
||
|
||
## 处理导入部分失败的情况
|
||
|
||
如果导入过程中部分记录失败,系统会返回详细的错误信息,包括:
|
||
- 成功导入的记录数量
|
||
- 失败的记录数量
|
||
- 每条失败记录的具体原因
|
||
|
||
您可以根据失败原因修复这些数据,然后仅重新导入失败的记录。
|
||
|
||
## 技术支持
|
||
|
||
如果您按照以上方法仍然无法成功导入数据,请联系技术支持并提供:
|
||
1. 导入文件
|
||
2. 完整的错误信息
|
||
3. 操作步骤说明
|
||
|
||
技术支持邮箱:support@eden.com
|
||
|
||
## 系统错误修复记录
|
||
|
||
### 1. Result.error方法错误
|
||
|
||
**问题描述:**
|
||
系统报告`Result.error`方法出错,原因是调用了一个不存在的方法重载。
|
||
|
||
**修复方案:**
|
||
- 在`Result`类中添加了相应的方法重载:
|
||
```java
|
||
public static <T> Result<T> error(String message, T data) {
|
||
return new Result<T>(ERROR, message, data);
|
||
}
|
||
|
||
public static Result<String> error(String message, String data) {
|
||
return new Result<String>(ERROR, message, data);
|
||
}
|
||
```
|
||
- 修复了相关控制器类中对`error`方法的调用
|
||
|
||
**修复日期:** 2023-04-08
|
||
|
||
### 2. Excel导入忽略空白行
|
||
|
||
**问题描述:**
|
||
Excel导入时,空白行被计算为有效行,导致可能出现空记录或解析错误。
|
||
|
||
**修复方案:**
|
||
- 添加了`isRowEmpty`方法检查行是否为空白行
|
||
- 修改导入逻辑,跳过所有空白行(所有单元格为空或只包含空格的行)
|
||
- 增强了`getCellValue`方法,使其能更好地处理空格字符串
|
||
- 修正了标题行的索引,从第0行开始读取
|
||
|
||
**修复日期:** 2023-04-08
|
||
|
||
**改进效果:**
|
||
- 空白行不再计入数据行数,不会产生空记录
|
||
- 提高了导入的数据质量
|
||
- 减少了因空行导致的格式错误
|
||
|
||
### 3. 数值类型转换为字符串时保留小数问题
|
||
|
||
**问题描述:**
|
||
Excel导入时,数值类型(如楼层编号"123")被导入为带小数点的字符串(如"123.0"),影响数据显示和使用。
|
||
|
||
**修复方案:**
|
||
1. 增强了`getCellValue`方法中数值转字符串的处理逻辑:
|
||
- 对于整数值,去掉小数点和小数部分
|
||
- 对于非整数值,保持原样
|
||
2. 修改了`convertValue`方法,确保字符串类型中的整数也正确处理
|
||
3. 添加了`getIntegerStringFromCell`方法专门处理需要整数形式的字段
|
||
4. 为楼层相关字段添加了特殊处理逻辑
|
||
|
||
**修复日期:** 2023-04-08
|
||
|
||
**改进效果:**
|
||
- 楼层编号等数值字段导入为不带小数点的整数字符串
|
||
- 改善了数据显示效果
|
||
- 保持了数据的一致性,便于后续处理和使用 |