Commit bc47f44f authored by liwei's avatar liwei

修改了基础标准页

parent 26555396
...@@ -2560,7 +2560,6 @@ export const relatedQualitySchema: any[] = [ ...@@ -2560,7 +2560,6 @@ export const relatedQualitySchema: any[] = [
colProps: { lg: 24, md: 24 }, colProps: { lg: 24, md: 24 },
}, },
] ]
/**关联关系-关联质量 列表*/ /**关联关系-关联质量 列表*/
export const relatedQualityColumns: BasicColumn[] = [ export const relatedQualityColumns: BasicColumn[] = [
{ {
...@@ -2586,3 +2585,114 @@ export const relatedQualityColumns: BasicColumn[] = [ ...@@ -2586,3 +2585,114 @@ export const relatedQualityColumns: BasicColumn[] = [
edit:true edit:true
}, },
]; ];
/**关联关系-关联基础标准 表单*/
export const relatedBasicStandardsSchema: any[] = [
{
field: 'basicStandardsTree',
label: '关联基础标准',
component: 'TreeSelect',
colProps: { lg: 24, md: 24 },
componentProps: {
fieldNames: {
label: 'standardChineseName',
value: 'businessId',
},
getPopupContainer: () => document.body,
},
required: true,
},
{
field: 'relatedRelationship',
label: '关联关系',
component: 'Input',
rules: [
{
required: true,
message: '请输入关联关系',
},
],
componentProps: {
placeholder: '请输入关联关系',
},
colProps: { lg: 24, md: 24 },
},
{
field: 'relatedDescription',
label: '关联描述',
component: 'Input',
rules: [
{
required: true,
message: '请输入关联描述',
},
],
componentProps: {
placeholder: '请输入关联描述',
},
colProps: { lg: 24, md: 24 },
},
]
/**关联关系-关联文档 表单*/
export const relatedDocumentSchema: any[] = [
{
field: 'documentTree',
label: '关联文档模版',
component: 'TreeSelect',
colProps: { lg: 24, md: 24 },
componentProps: {
fieldNames: {
label: 'documentName',
value: 'businessId',
},
getPopupContainer: () => document.body,
},
required: true,
},
{
field: 'relatedDescription',
label: '关联描述',
component: 'Input',
rules: [
{
required: true,
message: '请输入关联描述',
},
],
componentProps: {
placeholder: '请输入关联描述',
},
colProps: { lg: 24, md: 24 },
},
]
/**关联关系-关联元数据 表单*/
export const relatedMeteDataSchema: any[] = [
{
field: 'meteDataTree',
label: '关联元数据',
component: 'TreeSelect',
colProps: { lg: 24, md: 24 },
componentProps: {
fieldNames: {
label: 'meteDataName',
value: 'businessId',
},
getPopupContainer: () => document.body,
},
required: true,
},
{
field: 'relatedDescription',
label: '关联描述',
component: 'Input',
rules: [
{
required: true,
message: '请输入关联描述',
},
],
componentProps: {
placeholder: '请输入关联描述',
},
colProps: { lg: 24, md: 24 },
},
]
...@@ -783,8 +783,6 @@ export const relatedQualityData = [ ...@@ -783,8 +783,6 @@ export const relatedQualityData = [
value:'0', value:'0',
}, },
] ]
/**质量模版-树 数据*/ /**质量模版-树 数据*/
export const qualityTreeData: any[] = [ export const qualityTreeData: any[] = [
{ {
......
<template>
<BasicModal v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit" minHeight="50">
<BasicForm @register="registerForm" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import { moveFormSchema } from './basicStandards.data';
import { getDeptList } from '@/api/system/dept/dept';
import {resetUserPwd} from '@/api/system/user/user'
import { useMessage } from '@/hooks/web/useMessage';
import { TreeData } from "./basicStandardsData";
defineOptions({ name: 'AccountModal' });
const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage();
const isUpdate = ref(true);
const rowId = ref('');
const idList = ref([])
const rowData = ref([])
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
labelWidth: 100,
baseColProps: { span: 24 },
schemas: moveFormSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
//每次点击弹窗 需要清空存储的数据
rowData.value = []
//重置表单数据
resetFields();
setModalProps({ confirmLoading: false });
if (data.idList != null && data.idList != undefined && data.idList.length > 0){
} else {
rowData.value.push(data.record)
//单个移动
rowId.value = data.record.businessId;
data.record.taskId = data.record.businessId
setFieldsValue({
...data.record,
});
}
const treeList = handleTree(TreeData, 'businessId',undefined,undefined,undefined)
updateSchema([
{
field: 'taskId',
componentProps: {
treeData: treeList
},
},
]);
console.log('treeList:',treeList)
});
const getTitle = computed(() => ('移动'));
/**确定按钮*/
async function handleSubmit() {
createMessage.success('移动成功!')
closeModal()
}
/**数组对象转成树*/
function handleTree(data, id, parentId, children, rootId) {
id = id || 'id'
parentId = parentId || 'parentId'
children = children || 'children'
rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0
// 对源数据深度克隆
const cloneData = JSON.parse(JSON.stringify(data))
// 循环所有项
const treeData = cloneData.filter(father => {
const branchArr = cloneData.filter(child => {
// 返回每一项的子级数组
return father[id] === child[parentId]
})
branchArr.length > 0 ? father.children = branchArr : ''
// 返回第一层
return father[parentId] === rootId
})
return treeData !== '' ? treeData : data
}
</script>
<template>
<BasicModal width="40%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicForm @register="registerForm" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import { relatedBasicStandardsSchema } from './basicStandards.data';
import { useMessage } from '@/hooks/web/useMessage';
import {qualityTreeData, TreeData} from "@/views/dataStandards/basicStandards/basicStandardsData";
import { BasicTable, useTable, TableAction } from '@/components/Table';
defineOptions({ name: 'AccountModal' });
const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage();
const rowId = ref('');
const getTitle = computed(() => ('关联基础标准'));
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: relatedBasicStandardsSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false });
setFieldsValue({
...data.record,
})
const treeList = handleTree(TreeData, 'businessId',undefined,undefined,undefined)
updateSchema([
{
field: 'basicStandardsTree',
componentProps: {
treeData: treeList
},
},
]);
});
/**确定按钮*/
async function handleSubmit() {
createMessage.success('移动成功');
closeModal()
}
/**数组对象转成树*/
function handleTree(data, id, parentId, children, rootId) {
id = id || 'id'
parentId = parentId || 'parentId'
children = children || 'children'
rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0
// 对源数据深度克隆
const cloneData = JSON.parse(JSON.stringify(data))
// 循环所有项
const treeData = cloneData.filter(father => {
const branchArr = cloneData.filter(child => {
// 返回每一项的子级数组
return father[id] === child[parentId]
})
branchArr.length > 0 ? father.children = branchArr : ''
// 返回第一层
return father[parentId] === rootId
})
return treeData !== '' ? treeData : data
}
</script>
<template>
<BasicModal width="40%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicForm @register="registerForm" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import { relatedDocumentSchema } from './basicStandards.data';
import { useMessage } from '@/hooks/web/useMessage';
import { qualityTreeData } from "@/views/dataStandards/basicStandards/basicStandardsData";
import { BasicTable, useTable, TableAction } from '@/components/Table';
defineOptions({ name: 'AccountModal' });
const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage();
const rowId = ref('');
const getTitle = computed(() => ('关联基础文档'));
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: relatedDocumentSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false });
setFieldsValue({
...data.record,
})
const treeList = handleTree(qualityTreeData, 'businessId',undefined,undefined,undefined)
updateSchema([
{
field: 'QualityId',
componentProps: {
treeData: treeList
},
},
]);
});
/**确定按钮*/
async function handleSubmit() {
createMessage.success('移动成功');
closeModal()
}
/**数组对象转成树*/
function handleTree(data, id, parentId, children, rootId) {
id = id || 'id'
parentId = parentId || 'parentId'
children = children || 'children'
rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0
// 对源数据深度克隆
const cloneData = JSON.parse(JSON.stringify(data))
// 循环所有项
const treeData = cloneData.filter(father => {
const branchArr = cloneData.filter(child => {
// 返回每一项的子级数组
return father[id] === child[parentId]
})
branchArr.length > 0 ? father.children = branchArr : ''
// 返回第一层
return father[parentId] === rootId
})
return treeData !== '' ? treeData : data
}
</script>
<template>
<BasicModal width="40%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicForm @register="registerForm" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import { relatedMeteDataSchema } from './basicStandards.data';
import { useMessage } from '@/hooks/web/useMessage';
import { qualityTreeData } from "@/views/dataStandards/basicStandards/basicStandardsData";
import { BasicTable, useTable, TableAction } from '@/components/Table';
defineOptions({ name: 'AccountModal' });
const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage();
const rowId = ref('');
const getTitle = computed(() => ('关联元模型'));
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: relatedMeteDataSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false });
setFieldsValue({
...data.record,
})
const treeList = handleTree(qualityTreeData, 'businessId',undefined,undefined,undefined)
updateSchema([
{
field: 'QualityId',
componentProps: {
treeData: treeList
},
},
]);
});
/**确定按钮*/
async function handleSubmit() {
createMessage.success('移动成功');
closeModal()
}
/**数组对象转成树*/
function handleTree(data, id, parentId, children, rootId) {
id = id || 'id'
parentId = parentId || 'parentId'
children = children || 'children'
rootId = rootId || Math.min.apply(Math, data.map(item => { return item[parentId] })) || 0
// 对源数据深度克隆
const cloneData = JSON.parse(JSON.stringify(data))
// 循环所有项
const treeData = cloneData.filter(father => {
const branchArr = cloneData.filter(child => {
// 返回每一项的子级数组
return father[id] === child[parentId]
})
branchArr.length > 0 ? father.children = branchArr : ''
// 返回第一层
return father[parentId] === rootId
})
return treeData !== '' ? treeData : data
}
</script>
<template> <template>
<PageWrapper :title="title" class="content-padding" contentBackground @back="goBack"> <PageWrapper :title="title" class="content-padding" contentBackground @back="goBack">
<div class="relatedRelationships_module">
<BasicTable @register="registerTable1"> <BasicTable @register="registerTable1">
<template #toolbar> <template #toolbar>
<a-button type="primary" @click="Button">创建质量规则</a-button> <a-button type="primary" @click="createQualityButton">创建质量规则</a-button>
<a-button type="primary" @click="Button">查看质量规则</a-button> <a-button type="primary" @click="lookQualityButton">查看质量规则</a-button>
<a-button type="primary" @click="referenceTemplateButton">引用模版</a-button> <a-button type="primary" @click="referenceTemplateButton">引用模版</a-button>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
...@@ -29,7 +30,7 @@ ...@@ -29,7 +30,7 @@
</BasicTable> </BasicTable>
<BasicTable @register="registerTable2"> <BasicTable @register="registerTable2">
<template #toolbar> <template #toolbar>
<a-button type="primary" @click="Button">引用文档</a-button> <a-button type="primary" @click="referenceFileButton">引用文档</a-button>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'"> <template v-if="column.key === 'action'">
...@@ -49,7 +50,7 @@ ...@@ -49,7 +50,7 @@
</BasicTable> </BasicTable>
<BasicTable @register="registerTable3"> <BasicTable @register="registerTable3">
<template #toolbar> <template #toolbar>
<a-button type="primary" @click="Button">引用标准</a-button> <a-button type="primary" @click="referenceBasicStandardsButton">引用标准</a-button>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'"> <template v-if="column.key === 'action'">
...@@ -128,9 +129,15 @@ ...@@ -128,9 +129,15 @@
<a @click="showDetails(record)"> {{ text }}</a> <a @click="showDetails(record)"> {{ text }}</a>
</template> </template>
</BasicTable> </BasicTable>
</div>
<!-- 引用模版 弹窗--> <!-- 引用模版 弹窗-->
<RelatedQualityModal @register="registerRelatedQualityModal" @success="handleSuccess" /> <RelatedQualityModal @register="registerRelatedQualityModal" @success="handleSuccess" />
<!-- 引用基础标准 弹窗-->
<RelatedBasicStandardModal @register="registerBasicStandardModal" @success="handleSuccess" />
<!-- 引用元数据 弹窗-->
<RelatedMetaDataModal @register="registerMetaDataModal" @success="handleSuccess" />
<!-- 引用文档 弹窗-->
<RelatedDocumentModal @register="registerDocumentModal" @success="handleSuccess" />
</PageWrapper> </PageWrapper>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
...@@ -144,6 +151,9 @@ import { PageWrapper } from '@/components/Page'; ...@@ -144,6 +151,9 @@ import { PageWrapper } from '@/components/Page';
import { useGo } from '@/hooks/web/usePage'; import { useGo } from '@/hooks/web/usePage';
import { BasicTable, useTable, TableAction } from '@/components/Table'; import { BasicTable, useTable, TableAction } from '@/components/Table';
import RelatedQualityModal from './relatedQualityModal.vue'; import RelatedQualityModal from './relatedQualityModal.vue';
import RelatedBasicStandardModal from './relatedBasicStandardModal.vue';
import RelatedMetaDataModal from './relatedMetaDataModal.vue';
import RelatedDocumentModal from './relatedDocumentModal.vue';
import { import {
relatedRelationshipColumns1, relatedRelationshipColumns1,
relatedRelationshipColumns2, relatedRelationshipColumns2,
...@@ -167,6 +177,9 @@ const route = useRoute() ...@@ -167,6 +177,9 @@ const route = useRoute()
const title = ref('关联关系') const title = ref('关联关系')
const { createMessage, createConfirm } = useMessage(); const { createMessage, createConfirm } = useMessage();
const [registerRelatedQualityModal, { openModal: openRelatedQualityModal }] = useModal(); const [registerRelatedQualityModal, { openModal: openRelatedQualityModal }] = useModal();
const [registerBasicStandardModal, { openModal: openBasicStandardModal }] = useModal();
const [registerMetaDataModal, { openModal: openMetaDataModal }] = useModal();
const [registerDocumentModal, { openModal: openDocumentModal }] = useModal();
/**列表*/ /**列表*/
const [registerTable1] = useTable({ const [registerTable1] = useTable({
...@@ -333,7 +346,28 @@ const [registerTable6] = useTable({ ...@@ -333,7 +346,28 @@ const [registerTable6] = useTable({
}); });
/**引用模版 按钮*/ /**引用元数据 按钮*/
function referenceMetaDataButton(record) {
openMetaDataModal(true,{
})
}
/**引用基础标准 按钮*/
function referenceBasicStandardsButton(record) {
openBasicStandardModal(true,{
})
}
/**引用文档 按钮*/
function referenceFileButton(record) {
openDocumentModal(true,{
})
}
/**引用质量模版 按钮*/
function referenceTemplateButton(record) { function referenceTemplateButton(record) {
openRelatedQualityModal(true,{ openRelatedQualityModal(true,{
...@@ -350,16 +384,36 @@ function Button(record) { ...@@ -350,16 +384,36 @@ function Button(record) {
}); });
} }
/**查看质量规则 按钮*/
function lookQualityButton(record) {
router.push({
path: '/dataQuality/rule',
query: {
},
});
}
/**创建质量规则 按钮*/
function createQualityButton(record) {
router.push({
path: '/dataQuality/rule',
query: {
},
});
}
/**表1 跳转*/ /**表1 跳转*/
function showDetails1() { function showDetails1() {
} }
/**返回*/
function goBack() { function goBack() {
// 本例的效果时点击返回始终跳转到账号列表页,实际应用时可返回上一页 // 本例的效果时点击返回始终跳转到账号列表页,实际应用时可返回上一页
go('/metaModel/physicsModel/index'); go('/dataStandards/basicStandards/index');
} }
/**初始化*/ /**初始化*/
...@@ -369,7 +423,11 @@ onMounted(() => { ...@@ -369,7 +423,11 @@ onMounted(() => {
</script> </script>
<style lang="less" scoped> <style lang="scss" scoped>
.relatedRelationships_module{
::v-deep(.ant-table-body){
min-height: 150px!important;
height:150px!important;
}
}
</style> </style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment