diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + - + - + - + - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/taskMeasure/measureData/detail.vue b/src/views/business/taskMeasure/measureData/detail.vue index b6e1bd7..8ca0bd3 100644 --- a/src/views/business/taskMeasure/measureData/detail.vue +++ b/src/views/business/taskMeasure/measureData/detail.vue @@ -326,12 +326,17 @@ id: '', } } + if (belongStandardEquipment.value === '6') { + params.appearanceFunctionCheck = Number(params.appearanceFunctionCheck) === 1 ? '合格' : '不合格' + params.sealingTest = Number(params.sealingTest) === 1 ? '合格' : '不合格' + } return params } // 生成原始记录和检定证书 const createRecord = () => { const params = solveRecordParams() + if (params) { const loading = ElLoading.service({ lock: true, diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/taskMeasure/measureData/detail.vue b/src/views/business/taskMeasure/measureData/detail.vue index b6e1bd7..8ca0bd3 100644 --- a/src/views/business/taskMeasure/measureData/detail.vue +++ b/src/views/business/taskMeasure/measureData/detail.vue @@ -326,12 +326,17 @@ id: '', } } + if (belongStandardEquipment.value === '6') { + params.appearanceFunctionCheck = Number(params.appearanceFunctionCheck) === 1 ? '合格' : '不合格' + params.sealingTest = Number(params.sealingTest) === 1 ? '合格' : '不合格' + } return params } // 生成原始记录和检定证书 const createRecord = () => { const params = solveRecordParams() + if (params) { const loading = ElLoading.service({ lock: true, diff --git a/src/views/equipement/standard/book/components/basic.vue b/src/views/equipement/standard/book/components/basic.vue index 2142275..ac7e463 100644 --- a/src/views/equipement/standard/book/components/basic.vue +++ b/src/views/equipement/standard/book/components/basic.vue @@ -340,7 +340,7 @@ // ------------------------------------------环境条件---------------------------------------- const environmentalConditionsColumns = [ // 环境条件表头 { text: '温度(℃)', value: 'temperature', align: 'center', required: true }, - { text: '相对湿度(%)', value: 'humidity', align: 'center', required: true }, + { text: '相对湿度(%RH)', value: 'humidity', align: 'center', required: true }, { text: '电源电压(v)', value: 'voltage', align: 'center', required: true }, { text: '电源频率(Hz)', value: 'powerFrequency', align: 'center', required: true }, { text: '周围环境', value: 'surroundEnvironment', align: 'center', required: true }, diff --git a/src/views/business/fieldTest/record/edit.vue b/src/views/business/fieldTest/record/edit.vue index d0c2a80..1d036c1 100644 --- a/src/views/business/fieldTest/record/edit.vue +++ b/src/views/business/fieldTest/record/edit.vue @@ -398,7 +398,7 @@ - + - + - + ([ // 平均噪声电平 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -305,14 +307,14 @@ { text: '结论', value: 'conclusion', align: 'center', required: false, type: 'text' }, ]) // 输入衰减真展示单位的列 -const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平', '指标下限', '指标上限']) +const input_attenuator_unit = ref(['标准衰减器衰减量', '输入衰减器', '频谱仪参考电平']) // 输入衰减展示单位列对应的字段字典 const input_attenuator_dict: { [key: string]: string } = { 标准衰减器衰减量: 'standardAttenuatorAttenuationUnit', 输入衰减器: 'inputAttenuatorUnit', 频谱仪参考电平: 'spectrumLevelUnit', - 指标上限: 'technicalIndexUnit', - 指标下限: 'technicalIndexUnit', + // 指标上限: 'technicalIndexUnit', + // 指标下限: 'technicalIndexUnit', } const columns_gain_compression_point = ref([ // 1dB增益压缩点 { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, @@ -334,9 +336,9 @@ { text: '检定项目', value: 'params', align: 'center', required: false, type: 'text' }, { text: '类型', value: 'typeValue', align: 'center', required: false, type: 'text' }, { text: '标称值', value: 'nominalValue', align: 'center', required: false, type: 'text' }, - { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: '' }, - { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: '' }, - { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: '' }, + { text: '测量值1', value: 'oneValue', align: 'center', required: true, type: 'text' }, + { text: '测量值2', value: 'twoValue', align: 'center', required: true, type: 'text' }, + { text: '测量值3', value: 'threeValue', align: 'center', required: true, type: 'text' }, { text: '指标下限', value: 'lowerIndex', align: 'center', required: false, type: 'text' }, { text: '测量结果', value: 'measureResult', align: 'center', required: false, type: 'text' }, { text: '指标上限', value: 'upperIndex', align: 'center', required: false, type: 'text' }, @@ -350,8 +352,8 @@ 输入衰减: 'inputAttenuatorUnit', 测量结果: 'measureResultUnit', 标称值: 'unit', - 指标下限: 'unit', - 指标上限: 'unit', + // 指标下限: 'unit', + // 指标上限: 'unit', // 标称值: 'unit', } const columnsDict = ref<{ [key: string]: any[] | TableColumn[] }>({ @@ -437,51 +439,52 @@ switch (item.dataType) { case '1': // 频率显示 - frequencyList.value.push({ ...item, params: '频率显示', oneValue: '', twoValue: '', threeValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + frequencyList.value.push({ ...item, params: '频率显示', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '2': // 扫频宽度 - sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + sweepWidthList.value.push({ ...item, params: '扫频宽度', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '3': // 中频带宽 - intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: '', nineValue: '', eightValue: '', oneValue: '', twoValue: '', threeValue: '', fourValue: '', fiveValue: '', sixValue: '', lowerIndex: '', averageValue: '', upperIndex: '', conclusion: '' }) + intermediateFrequencyBandwidthList.value.push({ ...item, params: '中频带宽', tenValue: item.tenValue || '', nineValue: item.nineValue || '', eightValue: item.eightValue || '', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', fourValue: item.fourValue || '', fiveValue: item.fiveValue || '', sixValue: item.sixValue || '', lowerIndex: item.lowerIndex || '', averageValue: item.averageValue || '', upperIndex: item.upperIndex || '', conclusion: item.conclusion || '' }) break case '4': // 中频带宽转换偏差 - transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: '', upperIndex: clearSymbol(item.technicalIndex), convertDeviation: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, oneValue: '' }) + transitionDeviationList.value.push({ ...item, params: '中频带宽转换偏差', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.upperConvertDeviation || clearSymbol(item.technicalIndex) || ''), convertDeviation: Number(item.referencePoint) === 1 ? '/' : (item.convertDeviation || ''), lowerConvertDeviation: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerConvertDeviation || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.oneValue || '' }) break case '5': // 参考电平 - referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: '', signalSourceAmplitude: '', upperIndex: clearSymbol(item.technicalIndex), lowerIndex: `-${clearSymbol(item.technicalIndex)}`, conclusion: '' }) + referenceElectricalLevelList.value.push({ ...item, params: '参考电平', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', oneValue: Number(item.referencePoint) === 1 ? '参考点' : (item.oneValue || '') }) break case '6': // 垂直刻度 - verticalGraduatedList.value.push({ ...item, params: '垂直刻度', conclusion: '', standardAttenuatorAttenuation: '', signalSourceAmplitude: '' }) + verticalGraduatedList.value.push({ ...item, params: '垂直刻度(显示位置从上到下)', conclusion: item.verticalScale === '起始幅度' ? '起点' : item.conclusion || '', standardAttenuatorAttenuation: item.standardAttenuatorAttenuation || '', signalSourceAmplitude: item.signalSourceAmplitude || '', upperIndex: item.verticalScale === '起始幅度' ? '起点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: item.verticalScale === '起始幅度' ? '起点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || ''), oneValue: item.verticalScale === '起始幅度' ? '起点' : (item.oneValue || '') }) break case '7': // 输入频响 - inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: '', twoValue: '', threeValue: '' }) + inputFrequencyResponseList.value.push({ ...item, params: '输入频响', oneValue: item.oneValue || '', twoValue: item.twoValue || '', threeValue: item.threeValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '8': // 平均噪声电平 - averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: '' }) + averageNoiseLevelList.value.push({ ...item, params: '平均噪声电平', oneValue: item.oneValue || '' }) break case '9': // 谐波失真 - harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: '', twoValue: '', fourValue: '', sixValue: '' }) + harmonicDistortionList.value.push({ ...item, params: '谐波失真', oneValue: item.oneValue || '', twoValue: item.twoValue || '', fourValue: item.fourValue || '', sixValue: item.sixValue || '' }) break case '10': // 输入衰减 - inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: '', lowerIndex: `-${clearSymbol(item.technicalIndex)}`, upperIndex: clearSymbol(item.technicalIndex) }) + inputAttenuatorList.value.push({ ...item, params: '输入衰减', oneValue: item.oneValue || '', conclusion: Number(item.referencePoint) === 1 ? '参考点' : item.conclusion || '', upperIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.upperIndex || clearSymbol(item.technicalIndex) || ''), lowerIndex: Number(item.referencePoint) === 1 ? '参考点' : (item.lowerIndex || `-${clearSymbol(item.technicalIndex)}` || '') }) break case '11': // 1dB增益压缩点 - gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: '' }) + gainCompressionPointList.value.push({ ...item, params: '1dB增益压缩点', oneValue: item.oneValue || '' }) break case '12': // 校准信号 - calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : '', twoValue: item.typeValue === '频率' ? '/' : '', threeValue: item.typeValue === '频率' ? '/' : '' }) + calibratingSignalList.value.push({ ...item, params: '校准信号', oneValue: item.typeValue === '频率' ? '/' : item.oneValue || '', twoValue: item.typeValue === '频率' ? '/' : item.twoValue || '', threeValue: item.typeValue === '频率' ? '/' : item.threeValue || '' }) + calibratingSignalList.value = calibratingSignalList.value.map((item: any) => ({ ...item, typeValue: item.typeValue || (item.oneValue === '/' ? '频率' : '幅度') })) break } }) @@ -530,6 +533,9 @@ // 计算单独鉴定项 const caclItem = async (list: IDetailMeasureList[], columns: TableColumn[] | any[], title: string) => { if (!checkList(list, columns, title)) { return } + if (title === '输入频响') { + list = list.map((item: any) => ({ ...item, averageValue: ((Number(item.oneValue) + Number(item.twoValue) + Number(item.threeValue)) / 3).toFixed(2) })) + } const res = await calculateFun(list) return res.map(item => ({ ...item, params: title })) } @@ -554,11 +560,11 @@ break case '参考电平': referenceElectricalLevelList.value = result || referenceElectricalLevelList.value - reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] + // reference_electrical_level_unit.value = [...reference_electrical_level_unit.value, '指标下限', '指标上限', '测量值'] break case '垂直刻度(显示位置从上到下)': verticalGraduatedList.value = result || verticalGraduatedList.value - vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] + // vertical_graduated_unit.value = [...vertical_graduated_unit.value, '指标下限', '指标上限', '测量值'] break case '输入频响': inputFrequencyResponseList.value = result || inputFrequencyResponseList.value @@ -724,7 +730,7 @@ - + + @@ -771,6 +781,10 @@ + + @@ -793,7 +807,11 @@ {{ item }} - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/taskMeasure/measureData/detail.vue b/src/views/business/taskMeasure/measureData/detail.vue index b6e1bd7..8ca0bd3 100644 --- a/src/views/business/taskMeasure/measureData/detail.vue +++ b/src/views/business/taskMeasure/measureData/detail.vue @@ -326,12 +326,17 @@ id: '', } } + if (belongStandardEquipment.value === '6') { + params.appearanceFunctionCheck = Number(params.appearanceFunctionCheck) === 1 ? '合格' : '不合格' + params.sealingTest = Number(params.sealingTest) === 1 ? '合格' : '不合格' + } return params } // 生成原始记录和检定证书 const createRecord = () => { const params = solveRecordParams() + if (params) { const loading = ElLoading.service({ lock: true, diff --git a/src/views/equipement/standard/book/components/basic.vue b/src/views/equipement/standard/book/components/basic.vue index 2142275..ac7e463 100644 --- a/src/views/equipement/standard/book/components/basic.vue +++ b/src/views/equipement/standard/book/components/basic.vue @@ -340,7 +340,7 @@ // ------------------------------------------环境条件---------------------------------------- const environmentalConditionsColumns = [ // 环境条件表头 { text: '温度(℃)', value: 'temperature', align: 'center', required: true }, - { text: '相对湿度(%)', value: 'humidity', align: 'center', required: true }, + { text: '相对湿度(%RH)', value: 'humidity', align: 'center', required: true }, { text: '电源电压(v)', value: 'voltage', align: 'center', required: true }, { text: '电源频率(Hz)', value: 'powerFrequency', align: 'center', required: true }, { text: '周围环境', value: 'surroundEnvironment', align: 'center', required: true }, diff --git a/src/views/equipement/standard/book/components/config/ninth/config.vue b/src/views/equipement/standard/book/components/config/ninth/config.vue index 6199aac..de93fb8 100644 --- a/src/views/equipement/standard/book/components/config/ninth/config.vue +++ b/src/views/equipement/standard/book/components/config/ninth/config.vue @@ -9,6 +9,8 @@ import { config, getCheckItemDetail } from '@/api/equipment/standard/book' import { calc } from '@/utils/useCalc' import { getDictByCode } from '@/api/system/dict' +import { differenceArray, setSelectList } from '@/utils/Array' +import templateTable1 from '@/views/business/measure/item/components/second/templateTable.vue' const textMap: { [key: string]: string } = { edit: '编辑', @@ -40,124 +42,228 @@ if ($route.params.id) { infoId.value = $route.params.id as string } - console.log('pageType.value', pageType.value) } // -------------------------------------------核查项----------------------------------------------- const listFrequency = ref([]) // 频率 const listPower = ref([]) // 功率 const listRelativeLevel = ref([]) // 相对电平 -const checkoutFrequencyList = ref([]) // 频率选中数据 -const checkoutPowerList = ref([]) // 功率选中数据 -const checkoutRelativeLevelList = ref([]) // 相对电平选中数据 -const frequency = ref(true) // 是否显示频率 -const power = ref(true) // 是否显示功率 -const relativeLevel = ref(true) // 是否显示相对电平 + +const form1 = ref({ + frequency: 1, // 是否显示频率 + power: 1, // 是否显示功率 + relativeLevel: 1, // 是否显示相对电平 +}) +const listDict = ref<{ [key: string]: any }>() +watch(() => [listFrequency.value, listPower.value, listRelativeLevel.value], () => { + listDict.value = { + '1-频率': listFrequency.value, + '2-功率': listPower.value, + '3-相对电平': listRelativeLevel.value, + } +}, { + deep: true, + immediate: true, +}) +// 表格对应的 选择状态 +let chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, +} as { [key: string]: any } +watch(() => form1.value, () => { + chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, + } +}, { + deep: true, + // immediate: true, +}) const columns_frequency = ref([ // 频率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'frequencyDictValue' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_power = ref([ // 功率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '功率', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByFrequency' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '功率', value: 'power', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByPower' }, + { text: '功率单位', value: 'powerUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_relative_level = ref([ // 相对电平表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '相对电平', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '组合方式', value: 'composition', align: 'center', required: true, type: 'select' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '相对电平', value: 'relativeLevel', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '相对电平单位', value: 'relativeLevelUnit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: true, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: false, type: 'number' }, + ]) - -// 频率多选 -const handleSelectionFrequencyChange = (e: any) => { - checkoutFrequencyList.value = e -} -// 功率多选 -const handleSelectionPowerChange = (e: any) => { - checkoutPowerList.value = e -} -// 相对电平多选 -const handleSelectionRelativeLevelChange = (e: any) => { - checkoutPowerList.value = e -} - -// 校验表格(点击保存的时候、增加行用) -const checkList = (list: any, title: string) => { - // return useCheckList(list, columns.value, title) -} - +// 表格对应 columns字典 +const columnsDict = ref<{ [key: string]: any }>( + { + '1-频率': columns_frequency.value, + '2-功率': columns_power.value, + '3-相对电平': columns_relative_level.value, + }, +) /** * 增加行公共方法 * @param list 要操作的数组 * @param title 操作的表格 */ -const addRow = (list: IList[], title: string) => { - // if (checkList(list, `${title}表格`)) { - // if (list.length) { // 增加行时默认上一行数据 - // list.push({ - // id: '', - // checkPoint: list[list.length - 1].checkPoint, // 核查点(直接存字典value) - // checkType: list[list.length - 1].checkType, // 核查类型 - // cycleNumber: list[list.length - 1].cycleNumber, // 循环次数 - // equipmentId: list[list.length - 1].equipmentId, // 配套设备id - // itemCategoryId: list[list.length - 1].itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: list[list.length - 1].params, // 核查项目(直接存字典value) - // remark: list[list.length - 1].remark, // 核查项备注(每个数据存储的核查项备注相同,前端取列表中一个即可) - // resolution: list[list.length - 1].resolution, // 分辨力 - // testType: list[list.length - 1].testType, // 核查点类型(直接存字典value) - // unit: list[list.length - 1].unit, // 单位(直接存字典value) - // urel: list[list.length - 1].urel, // 测量标准相对扩展不确定度urel - // }) - // } - // else { - // list.push({ - // checkPoint: '', // 核查点 - // checkType: '', // 核查类型(直接存字典value,多个逗号分隔) - // cycleNumber: 6, // 循环次数 - // equipmentId: infoId.value, // 配套设备id - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: '', // 核查项目(直接存字典value) - // remark: '', // 核查项备注 - // resolution: 0.0001, // 分辨力 - // testType: title, // 核查点类型(直接存字典value) - // unit: '', // 单位(直接存字典value) - // urel: 0, // 测量标准相对扩展不确定度urel - // }) - // } - // } +const addRow = (list: IList[], title: string, index: string, item: any) => { + if (checkList(list, columnsDict.value[`${index}-${title}`], `${title}表格`)) { + switch (title) { + case '频率': + if (item) { + listFrequency.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '频率' }) + } + else { + listFrequency.value.length + ? listFrequency.value.push(JSON.parse(JSON.stringify(listFrequency.value[listFrequency.value.length - 1]))) + : listFrequency.value.push({ + paramsName: '频率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '1', + cycleNumber: '6', + checkPoint: '', + unit: '', + amplitude: '', + amplitudeUnit: '', + urel: '', + } as any) + } + + break + case '功率': + if (item) { + listPower.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '功率' }) + } + else { + listPower.value.length + ? listPower.value.push(JSON.parse(JSON.stringify(listPower.value[listPower.value.length - 1]))) + : listPower.value.push({ + paramsName: '功率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '2', + cycleNumber: '6', + checkPoint: '', + unit: '', + power: '', + powerUnit: '', + urel: '', + } as any) + } + + break + case '相对电平': + if (item) { + listRelativeLevel.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '相对电平' }) + } + else { + listRelativeLevel.value.length + ? listRelativeLevel.value.push(JSON.parse(JSON.stringify(listRelativeLevel.value[listRelativeLevel.value.length - 1]))) + : listRelativeLevel.value.push({ + paramsName: '相对电平', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '3', + cycleNumber: '6', + checkPoint: '', + unit: '', + urel: '', + relativeLevel: '', + relativeLevelUnit: '', + amplitude: '', + amplitudeUnit: '', + } as any) + } + + break + } + } } /** * 删除行公共方法 * @param checkoutList 选中的数组 * @param list 操作的数组 */ -const delRow = (checkoutList: IList[], list: IList[]) => { +const delRow = (checkoutList: IList[], list: IList[], title: string) => { if (!checkoutList.length) { ElMessage.warning('请选中要删除的行') } else { - list = list.filter((item: any) => { - return !checkoutList.includes(item) - }) + let data = [] as any[] + data = differenceArray(list, checkoutList) + switch (title) { + case '频率': + listFrequency.value = data + break + case '功率': + listPower.value = data + break + case '相对电平': + listRelativeLevel.value = data + } } } +// ---------------------------------------------校验--------------------------------------------------- +// 校验表格(点击保存的时候用、生成标准器示值) +function checkList(list: any[], columns: any[], title: string) { + return useCheckList(list, columns, title) +} +// 校验所有表格 +function checkAllList() { + let result = true + for (const i in columnsDict.value) { + const requireLength = !!((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) + if (!useCheckList(listDict.value[i], columnsDict.value[i], i.substring(2), '', '', '', requireLength)) { + result = false + break + } + } + console.log(result, 'result') + return result +} +// ----------------------------------------------------------------------------------------------------- +const clearAllList = () => { + listFrequency.value = [] + listPower.value = [] + listRelativeLevel.value = [] + // list.value = [] + + form1.value.frequency = 1 + form1.value.power = 1 + form1.value.relativeLevel = 1 +} +const getList = () => { + let result = [] as any[] + for (const i in chekedDict) { + if ((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) { + const data = listDict.value[i] + result = [...result, ...data] + } + } + return result +} // ---------------------------------------按钮----------------------------------------------------- // 点击关闭 const close = () => { @@ -175,54 +281,60 @@ }, ) .then(() => { - listFrequency.value = [] - listPower.value = [] - listRelativeLevel.value = [] + clearAllList() }) } // 点击保存 const save = () => { - // if (!list.value.length) { ElMessage.warning('核查项不能为空'); return false } - // if (!checkList(list.value, '核查项表格')) { return false } - // const params = { - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id - // checkItemDataPistonGaugeList: list.value, - // } - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) - // config(params).then((res) => { - // ElMessage.success('已保存') - // pageType.value = 'detail' - // loading.close() - // }) + if (!getList().length) { ElMessage.warning('核查项不能为空'); return false } + if (!checkAllList()) { return } + const params = { + itemCategoryId: form.value.itemCategoryId, // 核查项分类id + checkItemDataSpectrumAnalyzerList: getList().map((item: any) => ({ ...item, equipmentId: equipmentId.value })), + equipmentId: equipmentId.value, + } + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) + config(params).then((res) => { + ElMessage.success('已保存') + pageType.value = 'detail' + loading.close() + }) } // 获取详情 const getInfo = () => { - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) const params = { equipmentId: equipmentId.value, // 设备id belongStandardEquipment: form.value.belongStandardEquipment, // 检校标准装置code itemCategoryId: form.value.itemCategoryId, // 核查项分类id itemCategoryName: form.value.itemCategoryName, // 核查项分类名称 } - // getCheckItemDetail(params).then((res) => { - // list.value = res.data.checkItemDataPistonGaugeList.map((item: any) => { - // return { - // ...item, - // resolution: Number(item.resolution), - // } - // }) - // loading.close() - // }) + getCheckItemDetail(params).then((res) => { + const data = res.data?.checkItemDataSpectrumAnalyzerList || [] + const dict = { + 1: '频率', + 2: '功率', + 3: '相对电平', + } + data.forEach((item: any) => { + addRow([], dict[item.params], '', item) + }) + + form1.value.frequency = listFrequency.value.length ? 1 : 0 + form1.value.power = listPower.value.length ? 1 : 0 + form1.value.relativeLevel = listRelativeLevel.value.length ? 1 : 0 + loading.close() + }) } // ------------------------------------------钩子-------------------------------------------------- @@ -239,8 +351,62 @@ form.value.belongStandardEquipment = $route.query.belongStandardEquipment as string // 核查项标准装置id form.value.belongStandardEquipmentName = $route.query.belongStandardEquipmentName as string // 核查项标准装置id equipmentId.value = $route.query.equipmentId as string // 设备id - // getInfo() + getInfo() }) + +// 表格下拉框等内容是否禁用 +const disabled = ({ scope, column }, fun: any) => { + if (column.text === '核查类型' || column.text === '循环次数') { + fun(true) + return + } + fun(pageType.value === 'detail') +} +// 每个table对应的下拉框内容 字典 +const tableDict = ref<{ [key: string]: { value: string;name: string;id: string }[] }>({}) +const changeLoadSituationa = (value: any, index: number, text: string, type: string, list: any[], item: string) => { + if (item === '频率显示') { + if (text === '标称值') { + list[index].frequency = value + } + if (text === '标称值单位') { + list[index].frequencyUnit = typeof value === 'string' ? value : '' + } + } +} +// 获取字典 +const checkTypeList = ref<{ value: string;name: string;id: string }[]>([]) // 核查类型 +const frequencyUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 频率 +const amplitudeUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 幅度 +const levelComposition = ref<{ value: string;name: string;id: string }[]>([]) // 组合方式 +const standardDBunit = ref<{ value: string;name: string;id: string }[]>([]) // 相对电平单位 +const fetchDict = async () => { + // 核查类型 + const res1 = await getDictByCode('bizFirstStandardCheckType') + checkTypeList.value = res1.data + // 频率 + const res2 = await getDictByCode('bizFirstStandardFrequencyUnit') + frequencyUnitList.value = res2.data + // 幅度 + const res3 = await getDictByCode('standardAmplitudeUnit') + amplitudeUnitList.value = res3.data + const res4 = await getDictByCode('levelComposition') + levelComposition.value = res4.data + const res5 = await getDictByCode('standardDBunit') + standardDBunit.value = res5.data + + // 组合方式 + // table字典 + tableDict.value = { + 核查类型: checkTypeList.value, + 频率点单位: frequencyUnitList.value, + 幅度单位: amplitudeUnitList.value, + 功率单位: amplitudeUnitList.value, + 组合方式: levelComposition.value, + 相对电平单位: standardDBunit.value, + } +} +fetchDict() - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/taskMeasure/measureData/detail.vue b/src/views/business/taskMeasure/measureData/detail.vue index b6e1bd7..8ca0bd3 100644 --- a/src/views/business/taskMeasure/measureData/detail.vue +++ b/src/views/business/taskMeasure/measureData/detail.vue @@ -326,12 +326,17 @@ id: '', } } + if (belongStandardEquipment.value === '6') { + params.appearanceFunctionCheck = Number(params.appearanceFunctionCheck) === 1 ? '合格' : '不合格' + params.sealingTest = Number(params.sealingTest) === 1 ? '合格' : '不合格' + } return params } // 生成原始记录和检定证书 const createRecord = () => { const params = solveRecordParams() + if (params) { const loading = ElLoading.service({ lock: true, diff --git a/src/views/equipement/standard/book/components/basic.vue b/src/views/equipement/standard/book/components/basic.vue index 2142275..ac7e463 100644 --- a/src/views/equipement/standard/book/components/basic.vue +++ b/src/views/equipement/standard/book/components/basic.vue @@ -340,7 +340,7 @@ // ------------------------------------------环境条件---------------------------------------- const environmentalConditionsColumns = [ // 环境条件表头 { text: '温度(℃)', value: 'temperature', align: 'center', required: true }, - { text: '相对湿度(%)', value: 'humidity', align: 'center', required: true }, + { text: '相对湿度(%RH)', value: 'humidity', align: 'center', required: true }, { text: '电源电压(v)', value: 'voltage', align: 'center', required: true }, { text: '电源频率(Hz)', value: 'powerFrequency', align: 'center', required: true }, { text: '周围环境', value: 'surroundEnvironment', align: 'center', required: true }, diff --git a/src/views/equipement/standard/book/components/config/ninth/config.vue b/src/views/equipement/standard/book/components/config/ninth/config.vue index 6199aac..de93fb8 100644 --- a/src/views/equipement/standard/book/components/config/ninth/config.vue +++ b/src/views/equipement/standard/book/components/config/ninth/config.vue @@ -9,6 +9,8 @@ import { config, getCheckItemDetail } from '@/api/equipment/standard/book' import { calc } from '@/utils/useCalc' import { getDictByCode } from '@/api/system/dict' +import { differenceArray, setSelectList } from '@/utils/Array' +import templateTable1 from '@/views/business/measure/item/components/second/templateTable.vue' const textMap: { [key: string]: string } = { edit: '编辑', @@ -40,124 +42,228 @@ if ($route.params.id) { infoId.value = $route.params.id as string } - console.log('pageType.value', pageType.value) } // -------------------------------------------核查项----------------------------------------------- const listFrequency = ref([]) // 频率 const listPower = ref([]) // 功率 const listRelativeLevel = ref([]) // 相对电平 -const checkoutFrequencyList = ref([]) // 频率选中数据 -const checkoutPowerList = ref([]) // 功率选中数据 -const checkoutRelativeLevelList = ref([]) // 相对电平选中数据 -const frequency = ref(true) // 是否显示频率 -const power = ref(true) // 是否显示功率 -const relativeLevel = ref(true) // 是否显示相对电平 + +const form1 = ref({ + frequency: 1, // 是否显示频率 + power: 1, // 是否显示功率 + relativeLevel: 1, // 是否显示相对电平 +}) +const listDict = ref<{ [key: string]: any }>() +watch(() => [listFrequency.value, listPower.value, listRelativeLevel.value], () => { + listDict.value = { + '1-频率': listFrequency.value, + '2-功率': listPower.value, + '3-相对电平': listRelativeLevel.value, + } +}, { + deep: true, + immediate: true, +}) +// 表格对应的 选择状态 +let chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, +} as { [key: string]: any } +watch(() => form1.value, () => { + chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, + } +}, { + deep: true, + // immediate: true, +}) const columns_frequency = ref([ // 频率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'frequencyDictValue' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_power = ref([ // 功率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '功率', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByFrequency' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '功率', value: 'power', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByPower' }, + { text: '功率单位', value: 'powerUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_relative_level = ref([ // 相对电平表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '相对电平', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '组合方式', value: 'composition', align: 'center', required: true, type: 'select' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '相对电平', value: 'relativeLevel', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '相对电平单位', value: 'relativeLevelUnit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: true, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: false, type: 'number' }, + ]) - -// 频率多选 -const handleSelectionFrequencyChange = (e: any) => { - checkoutFrequencyList.value = e -} -// 功率多选 -const handleSelectionPowerChange = (e: any) => { - checkoutPowerList.value = e -} -// 相对电平多选 -const handleSelectionRelativeLevelChange = (e: any) => { - checkoutPowerList.value = e -} - -// 校验表格(点击保存的时候、增加行用) -const checkList = (list: any, title: string) => { - // return useCheckList(list, columns.value, title) -} - +// 表格对应 columns字典 +const columnsDict = ref<{ [key: string]: any }>( + { + '1-频率': columns_frequency.value, + '2-功率': columns_power.value, + '3-相对电平': columns_relative_level.value, + }, +) /** * 增加行公共方法 * @param list 要操作的数组 * @param title 操作的表格 */ -const addRow = (list: IList[], title: string) => { - // if (checkList(list, `${title}表格`)) { - // if (list.length) { // 增加行时默认上一行数据 - // list.push({ - // id: '', - // checkPoint: list[list.length - 1].checkPoint, // 核查点(直接存字典value) - // checkType: list[list.length - 1].checkType, // 核查类型 - // cycleNumber: list[list.length - 1].cycleNumber, // 循环次数 - // equipmentId: list[list.length - 1].equipmentId, // 配套设备id - // itemCategoryId: list[list.length - 1].itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: list[list.length - 1].params, // 核查项目(直接存字典value) - // remark: list[list.length - 1].remark, // 核查项备注(每个数据存储的核查项备注相同,前端取列表中一个即可) - // resolution: list[list.length - 1].resolution, // 分辨力 - // testType: list[list.length - 1].testType, // 核查点类型(直接存字典value) - // unit: list[list.length - 1].unit, // 单位(直接存字典value) - // urel: list[list.length - 1].urel, // 测量标准相对扩展不确定度urel - // }) - // } - // else { - // list.push({ - // checkPoint: '', // 核查点 - // checkType: '', // 核查类型(直接存字典value,多个逗号分隔) - // cycleNumber: 6, // 循环次数 - // equipmentId: infoId.value, // 配套设备id - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: '', // 核查项目(直接存字典value) - // remark: '', // 核查项备注 - // resolution: 0.0001, // 分辨力 - // testType: title, // 核查点类型(直接存字典value) - // unit: '', // 单位(直接存字典value) - // urel: 0, // 测量标准相对扩展不确定度urel - // }) - // } - // } +const addRow = (list: IList[], title: string, index: string, item: any) => { + if (checkList(list, columnsDict.value[`${index}-${title}`], `${title}表格`)) { + switch (title) { + case '频率': + if (item) { + listFrequency.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '频率' }) + } + else { + listFrequency.value.length + ? listFrequency.value.push(JSON.parse(JSON.stringify(listFrequency.value[listFrequency.value.length - 1]))) + : listFrequency.value.push({ + paramsName: '频率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '1', + cycleNumber: '6', + checkPoint: '', + unit: '', + amplitude: '', + amplitudeUnit: '', + urel: '', + } as any) + } + + break + case '功率': + if (item) { + listPower.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '功率' }) + } + else { + listPower.value.length + ? listPower.value.push(JSON.parse(JSON.stringify(listPower.value[listPower.value.length - 1]))) + : listPower.value.push({ + paramsName: '功率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '2', + cycleNumber: '6', + checkPoint: '', + unit: '', + power: '', + powerUnit: '', + urel: '', + } as any) + } + + break + case '相对电平': + if (item) { + listRelativeLevel.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '相对电平' }) + } + else { + listRelativeLevel.value.length + ? listRelativeLevel.value.push(JSON.parse(JSON.stringify(listRelativeLevel.value[listRelativeLevel.value.length - 1]))) + : listRelativeLevel.value.push({ + paramsName: '相对电平', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '3', + cycleNumber: '6', + checkPoint: '', + unit: '', + urel: '', + relativeLevel: '', + relativeLevelUnit: '', + amplitude: '', + amplitudeUnit: '', + } as any) + } + + break + } + } } /** * 删除行公共方法 * @param checkoutList 选中的数组 * @param list 操作的数组 */ -const delRow = (checkoutList: IList[], list: IList[]) => { +const delRow = (checkoutList: IList[], list: IList[], title: string) => { if (!checkoutList.length) { ElMessage.warning('请选中要删除的行') } else { - list = list.filter((item: any) => { - return !checkoutList.includes(item) - }) + let data = [] as any[] + data = differenceArray(list, checkoutList) + switch (title) { + case '频率': + listFrequency.value = data + break + case '功率': + listPower.value = data + break + case '相对电平': + listRelativeLevel.value = data + } } } +// ---------------------------------------------校验--------------------------------------------------- +// 校验表格(点击保存的时候用、生成标准器示值) +function checkList(list: any[], columns: any[], title: string) { + return useCheckList(list, columns, title) +} +// 校验所有表格 +function checkAllList() { + let result = true + for (const i in columnsDict.value) { + const requireLength = !!((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) + if (!useCheckList(listDict.value[i], columnsDict.value[i], i.substring(2), '', '', '', requireLength)) { + result = false + break + } + } + console.log(result, 'result') + return result +} +// ----------------------------------------------------------------------------------------------------- +const clearAllList = () => { + listFrequency.value = [] + listPower.value = [] + listRelativeLevel.value = [] + // list.value = [] + + form1.value.frequency = 1 + form1.value.power = 1 + form1.value.relativeLevel = 1 +} +const getList = () => { + let result = [] as any[] + for (const i in chekedDict) { + if ((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) { + const data = listDict.value[i] + result = [...result, ...data] + } + } + return result +} // ---------------------------------------按钮----------------------------------------------------- // 点击关闭 const close = () => { @@ -175,54 +281,60 @@ }, ) .then(() => { - listFrequency.value = [] - listPower.value = [] - listRelativeLevel.value = [] + clearAllList() }) } // 点击保存 const save = () => { - // if (!list.value.length) { ElMessage.warning('核查项不能为空'); return false } - // if (!checkList(list.value, '核查项表格')) { return false } - // const params = { - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id - // checkItemDataPistonGaugeList: list.value, - // } - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) - // config(params).then((res) => { - // ElMessage.success('已保存') - // pageType.value = 'detail' - // loading.close() - // }) + if (!getList().length) { ElMessage.warning('核查项不能为空'); return false } + if (!checkAllList()) { return } + const params = { + itemCategoryId: form.value.itemCategoryId, // 核查项分类id + checkItemDataSpectrumAnalyzerList: getList().map((item: any) => ({ ...item, equipmentId: equipmentId.value })), + equipmentId: equipmentId.value, + } + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) + config(params).then((res) => { + ElMessage.success('已保存') + pageType.value = 'detail' + loading.close() + }) } // 获取详情 const getInfo = () => { - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) const params = { equipmentId: equipmentId.value, // 设备id belongStandardEquipment: form.value.belongStandardEquipment, // 检校标准装置code itemCategoryId: form.value.itemCategoryId, // 核查项分类id itemCategoryName: form.value.itemCategoryName, // 核查项分类名称 } - // getCheckItemDetail(params).then((res) => { - // list.value = res.data.checkItemDataPistonGaugeList.map((item: any) => { - // return { - // ...item, - // resolution: Number(item.resolution), - // } - // }) - // loading.close() - // }) + getCheckItemDetail(params).then((res) => { + const data = res.data?.checkItemDataSpectrumAnalyzerList || [] + const dict = { + 1: '频率', + 2: '功率', + 3: '相对电平', + } + data.forEach((item: any) => { + addRow([], dict[item.params], '', item) + }) + + form1.value.frequency = listFrequency.value.length ? 1 : 0 + form1.value.power = listPower.value.length ? 1 : 0 + form1.value.relativeLevel = listRelativeLevel.value.length ? 1 : 0 + loading.close() + }) } // ------------------------------------------钩子-------------------------------------------------- @@ -239,8 +351,62 @@ form.value.belongStandardEquipment = $route.query.belongStandardEquipment as string // 核查项标准装置id form.value.belongStandardEquipmentName = $route.query.belongStandardEquipmentName as string // 核查项标准装置id equipmentId.value = $route.query.equipmentId as string // 设备id - // getInfo() + getInfo() }) + +// 表格下拉框等内容是否禁用 +const disabled = ({ scope, column }, fun: any) => { + if (column.text === '核查类型' || column.text === '循环次数') { + fun(true) + return + } + fun(pageType.value === 'detail') +} +// 每个table对应的下拉框内容 字典 +const tableDict = ref<{ [key: string]: { value: string;name: string;id: string }[] }>({}) +const changeLoadSituationa = (value: any, index: number, text: string, type: string, list: any[], item: string) => { + if (item === '频率显示') { + if (text === '标称值') { + list[index].frequency = value + } + if (text === '标称值单位') { + list[index].frequencyUnit = typeof value === 'string' ? value : '' + } + } +} +// 获取字典 +const checkTypeList = ref<{ value: string;name: string;id: string }[]>([]) // 核查类型 +const frequencyUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 频率 +const amplitudeUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 幅度 +const levelComposition = ref<{ value: string;name: string;id: string }[]>([]) // 组合方式 +const standardDBunit = ref<{ value: string;name: string;id: string }[]>([]) // 相对电平单位 +const fetchDict = async () => { + // 核查类型 + const res1 = await getDictByCode('bizFirstStandardCheckType') + checkTypeList.value = res1.data + // 频率 + const res2 = await getDictByCode('bizFirstStandardFrequencyUnit') + frequencyUnitList.value = res2.data + // 幅度 + const res3 = await getDictByCode('standardAmplitudeUnit') + amplitudeUnitList.value = res3.data + const res4 = await getDictByCode('levelComposition') + levelComposition.value = res4.data + const res5 = await getDictByCode('standardDBunit') + standardDBunit.value = res5.data + + // 组合方式 + // table字典 + tableDict.value = { + 核查类型: checkTypeList.value, + 频率点单位: frequencyUnitList.value, + 幅度单位: amplitudeUnitList.value, + 功率单位: amplitudeUnitList.value, + 组合方式: levelComposition.value, + 相对电平单位: standardDBunit.value, + } +} +fetchDict() - + + @@ -965,6 +987,11 @@ + diff --git a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue index abadccc..b10be82 100644 --- a/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue +++ b/src/views/business/taskMeasure/measureData/components/sixth/templateDetail.vue @@ -177,8 +177,6 @@ // 初始化输入数据 const initInputData = (data: any) => { - // console.log(data, '数组') - // list.value.push(data) data.forEach((item: any) => { list.value.push({ beforeAdjustAverage: '', @@ -198,6 +196,9 @@ editable: true, } as any) }) + if (pageType.value === 'add') { + list.value = list.value.map((item: any) => ({ ...item, beforeAdjustSecond: item.beforeAdjustFirst || '', beforeAdjustThird: item.beforeAdjustFirst || '' })) + } } /** @@ -372,7 +373,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> @@ -385,7 +386,7 @@ v-for="i in conclusionList" :key="i.value" :label="i.name" - :value="i.name" + :value="i.value" /> diff --git a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue index 283e779..83f6bf5 100644 --- a/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue +++ b/src/views/business/taskMeasure/measureData/components/templateFormAndTable.vue @@ -429,7 +429,7 @@ - + diff --git a/src/views/business/taskMeasure/measureData/detail.vue b/src/views/business/taskMeasure/measureData/detail.vue index b6e1bd7..8ca0bd3 100644 --- a/src/views/business/taskMeasure/measureData/detail.vue +++ b/src/views/business/taskMeasure/measureData/detail.vue @@ -326,12 +326,17 @@ id: '', } } + if (belongStandardEquipment.value === '6') { + params.appearanceFunctionCheck = Number(params.appearanceFunctionCheck) === 1 ? '合格' : '不合格' + params.sealingTest = Number(params.sealingTest) === 1 ? '合格' : '不合格' + } return params } // 生成原始记录和检定证书 const createRecord = () => { const params = solveRecordParams() + if (params) { const loading = ElLoading.service({ lock: true, diff --git a/src/views/equipement/standard/book/components/basic.vue b/src/views/equipement/standard/book/components/basic.vue index 2142275..ac7e463 100644 --- a/src/views/equipement/standard/book/components/basic.vue +++ b/src/views/equipement/standard/book/components/basic.vue @@ -340,7 +340,7 @@ // ------------------------------------------环境条件---------------------------------------- const environmentalConditionsColumns = [ // 环境条件表头 { text: '温度(℃)', value: 'temperature', align: 'center', required: true }, - { text: '相对湿度(%)', value: 'humidity', align: 'center', required: true }, + { text: '相对湿度(%RH)', value: 'humidity', align: 'center', required: true }, { text: '电源电压(v)', value: 'voltage', align: 'center', required: true }, { text: '电源频率(Hz)', value: 'powerFrequency', align: 'center', required: true }, { text: '周围环境', value: 'surroundEnvironment', align: 'center', required: true }, diff --git a/src/views/equipement/standard/book/components/config/ninth/config.vue b/src/views/equipement/standard/book/components/config/ninth/config.vue index 6199aac..de93fb8 100644 --- a/src/views/equipement/standard/book/components/config/ninth/config.vue +++ b/src/views/equipement/standard/book/components/config/ninth/config.vue @@ -9,6 +9,8 @@ import { config, getCheckItemDetail } from '@/api/equipment/standard/book' import { calc } from '@/utils/useCalc' import { getDictByCode } from '@/api/system/dict' +import { differenceArray, setSelectList } from '@/utils/Array' +import templateTable1 from '@/views/business/measure/item/components/second/templateTable.vue' const textMap: { [key: string]: string } = { edit: '编辑', @@ -40,124 +42,228 @@ if ($route.params.id) { infoId.value = $route.params.id as string } - console.log('pageType.value', pageType.value) } // -------------------------------------------核查项----------------------------------------------- const listFrequency = ref([]) // 频率 const listPower = ref([]) // 功率 const listRelativeLevel = ref([]) // 相对电平 -const checkoutFrequencyList = ref([]) // 频率选中数据 -const checkoutPowerList = ref([]) // 功率选中数据 -const checkoutRelativeLevelList = ref([]) // 相对电平选中数据 -const frequency = ref(true) // 是否显示频率 -const power = ref(true) // 是否显示功率 -const relativeLevel = ref(true) // 是否显示相对电平 + +const form1 = ref({ + frequency: 1, // 是否显示频率 + power: 1, // 是否显示功率 + relativeLevel: 1, // 是否显示相对电平 +}) +const listDict = ref<{ [key: string]: any }>() +watch(() => [listFrequency.value, listPower.value, listRelativeLevel.value], () => { + listDict.value = { + '1-频率': listFrequency.value, + '2-功率': listPower.value, + '3-相对电平': listRelativeLevel.value, + } +}, { + deep: true, + immediate: true, +}) +// 表格对应的 选择状态 +let chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, +} as { [key: string]: any } +watch(() => form1.value, () => { + chekedDict = { + '1-频率': form1.value.frequency, + '2-功率': form1.value.power, + '3-相对电平': form1.value.relativeLevel, + } +}, { + deep: true, + // immediate: true, +}) const columns_frequency = ref([ // 频率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'frequencyDictValue' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_power = ref([ // 功率表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '功率', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByFrequency' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '功率', value: 'power', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByPower' }, + { text: '功率单位', value: 'powerUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: false, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'number' }, ]) const columns_relative_level = ref([ // 相对电平表头 - { text: '核查项目', value: 'params', align: 'center', required: true }, - { text: '频率点', value: 'checkPoint', align: 'center', required: true }, - { text: '频率点单位', value: 'unit', align: 'center', required: true }, - { text: '合成标准不确定度', value: 'resolution', align: 'center', required: true }, - { text: '相对电平', value: 'resolution', align: 'center', required: true }, - { text: '幅度', value: 'cycleNumber', align: 'center', required: true }, - { text: '幅度单位', value: 'urel', align: 'center', required: true }, - { text: '核查类型', value: 'checkType', align: 'center', required: true }, + { text: '核查项目', value: 'paramsName', align: 'center', required: false, type: 'text' }, + { text: '组合方式', value: 'composition', align: 'center', required: true, type: 'select' }, + { text: '频率点', value: 'checkPoint', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '频率点单位', value: 'unit', align: 'center', required: true, type: 'select' }, + { text: '相对电平', value: 'relativeLevel', align: 'center', required: true, type: 'select-dict', code: 'powerDictValueByLevel' }, + { text: '相对电平单位', value: 'relativeLevelUnit', align: 'center', required: true, type: 'select' }, + { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'number' }, + { text: '幅度单位', value: 'amplitudeUnit', align: 'center', required: true, type: 'select' }, + { text: '循环次数', value: 'cycleNumber', align: 'center', required: true, type: 'number' }, + { text: '核查类型', value: 'checkType', align: 'center', required: true, type: 'select-multi' }, + { text: 'U(k=2)', value: 'urel', align: 'center', required: false, type: 'number' }, + ]) - -// 频率多选 -const handleSelectionFrequencyChange = (e: any) => { - checkoutFrequencyList.value = e -} -// 功率多选 -const handleSelectionPowerChange = (e: any) => { - checkoutPowerList.value = e -} -// 相对电平多选 -const handleSelectionRelativeLevelChange = (e: any) => { - checkoutPowerList.value = e -} - -// 校验表格(点击保存的时候、增加行用) -const checkList = (list: any, title: string) => { - // return useCheckList(list, columns.value, title) -} - +// 表格对应 columns字典 +const columnsDict = ref<{ [key: string]: any }>( + { + '1-频率': columns_frequency.value, + '2-功率': columns_power.value, + '3-相对电平': columns_relative_level.value, + }, +) /** * 增加行公共方法 * @param list 要操作的数组 * @param title 操作的表格 */ -const addRow = (list: IList[], title: string) => { - // if (checkList(list, `${title}表格`)) { - // if (list.length) { // 增加行时默认上一行数据 - // list.push({ - // id: '', - // checkPoint: list[list.length - 1].checkPoint, // 核查点(直接存字典value) - // checkType: list[list.length - 1].checkType, // 核查类型 - // cycleNumber: list[list.length - 1].cycleNumber, // 循环次数 - // equipmentId: list[list.length - 1].equipmentId, // 配套设备id - // itemCategoryId: list[list.length - 1].itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: list[list.length - 1].params, // 核查项目(直接存字典value) - // remark: list[list.length - 1].remark, // 核查项备注(每个数据存储的核查项备注相同,前端取列表中一个即可) - // resolution: list[list.length - 1].resolution, // 分辨力 - // testType: list[list.length - 1].testType, // 核查点类型(直接存字典value) - // unit: list[list.length - 1].unit, // 单位(直接存字典value) - // urel: list[list.length - 1].urel, // 测量标准相对扩展不确定度urel - // }) - // } - // else { - // list.push({ - // checkPoint: '', // 核查点 - // checkType: '', // 核查类型(直接存字典value,多个逗号分隔) - // cycleNumber: 6, // 循环次数 - // equipmentId: infoId.value, // 配套设备id - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id(能够确定是哪个标准装置) - // params: '', // 核查项目(直接存字典value) - // remark: '', // 核查项备注 - // resolution: 0.0001, // 分辨力 - // testType: title, // 核查点类型(直接存字典value) - // unit: '', // 单位(直接存字典value) - // urel: 0, // 测量标准相对扩展不确定度urel - // }) - // } - // } +const addRow = (list: IList[], title: string, index: string, item: any) => { + if (checkList(list, columnsDict.value[`${index}-${title}`], `${title}表格`)) { + switch (title) { + case '频率': + if (item) { + listFrequency.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '频率' }) + } + else { + listFrequency.value.length + ? listFrequency.value.push(JSON.parse(JSON.stringify(listFrequency.value[listFrequency.value.length - 1]))) + : listFrequency.value.push({ + paramsName: '频率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '1', + cycleNumber: '6', + checkPoint: '', + unit: '', + amplitude: '', + amplitudeUnit: '', + urel: '', + } as any) + } + + break + case '功率': + if (item) { + listPower.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '功率' }) + } + else { + listPower.value.length + ? listPower.value.push(JSON.parse(JSON.stringify(listPower.value[listPower.value.length - 1]))) + : listPower.value.push({ + paramsName: '功率', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '2', + cycleNumber: '6', + checkPoint: '', + unit: '', + power: '', + powerUnit: '', + urel: '', + } as any) + } + + break + case '相对电平': + if (item) { + listRelativeLevel.value.push({ ...JSON.parse(JSON.stringify(item)), paramsName: '相对电平' }) + } + else { + listRelativeLevel.value.length + ? listRelativeLevel.value.push(JSON.parse(JSON.stringify(listRelativeLevel.value[listRelativeLevel.value.length - 1]))) + : listRelativeLevel.value.push({ + paramsName: '相对电平', + checkType: ['重复性', '稳定性'], // 核查类型 + params: '3', + cycleNumber: '6', + checkPoint: '', + unit: '', + urel: '', + relativeLevel: '', + relativeLevelUnit: '', + amplitude: '', + amplitudeUnit: '', + } as any) + } + + break + } + } } /** * 删除行公共方法 * @param checkoutList 选中的数组 * @param list 操作的数组 */ -const delRow = (checkoutList: IList[], list: IList[]) => { +const delRow = (checkoutList: IList[], list: IList[], title: string) => { if (!checkoutList.length) { ElMessage.warning('请选中要删除的行') } else { - list = list.filter((item: any) => { - return !checkoutList.includes(item) - }) + let data = [] as any[] + data = differenceArray(list, checkoutList) + switch (title) { + case '频率': + listFrequency.value = data + break + case '功率': + listPower.value = data + break + case '相对电平': + listRelativeLevel.value = data + } } } +// ---------------------------------------------校验--------------------------------------------------- +// 校验表格(点击保存的时候用、生成标准器示值) +function checkList(list: any[], columns: any[], title: string) { + return useCheckList(list, columns, title) +} +// 校验所有表格 +function checkAllList() { + let result = true + for (const i in columnsDict.value) { + const requireLength = !!((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) + if (!useCheckList(listDict.value[i], columnsDict.value[i], i.substring(2), '', '', '', requireLength)) { + result = false + break + } + } + console.log(result, 'result') + return result +} +// ----------------------------------------------------------------------------------------------------- +const clearAllList = () => { + listFrequency.value = [] + listPower.value = [] + listRelativeLevel.value = [] + // list.value = [] + + form1.value.frequency = 1 + form1.value.power = 1 + form1.value.relativeLevel = 1 +} +const getList = () => { + let result = [] as any[] + for (const i in chekedDict) { + if ((chekedDict[i] === '1' || chekedDict[i] === 1) && chekedDict[i]) { + const data = listDict.value[i] + result = [...result, ...data] + } + } + return result +} // ---------------------------------------按钮----------------------------------------------------- // 点击关闭 const close = () => { @@ -175,54 +281,60 @@ }, ) .then(() => { - listFrequency.value = [] - listPower.value = [] - listRelativeLevel.value = [] + clearAllList() }) } // 点击保存 const save = () => { - // if (!list.value.length) { ElMessage.warning('核查项不能为空'); return false } - // if (!checkList(list.value, '核查项表格')) { return false } - // const params = { - // itemCategoryId: form.value.itemCategoryId, // 核查项分类id - // checkItemDataPistonGaugeList: list.value, - // } - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) - // config(params).then((res) => { - // ElMessage.success('已保存') - // pageType.value = 'detail' - // loading.close() - // }) + if (!getList().length) { ElMessage.warning('核查项不能为空'); return false } + if (!checkAllList()) { return } + const params = { + itemCategoryId: form.value.itemCategoryId, // 核查项分类id + checkItemDataSpectrumAnalyzerList: getList().map((item: any) => ({ ...item, equipmentId: equipmentId.value })), + equipmentId: equipmentId.value, + } + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) + config(params).then((res) => { + ElMessage.success('已保存') + pageType.value = 'detail' + loading.close() + }) } // 获取详情 const getInfo = () => { - // const loading = ElLoading.service({ - // lock: true, - // text: '加载中', - // background: 'rgba(255, 255, 255, 0.6)', - // }) + const loading = ElLoading.service({ + lock: true, + text: '加载中', + background: 'rgba(255, 255, 255, 0.6)', + }) const params = { equipmentId: equipmentId.value, // 设备id belongStandardEquipment: form.value.belongStandardEquipment, // 检校标准装置code itemCategoryId: form.value.itemCategoryId, // 核查项分类id itemCategoryName: form.value.itemCategoryName, // 核查项分类名称 } - // getCheckItemDetail(params).then((res) => { - // list.value = res.data.checkItemDataPistonGaugeList.map((item: any) => { - // return { - // ...item, - // resolution: Number(item.resolution), - // } - // }) - // loading.close() - // }) + getCheckItemDetail(params).then((res) => { + const data = res.data?.checkItemDataSpectrumAnalyzerList || [] + const dict = { + 1: '频率', + 2: '功率', + 3: '相对电平', + } + data.forEach((item: any) => { + addRow([], dict[item.params], '', item) + }) + + form1.value.frequency = listFrequency.value.length ? 1 : 0 + form1.value.power = listPower.value.length ? 1 : 0 + form1.value.relativeLevel = listRelativeLevel.value.length ? 1 : 0 + loading.close() + }) } // ------------------------------------------钩子-------------------------------------------------- @@ -239,8 +351,62 @@ form.value.belongStandardEquipment = $route.query.belongStandardEquipment as string // 核查项标准装置id form.value.belongStandardEquipmentName = $route.query.belongStandardEquipmentName as string // 核查项标准装置id equipmentId.value = $route.query.equipmentId as string // 设备id - // getInfo() + getInfo() }) + +// 表格下拉框等内容是否禁用 +const disabled = ({ scope, column }, fun: any) => { + if (column.text === '核查类型' || column.text === '循环次数') { + fun(true) + return + } + fun(pageType.value === 'detail') +} +// 每个table对应的下拉框内容 字典 +const tableDict = ref<{ [key: string]: { value: string;name: string;id: string }[] }>({}) +const changeLoadSituationa = (value: any, index: number, text: string, type: string, list: any[], item: string) => { + if (item === '频率显示') { + if (text === '标称值') { + list[index].frequency = value + } + if (text === '标称值单位') { + list[index].frequencyUnit = typeof value === 'string' ? value : '' + } + } +} +// 获取字典 +const checkTypeList = ref<{ value: string;name: string;id: string }[]>([]) // 核查类型 +const frequencyUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 频率 +const amplitudeUnitList = ref<{ value: string;name: string;id: string }[]>([]) // 幅度 +const levelComposition = ref<{ value: string;name: string;id: string }[]>([]) // 组合方式 +const standardDBunit = ref<{ value: string;name: string;id: string }[]>([]) // 相对电平单位 +const fetchDict = async () => { + // 核查类型 + const res1 = await getDictByCode('bizFirstStandardCheckType') + checkTypeList.value = res1.data + // 频率 + const res2 = await getDictByCode('bizFirstStandardFrequencyUnit') + frequencyUnitList.value = res2.data + // 幅度 + const res3 = await getDictByCode('standardAmplitudeUnit') + amplitudeUnitList.value = res3.data + const res4 = await getDictByCode('levelComposition') + levelComposition.value = res4.data + const res5 = await getDictByCode('standardDBunit') + standardDBunit.value = res5.data + + // 组合方式 + // table字典 + tableDict.value = { + 核查类型: checkTypeList.value, + 频率点单位: frequencyUnitList.value, + 幅度单位: amplitudeUnitList.value, + 功率单位: amplitudeUnitList.value, + 组合方式: levelComposition.value, + 相对电平单位: standardDBunit.value, + } +} +fetchDict()