Compare commits
2 Commits
6e8851f415
...
be95e792a8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
be95e792a8 | ||
|
|
308965751a |
@@ -49,27 +49,7 @@
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="selectByMode" :label-width="110" label="检测项" prop="testItems">
|
||||
<el-select
|
||||
v-model="formContent.testItems"
|
||||
:disabled="planType != 0 || allDisabled || !canEdited"
|
||||
:max-collapse-tags="1"
|
||||
clearable
|
||||
collapse-tags
|
||||
collapse-tags-tooltip
|
||||
filterable
|
||||
multiple
|
||||
placeholder="请选择检测项"
|
||||
@blur="handleTestItemChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="(option, index) in secondLevelOptions"
|
||||
:key="index"
|
||||
:label="option.label"
|
||||
:value="option.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item v-if="!selectByMode" :label-width="110" label="检测源" prop="sourceIds">
|
||||
<el-select
|
||||
v-model="formContent.sourceIds"
|
||||
@@ -148,6 +128,28 @@
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="selectByMode" :label-width="110" label="检测项" prop="testItems">
|
||||
<el-select
|
||||
v-model="formContent.testItems"
|
||||
:disabled="planType != 0 || allDisabled || !canEdited"
|
||||
:max-collapse-tags="1"
|
||||
clearable
|
||||
collapse-tags
|
||||
collapse-tags-tooltip
|
||||
filterable
|
||||
multiple
|
||||
placeholder="请选择检测项"
|
||||
@blur="handleTestItemChange"
|
||||
>
|
||||
<el-option
|
||||
v-for="(option, index) in secondLevelOptions"
|
||||
:disabled="shouldDisableTestItem(option)"
|
||||
:key="index"
|
||||
:label="option.label"
|
||||
:value="option.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item :label-width="110" label="数据处理原则" prop="dataRule">
|
||||
<el-select
|
||||
v-model="formContent.dataRule"
|
||||
@@ -494,6 +496,8 @@ const waveRecordSetting = ref(false)
|
||||
const realTimeSetting = ref(false)
|
||||
const statisticsSetting = ref(false)
|
||||
const flickerSetting = ref(false)
|
||||
|
||||
|
||||
const generateData = () => {
|
||||
const manufacturerDict = dictStore.getDictData('Dev_Manufacturers')
|
||||
|
||||
@@ -827,7 +831,7 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
||||
user_Result: any
|
||||
|
||||
if (mode.value === '比对式') {
|
||||
;[
|
||||
[
|
||||
PqErrSys_Result,
|
||||
pqDevList_Result,
|
||||
pqReportName_Result,
|
||||
@@ -872,7 +876,7 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
||||
const rule = dataRuleDict.find(item => item.code === 'Cp95_Value')
|
||||
formContent.dataRule = rule ? rule.id : ''
|
||||
} else {
|
||||
;[pqSource_Result, PqScript_Result, PqErrSys_Result, pqDevList_Result, pqReportName_Result] =
|
||||
[pqSource_Result, PqScript_Result, PqErrSys_Result, pqDevList_Result, pqReportName_Result] =
|
||||
await Promise.all([
|
||||
getTestSourceList(data),
|
||||
getPqScriptList(data),
|
||||
@@ -909,6 +913,7 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
||||
formContent.datasourceIds = datasourceDicts
|
||||
.filter(item => ['real', 'wave_data'].includes(item.code))
|
||||
.map(item => item.code)
|
||||
|
||||
realTimeSetting.value = true
|
||||
waveRecordSetting.value = true
|
||||
} else {
|
||||
@@ -1080,6 +1085,13 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
||||
formContent.testItems = data.testItems
|
||||
}
|
||||
}
|
||||
//数据源选中录波,检测项禁止频率和闪变
|
||||
if(formContent.datasourceIds.includes('wave_data')){
|
||||
const frequencyOption = secondLevelOptions.find(option => option.label.includes('频率'));
|
||||
if (frequencyOption && Array.isArray(formContent.testItems)) {
|
||||
formContent.testItems = formContent.testItems.filter(id => id !== frequencyOption.value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (mode.value != '比对式') {
|
||||
@@ -1323,11 +1335,48 @@ const handleDataSourceChange = () => {
|
||||
}
|
||||
if (hasLuBo) {
|
||||
waveRecordSetting.value = true
|
||||
|
||||
// 当选中录波数据源时,从已选检测项中移除频率和闪变项
|
||||
const frequencyOption = secondLevelOptions.find(option => option.label.includes('频率'));
|
||||
const flickerOption = secondLevelOptions.find(option => option.label.includes('闪变'));
|
||||
|
||||
if (Array.isArray(formContent.testItems)) {
|
||||
let filteredItems = [...formContent.testItems];
|
||||
|
||||
if (frequencyOption) {
|
||||
filteredItems = filteredItems.filter(id => id !== frequencyOption.value);
|
||||
}
|
||||
|
||||
if (flickerOption) {
|
||||
filteredItems = filteredItems.filter(id => id !== flickerOption.value);
|
||||
}
|
||||
|
||||
formContent.testItems = filteredItems;
|
||||
}
|
||||
} else {
|
||||
waveRecordSetting.value = false
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// 判断检测项是否应被禁用
|
||||
const shouldDisableTestItem = computed(() => {
|
||||
return (option: { label: string; value: string }) => {
|
||||
// 当数据源选中录波时,禁用频率和闪变选项
|
||||
if (Array.isArray(formContent.datasourceIds)) {
|
||||
const hasLuBo = formContent.datasourceIds.some(id => {
|
||||
const dictItem = dictStore.getDictData(dataSourceType.value).find(item => item.code === id);
|
||||
return dictItem ? dictItem.name.includes('录波') : false;
|
||||
});
|
||||
|
||||
if (hasLuBo && (option.label.includes('频率') || option.label.includes('闪变'))) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
};
|
||||
});
|
||||
|
||||
//导入设备
|
||||
const deviceImportExcel = ref<InstanceType<typeof ImportExcel> | null>(null)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user