Newer
Older
xc-business-system / src / views / equipement / standard / checkData / components / sixteen / checkDataCom.vue
dutingting on 2 Dec 126 KB 临时提交
<!-- 核查数据管理详情--核查项---第16套:低频信号源装置 -->
<script lang="ts" setup name="checkDataDetail">
import { ref, watch } from 'vue'
import { ElLoading, ElMessage } from 'element-plus'
import saveCheckRecord from '../../dialog/saveCheckRecord.vue'
import { clearDateValue, handleDetailTableTableHead, handleSaveDateParams, solveHistoryIndicationTableData } from '../useStabilityCaculate'
import type { IList } from './sixteen-interface'
import type { TableColumn } from '@/components/NormalTable/table_interface'
import useUserStore from '@/store/modules/user'
import type { dictType } from '@/global'
import { getDictByCode } from '@/api/system/dict'
import { useCheckList } from '@/commonMethods/useCheckList'
import multiTable from '@/components/MultiHeaderTable/index.vue'
import { addCheckData, calculateHandle, getHistoryIndication, getInfo, updateCheckData } from '@/api/equipment/standard/checkData'
import { getCheckItemDetail, getJobInstructionList } from '@/api/equipment/standard/book'
import { useScientificNotation } from '@/commonMethods/useScientificNotation'

const props = defineProps({
  selectStandardId: { // 选择的标准装置id
    type: String,
  },
  pageType: { // 页面类型
    type: String,
  },
  checkDate: { // 核查日期
    type: String,
  },
})
const emits = defineEmits(['isConfigCheck'])

const user = useUserStore() // 用户信息
const $router = useRouter() // 关闭页面使用
const $route = useRoute() // 路由参数
const infoId = ref('')
const belongStandardEquipment = ref('16')
const itemCategoryId = ref('') // 核查项分类id
const itemCategoryName = ref('') // 核查项分类名称
const form = ref({
  remark: '/', // 备注
  qualified: '', // 稳定性考核是否合格
})
const equipmentId = ref('') // 设备id
const dateArrStability = ref<string[]>([]) // 稳定性日期数组
const currentDate = ref('') // 要查询历史稳定性的日期

