|
|
@ -968,8 +968,30 @@ export default { |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 将所有查询到的卷信息添加到列表最前面(后扫描的在上面) |
|
|
|
|
|
|
|
|
// 检查卷标签是否重复(根据 site 和 rollNo) |
|
|
|
|
|
const duplicateRolls = [] |
|
|
|
|
|
const newRolls = [] |
|
|
|
|
|
|
|
|
rollList.forEach(rollInfo => { |
|
|
rollList.forEach(rollInfo => { |
|
|
|
|
|
// 检查当前列表中是否已存在相同 site 和 rollNo 的记录 |
|
|
|
|
|
const isDuplicate = this.caseRollList.some(item => |
|
|
|
|
|
item.site === this.caseForm.site && item.rollNo === rollInfo.rollNo |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
if (isDuplicate) { |
|
|
|
|
|
duplicateRolls.push(rollInfo.rollNo) |
|
|
|
|
|
} else { |
|
|
|
|
|
newRolls.push(rollInfo) |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
// 如果有重复的卷标签,提示用户 |
|
|
|
|
|
if (duplicateRolls.length > 0) { |
|
|
|
|
|
this.$message.warning(`以下卷标签已存在,不能重复添加:${duplicateRolls.join(', ')}`) |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 只添加不重复的卷到列表最前面(后扫描的在上面) |
|
|
|
|
|
newRolls.forEach(rollInfo => { |
|
|
this.caseRollList.unshift({ |
|
|
this.caseRollList.unshift({ |
|
|
casesNo: this.caseForm.casesNo, |
|
|
casesNo: this.caseForm.casesNo, |
|
|
rollNo: rollInfo.rollNo, |
|
|
rollNo: rollInfo.rollNo, |
|
|
@ -995,7 +1017,10 @@ export default { |
|
|
this.$refs.rollNoInput.focus() |
|
|
this.$refs.rollNoInput.focus() |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
this.$message.success(`扫描成功,添加了 ${rollList.length} 条记录`) |
|
|
|
|
|
|
|
|
// 提示添加成功(仅显示实际添加的记录数) |
|
|
|
|
|
if (newRolls.length > 0) { |
|
|
|
|
|
this.$message.success(`扫描成功,添加了 ${newRolls.length} 条记录`) |
|
|
|
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
this.$message.error(data.msg || '扫描失败') |
|
|
this.$message.error(data.msg || '扫描失败') |
|
|
} |
|
|
} |
|
|
|