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