Compare commits
2 Commits
6e8851f415
...
be95e792a8
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
be95e792a8 | ||
|
|
308965751a |
@@ -49,27 +49,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</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-form-item v-if="!selectByMode" :label-width="110" label="检测源" prop="sourceIds">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="formContent.sourceIds"
|
v-model="formContent.sourceIds"
|
||||||
@@ -148,6 +128,28 @@
|
|||||||
/>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</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-form-item :label-width="110" label="数据处理原则" prop="dataRule">
|
||||||
<el-select
|
<el-select
|
||||||
v-model="formContent.dataRule"
|
v-model="formContent.dataRule"
|
||||||
@@ -494,6 +496,8 @@ const waveRecordSetting = ref(false)
|
|||||||
const realTimeSetting = ref(false)
|
const realTimeSetting = ref(false)
|
||||||
const statisticsSetting = ref(false)
|
const statisticsSetting = ref(false)
|
||||||
const flickerSetting = ref(false)
|
const flickerSetting = ref(false)
|
||||||
|
|
||||||
|
|
||||||
const generateData = () => {
|
const generateData = () => {
|
||||||
const manufacturerDict = dictStore.getDictData('Dev_Manufacturers')
|
const manufacturerDict = dictStore.getDictData('Dev_Manufacturers')
|
||||||
|
|
||||||
@@ -827,7 +831,7 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
|||||||
user_Result: any
|
user_Result: any
|
||||||
|
|
||||||
if (mode.value === '比对式') {
|
if (mode.value === '比对式') {
|
||||||
;[
|
[
|
||||||
PqErrSys_Result,
|
PqErrSys_Result,
|
||||||
pqDevList_Result,
|
pqDevList_Result,
|
||||||
pqReportName_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')
|
const rule = dataRuleDict.find(item => item.code === 'Cp95_Value')
|
||||||
formContent.dataRule = rule ? rule.id : ''
|
formContent.dataRule = rule ? rule.id : ''
|
||||||
} else {
|
} else {
|
||||||
;[pqSource_Result, PqScript_Result, PqErrSys_Result, pqDevList_Result, pqReportName_Result] =
|
[pqSource_Result, PqScript_Result, PqErrSys_Result, pqDevList_Result, pqReportName_Result] =
|
||||||
await Promise.all([
|
await Promise.all([
|
||||||
getTestSourceList(data),
|
getTestSourceList(data),
|
||||||
getPqScriptList(data),
|
getPqScriptList(data),
|
||||||
@@ -909,6 +913,7 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
|||||||
formContent.datasourceIds = datasourceDicts
|
formContent.datasourceIds = datasourceDicts
|
||||||
.filter(item => ['real', 'wave_data'].includes(item.code))
|
.filter(item => ['real', 'wave_data'].includes(item.code))
|
||||||
.map(item => item.code)
|
.map(item => item.code)
|
||||||
|
|
||||||
realTimeSetting.value = true
|
realTimeSetting.value = true
|
||||||
waveRecordSetting.value = true
|
waveRecordSetting.value = true
|
||||||
} else {
|
} else {
|
||||||
@@ -1080,6 +1085,13 @@ const open = async (sign: string, data: Plan.ReqPlan, currentMode: string, plan:
|
|||||||
formContent.testItems = data.testItems
|
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 != '比对式') {
|
if (mode.value != '比对式') {
|
||||||
@@ -1323,11 +1335,48 @@ const handleDataSourceChange = () => {
|
|||||||
}
|
}
|
||||||
if (hasLuBo) {
|
if (hasLuBo) {
|
||||||
waveRecordSetting.value = true
|
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 {
|
} else {
|
||||||
waveRecordSetting.value = false
|
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)
|
const deviceImportExcel = ref<InstanceType<typeof ImportExcel> | null>(null)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user