完善导入下拉框校验设计
This commit is contained in:
@@ -50,7 +50,9 @@
|
||||
### 下拉框判断
|
||||
|
||||
- 读取 Sheet 的 `DataValidation` 列表。
|
||||
- 只要任一数据验证区域覆盖目标列的数据区,即认为该列保留了模板下拉框。
|
||||
- 只认可 `DataValidationConstraint.ValidationType.LIST` 类型的数据验证;数字、日期、自定义公式等其他校验类型不能视为模板下拉框。
|
||||
- 数据区定义为:从第 2 行开始,到本次上传文件中该 Sheet 的最后一行有效数据。
|
||||
- 对每个实际数据行,目标列单元格都必须被 `LIST` 数据验证区域覆盖;只覆盖表头、只覆盖单个样例行、或只覆盖部分数据行,都视为该列下拉框缺失。
|
||||
- 校验目标为模板结构是否保留,不判断用户是否逐单元格从下拉框选择。
|
||||
|
||||
### 失败行为
|
||||
@@ -86,8 +88,10 @@
|
||||
|
||||
1. 带 `@DictDropdown` 且保留下拉数据验证的模板读取通过。
|
||||
2. 员工信息 `状态` 列缺少下拉数据验证时报错。
|
||||
3. 双 Sheet 中任一 Sheet 的字典下拉列缺失时报错。
|
||||
4. 无 `@DictDropdown` 字段的导入对象不触发结构校验。
|
||||
3. 非 `LIST` 类型数据验证不能替代下拉框。
|
||||
4. 只覆盖部分实际数据行的下拉框应报错。
|
||||
5. 双 Sheet 中任一 Sheet 的字典下拉列缺失时报错。
|
||||
6. 无 `@DictDropdown` 字段的导入对象不触发结构校验。
|
||||
|
||||
### 样例文件验证
|
||||
|
||||
|
||||
Reference in New Issue
Block a user