// ----------------------------------路由参数------------------------------------------------
if ($route.params && $route.params.type) {
  if ($route.params.id) {
    infoId.value = $route.params.id as string
  }
}
// ----------------------------------------核查数据----------------------------------------------
const radioMenus = ref([ // 标签内容
  { name: '重复性', value: 'repeatability' },
  { name: '稳定性', value: 'stability' },
])
const current = ref('repeatability') // 选择的tab 默认基本信息
const columns_repeatability_frequency = ref<TableColumn[]>([ // 重复性表头--频率
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
      { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', showUnit: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text', unit: 'unit' },
  { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])

const columns_repeatability_power_level = ref<TableColumn[]>([ // 重复性表头--交流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
      { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 2, showUnit: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text', unit: 'unit' },
  { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])

const columns_repeatability_relative_level = ref<TableColumn[]>([ // 重复性表头--直流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3 },
      { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text', unit: 'unit' },
  { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])

const columns_repeatability_AM_depth = ref<TableColumn[]>([ // 重复性表头--上升下降时间
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '单位', value: 'unit', align: 'center', required: true, type: 'select' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
      { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])
const columns_repeatability_frequency_modulation_deviation = ref<TableColumn[]>([ // 重复性表头--平坦度
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      {
        text: '第1次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueOne', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第2次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueTwo', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第3次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueThree', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第4次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueFour', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第5次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueFive', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第6次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueSix', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第7次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueSeven', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第8次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueEight', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第9次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueNine', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
      {
        text: '第10次',
        value: '',
        align: 'center',
        required: false,
        width: '180',
        children: [
          { text: '测量值', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 3, showUnit: true },
          { text: '平坦度', value: 'flatnessValueTen', align: 'center', required: false, width: '180', type: 'text' },
        ],
      },
    ],
  },
  {
    text: '平均值',
    value: '',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '测量值', value: 'averageValue', align: 'center', required: false, width: '180', type: 'text' },
      { text: '平坦度', value: 'averageValueTwo', align: 'center', required: false, width: '180', type: 'text' },
    ],
  },
  { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])

// const columns_repeatability_phase = ref<TableColumn[]>([ // 重复性表头--失真度

//   { text: '核查项目', value: 'paramsName', align: 'center', required: true, type: 'text' },
//   { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
//   { text: '标称值/%', value: 'nominalValue', align: 'center', required: true, type: 'text' },
//   {
//     text: '测量值',
//     value: 'indicatingValue',
//     align: 'center',
//     required: false,
//     width: '180',
//     children: [
//       { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber' },
//       { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber' },
//     ],
//   },
//   { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
//   { text: '重复性S(x)/x', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
// ])

const columns_repeatability_frequency_spectrum = ref<TableColumn[]>([ // 重复性表头--失真
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '电压', value: 'voltage', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: 'indicatingValue',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { text: '第1次', value: 'testValueOne', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第2次', value: 'testValueTwo', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第3次', value: 'testValueThree', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第4次', value: 'testValueFour', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第5次', value: 'testValueFive', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第6次', value: 'testValueSix', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第7次', value: 'testValueSeven', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第8次', value: 'testValueEight', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第9次', value: 'testValueNine', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
      { text: '第10次', value: 'testValueTen', align: 'center', required: true, width: '180', type: 'inputNumber', precision: 4, showUnit: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '重复性S(x)', value: 'standardDeviation', align: 'center', required: false, type: 'text' },
])

const columns_stability_frequency = ref<TableColumn[]>([ // 稳定性表头--频率
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_frequency_checkDate = ref<TableColumn[]>([ // 稳定性表头--频率
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

const columns_stability_power_level = ref<TableColumn[]>([ // 稳定性表头--交流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_power_level_checkDate = ref<TableColumn[]>([ // 稳定性表头--交流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

const columns_stability_relative_level = ref<TableColumn[]>([ // 稳定性表头--直流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_relative_level_checkDate = ref<TableColumn[]>([ // 稳定性表头--直流电压
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

const columns_stability_AM_depth = ref<TableColumn[]>([ // 稳定性表头--上升下降时间
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '单位', value: 'unit', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_AM_depth_checkDate = ref<TableColumn[]>([ // 稳定性表头--上升下降时间
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '单位', value: 'unit', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

const columns_stability_frequency_modulation_deviation = ref<TableColumn[]>([ // 稳定性表头--平坦度
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)/%', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_frequency_modulation_deviation_checkDate = ref<TableColumn[]>([ // 稳定性表头--平坦度
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '幅度', value: 'amplitude', align: 'center', required: true, type: 'text' },
  { text: '标称值', value: 'nominalValue', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)/%', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

const columns_stability_frequency_spectrum = ref<TableColumn[]>([ // 稳定性表头--失真
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '电压', value: 'voltage', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])
const columns_stability_frequency_spectrum_checkDate = ref<TableColumn[]>([ // 稳定性表头--失真
  { text: '核查项目', value: 'params', align: 'center', required: true, type: 'text' },
  { text: '频率', value: 'frequency', align: 'center', required: true, type: 'text' },
  { text: '电压', value: 'voltage', align: 'center', required: true, type: 'text' },
  {
    text: '测量值',
    value: '-',
    align: 'center',
    required: false,
    width: '180',
    children: [
      { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
      { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
    ],
  },
  { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
  { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
  { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
  { text: '结论', value: 'lessThanValue', align: 'center', required: false, type: 'text' },
])

// const  columns_stability_phase  = ref<TableColumn[]>([ // 稳定性表头--失真
//   { text: '核查项目', value: 'paramsName', align: 'center', required: true, type: 'text' },
//   { text: '频率点', value: 'checkPointDefineFront', align: 'center', required: true, type: 'text' },
//   {
//     text: '测量值',
//     value: '-',
//     align: 'center',
//     required: false,
//     width: '180',
//     children: [
//       { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
//     ],
//   },
//   { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
//   { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
//   { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
//   { text: '结论', value: 'lessThan', align: 'center', required: false, type: 'text' },
// ])
// const columns_stability_phase_checkDate = ref<TableColumn[]>([ // 稳定性表头--失真
//   { text: '核查项目', value: 'paramsName', align: 'center', required: true, type: 'text' },
//   { text: '频率点', value: 'checkPointDefineFront', align: 'center', required: true, type: 'text' },
//   {
//     text: '测量值',
//     value: '-',
//     align: 'center',
//     required: false,
//     width: '180',
//     children: [
//       { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
//       { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
//     ],
//   },
//   { text: '平均值', value: 'averageValue', align: 'center', required: false, type: 'text' },
//   { text: '稳定性', value: 'stability', align: 'center', required: false, type: 'text' },
//   { text: 'U(k=2)', value: 'urel', align: 'center', required: true, type: 'text' },
//   { text: '结论', value: 'lessThan', align: 'center', required: false, type: 'text' },
// ])

// 重复性
const listFrequencyRepeatability = ref<IList[]>([]) // 频率-重复性
const listPowerLevelRepeatability = ref<IList[]>([]) // 交流电压-重复性
const listRelativeLevelRepeatability = ref<IList[]>([]) // 直流电压-重复性
const listAMDepthRepeatability = ref<IList[]>([]) // 上升下降时间-重复性
const listfrequencyModulationDeviationRepeatability = ref<IList[]>([]) // 平坦度-重复性
// const listPhaseRepeatability = ref<IList[]>([]) // 调相相偏-重复性
const listFrequencySpectrumRepeatability = ref<IList[]>([]) // 失真-重复性

// 重复性checkDate
const listFrequencyRepeatabilityCheckDate = ref<IList[]>([]) // 频率-重复性
const listPowerLevelRepeatabilityCheckDate = ref<IList[]>([]) // 交流电压-重复性
const listRelativeLevelRepeatabilityCheckDate = ref<IList[]>([]) // 直流电压-重复性
const listAMDepthRepeatabilityCheckDate = ref<IList[]>([]) // 上升下降时间-重复性
const listfrequencyModulationDeviationRepeatabilityCheckDate = ref<IList[]>([]) // 平坦度-重复性
// const listPhaseRepeatabilityCheckDate = ref<IList[]>([]) // 调相相偏-重复性
const listFrequencySpectrumRepeatabilityCheckDate = ref<IList[]>([]) // 失真-重复性

// 重复性Loading
const listFrequencyRepeatabilityLoading = ref(false) // 频率-重复性
const listPowerLevelRepeatabilityLoading = ref(false) // 交流电压-重复性
const listRelativeLevelRepeatabilityLoading = ref(false) // 直流电压-重复性
const listAMDepthRepeatabilityLoading = ref(false) // 上升下降时间-重复性
const listfrequencyModulationDeviationRepeatabilityLoading = ref(false) // 平坦度-重复性
// const listPhaseRepeatabilityLoading = ref(false) // 调相相偏-重复性
const listFrequencySpectrumRepeatabilityLoading = ref(false) // 失真-重复性
// 稳定性
const listFrequencyStability = ref<any[]>([]) // 频率-稳定性
const listPowerLevelStability = ref<any[]>([]) // 交流电压-稳定性
const listRelativeLevelStability = ref<any[]>([]) // 直流电压-稳定性
const listAMDepthStability = ref<any[]>([]) // 上升下降时间-稳定性
const listfrequencyModulationDeviationStability = ref<any[]>([]) // 平坦度-稳定性
// const listPhaseStability = ref<any[]>([]) // 调相相偏-稳定性
const listFrequencySpectrumStability = ref<any[]>([]) // 失真-稳定性
// 稳定性checkDate
const listFrequencyStabilityCheckDate = ref<any[]>([]) // 频率-稳定性
const listPowerLevelStabilityCheckDate = ref<any[]>([]) // 交流电压-稳定性
const listRelativeLevelStabilityCheckDate = ref<any[]>([]) // 直流电压-稳定性
const listAMDepthStabilityCheckDate = ref<any[]>([]) // 上升下降时间-稳定性
const listfrequencyModulationDeviationStabilityCheckDate = ref<any[]>([]) // 平坦度-稳定性
// const listPhaseStabilityCheckDate = ref<any[]>([]) // 调相相偏-稳定性
const listFrequencySpectrumStabilityCheckDate = ref<any[]>([]) // 失真-稳定性

// 稳定性Loading
const listFrequencyStabilityLoading = ref(false) // 频率-稳定性
const listPowerLevelStabilityLoading = ref(false) // 交流电压-稳定性
const listRelativeLevelStabilityLoading = ref(false) // 直流电压-稳定性
const listAMDepthStabilityLoading = ref(false) // 上升下降时间-稳定性
const listfrequencyModulationDeviationStabilityLoading = ref(false) // 平坦度-稳定性
// const listPhaseStabilityLoading = ref(false) // 调相相偏-稳定性
const listFrequencySpectrumStabilityLoading = ref(false) // 失真-稳定性
const frequencyList = ref([])
// 获取配置详情
function fetchCheckItemDetail(equipmentId: string, belongStandardEquipmentParam: string, itemCategoryIdParam: string, itemCategoryNameParam: string) {
  belongStandardEquipment.value = belongStandardEquipmentParam // 检校标准装置
  itemCategoryId.value = itemCategoryIdParam // 核查分类id
  itemCategoryName.value = itemCategoryNameParam // 核查分类名称
  const loading = ElLoading.service({
    lock: true,
    background: 'rgba(255, 255, 255, 0.8)',
  })
  const params = {
    equipmentId, // 设备id
    belongStandardEquipment: belongStandardEquipment.value, // 检校标准装置code
    itemCategoryId: itemCategoryId.value, // 核查项分类id
    itemCategoryName: itemCategoryName.value, // 核查项分类名称
  }
  getCheckItemDetail(params).then((res) => {
    loading.close()
    if (!res.data) {
      emits('isConfigCheck', false)
    }
    else {
      frequencyList.value = res.data.checkItemDataLowFrequencySignalList.filter((item: { params: string }) => item.params === '频率')
      handleData(res.data.checkItemDataLowFrequencySignalList)
      fetchHistoryIndication() // 重新拉取稳定性
    }
  })
}

// 初始化数据(查询配置检定项)
function handleData(list: any, type = 'edit') {
  // 频率
  listFrequencyRepeatability.value = list.filter((item: { params: string }) => item.params === '频率')
  // 频率重复性
  listFrequencyRepeatability.value = listFrequencyRepeatability.value.map((e: any, index: number) => {
    return {
      paramsName: '频率',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '1',
      params: '频率', // 核查项目
      unit: e.unit, //	单位(直接存字典value)
      nominalValue: e.nominalValue + e.unit,
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)
      validDigit: frequencyList.value[index].validDigit || 0,
      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10

      showUnitData: e.unit,
    }
  }) as any
  // 频率稳定性
  listFrequencyStability.value = listFrequencyRepeatability.value.map((e: any, index: number) => {
    return {
      paramsName: '频率',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '频率', // 核查项目
      dataType: '1',
      checkType: '稳定性',
      validDigit: frequencyList.value[index].validDigit || 0,
      nominalValue: e.nominalValue,
      urel: e.urel, // u(k=2)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '',
      showUnitData: e.unit,
    }
  })

  // 交流电压
  listPowerLevelRepeatability.value = list.filter((item: { params: string }) => item.params === '交流电压')
  // 交流电压重复性
  listPowerLevelRepeatability.value = listPowerLevelRepeatability.value.map((e: any) => {
    return {
      paramsName: '交流电压',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '2',
      params: '交流电压', // 核查项目
      nominalValue: e.nominalValue + e.unit,
      frequency: e.frequency + e.frequencyUnit,
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)
      unit: e.unit, //	单位(直接存字典value)
      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10
      showUnitData: e.unit,
    }
  }) as any
  // 交流电压稳定性
  listPowerLevelStability.value = listPowerLevelRepeatability.value.map((e: any) => {
    return {
      paramsName: '交流电压',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '交流电压', // 核查项目
      dataType: '2',
      nominalValue: e.nominalValue,
      frequency: e.frequency,
      checkType: '稳定性',
      urel: e.urel, // u(k=2)
      unit: e.unit, //	单位(直接存字典value)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '', // 结论
      showUnitData: e.unit,
    }
  }) as any

  // 直流电压
  listRelativeLevelRepeatability.value = list.filter((item: { params: string }) => item.params === '直流电压')
  // 直流电压重复性
  listRelativeLevelRepeatability.value = listRelativeLevelRepeatability.value.map((e: any) => {
    return {
      paramsName: '直流电压',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '3',
      params: '直流电压', // 核查项目
      nominalValue: e.nominalValue + e.unit,
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)
      unit: e.unit, //	单位(直接存字典value)
      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10
      showUnitData: e.unit,
    }
  }) as any
  // 直流电压稳定性
  listRelativeLevelStability.value = listRelativeLevelRepeatability.value.map((e: any) => {
    return {
      paramsName: '直流电压',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '直流电压', // 核查项目
      dataType: '3',
      unit: e.unit, //	单位(直接存字典value)
      nominalValue: e.nominalValue,
      checkType: '稳定性',
      urel: e.urel, // u(k=2)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '', // 结论
      showUnitData: e.unit,
    }
  }) as any

  // 上升下降时间
  listAMDepthRepeatability.value = list.filter((item: { params: string }) => item.params === '上升下降时间')
  // 上升下降时间重复性
  listAMDepthRepeatability.value = listAMDepthRepeatability.value.map((e: any) => {
    return {
      paramsName: '上升下降时间',
      params: '上升下降时间',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '4',
      unit: '',
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)

      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10
    }
  }) as any
  // 上升下降时间稳定性
  listAMDepthStability.value = listAMDepthRepeatability.value.map((e: any) => {
    return {
      paramsName: '上升下降时间',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '上升下降时间', // 核查项目
      dataType: '4',
      unit: '',
      checkType: '稳定性',
      urel: e.urel, // u(k=2)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '', // 结论
    }
  }) as any

  // 平坦度
  listfrequencyModulationDeviationRepeatability.value = list.filter((item: { params: string }) => item.params === '平坦度')
  // 平坦度重复性
  listfrequencyModulationDeviationRepeatability.value = listfrequencyModulationDeviationRepeatability.value.map((e: any, index: number) => {
    return {
      paramsName: '平坦度',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '5',
      params: '平坦度', // 核查项目
      amplitude: e.amplitude + e.amplitudeUnit,
      nominalValue: e.frequency + e.frequencyUnit,
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)

      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10

      flatnessValueOne: index === 0 ? '参考点' : '', //	测量值1/测量值(上升时间)
      flatnessValueTwo: index === 0 ? '参考点' : '', //	测量值2(示值)
      flatnessValueThree: index === 0 ? '参考点' : '', //	测量值3(示值)
      flatnessValueFour: index === 0 ? '参考点' : '', //	测量值4(示值)
      flatnessValueFive: index === 0 ? '参考点' : '', //	测量值5(示值)
      flatnessValueSix: index === 0 ? '参考点' : '', //	测量值6(本次示值)
      flatnessValueSeven: index === 0 ? '参考点' : '', //	测量值7
      flatnessValueEight: index === 0 ? '参考点' : '', //	测量值8
      flatnessValueNine: index === 0 ? '参考点' : '', //	测量值9
      flatnessValueTen: index === 0 ? '参考点' : '', //	测量值10
      averageValueTwo: index === 0 ? '参考点' : '',
    }
  }) as any
  // 平坦度稳定性
  listfrequencyModulationDeviationStability.value = listfrequencyModulationDeviationRepeatability.value.map((e: any) => {
    return {
      paramsName: '平坦度',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '平坦度', // 核查项目
      dataType: '5',
      amplitude: e.amplitude,
      nominalValue: e.nominalValue,
      checkType: '稳定性',
      urel: e.urel, // u(k=2)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '', // 结论
    }
  }) as any

  // 调相相偏
  // listPhaseRepeatability.value = list.filter((item: { params: string }) => item.params === '调相相偏')
  // // 调相相偏重复性
  // listPhaseRepeatability.value = listPhaseRepeatability.value.map((e: any) => {
  //   return {
  //     editable: type === 'edit',
  //     dataId: e.id, //	核查数据管理基础信息表id
  //     id: '', //	id,更新/删除使用参数
  //     checkType: '重复性',
  //     dataType: '6',
  //     params: e.params, // 核查项目
  //     checkPoint: e.checkPoint,
  //     unit: e.unit, //	单位(直接存字典value)
  //     checkPointDefineFront: e.checkPoint + e.unit, // 核查点
  //     phaseDeviation: e.phaseDeviation, //	调相相偏
  //     phaseDeviationUnit: e.phaseDeviationUnit, //	调相相偏单位
  //     phaseDeviationDefineFront: e.phaseDeviation + e.phaseDeviationUnit, //	调相相偏单位
  //     averageValue: '', // 平均值
  //     standardDeviation: '', // 重复性
  //     urel: e.urel, // u(k=2)

  //     testValueOne: 0, //	测量值1/测量值(上升时间)
  //     testValueTwo: 0, //	测量值2(示值)
  //     testValueThree: 0, //	测量值3(示值)
  //     testValueFour: 0, //	测量值4(示值)
  //     testValueFive: 0, //	测量值5(示值)
  //     testValueSix: 0, //	测量值6(本次示值)
  //     testValueSeven: 0, //	测量值7
  //     testValueEight: 0, //	测量值8
  //     testValueNine: 0, //	测量值9
  //     testValueTen: 0, //	测量值10
  //   }
  // }) as any
  // 调相相偏稳定性
  // listPhaseStability.value = listPhaseRepeatability.value.map((e: any) => {
  //   return {
  //     editable: props.pageType !== 'detail',
  //     dataId: e.dataId, //	核查数据管理基础信息表id
  //     id: '', //	id,更新/删除使用参数
  //     params: e.params, // 核查项目
  //     dataType: '6',
  //     checkPoint: e.checkPoint,
  //     unit: e.unit, //	单位(直接存字典value)
  //     checkPointDefineFront: e.checkPoint + e.unit, // 核查点
  //     phaseDeviation: e.phaseDeviation, //	调相相偏
  //     phaseDeviationUnit: e.phaseDeviationUnit, //	调相相偏单位
  //     phaseDeviationDefineFront: e.phaseDeviation + e.phaseDeviationUnit, //	调相相偏单位
  //     checkType: '稳定性',
  //     urel: e.urel, // u(k=2)
  //     averageValue: '', // 平均值
  //     stability: '', // 稳定性
  //     lessThan: '', // 结论
  //   }
  // }) as any

  // 失真
  listFrequencySpectrumRepeatability.value = list.filter((item: { params: string }) => item.params === '失真')
  // 失真重复性
  listFrequencySpectrumRepeatability.value = listFrequencySpectrumRepeatability.value.map((e: any) => {
    return {
      paramsName: '失真',
      editable: type === 'edit',
      dataId: e.id, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      checkType: '重复性',
      dataType: '7',
      params: '失真', // 核查项目
      frequency: e.frequency + e.frequencyUnit,
      voltage: e.voltage + e.voltageUnit,
      averageValue: '', // 平均值
      standardDeviation: '', // 重复性
      urel: e.urel, // u(k=2)

      testValueOne: 0, //	测量值1/测量值(上升时间)
      testValueTwo: 0, //	测量值2(示值)
      testValueThree: 0, //	测量值3(示值)
      testValueFour: 0, //	测量值4(示值)
      testValueFive: 0, //	测量值5(示值)
      testValueSix: 0, //	测量值6(本次示值)
      testValueSeven: 0, //	测量值7
      testValueEight: 0, //	测量值8
      testValueNine: 0, //	测量值9
      testValueTen: 0, //	测量值10
    }
  }) as any
  // 失真稳定性
  listFrequencySpectrumStability.value = listFrequencySpectrumRepeatability.value.map((e: any) => {
    return {
      paramsName: '失真',
      editable: props.pageType !== 'detail',
      dataId: e.dataId, //	核查数据管理基础信息表id
      id: '', //	id,更新/删除使用参数
      params: '失真', // 核查项目
      dataType: '7',
      frequency: e.frequency,
      voltage: e.voltage,
      checkType: '稳定性',
      urel: e.urel, // u(k=2)
      averageValue: '', // 平均值
      stability: '', // 稳定性
      lessThan: '', // 结论
      lessThanValue: '', // 结论
    }
  }) as any
}
// 点击计算结果
const createResult = (type: string) => {
  let checkDataSignalGeneratorListParams: any // 要传的重复或者稳定性参数
  if (current.value === 'stability') { // 计算稳定性先校验重复性
    if (!checkList()) { return false }
    checkDataSignalGeneratorListParams = listFrequencyStability.value.concat(
      listPowerLevelStability.value,
      listRelativeLevelStability.value,
      listAMDepthStability.value,
      listfrequencyModulationDeviationStability.value,
      // listPhaseStability.value,
      listFrequencySpectrumStability.value,
    )
  }

  if (current.value === 'repeatability') {
    switch (type) {
      case '频率':
        if (!useCheckList(listFrequencyRepeatability.value, columns_repeatability_frequency.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listFrequencyRepeatability.value
        break
      case '交流电压':
        if (!useCheckList(listPowerLevelRepeatability.value, columns_repeatability_power_level.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listPowerLevelRepeatability.value
        break
      case '直流电压':
        if (!useCheckList(listRelativeLevelRepeatability.value, columns_repeatability_relative_level.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listRelativeLevelRepeatability.value
        break
      case '上升下降时间':
        if (!useCheckList(listAMDepthRepeatability.value, columns_repeatability_AM_depth.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listAMDepthRepeatability.value
        break
      case '平坦度':
        if (!useCheckList(listfrequencyModulationDeviationRepeatability.value, columns_repeatability_frequency_modulation_deviation.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listfrequencyModulationDeviationRepeatability.value
        break
      // case '调相相偏':
      //   if (!useCheckList(listPhaseRepeatability.value, columns_repeatability_phase.value, `${type}-重复性`)) {
      //     return false
      //   }
      // checkDataSignalGeneratorListParams = listPhaseRepeatability.value
      // break
      case '失真':
        if (!useCheckList(listFrequencySpectrumRepeatability.value, columns_repeatability_frequency_spectrum.value, `${type}-重复性`)) {
          return false
        }
        checkDataSignalGeneratorListParams = listFrequencySpectrumRepeatability.value
        break
      default:
        break
    }
  }

  const params = {
    belongStandardEquipment: belongStandardEquipment.value, // 检校标准装置
    checkDataLowFrequencySignalList: checkDataSignalGeneratorListParams.map((item: { conclusion: string }) => {
      return {
        ...item,
        conclusion: '',
      }
    }),
    itemCategoryId: itemCategoryId.value, // 核查项分类id
    itemCategoryName: itemCategoryName.value, // 核查项分类id
  }
  // 重复性Loading
  listFrequencyRepeatabilityLoading.value = type === '频率' && current.value === 'repeatability'
  listPowerLevelRepeatabilityLoading.value = type === '交流电压' && current.value === 'repeatability'
  listRelativeLevelRepeatabilityLoading.value = type === '直流电压' && current.value === 'repeatability'
  listAMDepthRepeatabilityLoading.value = type === '上升下降时间' && current.value === 'repeatability'
  listfrequencyModulationDeviationRepeatabilityLoading.value = type === '平坦度' && current.value === 'repeatability'
  // listPhaseRepeatabilityLoading.value = type === '调相相偏' && current.value === 'repeatability'
  listFrequencySpectrumRepeatabilityLoading.value = type === '失真' && current.value === 'repeatability'
  // 稳定性loading
  listFrequencyStabilityLoading.value = true // 频率-稳定性
  listPowerLevelStabilityLoading.value = true // 交流电压-稳定性
  listRelativeLevelStabilityLoading.value = true // 直流电压-稳定性
  listAMDepthStabilityLoading.value = true // 上升下降时间-稳定性
  listfrequencyModulationDeviationStabilityLoading.value = true // 平坦度-稳定性
  // listPhaseStabilityLoading.value = true // 调相相偏-稳定性
  listFrequencySpectrumStabilityLoading.value = true // 失真-稳定性

  calculateHandle(params).then((res) => {
    const result = res.data.filter((item: { params: string }) => item.params === type).map((item: any) => {
      return {
        ...item,
        editable: props.pageType !== 'detail',
        paramsName: type,
        standardDeviation: Number(item.standardDeviation) ? useScientificNotation(Number(item.standardDeviation).toFixed(2)) : '',
        stability: useScientificNotation(item.stability),
      }
    })
    if (current.value === 'repeatability') { // 重复性
      switch (type) {
        case '频率':
          listFrequencyRepeatability.value = result.map((item: any, index: number) => ({
            ...item,
            showUnitData: item.unit,
            validDigit: frequencyList.value[index].validDigit || 0,
            averageValue: Number(item.averageValue || 0).toFixed(frequencyList.value[index].validDigit || 0),
            standardDeviation: Number(item.standardDeviation || 0).toFixed(frequencyList.value[index].validDigit || 0),
          }))
          // 填充稳定性最后一列的日期和数值
          listFrequencyStability.value = listFrequencyStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listFrequencyRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        case '交流电压':
          listPowerLevelRepeatability.value = result.map((item: any) => ({ ...item, showUnitData: item.unit }))
          // 填充稳定性最后一列的日期和数值
          listPowerLevelStability.value = listPowerLevelStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listPowerLevelRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        case '直流电压':
          listRelativeLevelRepeatability.value = result.map((item: any) => ({ ...item, showUnitData: item.unit }))
          // 填充稳定性最后一列的日期和数值
          listRelativeLevelStability.value = listRelativeLevelStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listRelativeLevelRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        case '上升下降时间':
          listAMDepthRepeatability.value = result
          // 填充稳定性最后一列的日期和数值
          listAMDepthStability.value = listAMDepthStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listAMDepthRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        case '平坦度':
          listfrequencyModulationDeviationRepeatability.value = result
          // 填充稳定性最后一列的日期和数值
          listfrequencyModulationDeviationStability.value = listfrequencyModulationDeviationStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listfrequencyModulationDeviationRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        // case '调相相偏':
        //   listPhaseRepeatability.value = result
        //   // 填充稳定性最后一列的日期和数值
        //   listPhaseStability.value = listPhaseStability.value.map((item, index: number) => {
        //     return {
        //       ...item,
        //       testValueSix: listPhaseRepeatability.value[index].averageValue, //	测量差值
        //       testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
        //     }
        //   })
        //   break
        case '失真':
          listFrequencySpectrumRepeatability.value = result
          // 填充稳定性最后一列的日期和数值
          listFrequencySpectrumStability.value = listFrequencySpectrumStability.value.map((item, index: number) => {
            return {
              ...item,
              testValueSix: listFrequencySpectrumRepeatability.value[index].averageValue, //	测量差值
              testValueSixDate: props.checkDate, //	核查读数6日期(本次核查日期)
            }
          })
          break
        default:
          break
      }
    }
    else if (current.value === 'stability') { // 稳定性
      const resultList = res.data.map((item: any) => {
        return {
          ...item,
          lessThanValue: (`${item.lessThan}` === '1' || `${item.lessThan}` === '') ? '合格' : '不合格',
          // checkPointDefineFront: item.checkPoint + item.unit, // 核查点
          // powerDefineFront: item.power + item.powerUnit, // 交流电压
          // relativeLevelDefineFront: item.relativeLevel + item.relativeLevelUnit, // 直流电压
          // frequencyDeviationDefineFront: item.frequencyDeviation + item.frequencyDeviationUnit, //	平坦度单位
          // phaseDeviationDefineFront: item.phaseDeviation + item.phaseDeviationUnit, //	调相相偏单位
          editable: props.pageType !== 'detail',
        }
      })
      listFrequencyStability.value = resultList.filter((item: { params: string }) => item.params === '频率')
      listPowerLevelStability.value = resultList.filter((item: { params: string }) => item.params === '交流电压')
      listRelativeLevelStability.value = resultList.filter((item: { params: string }) => item.params === '直流电压')
      listAMDepthStability.value = resultList.filter((item: { params: string }) => item.params === '上升下降时间')
      listfrequencyModulationDeviationStability.value = resultList.filter((item: { params: string }) => item.params === '平坦度')
      // listPhaseStability.value = resultList.filter((item: { params: string }) => item.params === '调相相偏')
      listFrequencySpectrumStability.value = resultList.filter((item: { params: string }) => item.params === '失真')

      // 计算稳定性考核是否合格
      if (resultList.every((item: { lessThanValue: string | number }) => item.lessThanValue === '合格')) {
        form.value.qualified = '合格'
      }
      else {
        form.value.qualified = '不合格'
      }
    }

    // 重复性Loading
    listFrequencyRepeatabilityLoading.value = false
    listPowerLevelRepeatabilityLoading.value = false
    listRelativeLevelRepeatabilityLoading.value = false
    listAMDepthRepeatabilityLoading.value = false
    listfrequencyModulationDeviationRepeatabilityLoading.value = false
    // listPhaseRepeatabilityLoading.value = false
    listFrequencySpectrumRepeatabilityLoading.value = false
    // 稳定性loading
    listFrequencyStabilityLoading.value = false // 频率-稳定性
    listPowerLevelStabilityLoading.value = false // 交流电压-稳定性
    listRelativeLevelStabilityLoading.value = false // 直流电压-稳定性
    listAMDepthStabilityLoading.value = false // 上升下降时间-稳定性
    listfrequencyModulationDeviationStabilityLoading.value = false // 平坦度-稳定性
    // listPhaseStabilityLoading.value = false // 调相相偏-稳定性
    listFrequencySpectrumStabilityLoading.value = false // 失真-稳定性
  }).catch(() => {
    // 重复性Loading
    listFrequencyRepeatabilityLoading.value = false
    listPowerLevelRepeatabilityLoading.value = false
    listRelativeLevelRepeatabilityLoading.value = false
    listAMDepthRepeatabilityLoading.value = false
    listfrequencyModulationDeviationRepeatabilityLoading.value = false
    // listPhaseRepeatabilityLoading.value = false
    listFrequencySpectrumRepeatabilityLoading.value = false
    // 稳定性loading
    listFrequencyStabilityLoading.value = false // 频率-稳定性
    listPowerLevelStabilityLoading.value = false // 交流电压-稳定性
    listRelativeLevelStabilityLoading.value = false // 直流电压-稳定性
    listAMDepthStabilityLoading.value = false // 上升下降时间-稳定性
    listfrequencyModulationDeviationStabilityLoading.value = false // 平坦度-稳定性
    // listPhaseStabilityLoading.value = false // 调相相偏-稳定性
    listFrequencySpectrumStabilityLoading.value = false // 失真-稳定性
  })
}
// ------------------------------------------------------------------------------------------
// 处理详情数据
const solveGetDetailData = (responseList: any) => {
  console.log('处理详情数据', props.pageType)
  form.value.qualified = responseList[0].qualified === 1 ? '合格' : '不合格'
  const list = responseList.map((item: any) => {
    let unit = ''
    switch (item.params) {
      case '频率':
        unit = item.unit
        break
      case '交流电压':
        unit = item.unit
        break
      case '直流电压':
        unit = item.unit
        break
    }
    return {
      ...item,
      editable: props.pageType !== 'detail',
      // checkPointDefineFront: item.checkPoint + item.unit, // 核查点
      // powerDefineFront: item.power + item.powerUnit, // 交流电压
      lessThanValue: `${item.lessThan}` === '1' ? '合格' : '不合格',
      testValueOne: item.checkType === '稳定性' ? item.testValueOne : Number(item.testValueOne), //	测量值1/测量值(上升时间)
      testValueTwo: item.checkType === '稳定性' ? item.testValueTwo : Number(item.testValueTwo), //	测量值2(示值)
      testValueThree: item.checkType === '稳定性' ? item.testValueThree : Number(item.testValueThree), //	测量值3(示值)
      testValueFour: item.checkType === '稳定性' ? item.testValueFour : Number(item.testValueFour), //	测量值4(示值)
      testValueFive: item.checkType === '稳定性' ? item.testValueFive : Number(item.testValueFive), //	测量值5(示值)
      testValueSix: item.checkType === '稳定性' ? item.testValueSix : Number(item.testValueSix), //	测量值6(本次示值)
      testValueSeven: item.checkType === '稳定性' ? item.testValueSeven : Number(item.testValueSeven), //	测量值7
      testValueEight: item.checkType === '稳定性' ? item.testValueEight : Number(item.testValueEight), //	测量值8
      testValueNine: item.checkType === '稳定性' ? item.testValueNine : Number(item.testValueNine), //	测量值9
      testValueTen: item.checkType === '稳定性' ? item.testValueTen : Number(item.testValueTen), //	测量值10
      showUnitData: unit,
    }
  })

  const listFrequencyRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '频率') // 频率-重复性
  const listPowerLevelRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '交流电压') // 交流电压-重复性
  const listRelativeLevelRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '直流电压') // 直流电压-重复性
  const listAMDepthRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '上升下降时间') // 上升下降时间-重复性
  const listfrequencyModulationDeviationRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '平坦度') // 平坦度-重复性
  // const listPhaseRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '调相相偏') // 调相相偏-重复性
  const listFrequencySpectrumRepeatability = list.filter((item: { params: string; checkType: string }) => item.checkType === '重复性' && item.params === '失真') // 失真-重复性

  // 稳定性
  const listFrequencyStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '频率') // 频率-稳定性
  const listPowerLevelStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '交流电压') // 交流电压-稳定性
  const listRelativeLevelStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '直流电压') // 直流电压 -稳定性
  const listAMDepthStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '上升下降时间') // 上升下降时间-稳定性
  const listfrequencyModulationDeviationStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '平坦度') // 平坦度-稳定性
  // const listPhaseStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '调相相偏') // 调相相偏-稳定性
  const listFrequencySpectrumStability = list.filter((item: { params: string; checkType: string }) => item.checkType === '稳定性' && item.params === '失真') // 失真-稳定性
  return {
    templistFrequencyRepeatability: listFrequencyRepeatability,
    templistPowerLevelRepeatability: listPowerLevelRepeatability,
    templistRelativeLevelRepeatability: listRelativeLevelRepeatability,
    templistAMDepthRepeatability: listAMDepthRepeatability,
    templistfrequencyModulationDeviationRepeatability: listfrequencyModulationDeviationRepeatability,
    // templistPhaseRepeatability: listPhaseRepeatability,
    templistFrequencySpectrumRepeatability: listFrequencySpectrumRepeatability,

    templistFrequencyStability: listFrequencyStability,
    templistPowerLevelStability: listPowerLevelStability,
    templistRelativeLevelStability: listRelativeLevelStability,
    templistAMDepthStability: listAMDepthStability,
    templistfrequencyModulationDeviationStability: listfrequencyModulationDeviationStability,
    // templistPhaseStability: listPhaseStability,
    templistFrequencySpectrumStability: listFrequencySpectrumStability,
  }
}

// 获取详情
async function fetchInfo(id = '') {
  const loading = ElLoading.service({
    lock: true,
    background: 'rgba(255, 255, 255, 0.8)',
  })
  const params = {
    equipmentId: $route.query.equipmentId, // 设备id
    belongStandardEquipment: belongStandardEquipment.value, // 检校标准装置code
    itemCategoryId: itemCategoryId.value, // 核查项分类id
    itemCategoryName: itemCategoryName.value, // 核查项分类名称
  }
  const res = await getCheckItemDetail(params)
  if (!res.data.checkItemDataLowFrequencySignalList || !res.data.checkItemDataLowFrequencySignalList.length) {
    ElMessage.warning('请检查该设备的核查项配置')
    loading.close()
  }
  frequencyList.value = res.data.checkItemDataLowFrequencySignalList.filter((item: { params: string }) => item.params === '频率')
  getInfo({ id: id || infoId.value }).then((res) => {
    form.value = { ...res.data }
    equipmentId.value = res.data.equipmentId
    const {
      templistFrequencyRepeatability,
      templistPowerLevelRepeatability,
      templistRelativeLevelRepeatability,
      templistAMDepthRepeatability,
      templistfrequencyModulationDeviationRepeatability,
      // templistPhaseRepeatability,
      templistFrequencySpectrumRepeatability,

      templistFrequencyStability,
      templistPowerLevelStability,
      templistRelativeLevelStability,
      templistAMDepthStability,
      templistfrequencyModulationDeviationStability,
      // templistPhaseStability,
      templistFrequencySpectrumStability,
    } = solveGetDetailData(res.data.checkDataLowFrequencySignalList)
    if (id !== '') { // 查询的日期获得的数据
      listFrequencyRepeatabilityCheckDate.value = templistFrequencyRepeatability// 频率-重复性
      listPowerLevelRepeatabilityCheckDate.value = templistPowerLevelRepeatability// 交流电压-重复性
      listRelativeLevelRepeatabilityCheckDate.value = templistRelativeLevelRepeatability// 直流电压-重复性
      listAMDepthRepeatabilityCheckDate.value = templistAMDepthRepeatability// 上升下降时间-重复性
      listfrequencyModulationDeviationRepeatabilityCheckDate.value = templistfrequencyModulationDeviationRepeatability// 平坦度-重复性
      // listPhaseRepeatabilityCheckDate.value = templistPhaseRepeatability// 调相相偏-重复性
      listFrequencySpectrumRepeatabilityCheckDate.value = templistFrequencySpectrumRepeatability// 失真-重复性

      listFrequencyStabilityCheckDate.value = templistFrequencyStability// 频率-稳定性
      listPowerLevelStabilityCheckDate.value = templistPowerLevelStability// 交流电压-稳定性
      listRelativeLevelStabilityCheckDate.value = templistRelativeLevelStability// 直流电压-稳定性
      listAMDepthStabilityCheckDate.value = templistAMDepthStability// 上升下降时间-稳定性
      listfrequencyModulationDeviationStabilityCheckDate.value = templistfrequencyModulationDeviationStability// 平坦度-稳定性
      // listPhaseStabilityCheckDate.value = templistPhaseStability// 调相相偏-稳定性
      listFrequencySpectrumStabilityCheckDate.value = templistFrequencySpectrumStability// 失真-稳定性
    }
    else {
      listFrequencyRepeatability.value = templistFrequencyRepeatability// 频率-重复性
      listPowerLevelRepeatability.value = templistPowerLevelRepeatability// 交流电压-重复性
      listRelativeLevelRepeatability.value = templistRelativeLevelRepeatability// 直流电压-重复性
      listAMDepthRepeatability.value = templistAMDepthRepeatability// 上升下降时间-重复性
      listfrequencyModulationDeviationRepeatability.value = templistfrequencyModulationDeviationRepeatability// 平坦度-重复性
      // listPhaseRepeatability.value = templistPhaseRepeatability// 调相相偏-重复性
      listFrequencySpectrumRepeatability.value = templistFrequencySpectrumRepeatability// 失真-重复性

      listFrequencyStability.value = templistFrequencyStability// 频率-稳定性
      listPowerLevelStability.value = templistPowerLevelStability// 交流电压-稳定性
      listRelativeLevelStability.value = templistRelativeLevelStability// 直流电压-稳定性
      listAMDepthStability.value = templistAMDepthStability// 上升下降时间-稳定性
      listfrequencyModulationDeviationStability.value = templistfrequencyModulationDeviationStability// 平坦度-稳定性
      // listPhaseStability.value = templistPhaseStability// 调相相偏-稳定性
      listFrequencySpectrumStability.value = templistFrequencySpectrumStability// 失真-稳定性
    }

    nextTick(() => {
      if (id !== '') { // 稳定性表头---查询历史的稳定性日期数据
        const tempColumn = [
          { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
          { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
          { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
          { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
          { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
          { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
        ] as any
        columns_stability_frequency.value[2].children = [...tempColumn]
        columns_stability_power_level.value[3].children = [...tempColumn]
        columns_stability_relative_level.value[2].children = [...tempColumn]
        columns_stability_AM_depth.value[2].children = [...tempColumn]
        columns_stability_frequency_modulation_deviation.value[3].children = [...tempColumn]
        // columns_stability_phase.value[3].children = [...tempColumn]
        columns_stability_frequency_spectrum.value[3].children = [...tempColumn]

        fetchHistoryIndication(currentDate.value) // 获取稳定性
      }
      else { // 正常核查数据处理表头
        columns_stability_frequency.value = handleDetailTableTableHead(columns_stability_frequency.value, listFrequencyStability.value, 2)
        columns_stability_power_level.value = handleDetailTableTableHead(columns_stability_power_level.value, listPowerLevelStability.value, 3)
        columns_stability_relative_level.value = handleDetailTableTableHead(columns_stability_relative_level.value, listRelativeLevelStability.value, 2)
        columns_stability_AM_depth.value = handleDetailTableTableHead(columns_stability_AM_depth.value, listAMDepthStability.value, 2)
        columns_stability_frequency_modulation_deviation.value = handleDetailTableTableHead(columns_stability_frequency_modulation_deviation.value, listfrequencyModulationDeviationStability.value, 3)
        // columns_stability_phase.value = handleDetailTableTableHead(columns_stability_phase.value, listPhaseStability.value, 2)
        columns_stability_frequency_spectrum.value = handleDetailTableTableHead(columns_stability_frequency_spectrum.value, listFrequencySpectrumStability.value, 3)
      }
    })

    if (props.pageType === 'edit' || props.pageType === 'detail') {
      fetchHistoryIndication() // 重新拉取稳定性日期
    }
    loading.close()
  })
}

/**
 * 获取稳定性示值
 * @param date 查询日期
 */
function fetchHistoryIndication(date = '') {
  if (!equipmentId.value || !props.selectStandardId) { return false }
  const params = {
    belongStandardEquipment: belongStandardEquipment.value,	// 检校标准装置(字典code)
    checkDate: date || props.checkDate!,	// 核查日期
    checkParam: '',	// 核查参数((直流稳压电源-直接电流(间接测量))
    conclusion: '合格',	// 结论
    equipmentId: equipmentId.value,	// 被核查设备id
    params: '',	// 核查项目
    stabilityExamine: '1',	// 是否用于稳定性考核(1/0)
    standardEquipmentId: props.selectStandardId!,	// 被核查标准装置id
  }
  if (props.selectStandardId && equipmentId.value) {
    // 稳定性Loading
    listFrequencyStabilityLoading.value = true // 频率-稳定性
    listPowerLevelStabilityLoading.value = true // 交流电压-稳定性
    listRelativeLevelStabilityLoading.value = true // 直流电压-稳定性
    listAMDepthStabilityLoading.value = true // 上升下降时间-稳定性
    listfrequencyModulationDeviationStabilityLoading.value = true // 平坦度-稳定性
    // listPhaseStabilityLoading.value = true // 调相相偏-稳定性
    listFrequencySpectrumStabilityLoading.value = true // 失真-稳定性
  }
  getHistoryIndication(params).then((res) => {
    if (date === '') { // 正常核查数据
      const num = (props.pageType === 'edit' || props.pageType === 'detail') ? 5 : 4
      // '频率':
      listFrequencyStability.value = listFrequencyStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '频率'), item, columns_stability_frequency.value, num, 2, '16')
        console.log('columnsData', columnsData[2])

        columns_stability_frequency.value = columnsData
        return item = itemData
      })
      listFrequencyStability.value = handleSaveDateParams(columns_stability_frequency.value, listFrequencyStability.value, 2)
      //  '交流电压':
      listPowerLevelStability.value = listPowerLevelStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '交流电压'), item, columns_stability_power_level.value, num, 3, '16')
        columns_stability_power_level.value = columnsData
        return item = itemData
      })
      listPowerLevelStability.value = handleSaveDateParams(columns_stability_power_level.value, listPowerLevelStability.value, 3)
      //  '直流电压':
      listRelativeLevelStability.value = listRelativeLevelStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '直流电压'), item, columns_stability_relative_level.value, num, 2, '16')
        columns_stability_relative_level.value = columnsData
        return item = itemData
      })
      listRelativeLevelStability.value = handleSaveDateParams(columns_stability_relative_level.value, listRelativeLevelStability.value, 2)
      //  '上升下降时间':
      listAMDepthStability.value = listAMDepthStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '上升下降时间'), item, columns_stability_AM_depth.value, num, 2, '16')
        columns_stability_AM_depth.value = columnsData
        return item = itemData
      })
      listAMDepthStability.value = handleSaveDateParams(columns_stability_AM_depth.value, listAMDepthStability.value, 2)
      //  '平坦度':
      listfrequencyModulationDeviationStability.value = listfrequencyModulationDeviationStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '平坦度'), item, columns_stability_frequency_modulation_deviation.value, num, 3, '16')
        columns_stability_frequency_modulation_deviation.value = columnsData
        return item = itemData
      })
      listfrequencyModulationDeviationStability.value = handleSaveDateParams(columns_stability_frequency_modulation_deviation.value, listfrequencyModulationDeviationStability.value, 3)
      // //  '调相相偏':
      // listPhaseStability.value = listPhaseStability.value.map((item) => {
      //   const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '调相相偏'), item, columns_stability_phase.value, num, 3, '10')
      //   columns_stability_phase.value = columnsData
      //   return item = itemData
      // })
      // listPhaseStability.value = handleSaveDateParams(columns_stability_phase.value, listPhaseStability.value, 3)
      //  '失真':
      listFrequencySpectrumStability.value = listFrequencySpectrumStability.value.map((item) => {
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '失真'), item, columns_stability_frequency_spectrum.value, num, 3, '16')
        columns_stability_frequency_spectrum.value = columnsData
        return item = itemData
      })
      listFrequencySpectrumStability.value = handleSaveDateParams(columns_stability_frequency_spectrum.value, listFrequencySpectrumStability.value, 3)
    }
    else {
      initColumnsCheckDate()
      const num = 5
      // '频率':
      listFrequencyStabilityCheckDate.value = listFrequencyStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '频率'), item, columns_stability_frequency_checkDate.value, num, 2, '16')
        columns_stability_frequency_checkDate.value = columnsData
        return item = itemData
      })
      listFrequencyStabilityCheckDate.value = handleSaveDateParams(columns_stability_frequency_checkDate.value, listFrequencyStabilityCheckDate.value, 2)
      //  '交流电压':
      listPowerLevelStabilityCheckDate.value = listPowerLevelStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '交流电压'), item, columns_stability_power_level_checkDate.value, num, 3, '16')
        columns_stability_power_level_checkDate.value = columnsData
        return item = itemData
      })
      listPowerLevelStabilityCheckDate.value = handleSaveDateParams(columns_stability_power_level_checkDate.value, listPowerLevelStabilityCheckDate.value, 3)
      //  '直流电压':
      listRelativeLevelStabilityCheckDate.value = listRelativeLevelStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '直流电压'), item, columns_stability_relative_level_checkDate.value, num, 2, '16')
        columns_stability_relative_level_checkDate.value = columnsData
        return item = itemData
      })
      listRelativeLevelStabilityCheckDate.value = handleSaveDateParams(columns_stability_relative_level_checkDate.value, listRelativeLevelStabilityCheckDate.value, 2)
      //  '上升下降时间':
      listAMDepthStabilityCheckDate.value = listAMDepthStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '上升下降时间'), item, columns_stability_AM_depth_checkDate.value, num, 2, '16')
        columns_stability_AM_depth_checkDate.value = columnsData
        return item = itemData
      })
      listAMDepthStabilityCheckDate.value = handleSaveDateParams(columns_stability_AM_depth_checkDate.value, listAMDepthStabilityCheckDate.value, 2)
      //  '平坦度':
      listfrequencyModulationDeviationStabilityCheckDate.value = listfrequencyModulationDeviationStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '平坦度'), item, columns_stability_frequency_modulation_deviation_checkDate.value, num, 3, '16')
        columns_stability_frequency_modulation_deviation_checkDate.value = columnsData
        return item = itemData
      })
      listfrequencyModulationDeviationStabilityCheckDate.value = handleSaveDateParams(columns_stability_frequency_modulation_deviation_checkDate.value, listfrequencyModulationDeviationStabilityCheckDate.value, 3)
      // //  '调相相偏':
      // listPhaseStabilityCheckDate.value = listPhaseStabilityCheckDate.value.map((item) => {
      //   clearDateValue(item)
      //   const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '调相相偏'), item, columns_stability_phase_checkDate.value, num, 3, '10')
      //   columns_stability_phase_checkDate.value = columnsData
      //   return item = itemData
      // })
      // listPhaseStabilityCheckDate.value = handleSaveDateParams(columns_stability_phase_checkDate.value, listPhaseStabilityCheckDate.value, 3)
      //  '失真':
      listFrequencySpectrumStabilityCheckDate.value = listFrequencySpectrumStabilityCheckDate.value.map((item) => {
        clearDateValue(item)
        const { itemData, columnsData } = solveHistoryIndicationTableData(res.data.data.filter((item: { params: string }) => item.params === '失真'), item, columns_stability_frequency_spectrum_checkDate.value, num, 3, '16')
        columns_stability_frequency_spectrum_checkDate.value = columnsData
        return item = itemData
      })
      listFrequencySpectrumStabilityCheckDate.value = handleSaveDateParams(columns_stability_frequency_spectrum_checkDate.value, listFrequencySpectrumStabilityCheckDate.value, 3)
    }

    listFrequencyStabilityLoading.value = false // 频率-稳定性
    listPowerLevelStabilityLoading.value = false // 交流电压-稳定性
    listRelativeLevelStabilityLoading.value = false // 直流电压-稳定性
    listAMDepthStabilityLoading.value = false // 上升下降时间-稳定性
    listfrequencyModulationDeviationStabilityLoading.value = false // 平坦度-稳定性
    // listPhaseStabilityLoading.value = false // 调相相偏-稳定性
    listFrequencySpectrumStabilityLoading.value = false // 失真-稳定性
  }).catch(() => {
    listFrequencyStabilityLoading.value = false // 频率-稳定性
    listPowerLevelStabilityLoading.value = false // 交流电压-稳定性
    listRelativeLevelStabilityLoading.value = false // 直流电压-稳定性
    listAMDepthStabilityLoading.value = false // 上升下降时间-稳定性
    listfrequencyModulationDeviationStabilityLoading.value = false // 平坦度-稳定性
    // listPhaseStabilityLoading.value = false // 调相相偏-稳定性
    listFrequencySpectrumStabilityLoading.value = false // 失真-稳定性
  })
}

