修改错误提示信息

This commit is contained in:
叶锦涛
2025-11-18 11:15:10 +08:00
parent e83fc94334
commit e105919dab

View File

@@ -1035,31 +1035,30 @@ export default {
// 1. 测试起始和终止号码前缀一致性:例如"AB123"和"AB456"通过,"AB123"和"AC456"失败
// 2. 测试当前号码与起始号码前缀一致性:例如"AB123"作为起始,"AB125"作为当前号码通过,"AC125"失败
// 3. 测试无字母情况:纯数字"123456"作为起始、终止和当前号码都通过验证
validateRecord(record) {
validateRecord(record, rowIndex) {
const errors = [];
// 使用keyId标识记录避免使用可能不存在的id
const recordIdentifier = record.keyId || record.id || '(新记录)';
const rowInfo = rowIndex ? `${rowIndex}` : '';
// 验证操作员不为空
if (!record.operator || !record.employeeId) {
errors.push(`记录[${recordIdentifier}]: 未设置票据号码的员工`);
errors.push(`${rowInfo}: 未设置票据号码的员工`);
}
// 验证起始号码
const startNumValidation = this.validateInvoiceNumber(record.startNum);
if (!startNumValidation.valid) {
errors.push(`记录[${recordIdentifier}]: 起始号码 ${startNumValidation.message}`);
errors.push(`${rowInfo}: 起始号码 ${startNumValidation.message}`);
}
// 验证终止号码
const endNumValidation = this.validateInvoiceNumber(record.endNum);
if (!endNumValidation.valid) {
errors.push(`记录[${recordIdentifier}]: 终止号码 ${endNumValidation.message}`);
errors.push(`${rowInfo}: 终止号码 ${endNumValidation.message}`);
}
// 验证起始和终止号码长度一致
if (record.startNum && record.endNum && !this.validateNumberLengths(record.startNum, record.endNum)) {
errors.push(`记录[${recordIdentifier}]: 起始发票号码与终止发票号码长度必须完全一致`);
errors.push(`${rowInfo}: 起始发票号码与终止发票号码长度必须完全一致`);
}
// 验证起始和终止号码前缀一致性
@@ -1068,7 +1067,7 @@ export default {
const endPrefix = this.extractPrefixFromEnd(record.endNum);
if (startPrefix !== endPrefix) {
errors.push(`记录[${recordIdentifier}]: 起始和终止号码前缀必须一致(前缀定义:从号码最末位开始往前推直到出现字母为止的前面字符)`);
errors.push(`${rowInfo}: 起始和终止号码前缀必须一致(前缀定义:从号码最末位开始往前推直到出现字母为止的前面字符)`);
}
}
@@ -1078,27 +1077,27 @@ export default {
const startPrefix = this.extractPrefixFromEnd(record.startNum);
if (currentPrefix !== startPrefix) {
errors.push(`记录[${recordIdentifier}]: 当前使用号码前缀与起始号码前缀必须一致(前缀定义:从号码最末位开始往前推直到出现字母为止的前面字符)`);
errors.push(`${rowInfo}: 当前使用号码前缀与起始号码前缀必须一致(前缀定义:从号码最末位开始往前推直到出现字母为止的前面字符)`);
}
}
// 验证当前号码在范围内
if (record.currentNum && record.startNum && record.endNum &&
!this.validateCurrentNumberInRange(record.currentNum, record.startNum, record.endNum)) {
errors.push(`记录[${recordIdentifier}]: 当前使用号码不在有效范围内`);
errors.push(`${rowInfo}: 当前使用号码不在有效范围内`);
}
// 验证号码唯一性
const uniquenessCheck = this.checkNumberUniqueness(record);
if (!uniquenessCheck.valid) {
errors.push(`记录[${recordIdentifier}]: ${uniquenessCheck.message}`);
errors.push(`${rowInfo}: ${uniquenessCheck.message}`);
}
// 检查号码范围是否与其他记录重叠
if (record.startNum && record.endNum) {
const overlapCheck = this.checkRangeOverlap(record);
if (!overlapCheck.valid) {
errors.push(`记录[${recordIdentifier}]: ${overlapCheck.message}`);
errors.push(`${rowInfo}: ${overlapCheck.message}`);
}
}
@@ -1109,9 +1108,9 @@ export default {
runAllValidations() {
this.validationErrors = [];
// 验证每个记录
this.invoiceData.forEach(record => {
const recordErrors = this.validateRecord(record);
// 验证每个记录,添加行号信息
this.invoiceData.forEach((record, index) => {
const recordErrors = this.validateRecord(record, index + 1); // 行号从1开始
if (recordErrors.length > 0) {
this.validationErrors.push(...recordErrors);
}