<template>
|
<app-page-form v-bind="pageFormProps" v-loading="appStore.getLoading('getEntity')">
|
<base-info v-bind="baseInfoProps"/>
|
<columns-table v-bind="columnsTableProps"/>
|
</app-page-form>
|
</template>
|
|
<script setup>
|
|
import BaseInfo from './BaseInfo';
|
import ColumnsTable from './ColumnsTable';
|
import {closeTab} from '@/utils/iframe.js';
|
import {useAppStore, useEntityStore} from "@/store/modules";
|
import {convertFilter} from "@/utils/filter.js";
|
|
const entityStore = useEntityStore();
|
const appStore = useAppStore();
|
|
const router = useRouter();
|
|
const baseInfoRef = ref();
|
|
const baseInfoProps = {
|
ref: baseInfoRef,
|
}
|
|
const params = router.currentRoute.value.query;
|
|
const onReset = async () => {
|
if (params.id) {
|
const {data} = await entityStore.getEntity({
|
dataName: "sys_data_object",
|
filter: convertFilter({
|
andEqParams: {
|
id: params.id
|
}
|
})
|
});
|
await nextTick();
|
baseInfoRef.value.onSetData(data.fee_model_band_sql);
|
columnsTableRef.value.onSetData(data.fee_model_band_column);
|
return;
|
}
|
baseInfoRef.value.onSetData([]);
|
columnsTableRef.value.onSetData([]);
|
}
|
|
onMounted(async () => {
|
await onReset();
|
});
|
|
const columnsTableRef = ref();
|
|
const columnsTableProps = {
|
ref: columnsTableRef,
|
}
|
|
const fieldsTableRef = ref();
|
|
|
const pageFormProps = {
|
subClose() {
|
closeTab();
|
},
|
async subSubmit() {
|
const fee_model_band = await bandInfoRef.value.onGetData();
|
const fee_model_band_sql = await sqlTableRef.value.onGetData();
|
const fee_model_band_column = await fieldsTableRef.value.onGetData();
|
await entityStore.saveEntity({
|
dataName: 'sys_data_object',
|
data: {
|
fee_model_band,
|
fee_model_band_sql,
|
fee_model_band_column
|
}
|
});
|
closeTab();
|
},
|
async subReset() {
|
await onReset();
|
},
|
}
|
|
</script>
|