/**
 * 保存之前的校验
 */
function checkList() {
  // 新建核查数据的时候,在保存之前要先校验一下本次核查日期有没有数据,没有不允许保存
  if (listFrequencyRepeatability.value.length && `${listFrequencyRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 频率 的重复性')
    return false
  }
  if (listPowerLevelRepeatability.value.length && `${listPowerLevelRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 交流电压 重复性')
    return false
  }
  if (listRelativeLevelRepeatability.value.length && `${listRelativeLevelRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 直流电压 重复性')
    return false
  }
  if (listAMDepthRepeatability.value.length && `${listAMDepthRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 上升下降时间 重复性')
    return false
  }
  if (listfrequencyModulationDeviationRepeatability.value.length && `${listfrequencyModulationDeviationRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 平坦度 重复性')
    return false
  }
  // if (listPhaseRepeatability.value.length && `${listPhaseRepeatability.value[0].averageValue}` === '') {
  //   ElMessage.warning('请先计算 失真 重复性')
  //   return false
  // }
  if (listFrequencySpectrumRepeatability.value.length && `${listFrequencySpectrumRepeatability.value[0].averageValue}` === '') {
    ElMessage.warning('请先计算 失真 重复性')
    return false
  }
  return true
}

// 保存之前处理数据
const solveDataBeforeSave = () => {
  // 数据处理
  let tempList = [] as any

  tempList = tempList.concat(
    // 重复性
    listFrequencyRepeatability.value, // 频率-重复性
    listPowerLevelRepeatability.value, // 交流电压-重复性
    listRelativeLevelRepeatability.value, // 直流电压-重复性
    listAMDepthRepeatability.value, // 上升下降时间-重复性
    listfrequencyModulationDeviationRepeatability.value, // 平坦度-重复性
    // listPhaseRepeatability.value, // 调相相偏-重复性
    listFrequencySpectrumRepeatability.value, // 失真-重复性
    listFrequencyStability.value, // 频率-稳定性
    listPowerLevelStability.value, // 交流电压-稳定性
    listRelativeLevelStability.value, // 直流电压-稳定性
    listAMDepthStability.value, // 上升下降时间-稳定性
    listfrequencyModulationDeviationStability.value, // 平坦度-稳定性
    // listPhaseStability.value, // 调相相偏-稳定性
    listFrequencySpectrumStability.value, // 失真-稳定性
  )
  return tempList
}

// 点击表头日期查询历史稳定性数据
const handleClickHeader = (val: any, checkDateDetailId: string) => {
  dateArrStability.value = ['核查数据', val.label]
  fetchInfo(checkDateDetailId) // 获取此次历史日期的详情
}

// 日期变化
const handleChangeRadio = (date: string) => {
  currentDate.value = date
}

// -------------------------------------钩子-----------------------------------------------------
// 统计日期
const dateCount = (columns: TableColumn[]) => {
  let dateNum = 0 // 稳定性表格有几个日期

  // 统计有几个日期
  columns[3].children?.forEach((item) => {
    if (item.text !== '-' && item.text !== '') {
      dateNum += 1
    }
  })
  return dateNum
}

watch(() => props.pageType, (newValue) => {
  if (newValue === 'detail') {
    listFrequencyRepeatability.value = listFrequencyRepeatability.value.map(item => ({ ...item, editable: false }))
    listPowerLevelRepeatability.value = listPowerLevelRepeatability.value.map(item => ({ ...item, editable: false }))
    listRelativeLevelRepeatability.value = listRelativeLevelRepeatability.value.map(item => ({ ...item, editable: false }))
    listAMDepthRepeatability.value = listAMDepthRepeatability.value.map(item => ({ ...item, editable: false }))
    listfrequencyModulationDeviationRepeatability.value = listfrequencyModulationDeviationRepeatability.value.map(item => ({ ...item, editable: false }))
    // listPhaseRepeatability.value = listPhaseRepeatability.value.map((item) => { item.editable = false; return item })
    listFrequencySpectrumRepeatability.value = listFrequencySpectrumRepeatability.value.map(item => ({ ...item, editable: false }))
  }
})
/**
 * 初始化表头
 * @param soveLastColumnDate 是否处理最后一列
 */
function initColumns() {
  const tempColumn = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ] as any
  columns_stability_frequency.value[2].children = [...tempColumn]
  columns_stability_power_level.value[3].children = [...tempColumn]
  columns_stability_relative_level.value[2].children = [...tempColumn]
  columns_stability_AM_depth.value[2].children = [...tempColumn]
  columns_stability_frequency_modulation_deviation.value[3].children = [...tempColumn]
  // columns_stability_phase.value[3].children = [...tempColumn]
  columns_stability_frequency_spectrum.value[3].children = [...tempColumn]

  columns_stability_frequency.value[2].children![5].text = props.checkDate! // 最后一列的表头日期
  columns_stability_power_level.value[3].children![5].text = props.checkDate! // 最后一列的表头日期
  columns_stability_relative_level.value[2].children![5].text = props.checkDate!
  columns_stability_AM_depth.value[2].children![5].text = props.checkDate!
  columns_stability_frequency_modulation_deviation.value[3].children![5].text = props.checkDate!
  // columns_stability_phase.value[3].children![5].text = props.checkDate!
  columns_stability_frequency_spectrum.value[3].children![5].text = props.checkDate!
}
/**
 * 初始化CheckDate表头
 * @param soveLastColumnDate 是否处理最后一列
 */
function initColumnsCheckDate() {
  columns_stability_frequency_checkDate.value[2].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
  columns_stability_power_level_checkDate.value[3].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
  columns_stability_relative_level_checkDate.value[2].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
  columns_stability_AM_depth_checkDate.value[2].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
  columns_stability_frequency_modulation_deviation_checkDate.value[3].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
  columns_stability_frequency_spectrum_checkDate.value[3].children = [
    { width: '180', text: '-', value: 'testValueOne', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueTwo', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueThree', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFour', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueFive', align: 'center', required: false, type: 'text', customHeader: true },
    { width: '180', text: '-', value: 'testValueSix', align: 'center', required: false, type: 'text', customHeader: true },
  ]
}
// 监听核查日期变化
watch(() => props.checkDate, (newValue) => {
  initColumns()
  nextTick(() => {
    fetchHistoryIndication() // 重新拉取稳定性日期
  })
}, { immediate: true })

onMounted(async () => {
  belongStandardEquipment.value = $route.query.belongStandardEquipment as string // 检校标准装置
  itemCategoryId.value = $route.query.itemCategoryId as string // 核查项分类id
  itemCategoryName.value = $route.query.itemCategoryName as string // 核查项分类名称
  if (props.pageType !== 'add') {
    fetchInfo()
  }
})
defineExpose({ fetchCheckItemDetail, checkList, solveDataBeforeSave, form })

// 获取字典
const standardSecondUnit = ref<{ name: string; id: string; value: string }>([])
const fetchDict = async () => {
  const res1 = await getDictByCode('standardSecondUnit')
  standardSecondUnit.value = res1.data.map((item: any) => ({ text: item.name, value: item.name }))
  columns_repeatability_AM_depth.value[1].options = standardSecondUnit.value
}
watch(() => listAMDepthRepeatability.value, (newVal) => {
  if (newVal && newVal.length) {
    // listAMDepthStability.value[0].unit = newVal[0].unit
    // listAMDepthStabilityCheckDate.value[0].unit = newVal[0].unit
    // listAMDepthStability.value[1].unit = newVal[1].unit
    // listAMDepthStabilityCheckDate.value[1].unit = newVal[1].unit
  }
}, {
  deep: true,
})
fetchDict()
</script>

<template>
  <!-- 核查数据 -->
  <detail-block
    :title="dateArrStability.length > 1 ? ' ' : '核查数据'" :title-menus="dateArrStability"
    @handle-change-radio="handleChangeRadio"
  >
    <div style="display: flex;justify-content: space-between;">
      <el-radio-group v-model="current" style="margin-bottom: 20px;">
        <el-radio-button v-for="item in radioMenus" :key="item.value" :label="item.value">
          {{ item.name }}
        </el-radio-button>
      </el-radio-group>
    </div>

    <div style="display: flex;justify-content: space-between;align-items: center; position: absolute; right: 20px;">
      <div />
      <el-button
        v-if="pageType !== 'detail' && current === 'stability'" type="primary"
        @click="createResult('stability')"
      >
        计算结果
      </el-button>
    </div>
    <!-- 频率 -->
    <template v-if="listFrequencyRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>频率</h5>
        <el-button v-if="pageType !== 'detail' && current === 'repeatability'" type="primary" @click="createResult('频率')">
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listFrequencyRepeatabilityLoading" :table-data="listFrequencyRepeatability"
        :table-header="columns_repeatability_frequency" :merge-rows="[]" :need-index="true" max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listFrequencyRepeatabilityLoading" :table-data="listFrequencyRepeatabilityCheckDate"
        :table-header="columns_repeatability_frequency" :merge-rows="[]" :need-index="true" max-height="300"
      />

      <!-- 频率稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listFrequencyStabilityLoading" :table-data="listFrequencyStability"
        :table-header="columns_stability_frequency" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listFrequencyStabilityLoading" :table-data="listFrequencyStabilityCheckDate"
        :table-header="columns_stability_frequency_checkDate" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
    </template>

    <!-- 交流电压 -->
    <template v-if="listPowerLevelRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>交流电压</h5>
        <el-button
          v-if="pageType !== 'detail' && current === 'repeatability'" type="primary"
          @click="createResult('交流电压')"
        >
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listPowerLevelRepeatabilityLoading" :table-data="listPowerLevelRepeatability"
        :table-header="columns_repeatability_power_level" :merge-rows="[]" :need-index="true" max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listPowerLevelRepeatabilityLoading" :table-data="listPowerLevelRepeatabilityCheckDate"
        :table-header="columns_repeatability_power_level" :merge-rows="[]" :need-index="true" max-height="300"
      />

      <!-- 交流电压稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listPowerLevelStabilityLoading" :table-data="listPowerLevelStability"
        :table-header="columns_stability_power_level" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listPowerLevelStabilityLoading" :table-data="listPowerLevelStabilityCheckDate"
        :table-header="columns_stability_power_level_checkDate" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
    </template>

    <!-- 直流电压 -->
    <template v-if="listRelativeLevelRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>直流电压</h5>
        <el-button
          v-if="pageType !== 'detail' && current === 'repeatability'" type="primary"
          @click="createResult('直流电压')"
        >
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listRelativeLevelRepeatabilityLoading" :table-data="listRelativeLevelRepeatability"
        :table-header="columns_repeatability_relative_level" :merge-rows="[]" :need-index="true" max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listRelativeLevelRepeatabilityLoading" :table-data="listRelativeLevelRepeatabilityCheckDate"
        :table-header="columns_repeatability_relative_level" :merge-rows="[]" :need-index="true" max-height="300"
      />

      <!-- 稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listRelativeLevelStabilityLoading" :table-data="listRelativeLevelStability"
        :table-header="columns_stability_relative_level" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listRelativeLevelStabilityLoading" :table-data="listRelativeLevelStabilityCheckDate"
        :table-header="columns_stability_relative_level_checkDate" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
    </template>

    <!-- 上升下降时间 -->
    <template v-if="listAMDepthRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>上升下降时间</h5>
        <el-button
          v-if="pageType !== 'detail' && current === 'repeatability'" type="primary"
          @click="createResult('上升下降时间')"
        >
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listAMDepthRepeatabilityLoading" :table-data="listAMDepthRepeatability"
        :table-header="columns_repeatability_AM_depth" :merge-rows="[]" :need-index="true" max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listAMDepthRepeatabilityLoading" :table-data="listAMDepthRepeatabilityCheckDate"
        :table-header="columns_repeatability_AM_depth" :merge-rows="[]" :need-index="true" max-height="300"
      />

      <!-- 稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listAMDepthStabilityLoading" :table-data="listAMDepthStability"
        :table-header="columns_stability_AM_depth" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listAMDepthStabilityLoading" :table-data="listAMDepthStabilityCheckDate"
        :table-header="columns_stability_AM_depth_checkDate" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
    </template>

    <!-- 平坦度 -->
    <template v-if="listfrequencyModulationDeviationRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>平坦度</h5>
        <el-button
          v-if="pageType !== 'detail' && current === 'repeatability'" type="primary"
          @click="createResult('平坦度')"
        >
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listfrequencyModulationDeviationRepeatabilityLoading"
        :table-data="listfrequencyModulationDeviationRepeatability"
        :table-header="columns_repeatability_frequency_modulation_deviation" :merge-rows="[]" :need-index="true"
        max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listfrequencyModulationDeviationRepeatabilityLoading"
        :table-data="listfrequencyModulationDeviationRepeatabilityCheckDate"
        :table-header="columns_repeatability_frequency_modulation_deviation" :merge-rows="[]" :need-index="true"
        max-height="300"
      />

      <!-- 稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listfrequencyModulationDeviationStabilityLoading"
        :table-data="listfrequencyModulationDeviationStability"
        :table-header="columns_stability_frequency_modulation_deviation" :merge-rows="[]" :need-index="true"
        max-height="500" @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listfrequencyModulationDeviationStabilityLoading"
        :table-data="listfrequencyModulationDeviationStabilityCheckDate"
        :table-header="columns_stability_frequency_modulation_deviation_checkDate" :merge-rows="[]" :need-index="true"
        max-height="500" @handle-click-header="handleClickHeader"
      />
    </template>

    <!-- 调相相偏 -->
    <!-- <div style="display: flex;justify-content: space-between;align-items: center;">
      <h5>调相相偏</h5>
      <el-button v-if="pageType !== 'detail' && current === 'repeatability'" type="primary" @click="createResult('调相相偏')">
        计算结果
      </el-button>
    </div> -->
    <!-- <multi-table
      v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
      v-loading="listPhaseRepeatabilityLoading"
      :table-data="listPhaseRepeatability"
      :table-header="columns_repeatability_phase"
      :merge-rows="[]"
      :need-index="true"
      max-height="300"
    /> -->
    <!-- 历史日期重复性数据 -->
    <!-- <multi-table
      v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
      v-loading="listPhaseRepeatabilityLoading"
      :table-data="listPhaseRepeatabilityCheckDate"
      :table-header="columns_repeatability_phase"
      :merge-rows="[]"
      :need-index="true"
      max-height="300"
    /> -->

    <!-- 稳定性  -->
    <!-- <multi-table
      v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
      v-loading="listPhaseStabilityLoading"
      :table-data="listPhaseStability"
      :table-header="columns_stability_phase"
      :merge-rows="[]"
      :need-index="true"
      max-height="500"
      @handle-click-header="handleClickHeader"
    /> -->
    <!-- 历史日期稳定性数据 -->
    <!-- <multi-table
      v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
      v-loading="listPhaseStabilityLoading"
      :table-data="listPhaseStabilityCheckDate"
      :table-header="columns_stability_phase_checkDate"
      :merge-rows="[]"
      :need-index="true"
      max-height="500"
      @handle-click-header="handleClickHeader"
    /> -->

    <!-- 失真 -->
    <template v-if="listFrequencySpectrumRepeatability.length">
      <div style="display: flex;justify-content: space-between;align-items: center;">
        <h5>失真</h5>
        <el-button v-if="pageType !== 'detail' && current === 'repeatability'" type="primary" @click="createResult('失真')">
          计算结果
        </el-button>
      </div>
      <multi-table
        v-show="current === 'repeatability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listFrequencySpectrumRepeatabilityLoading" :table-data="listFrequencySpectrumRepeatability"
        :table-header="columns_repeatability_frequency_spectrum" :merge-rows="[]" :need-index="true" max-height="300"
      />
      <!-- 历史日期重复性数据 -->
      <multi-table
        v-show="current === 'repeatability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listFrequencySpectrumRepeatabilityLoading" :table-data="listFrequencySpectrumRepeatabilityCheckDate"
        :table-header="columns_repeatability_frequency_spectrum" :merge-rows="[]" :need-index="true" max-height="300"
      />

      <!-- 稳定性  -->
      <multi-table
        v-show="current === 'stability' && (currentDate === '核查数据' || currentDate === '')"
        v-loading="listFrequencySpectrumStabilityLoading" :table-data="listFrequencySpectrumStability"
        :table-header="columns_stability_frequency_spectrum" :merge-rows="[]" :need-index="true" max-height="500"
        @handle-click-header="handleClickHeader"
      />
      <!-- 历史日期稳定性数据 -->
      <multi-table
        v-show="current === 'stability' && (currentDate !== '核查数据' && currentDate !== '')"
        v-loading="listFrequencySpectrumStabilityLoading" :table-data="listFrequencySpectrumStabilityCheckDate"
        :table-header="columns_stability_frequency_spectrum_checkDate" :merge-rows="[]" :need-index="true"
        max-height="500" @handle-click-header="handleClickHeader"
      />
    </template>

    <el-form
      v-if="current === 'stability'" style="margin-top: 20px;" :model="form" label-width="160"
      label-position="right"
    >
      <el-row :gutter="24">
        <el-col :span="12">
          <el-form-item label="稳定性考核是否合格:">
            <el-input
              v-model="form.qualified" class="full-width-input" disabled
              :placeholder="pageType === 'detail' ? ' ' : '稳定性考核是否合格'"
            />
          </el-form-item>
        </el-col>
        <el-col :span="12">
          <el-form-item label="备注:" prop="remark">
            <el-input v-model="form.remark" autosize type="textarea" :disabled="pageType === 'detail'" />
          </el-form-item>
        </el-col>
      </el-row>
    </el-form>

    <!-- 保存核查记录  -->
    <save-check-record ref="saveCheckRecordRef" />
  </detail-block>
</template>

<style lang="scss" scoped>
.link {
  text-decoration: underline;
  color: #3d7eff;
  cursor: pointer;
}

.file-area {
  display: flex;
  align-items: center;
  font-size: 14px;
  color: #60627f;
  margin-bottom: 10px;
  margin-left: 40px;
  white-space: nowrap;

  .tech-file {
    display: flex;
    align-items: center;
    margin-left: 20px;

    .file-text {
      margin-right: 10px;
    }
  }
}
</style>