81824b5062
问题:importViolationRecord 收集 errorList 后 setRollbackOnly 并 return, 控制器据此导出「仅错误行」——失败明细不是原表全量,用户看不到哪几行是对的、 也不便对照原表修正(用户反馈:违章记录没有返回全量表格)。 改动: - 服务层:改为抛 ImportFailureException(data),明细携带**原表全部行**; 整批回滚由异常触发(替代 setRollbackOnly,语义不变)。 - 控制器:catch 异常后取 getFailureList() 导出,并补上传文件校验。 用 export(...) 而非 exportFailureReasonOnly(...):后者会把 markErrorColumns 置 false、只标红失败原因列,导致「按列标红」能力丢失(实测 5 个既有用例 标红列变空);export(...) 同时保留全量行与按列标红。 验证:mvn install -DskipTests 通过;违章记录回归 40/40 (既有 9 用例,标红列断言全绿:03 类型 / 04 事项 / 05 事项 / 06 类型 / 08 车牌号/船号); 用户实际上传文件实测:失败明细返回全量 5 行、仅错误行带原因、标红[车船类型,状态]、 库中零写入。其余 8 个导入模块回归 187 项全绿,无连带影响。