| | |
| | | @Schema(description = "创建成功的采购申请号数组", requiredMode = Schema.RequiredMode.REQUIRED) |
| | | private List<String> createPurchaseRequestNos; |
| | | |
| | | @Schema(description = "导入失败的采购申请集合,key 为单号,value 为失败原因", requiredMode = Schema.RequiredMode.REQUIRED) |
| | | @Schema(description = "导入失败的采购申请集合,key 为单号或行号,value 为失败原因", requiredMode = Schema.RequiredMode.REQUIRED) |
| | | private Map<String, String> failurePurchaseRequestNos; |
| | | |
| | | /** |
| | | * 被跳过的行,key 为 Excel 中的实际行号(如「第3行」),value 为跳过原因。 |
| | | * |
| | | * 历史实现会因「物料编码为空」静默丢弃这些行,导致用户看到「导入成功」但数据丢失。 |
| | | * 这里显式返回,前端必须展示,避免数据无声消失。 |
| | | */ |
| | | @Schema(description = "被跳过的行(未导入),key 为 Excel 行号,value 为跳过原因") |
| | | private Map<String, String> skippedRows; |
| | | |
| | | @Schema(description = "Excel 中实际有数据的行数(不含表头与完全空白行)") |
| | | private Integer totalRows; |
| | | |
| | | @Schema(description = "成功导入的行数") |
| | | private Integer successRows; |
| | | |
| | | } |