Commit f022c8a4 authored by 罗林杰's avatar 罗林杰

Merge remote-tracking branch 'origin/master'

parents 2816d167 effa0999
......@@ -284,6 +284,31 @@ export const ModelRoute: AppRouteRecordRaw = {
],
};
/**基础标准*/
export const BasicStandardRoute: AppRouteRecordRaw = {
path: '/dataStandards',
name: 'dataStandards',
component: LAYOUT,
meta: {
title: '基础标准',
icon: '',
hidden: true,
currentActiveMenu: '/dataStandards',
},
children: [
{
path: 'basicStandards/detailStandard',
name: 'detailStandard',
component: () => import('@/views/dataStandards/basicStandards/detailStandard.vue'),
meta: {
title: '基础标准详情',
icon: '',
},
},
],
};
export const WorkSpaceRoute: AppRouteRecordRaw = {
path: '/workspace',
name: 'Workspace',
......@@ -317,6 +342,7 @@ export const basicRoutes = [
CommonFileRoute,
ModelRoute,
DataSourceRoute,
BasicStandardRoute,
// RootRoute,
...mainOutRoutes,
REDIRECT_ROUTE,
......
......@@ -4,7 +4,8 @@ import {h} from "vue";
import {Tag} from "ant-design-vue";
import { Switch } from 'ant-design-vue';
import {useMessage} from "@/hooks/web/useMessage";
import {changeFlagApi} from "@/api/system/user/user"; // 引入开关组件
import {changeFlagApi} from "@/api/system/user/user";
import {DescItem} from "@/components/Description"; // 引入开关组件
type CheckedType = boolean | string | number;
/**主页面列表 表头*/
......@@ -355,3 +356,127 @@ export const createBasicStandardsFormSchema: FormSchema[] = [
],
},
];
/**详情表单1*/
export const detailSchema1: DescItem[] = [
{
field: 'a1',
label: '标准编号',
},
{
field: 'a2',
label: '标准中文名称',
},
{
field: 'a3',
label: '标准英文名称',
},
{
field: 'a4',
label: '标准别名',
},
{
field: 'a1',
label: '业务定义',
},
{
field: 'a2',
label: '标准来源',
},
{
field: 'a3',
label: '定义依据',
},
{
field: 'a4',
label: '业务规则',
},
{
field: 'a1',
label: '数据类型',
},
{
field: 'a2',
label: '取值范围',
},
{
field: 'a3',
label: '代码编号',
},
{
field: 'a4',
label: '适应性',
},
];
/**详情表单2*/
export const detailSchema2: DescItem[] = [
{
field: 'a1',
label: '数据显示',
},
{
field: 'a2',
label: '数据类型',
},
{
field: 'a3',
label: '数据精度',
},
{
field: 'a4',
label: '数据长度',
},
{
field: 'a1',
label: '计量单位',
},
];
/**详情表单3*/
export const detailSchema3: DescItem[] = [
{
field: 'a1',
label: '创建人员',
},
{
field: 'a2',
label: '更新人员',
},
{
field: 'a3',
label: '创建日期',
},
{
field: 'a4',
label: '更新日期',
},
{
field: 'a1',
label: '权威二级部门',
},
{
field: 'a2',
label: '权威三级部门',
},
{
field: 'a3',
label: '核心系统',
},
{
field: 'a4',
label: '数据标准状态',
},
{
field: 'a1',
label: '失效时间',
},
{
field: 'a2',
label: '失效原因',
},
{
field: 'a3',
label: '协作部门',
},
];
......@@ -465,3 +465,19 @@ export const addUserData: any[] = [
export const accountFormSchema: any[] = [
];
/**详情数据*/
export const refundData = {
a1: '1000000000',
a2: '已取货',
a3: '1234123421',
a4: '3214321432',
};
export const personData = {
b1: '付小小',
b2: '18100000000',
b3: '菜鸟仓储',
b4: '浙江省杭州市西湖区万塘路18号',
b5: '无',
};
<template>
<PageWrapper title="基础详情页" contentBackground>
<Description
title="业务属性"
size="middle"
:bordered="false"
:column="3"
:data="refundData"
:schema="refundSchema"
/>
<Divider />
<!-- <Description-->
<!-- size="middle"-->
<!-- title="技术属性"-->
<!-- :bordered="false"-->
<!-- :column="3"-->
<!-- :data="personData"-->
<!-- :schema="personSchema"-->
<!-- />-->
<Divider />
<!-- <Description-->
<!-- size="middle"-->
<!-- title="管理属性"-->
<!-- :bordered="false"-->
<!-- :column="3"-->
<!-- :data="personData"-->
<!-- :schema="personSchema"-->
<!-- />-->
<Divider />
</PageWrapper>
</template>
<script lang="ts" setup>
import { Description } from '@/components/Description';
import { PageWrapper } from '@/components/Page';
import { Divider } from 'ant-design-vue';
import {refundData} from './basicStandardsData';
import {refundSchema,} from './basicStandards.data';
function handleSummary(tableData: any[]) {
let totalT5 = 0;
let totalT6 = 0;
tableData.forEach((item) => {
totalT5 += item.t5;
totalT6 += item.t6;
});
return [
{
t1: '总计',
t5: totalT5,
t6: totalT6,
},
];
}
</script>
<style lang="less" scoped>
.desc-wrap {
padding: 16px;
background-color: @component-background;
}
</style>
<template>
<div class="homePage_module">
<Row :gutter="16" class="homePage_left">
<Col :span="6" class="homePage_right" style="background-color: white">
<DetailTree @select="handleSelect" />
</Col>
<Col :span="18">
<Card :title="title">
<div class="card_content">
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:caret-right-filled" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">运行</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:appstore-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">调试</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo" @click="">
<div class="dataNum"><Icon icon="ant-design:check-circle-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">保存</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:send-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">发布</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:menu-unfold-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">任务列表</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:appstore-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">任务流依赖</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:setting-twotone" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">参数设置</div>
</div>
</div>
<div class="card_item">
<div class="card_itemInfo">
<div class="dataNum"><Icon icon="ant-design:setting-outlined" :size="30" :color="'#1091FE'" /></div>
<div class="dataTitle">任务流配置</div>
</div>
</div>
</div>
</Card>
<div>
<img src="../../assets/images/commonFile.png" class="homePage_img" alt="Logo" />
</div>
</Col>
</Row>
</div>
</template>
<script lang="ts" setup>
import { Card, Col, Row, Space, message,Tabs,Badge } from 'ant-design-vue';
import Icon from '@/components/Icon/Icon.vue';
import {ref, reactive, onMounted} from 'vue';
import {AdvanceState} from "@/components/Form/src/types/hooks";
import DetailTree from './DetailTree.vue';
import { useRoute,onBeforeRouteLeave } from 'vue-router';
const activeKey = ref('1');
const title = ref('')
const route = useRoute();
onMounted(() => {
title.value = route.query.fileName
});
</script>
<style lang="scss" scoped>
.homePage_module{
background-color: #FAFBFC;
padding: 20px;
.homePage_left{
.homePage_img{
width: 100%;
}
::v-deep(.ant-tabs-tab) {
font-size: 18px;
font-weight: 600;
}
.card_content{
display: flex;
justify-content: right;
align-items: center;
.card_item{
margin-right: 10px;
display: flex;
align-items: center;
height: 30px;
border-radius: 10px;
.card_itemInfo{
cursor: pointer;
padding-left: 7px;
.dataNum{
display: flex;
justify-content: center;
font-size: 26px;
line-height: 26px;
font-weight: bold;
}
.dataTitle{
font-size: 16px;
line-height: 16px;
color: #646464;
}
}
}
}
}
.homePage_right{
.notice_card{
margin-top: 20px;
.notice_content{
padding: 8px 0;
.notice_contentInfo{
display: flex;
align-items: center;
.level{
text-align: center;
width: 20px;
height: 20px;
background-color: #F8D0D0;
color: #DD4C4B;
border-radius: 50px;
}
.levelTwo{
text-align: center;
width: 20px;
height: 20px;
background-color: #FCDDB8;
color: #F2A346;
border-radius: 50px;
}
.levelThree{
text-align: center;
width: 20px;
height: 20px;
background-color: #E5EEFF;
color: #B0B5C7;
border-radius: 50px;
}
.title{
font-weight: bold;
font-size: 16px;
padding-left: 5px;
}
}
.time{
color: #5E5E5E;
}
}
}
.process_Body{
height: 160px;
background-color: #F7F8F9;
text-align: center;
.process_num{
font-weight: bold;
font-size: 60px;
}
.process_info{
font-weight: 300;
font-size: 25px;
}
}
.process_content{
padding-top: 20px;
}
.process_title{
display: flex;
justify-content: space-between;
align-items: center;
.title_info{
display: flex;
align-items: center;
font-size: 16px;
font-weight: 600;
}
.process_more{
font-size: 16px;
cursor: pointer;
color: #4AABFE;
font-weight: 600;
}
}
}
}
</style>
......@@ -43,8 +43,8 @@
},
{
icon: 'ant-design:file-search-outlined',
// label: '采集详情',
onClick: copyButton.bind(null, record),
// label: '查看详情',
onClick: detailButton.bind(null, record),
},
]"
/>
......@@ -54,10 +54,6 @@
<a @click="showDetails(record)"> {{ text }}</a>
</template>
</BasicTable>
<FileModal @register="registerModal" @success="handleSuccess" />
<MoveFile @register="registerMoveFile" @success="handleSuccess" />
<AddUserModal @register="registerAddUserModal" @success="handleSuccess" />
<ResetName @register="registerResetNameModal" @success="handleSuccess" />
<!-- 新建基础标准 弹窗-->
<CreateBasicStandards @register="registerCreateBasicStandardsModal" @success="handleSuccess" />
<!-- 新建标准分类 弹窗-->
......@@ -67,37 +63,22 @@
<script lang="ts" setup>
import { reactive,unref,onDeactivated,onMounted,ref } from 'vue';
import { BasicTable, useTable, TableAction } from '@/components/Table';
import {getAccountList, deleteUser,exportUserList} from '@/api/system/user/user';
import { PageWrapper } from '@/components/Page';
import BasicStandardsTree from './BasicStandardsTree.vue';
import { useMessage } from '@/hooks/web/useMessage';
import { useModal } from '@/components/Modal';
import FileModal from './FileModal.vue';
import ResetName from './resetName.vue';
import importModal from './importModal.vue';
import MoveFile from './moveFile.vue';
import CreateBasicStandards from './createBasicStandards.vue';
import CreateStandardsType from './createStandardsType.vue';
import { columns, searchFormSchema } from './basicStandards.data';
import { useGo } from '@/hooks/web/usePage';
import { useRoute,onBeforeRouteLeave } from 'vue-router';
import { useFilterStore } from '@/store/modules/filterData';
import {useUserStore} from "@/store/modules/user";
import {getMenuListByPage} from "@/api/system/menu/menu";
import { useRoute } from 'vue-router';
import { TreeData } from "@/views/dataStandards/basicStandards/basicStandardsData";
import AddUserModal from './AddUserModal.vue';
import {forEach} from "lodash-es";
import { router } from '@/router';
defineOptions({ name: 'AccountManagement' });
const { createMessage, createConfirm } = useMessage();
const filterStore = useFilterStore();
const route = useRoute();
const go = useGo();
const [registerModal, { openModal }] = useModal();
const [registerAddUserModal, { openModal:addUserModal }] = useModal();
const [registerMoveFile, { openModal: openMoveFileModal }] = useModal();
const [registerResetNameModal, { openModal: openResetNameModal }] = useModal();
const [registerCreateBasicStandardsModal, { openModal: openCreateBasicStandardsModal }] = useModal();
const [registerCreateStandardsTypeModal, { openModal: openCreateStandardsTypeModal }] = useModal();
const searchInfo = reactive<Recordable>({});
......@@ -166,6 +147,16 @@
}
/**查看详情*/
function detailButton(record) {
console.log('record:',record)
router.push({
path: '/dataStandards/basicStandards/detailStandard',
query: {
},
});
}
function stickButton() {
......
......@@ -51,6 +51,52 @@ export const columns: BasicColumn[] = [
// onEditRow:true
},
];
export const columnsDetail: BasicColumn[] = [
{
title: '列名',
dataIndex: 'name',
width: 150,
// onEditRow:true
slots: { customRender: 'sourceType' },
},
{
title: '字段类型',
dataIndex: 'type',
width: 150,
// onEditRow:true
},
{
title: '字段类型参数',
dataIndex: 'parameters',
width: 150,
// onEditRow:true
},
{
title: 'length',
dataIndex: 'length',
width: 150,
// onEditRow:true
},
{
title: '精度',
dataIndex: 'deptName',
width: 150,
// onEditRow:true
},
{
title: '是否可为空',
dataIndex: 'isNUll',
width: 150,
// onEditRow:true
},
{
title: '字段注释',
dataIndex: 'explain',
width: 150,
// onEditRow:true
},
];
export const importSchema: any[] = [
{
field: 'fileType',
......
<template>
<div>列信息</div>
<div style="display: flex">
<div style="border-color: cyan; width: 30%">
<div style="display: flex; margin-top: 15px">
......@@ -14,7 +13,7 @@
{
// icon: 'clarity:note-edit-line',
label: '删除',
onClick: handleEdit.bind(null, record),
// onClick: handleEdit.bind(null, record),
},
]"
/>
......@@ -24,7 +23,6 @@
</div>
<div style="border-color: #ee00ff; width: 70%"> <BasicForm @register="registerForm" /></div>
</div>
<BasicForm @register="registerForm1" />
</template>
<script lang="ts" setup>
import { ref, computed, unref, reactive } from 'vue';
......@@ -106,23 +104,6 @@
span: 23,
},
});
const [
registerForm1,
{
setFieldsValue: setValue,
updateSchema: updateValue,
resetFields: resetValue,
validate: validdate1,
},
] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: ConnectionModelFormSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
await resetFields();
......
......@@ -109,8 +109,45 @@
<!-- }"-->
<!-- />-->
</Tabs.TabPane>
<Tabs.TabPane key="2" tab="详细信息" style="overflow-y: hidden">
<EntityTable :editFlag="editFlag" />
<Tabs.TabPane key="2" tab="详细信息">
<div>
<div style="margin-top: 15px; font-weight: bold">列信息</div>
<DetailInfo v-if="editFlag" />
<BasicTable v-else @register="registerTable" :searchInfo="searchInfo" />
<BasicForm @register="registerForm1">
<template #table3="{ model, field }">
<div style="margin-top: 15px; font-weight: bold">分区信息</div>
</template>
<template #areaType="{ model, field }">
<span v-if="!editFlag">{{ model[field] }}</span>
<Select v-else v-model:value="model[field]" allowClear style="width: 300px">
<Select.Option value="测试类型">测试类型</Select.Option>
<Select.Option value="测试类型1">测试类型1</Select.Option>
</Select>
</template>
<template #areaField="{ model, field }">
<span v-if="!editFlag">{{ model[field] }}</span>
<Select v-else v-model:value="model[field]" allowClear style="width: 300px">
<Select.Option value="测试类型">测试类型</Select.Option>
<Select.Option value="测试类型1">测试类型1</Select.Option>
</Select>
</template>
<template #table4="{ model, field }">
<div style="margin-top: 15px; font-weight: bold">分区信息</div>
</template>
<template #sonName="{ model, field }">
<span v-if="!editFlag">{{ model[field] }}</span>
<a-input v-else v-model:value="model[field]" style="width: 300px" />
</template>
<template #sonPK="{ model, field }">
<span v-if="!editFlag">{{ model[field] }}</span>
<Select v-else v-model:value="model[field]" allowClear style="width: 300px">
<Select.Option value="测试类型">测试类型</Select.Option>
<Select.Option value="测试类型1">测试类型1</Select.Option>
</Select>
</template>
</BasicForm>
</div>
</Tabs.TabPane>
</Tabs>
</template>
......@@ -123,17 +160,25 @@
import { useRoute, onBeforeRouteLeave } from 'vue-router';
import { useFilterStore } from '@/store/modules/filterData';
import { Descriptions, Select, Tabs } from 'ant-design-vue';
import EntityTable from './detailInfo.vue';
import CrossTable from './crossTable.vue';
import { infoData } from '@/views/dataWarehousePlanning/physicalModel/modelDetail/modelData';
import DetailInfo from './detailInfo.vue';
import {
infoData,
searchFormSchema,
} from '@/views/dataWarehousePlanning/physicalModel/modelDetail/modelData';
import { FormSchema, useForm } from '@/components/Form';
import { useModal } from '@/components/Modal';
import ModelDebug from './modelDebug.vue';
import BasicForm from '@/components/Form/src/BasicForm.vue';
import { editFormSchema } from '@/views/dataWarehousePlanning/physicalModel/modelDetail/model.data';
import {
ConnectionModelFormSchema,
editFormSchema,
} from '@/views/dataWarehousePlanning/physicalModel/modelDetail/model.data';
import { cloneDeep } from 'lodash-es';
import ImportModal from '@/views/dataWarehousePlanning/physicalModel/importModal.vue';
import ModelAdd from '@/views/dataWarehousePlanning/physicalModel/modelAdd.vue';
import BasicTable from '@/components/Table/src/BasicTable.vue';
import { TableAction, useTable } from '@/components/Table';
import { columns, columnsDetail } from '@/views/dataWarehousePlanning/physicalModel/model.data';
const [registerModal, { openModal }] = useModal();
const [registerDebugModal, { openModal: openDebugModal }] = useModal();
......@@ -158,6 +203,71 @@
span: 23,
},
});
const [
registerForm1,
{
setFieldsValue: setValue,
updateSchema: updateValue,
resetFields: resetValue,
validate: validdate1,
},
] = useForm({
labelWidth: 108,
baseColProps: { lg: 12, md: 24 },
schemas: ConnectionModelFormSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
const [
registerTable,
{ reload, updateTableDataRecord, getSearchInfo, getForm, getRowSelection },
] = useTable({
title: '',
scroll: { y: 200 },
api: async (params) => {
console.log('params:', params);
const response = {
pageNu: '1',
pageSize: '10',
pages: '1',
total: tableData.value.length,
code: '',
message: '',
data: [],
};
//过滤data中的数据,取出等于params.deptId的数据
var data = [];
//按照部门筛选 如果有进行过滤相应部门的 没有就赋值全部
var data = [];
data = tableData.value.filter((item) => item.businessId !== 100);
return { ...response, data: data };
},
rowKey: 'businessId',
columnsDetail,
rowSelection: true,
formConfig: {
labelWidth: 100,
schemas: searchFormSchema,
showActionButtonGroup: false,
autoSubmitOnEnter: true,
resetFunc: () => {
searchInfo.modelId = '';
},
},
useSearchForm: true,
showTableSetting: false,
bordered: true,
handleSearchInfoFn(info) {
return info;
},
actionColumn: {
width: 150,
title: '操作',
dataIndex: 'action',
},
});
/**
* 导出
*/
......@@ -177,7 +287,6 @@
*/
function handleEdit() {
editFlag.value = true;
tabsKey.value = '1';
tableRefresh.value = false;
nextTick(() => {
tableRefresh.value = true;
......
......@@ -381,38 +381,40 @@ export const EntityModelFormSchema: any[] = [
// connectionModel
export const ConnectionModelFormSchema: any[] = [
{
field: 'areaType',
label: '分区信息',
component: 'Divider',
field: 'table3',
slot: 'table3',
colProps: { lg: 24, md: 24 },
},
{
field: 'areaType',
label: '分区类型',
slot: 'areaType',
component: 'Select',
colProps: { lg: 12, md: 12 },
},
{
field: 'areaField',
label: '分区字段',
slot: 'areaField',
component: 'Select',
colProps: { lg: 12, md: 12 },
},
{
field: 'fatherNum',
label: '分桶信息',
component: 'Divider',
field: 'table4',
slot: 'table4',
colProps: { lg: 24, md: 24 },
},
{
field: 'sonName',
label: '分桶数',
slot: 'sonName',
component: 'Input',
colProps: { lg: 12, md: 12 },
},
{
field: 'sonPK',
label: '分桶字段',
slot: 'sonPK',
component: 'Select',
colProps: { lg: 12, md: 12 },
},
......
......@@ -32,7 +32,7 @@ export const searchFormSchema: FormSchema[] = [
componentProps: {
placeholder: '输入字段名称或字段注释搜索',
},
colProps: { span: 24 },
colProps: { span: 12 },
},
];
export const entityData: any[] = [
......
......@@ -18,8 +18,8 @@
padding-left: 5px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div>
<a-button type="primary" @click="handleCreateType">添加类别</a-button>
......
......@@ -25,8 +25,8 @@
margin-top: -100px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div style="cursor: pointer">
<Icon
......@@ -40,7 +40,7 @@
</template>
<BasicTable @register="registerTable1" class="height1">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="表信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="系统字段" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -62,7 +62,7 @@
</BasicTable>
<BasicTable @register="registerTable2" class="height2">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="分桶信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="文件信息" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -84,29 +84,7 @@
</BasicTable>
<BasicTable @register="registerTable3" class="height3">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="分区信息" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
<TableAction
:actions="[
{
color: 'error',
label: '删除',
popConfirm: {
title: '是否确认删除',
placement: 'left',
confirm: handleDelete.bind(null, record),
},
},
]"
/>
</template>
</template>
</BasicTable>
<BasicTable @register="registerTable4" class="height4">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="列信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="基本信息" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -154,10 +132,9 @@
const isUpdate = ref(true);
const isMove = ref(false);
const rowId = ref('');
const tableData = ref([]);
const columnTableData = ref([]);
const bucketTableData = ref([]);
const areaTableData = ref([]);
const tableData1 = ref([]);
const tableData2 = ref([]);
const tableData3 = ref([]);
const go = useGo();
const title = ref('')
const type = ref('')
......@@ -170,12 +147,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: tableData.value.length,
total: tableData1.value.length,
code: '',
message: '',
data: [],
};
return { ...response, data: tableData.value };
return { ...response, data: tableData1.value };
},
columns,
showTableSetting: false,
......@@ -195,12 +172,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: bucketTableData.value.length,
total: tableData2.value.length,
code: '',
message: '',
data: bucketTableData.value,
data: tableData2.value,
};
return { ...response, data: bucketTableData.value };
return { ...response, data: tableData2.value };
},
columns,
showTableSetting: false,
......@@ -220,37 +197,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: areaTableData.value.length,
code: '',
message: '',
data: areaTableData.value,
};
return { ...response, data: areaTableData.value };
},
columns,
showTableSetting: false,
showIndexColumn: false,
pagination: false,
bordered: true,
actionColumn: {
width: 150,
title: '操作',
dataIndex: 'action',
},
});
const [registerTable4, { reload4, getForm4 }] = useTable({
title: '',
api: async () => {
const response = {
pageNu: '1',
pageSize: '10',
pages: '1',
total: columnTableData.value.length,
total: tableData3.value.length,
code: '',
message: '',
data: columnTableData.value,
data: tableData3.value,
};
return { ...response, data: columnTableData.value };
return { ...response, data: tableData3.value };
},
columns,
showTableSetting: false,
......@@ -289,10 +241,9 @@
}
onMounted(() => {
tableData.value = editTableData;
columnTableData.value = editColumnData;
bucketTableData.value = editBucketData;
areaTableData.value = editAreaData;
tableData1.value = editTableData;
tableData2.value = editColumnData;
tableData3.value = editBucketData;
});
</script>
<style>
......
<template>
<BasicTable @register="registerTable4" class="height3">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="实体属性" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="基本信息" allowClear />
<Radio.Group v-model:value="show">
<Radio.Button value="true">展示</Radio.Button>
<Radio.Button value="false">不展示</Radio.Button>
......@@ -51,7 +51,7 @@
const [registerAddUserModal, { openModal: addUserModal }] = useModal();
const [registerMoveUser, { openModal: openMoveUserModal }] = useModal();
const searchInfo = reactive<Recordable>({});
const areaTableData = ref([]);
const TableData = ref([]);
const [
registerTable4,
{ reload, updateTableDataRecord4, getSearchInfo4, getForm4, getRowSelection4 },
......@@ -63,13 +63,13 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: areaTableData.value.length,
total: TableData.value.length,
code: '',
message: '',
data: [],
};
var data = [];
data = areaTableData.value.filter((item) => item.businessId !== 100);
data = TableData.value.filter((item) => item.businessId !== 100);
return { ...response, data: data };
},
columns,
......@@ -152,11 +152,20 @@
isShow: '0',
type: '1',
};
areaTableData.value.push(data);
TableData.value.push(data);
reload();
}
onMounted(() => {
areaTableData.value = editColumnData;
TableData.value = editColumnData;
});
</script>
<style>
.height3 {
.ant-table-container {
.ant-table-body {
min-height: 150px;
}
}
}
</style>
......@@ -18,8 +18,8 @@
padding-left: 5px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div>
<a-button type="primary" @click="handleCreateType">添加类别</a-button>
......@@ -28,6 +28,7 @@
</div>
</div>
</template>
<ColumnTable @register="registerColumnTableModal" @success="handleSuccess" />
<Table @register="registerTableModal" @success="handleSuccess" />
<AreaTable @register="registerAreaTableModal" @success="handleSuccess" />
<BucketTable @register="registerBucketTableModal" @success="handleSuccess" />
......@@ -45,6 +46,7 @@ import {reactive, onMounted, ref} from 'vue';
import AreaTable from './AreaTable.vue';
import Table from './Table.vue';
import BucketTable from './BucketTable.vue';
import ColumnTable from './ColumnTable.vue'
defineOptions({ name: 'AccountManagement' });
const { createMessage } = useMessage();
......@@ -56,6 +58,7 @@ import {reactive, onMounted, ref} from 'vue';
const [registerTableModal, { openModal: openTableModal }] = useModal();
const [registerAreaTableModal, { openModal: openAreaTableModal }] = useModal();
const [registerBucketTableModal, { openModal: openBucketTableModal }] = useModal();
const [registerColumnTableModal, { openModal: openColumnTableModal }] = useModal();
const [registerAddUserModal, { openModal: addUserModal }] = useModal();
const [registerMoveUser, { openModal: openMoveUserModal }] = useModal();
const searchInfo = reactive<Recordable>({});
......
......@@ -319,7 +319,7 @@ export const editTableData: any[] = [
export const editColumnData: any[] = [
{
businessId: 1,
name: '列名',
name: '逻辑模型路径',
description: '无',
englishName: 'MD_COL_NAME',
isWrite: '0',
......@@ -328,7 +328,7 @@ export const editColumnData: any[] = [
},
{
businessId: 1,
name: '字段类型',
name: '逻辑模型名称',
description: '无',
englishName: 'MD_COL_TYPE',
isWrite: '0',
......@@ -337,49 +337,13 @@ export const editColumnData: any[] = [
},
{
businessId: 1,
name: '字段类型参数',
name: '模型描述',
description: '无',
englishName: 'MD_COL_TYPE_PARAM',
isWrite: '0',
isShow: '0',
type: '1',
},
{
businessId: 1,
name: '长度',
description: '无',
englishName: 'MD_COL_LENGTH',
isWrite: '0',
isShow: '0',
type: '1',
},
{
businessId: 1,
name: '精度',
description: '无',
englishName: 'MD_COL_PRECISION',
isWrite: '0',
isShow: '0',
type: '1',
},
{
businessId: 1,
name: '是否可为空',
description: '无',
englishName: 'MD_COL_IS_BULL',
isWrite: '0',
isShow: '0',
type: '1',
},
{
businessId: 1,
name: '字段注释',
description: '无',
englishName: 'MD_COL_COMMENT',
isWrite: '0',
isShow: '0',
type: '1',
},
];
export const editBucketData: any[] = [
{
......
......@@ -25,8 +25,8 @@
margin-top: -100px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div style="cursor: pointer">
<Icon
......@@ -69,7 +69,7 @@
</BasicTable>
<BasicTable @register="registerTable2" class="height2">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="实体信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="实体关联关系" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -91,7 +91,7 @@
</BasicTable>
<BasicTable @register="registerTable3" class="height3">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="分区信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="实体属性" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -113,7 +113,7 @@
</BasicTable>
<BasicTable @register="registerTable4" class="height4">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="实体信息" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -161,10 +161,10 @@
const isUpdate = ref(true);
const isMove = ref(false);
const rowId = ref('');
const tableData = ref([]);
const columnTableData = ref([]);
const bucketTableData = ref([]);
const areaTableData = ref([]);
const tableData1 = ref([]);
const tableData2 = ref([]);
const tableData3 = ref([]);
const tableData4 = ref([]);
const go = useGo();
const title = ref('')
const type = ref('')
......@@ -177,12 +177,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: tableData.value.length,
total: tableData1.value.length,
code: '',
message: '',
data: [],
};
return { ...response, data: tableData.value };
return { ...response, data: tableData1.value };
},
columns,
showTableSetting: false,
......@@ -202,12 +202,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: bucketTableData.value.length,
total: tableData2.value.length,
code: '',
message: '',
data: bucketTableData.value,
data: tableData2.value,
};
return { ...response, data: bucketTableData.value };
return { ...response, data: tableData2.value };
},
columns,
showTableSetting: false,
......@@ -227,12 +227,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: areaTableData.value.length,
total: tableData3.value.length,
code: '',
message: '',
data: areaTableData.value,
data: tableData3.value,
};
return { ...response, data: areaTableData.value };
return { ...response, data: tableData3.value };
},
columns,
showTableSetting: false,
......@@ -252,12 +252,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: columnTableData.value.length,
total: tableData4.value.length,
code: '',
message: '',
data: columnTableData.value,
data: tableData4.value,
};
return { ...response, data: columnTableData.value };
return { ...response, data: tableData4.value };
},
columns,
showTableSetting: false,
......@@ -296,24 +296,24 @@
}
onMounted(() => {
tableData.value = editTableData;
columnTableData.value = editColumnData;
bucketTableData.value = editBucketData;
areaTableData.value = editAreaData;
tableData1.value = editColumnData;
tableData2.value = editTableData;
tableData3.value = editAreaData;
tableData4.value = editBucketData;
});
</script>
<style>
.height1 {
.ant-table-container {
.ant-table-body {
min-height: 450px;
min-height: 150px;
}
}
}
.height2 {
.ant-table-container {
.ant-table-body {
min-height: 300px;
min-height: 400px;
}
}
}
......
......@@ -18,8 +18,8 @@
padding-left: 5px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div>
<a-button type="primary" @click="handleCreateType">添加类别</a-button>
......
......@@ -25,8 +25,8 @@
margin-top: -100px;
"
>
<div style="font-weight: bold">关联资产类型</div>
<div style="margin-top: 20px">数据资产类型:{{type}}</div>
<!-- <div style="font-weight: bold">关联资产类型</div>-->
<!-- <div style="margin-top: 20px">数据资产类型:{{type}}</div>-->
</div>
<div style="cursor: pointer">
<Icon
......@@ -40,29 +40,7 @@
</template>
<BasicTable @register="registerTable1" class="height1">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="表信息" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
<TableAction
:actions="[
{
color: 'error',
label: '删除',
popConfirm: {
title: '是否确认删除',
placement: 'left',
confirm: handleDelete.bind(null, record),
},
},
]"
/>
</template>
</template>
</BasicTable>
<BasicTable @register="registerTable2" class="height2">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="分桶信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="业务属性" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -84,7 +62,7 @@
</BasicTable>
<BasicTable @register="registerTable3" class="height3">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="分区信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="技术属性" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -104,9 +82,9 @@
</template>
</template>
</BasicTable>
<BasicTable @register="registerTable4" class="height4">
<BasicTable @register="registerTable2" class="height2">
<template #toolbar>
<a-input style="width: 200px; margin-right: auto" default-value="列信息" allowClear />
<a-input style="width: 200px; margin-right: auto" default-value="管理属性" allowClear />
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
......@@ -154,10 +132,9 @@
const isUpdate = ref(true);
const isMove = ref(false);
const rowId = ref('');
const tableData = ref([]);
const columnTableData = ref([]);
const bucketTableData = ref([]);
const areaTableData = ref([]);
const tableData1 = ref([]);
const tableData3 = ref([]);
const tableData2 = ref([]);
const go = useGo();
const title = ref('')
const type = ref('')
......@@ -170,13 +147,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: tableData.value.length,
total: tableData1.value.length,
code: '',
message: '',
data: [],
};
console.log('tableData.value:', tableData.value);
return { ...response, data: tableData.value };
return { ...response, data: tableData1.value };
},
columns,
showTableSetting: false,
......@@ -196,12 +172,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: bucketTableData.value.length,
total: tableData2.value.length,
code: '',
message: '',
data: bucketTableData.value,
data: tableData2.value,
};
return { ...response, data: bucketTableData.value };
return { ...response, data: tableData2.value };
},
columns,
showTableSetting: false,
......@@ -221,37 +197,12 @@
pageNu: '1',
pageSize: '10',
pages: '1',
total: areaTableData.value.length,
total: tableData3.value.length,
code: '',
message: '',
data: areaTableData.value,
data: tableData3.value,
};
return { ...response, data: areaTableData.value };
},
columns,
showTableSetting: false,
showIndexColumn: false,
pagination: false,
bordered: true,
actionColumn: {
width: 150,
title: '操作',
dataIndex: 'action',
},
});
const [registerTable4, { reload4, getForm4 }] = useTable({
title: '',
api: async () => {
const response = {
pageNu: '1',
pageSize: '10',
pages: '1',
total: columnTableData.value.length,
code: '',
message: '',
data: columnTableData.value,
};
return { ...response, data: columnTableData.value };
return { ...response, data: tableData3.value };
},
columns,
showTableSetting: false,
......@@ -291,10 +242,9 @@
}
onMounted(() => {
tableData.value = editTableData;
columnTableData.value = editColumnData;
bucketTableData.value = editBucketData;
areaTableData.value = editAreaData;
tableData1.value = editTableData;
tableData2.value = editBucketData;
tableData3.value = editColumnData;
});
</script>
<style>
......@@ -319,11 +269,4 @@
}
}
}
.height4 {
.ant-table-container {
.ant-table-body {
min-height: 350px;
}
}
}
</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