<template>
|
<div>
|
<BasicModal v-bind="$attrs" @register="registerModal" title="数据对比窗口" :minHeight="300" width="800px" @ok="handleSubmit">
|
<a-spin :spinning="confirmLoading">
|
<a-form @submit="handleSubmit" :form="form" class="form">
|
<a-row class="form-row" :gutter="24">
|
<a-col :md="12" :sm="8">
|
<a-form-item label="数据库表名" :label-col="{ span: 6 }" :wrapper-col="{ span: 15 }" name="dataTable">
|
<a-input placeholder="请输入数据库表名" v-model:value="dataTable" disabled />
|
</a-form-item>
|
</a-col>
|
|
<a-col :md="12" :sm="8">
|
<a-form-item label="数据ID" :label-col="{ span: 5 }" :wrapper-col="{ span: 15 }">
|
<a-input placeholder="请输入数据ID" v-model:value="dataId" disabled />
|
</a-form-item>
|
</a-col>
|
</a-row>
|
|
<a-row class="form-row" :gutter="24">
|
<a-col :md="12" :sm="8">
|
<a-form-item label="版本号1" :label-col="{ span: 6 }" :wrapper-col="{ span: 15 }">
|
<a-select placeholder="请选择版本号" @change="handleChange1" v-model:value="dataVersion1">
|
<a-select-option v-for="(log, logindex) in dataVersionList" :key="logindex.toString()" :value="log.id">
|
{{ log.dataVersion }}
|
</a-select-option>
|
</a-select>
|
</a-form-item>
|
</a-col>
|
<a-col :md="12" :sm="8">
|
<a-form-item label="版本号2" :label-col="{ span: 5 }" :wrapper-col="{ span: 15 }">
|
<a-select placeholder="请选择版本号" @change="handleChange2" v-model:value="dataVersion2">
|
<a-select-option v-for="(log, logindex) in dataVersionList" :key="logindex.toString()" :value="log.id">
|
{{ log.dataVersion }}
|
</a-select-option>
|
</a-select>
|
</a-form-item>
|
</a-col>
|
</a-row>
|
</a-form>
|
</a-spin>
|
</BasicModal>
|
<DataLogCompareModal @register="registerDataLogCompareModal"></DataLogCompareModal>
|
</div>
|
</template>
|
<script lang="ts" setup>
|
import { BasicModal, useModal, useModalInner } from '/@/components/Modal';
|
import { queryDataVerList } from './datalog.api';
|
import { reactive, ref, unref } from 'vue';
|
import DataLogCompareModal from './DataLogCompareModal.vue';
|
const dataId1 = ref('');
|
const dataId2 = ref('');
|
const dataId = ref('');
|
const dataTable1 = ref('');
|
const dataID3 = ref('');
|
const dataTable = ref('');
|
const confirmLoading = ref(false);
|
const isUpdate = ref(true);
|
const dataVersionList = ref([]);
|
let dataLog = reactive({});
|
//表单赋值
|
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
|
isUpdate.value = !!data?.isUpdate;
|
if (unref(isUpdate)) {
|
let checkedRows = data.selectedRows;
|
dataTable.value = checkedRows[0].dataTable;
|
dataId.value = checkedRows[0].dataId;
|
dataId1.value = checkedRows[0].id;
|
dataId2.value = checkedRows[1].id;
|
initDataVersionList();
|
}
|
});
|
|
const [registerDataLogCompareModal, { openModal }] = useModal();
|
|
function handleChange1(value) {
|
dataId1.value = value;
|
}
|
|
function handleChange2(value) {
|
dataId2.value = value;
|
}
|
|
function handleSubmit() {
|
let result = { dataId1: dataId1.value, dataId2: dataId2.value };
|
openModal(true, {
|
result,
|
isUpdate: true,
|
});
|
closeModal();
|
}
|
|
function initDataVersionList() {
|
queryDataVerList({ dataTable: dataTable.value, dataId: dataId.value }).then((res) => {
|
dataVersionList.value = res.map((value, key, arr) => {
|
arr['label'] = value;
|
return arr;
|
});
|
console.info(dataVersionList.value);
|
});
|
}
|
</script>
|
|
<style scoped lang="less">
|
.detail-iframe {
|
border: 0;
|
width: 100%;
|
height: 100%;
|
min-height: 600px;
|
}
|
</style>
|