|
|
|
|
@ -57,6 +57,7 @@
|
|
|
|
|
placeholder="全部故障"
|
|
|
|
|
clearable
|
|
|
|
|
@change="filterRecordsByBreakdownName"
|
|
|
|
|
@clear="filterRecordsByBreakdownName"
|
|
|
|
|
>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="name in uniqueBreakdownNames"
|
|
|
|
|
@ -161,6 +162,13 @@ watch(() => props.dateRange, (newVal, oldVal) => {
|
|
|
|
|
}
|
|
|
|
|
}, { deep: true });
|
|
|
|
|
|
|
|
|
|
// 监听故障名称变化,确保筛选能正常工作
|
|
|
|
|
watch(selectedBreakdownName, (newVal, oldVal) => {
|
|
|
|
|
console.log('故障名称从', oldVal, '变化为', newVal);
|
|
|
|
|
// 当故障名称变化时,执行筛选
|
|
|
|
|
filterRecordsByBreakdownName();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// 组件加载时自动获取数据
|
|
|
|
|
onMounted(() => {
|
|
|
|
|
console.log('组件加载,设备类型:', props.selectedEquipmentType);
|
|
|
|
|
@ -228,6 +236,10 @@ const fetchRepairRecords = (equipmentCode) => {
|
|
|
|
|
// 提取所有唯一的故障名称
|
|
|
|
|
const breakdownNames = [...new Set(data.data.map(record => record.breakdown_name).filter(Boolean))]
|
|
|
|
|
uniqueBreakdownNames.value = breakdownNames
|
|
|
|
|
|
|
|
|
|
// 确保筛选器初始化正确
|
|
|
|
|
selectedBreakdownName.value = ''
|
|
|
|
|
filteredRepairRecords.value = [...selectedRepairRecords.value]
|
|
|
|
|
} else {
|
|
|
|
|
selectedRepairRecords.value = []
|
|
|
|
|
filteredRepairRecords.value = []
|
|
|
|
|
@ -246,16 +258,28 @@ const fetchRepairRecords = (equipmentCode) => {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 根据故障名称筛选维修记录
|
|
|
|
|
const filterRecordsByBreakdownName = () => {
|
|
|
|
|
if (!selectedBreakdownName.value) {
|
|
|
|
|
const filterRecordsByBreakdownName = (value) => {
|
|
|
|
|
console.log('筛选故障名称:', value, 'selectedBreakdownName.value:', selectedBreakdownName.value)
|
|
|
|
|
|
|
|
|
|
// 如果有传入的值,更新 selectedBreakdownName
|
|
|
|
|
if (value !== undefined) {
|
|
|
|
|
selectedBreakdownName.value = value
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 获取筛选值,处理空值情况
|
|
|
|
|
const filterValue = selectedBreakdownName.value || ''
|
|
|
|
|
|
|
|
|
|
if (!filterValue) {
|
|
|
|
|
// 如果没有选择故障名称,显示所有记录
|
|
|
|
|
filteredRepairRecords.value = [...selectedRepairRecords.value]
|
|
|
|
|
} else {
|
|
|
|
|
// 根据选择的故障名称筛选
|
|
|
|
|
filteredRepairRecords.value = selectedRepairRecords.value.filter(
|
|
|
|
|
record => record.breakdown_name === selectedBreakdownName.value
|
|
|
|
|
record => record.breakdown_name === filterValue
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
console.log('筛选后记录数:', filteredRepairRecords.value.length)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 关闭维修记录对话框
|
|
|
|
|
|