You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
2.7 KiB
89 lines
2.7 KiB
<script lang="ts" setup>
|
|
import { ref } from 'vue'
|
|
import moment from 'moment'
|
|
|
|
import { Card } from 'ant-design-vue'
|
|
import { formHistory } from '../exa.data'
|
|
import HistoryLine from '../HistoryLine.vue'
|
|
|
|
import { BasicModal, useModalInner } from '@/components/Modal'
|
|
import { BasicForm, useForm } from '@/components/Form'
|
|
|
|
import { getExaHistorys } from '@/api/alert/exa'
|
|
|
|
const props = defineProps({
|
|
itemName: {
|
|
type: String,
|
|
default: '',
|
|
},
|
|
legendName: {
|
|
type: Array<string>,
|
|
default: () => [],
|
|
},
|
|
})
|
|
|
|
const loading = ref(true)
|
|
|
|
// const itemName = ref('')
|
|
|
|
const [registerForm, { getFieldsValue }] = useForm({
|
|
labelWidth: 100,
|
|
// baseColProps: { span: 24 },
|
|
schemas: formHistory,
|
|
showResetButton: false,
|
|
layout: 'horizontal',
|
|
model: { time: [moment().subtract(1, 'day').format('YYYY-MM-DD HH:mm:ss'), moment().format('YYYY-MM-DD HH:mm:ss')] },
|
|
fieldMapToTime: [
|
|
// data为时间组件在表单内的字段,startTime,endTime为转化后的开始时间于结束时间
|
|
['time', ['startTime', 'endTime'], 'YYYY-MM-DD HH:mm:ss'],
|
|
],
|
|
actionColOptions: { span: 2 },
|
|
})
|
|
const historyData = ref()
|
|
// const legendName = ref<any[]>([])
|
|
|
|
const [registerHistoryModal, { setModalProps }] = useModalInner(async (data) => {
|
|
console.log(543)
|
|
setModalProps({ confirmLoading: false, showCancelBtn: false, showOkBtn: false })
|
|
// props.itemName = data.record.itemName
|
|
// legendName.value = []
|
|
// legendName.value.push(`${data.record.descriptor}-${data.record.itemName}`)
|
|
handleSubmitR()
|
|
// 利用点号去获取历史数据,从而生成曲线
|
|
// setFieldsValue({ time: [moment().subtract(1, 'day').format('YYYY-MM-DD HH:mm:ss'), moment().format('YYYY-MM-DD HH:mm:ss')] })
|
|
// console.log(startTime, endTime, itemName)
|
|
// const historyData = getExaHistory({
|
|
// startTime,
|
|
// endTime,
|
|
// itemName: itemName.value,
|
|
// })
|
|
// isUpdate.value = !!data?.isUpdate
|
|
// if (unref(isUpdate)) {
|
|
// const res = await getUser(data.record.id)
|
|
// setFieldsValue({ ...res })
|
|
// }
|
|
})
|
|
|
|
async function handleSubmitR() {
|
|
const serachFormData = getFieldsValue()
|
|
loading.value = true
|
|
const exaHistoryReqVO = {
|
|
startTime: serachFormData.startTime,
|
|
endTime: serachFormData.endTime,
|
|
itemName: props.itemName,
|
|
interval: 100,
|
|
}
|
|
historyData.value = await getExaHistorys(exaHistoryReqVO)
|
|
|
|
loading.value = false
|
|
}
|
|
</script>
|
|
|
|
<template>
|
|
<BasicModal :min-height="300" v-bind="$attrs" title="历史曲线" width="60%" @register="registerHistoryModal">
|
|
<BasicForm @register="registerForm" @submit="handleSubmitR" />
|
|
<Card :loading="loading">
|
|
<HistoryLine :data="historyData" :name="legendName" height="40vh" />
|
|
</Card>
|
|
</BasicModal>
|
|
</template>
|
|
|