Commit 1fc8f6e4 authored by liwei's avatar liwei

修改了公共代码页面

parent 6fa33298
......@@ -47,7 +47,7 @@
/**确定按钮*/
async function handleSubmit() {
createMessage.success('移动成功');
createMessage.success('复制成功');
closeModal()
}
......
<template>
<BasicModal width="40%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicForm @register="registerForm">
<template #formFooter>
<a-Button type="info" @click="handleDownByData" style="margin-left: 150px;border-color: #4aabfe">下载文件模版</a-Button>
</template>
</BasicForm>
</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 { importRelativeFormSchema } from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import { BasicUpload } from '@/components/Upload';
import { uploadApi } from '@/api/sys/upload';
import {downloadByData} from "@/utils/file/download";
defineOptions({ name: 'AccountModal' });
const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage();
const getTitle = computed(() => ('导入关联关系'));
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: importRelativeFormSchema,
showActionButtonGroup: false,
actionColOptions: {
span: 23,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false });
});
/**下载*/
function handleDownByData() {
downloadByData('text content', '导入关联关系模版.xls');
}
/**上传事件*/
function handleChange(list: string[]) {
createMessage.success(`已上传文件${JSON.stringify(list)}`);
}
/**提交按钮*/
function handleSubmit() {
createMessage.success('导入成功!')
closeModal();
}
</script>
......@@ -14,7 +14,7 @@
</div>
<div>
<a-button type="primary" @click="contrastButton">版本对比</a-button>
<a-button type="primary" style="margin-left: 10px" @click="resetButton">回滚</a-button>
<a-button type="primary" style="margin-left: 10px" @click="returnButton">回滚</a-button>
<a-button type="primary" style="margin-left: 10px" @click="exitButton">退出查看</a-button>
</div>
</div>
......@@ -173,8 +173,15 @@ function handleChange(value) {
}
/**回滚*/
function resetButton(value) {
createMessage.success('回滚成功!')
function returnButton(value) {
createConfirm({
iconType: 'warning',
title: '确认回滚',
content: '是否确认进行回滚?',
onOk() {
createMessage.success('回滚成功!');
},
});
}
......
......@@ -55,7 +55,7 @@
import { Description } from '@/components/Description';
import { PageWrapper } from '@/components/Page';
import { Divider } from 'ant-design-vue';
import {detailData, TreeData} from './publicCodeData';
import {detailData, TreeData,referenceDocumentTreeData} from './publicCodeData';
import {router} from "@/router";
import { BasicForm, useForm } from '@/components/Form';
import {
......@@ -77,7 +77,7 @@ const businessId = ref('')
const { createMessage, createConfirm } = useMessage();
const [registerModal, { openModal: openModal }] = useModal();
const [registerEditPublicCodeModal, { openModal: openEditPublicCodeModal }] = useModal();
const [registerForm1, { setFieldsValue: setFieldsValue1 }] = useForm({
const [registerForm1, { setFieldsValue: setFieldsValue1,updateSchema }] = useForm({
labelWidth: 100,
baseColProps: { lg: 12, md: 24 },
schemas: editStandardsDetailFormSchema,
......@@ -180,11 +180,40 @@ onMounted(() => {
businessId.value = route.query.businessId
const data = TreeData.filter(item => item.businessId == businessId.value)
title.value = data[0].standardChineseName
const treeList = handleTree(referenceDocumentTreeData, 'businessId',undefined,undefined,undefined)
updateSchema([
{
field: 'documentTree',
componentProps: {
treeData: treeList
},
},
]);
setFieldsValue1({
...data[0]
})
});
/**数组对象转成树*/
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>
<style lang="less" scoped>
.desc-wrap {
......
......@@ -6,6 +6,7 @@
<a-button type="primary" @click="copyButton">复制到</a-button>
<a-button type="primary" @click="deleteBatchButton">删除</a-button>
<a-button type="primary" @click="MoveButton">移动</a-button>
<a-button type="primary" @click="ImportDataStandardsButton">导入数据标准</a-button>
<a-button type="primary" @click="ExportRelativeButton">导出关联关系</a-button>
<a-button type="primary" @click="ExportDataStandardsButton">导出数据标准</a-button>
<a-button type="primary" @click="batchPublishButton">批量发布</a-button>
......@@ -61,6 +62,9 @@
</span>
</template>
</BasicTable>
<!-- 导入数据标准 弹窗-->
<ImportDataStandardsModal @register="registerDataStandardsModal" @success="handleSuccess" />
<!-- 新建公共代码 弹窗-->
<CreatePublicCode @register="registerCreatePublicCodeModal" @success="handleSuccess" />
<!-- 新建标准分类 弹窗-->
......@@ -92,11 +96,12 @@
import { router } from '@/router';
import {exportUserList} from "@/api/system/user/user";
import {downloadByData} from "@/utils/file/download";
import ImportDataStandardsModal from './ImportDataStandardsModal.vue';
defineOptions({ name: 'AccountManagement' });
const { createMessage, createConfirm } = useMessage();
const route = useRoute();
const go = useGo();
const [registerDataStandardsModal, { openModal: openDataStandardsModal }] = useModal();
const [registerCreatePublicCodeModal, { openModal: openCreatePublicCodeModal }] = useModal();
const [registerCreateStandardsTypeModal, { openModal: openCreateStandardsTypeModal }] = useModal();
const [registerMoveModal, { openModal: openMoveModal }] = useModal();
......@@ -243,6 +248,13 @@
downloadByData(data, '数据标准信息' + '.xlsx');
}
/**导入数据标准*/
async function ImportDataStandardsButton() {
openDataStandardsModal(true, {
});
}
function handleSuccess({ isUpdate, values }) {
}
......
......@@ -393,14 +393,14 @@ export const detailSchema: FormSchema[] = [
colProps: { lg: 24, md: 24 },
},
{
field: 'standardPath',
label: '标准路径',
field: 'belongingTheme',
label: '所属主题',
component: 'Input',
colProps: { lg: 8, md: 8 },
rules: [
{
required: true,
message: '请输入标准路径',
message: '请输入所属主题',
},
],
componentProps: {
......@@ -412,6 +412,26 @@ export const detailSchema: FormSchema[] = [
placeholder: '-',
},
},
// {
// field: 'standardPath',
// label: '标准路径',
// component: 'Input',
// colProps: { lg: 8, md: 8 },
// rules: [
// {
// required: true,
// message: '请输入标准路径',
// },
// ],
// componentProps: {
// style: {
// border: 'none',
// backgroundColor: 'transparent',
// },
// readonly: true,
// placeholder: '-',
// },
// },
{
field: 'standardNumber',
label: '标准编号',
......@@ -547,6 +567,26 @@ export const detailSchema: FormSchema[] = [
placeholder: '-',
},
},
{
field: 'referenceDocument',
label: '引用文档',
component: 'Input',
colProps: { lg: 8, md: 8 },
rules: [
{
required: true,
message: '请选择引用文档',
},
],
componentProps: {
style: {
border: 'none',
backgroundColor: 'transparent',
},
readonly: true,
placeholder: '-',
},
},
];
/**详情页列表 表头*/
export const detailColumns: BasicColumn[] = [
......@@ -627,20 +667,35 @@ export const editStandardsDetailFormSchema: FormSchema[] = [
colProps: { lg: 24, md: 24 },
},
{
field: 'standardPath',
label: '标准路径',
field: 'belongingTheme',
label: '所属主题',
component: 'Input',
colProps: { lg: 8, md: 8 },
rules: [
{
required: true,
message: '请输入标准路径',
message: '请输入所属主题',
},
],
componentProps: {
placeholder: '-',
},
},
// {
// field: 'standardPath',
// label: '标准路径',
// component: 'Input',
// colProps: { lg: 8, md: 8 },
// rules: [
// {
// required: true,
// message: '请输入标准路径',
// },
// ],
// componentProps: {
// placeholder: '-',
// },
// },
{
field: 'standardNumber',
label: '标准编号',
......@@ -750,6 +805,21 @@ export const editStandardsDetailFormSchema: FormSchema[] = [
placeholder: '-',
},
},
{
field: 'documentTree',
label: '引用文档',
component: 'TreeSelect',
colProps: { lg: 8, md: 8 },
defaultValue: '100',
componentProps: {
fieldNames: {
label: 'documentName',
value: 'businessId',
},
getPopupContainer: () => document.body,
},
required: true,
},
];
/**编辑公共代码 表单2*/
export const addValueFormSchema: FormSchema[] = [
......@@ -1181,15 +1251,33 @@ export const relatedBasicStandardsSchema: any[] = [
{
field: 'relatedRelationship',
label: '关联关系',
component: 'Input',
component: 'Select',
rules: [
{
required: true,
message: '请输入关联关系',
message: '请选择关联关系',
},
],
componentProps: {
placeholder: '请输入关联关系',
options:[
{
label: '引用',
value: '引用'
},
{
label: '同义词',
value: '同义词'
},
{
label: '依赖',
value: '依赖'
},
{
label: '从属',
value: '从属'
}
],
placeholder: '请选择关联关系',
},
colProps: { lg: 24, md: 24 },
},
......
......@@ -46,11 +46,11 @@
<div style="font-size: 15px;padding-left: 10px;padding-left: 50px">
<div>
版本<Select
v-model:value="optionValue"
v-model:value="optionValue1"
show-search
placeholder="请选择版本"
style="width: 200px;margin-left: 10px"
:options="options"
:options="options1"
@change="handleChange"
></Select>
</div>
......@@ -99,6 +99,13 @@
{ value: 'V2', label: 'V2' },
{ value: 'V3', label: 'V3' },
]);
const options1 = ref<any>([
{ value: 'V1', label: 'V1' },
{ value: 'V2', label: 'V2' },
{ value: 'V3', label: 'V3' },
]);
const optionValue = ref('V3')
const optionValue1 = ref('V1')
const orderOptions = ref<any>([
{ value: '1', label: '代码值升序' },
{ value: '2', label: '代码值降序' },
......@@ -181,6 +188,12 @@
function endContrast() {
createMessage.info('结束对比');
startContrastFlag.value = false
router.push({
path: '/dataStandards/publicCode/detailPublicCode',
query: {
businessId:route.query.businessId,
},
});
}
/**回滚*/
......
......@@ -62,10 +62,6 @@ export const TreeData: any[] = [
"publishStatus": "已发布",
"holderGroup": "默认工作组",
"standardCode": "BAS000001",
"referenceStandard":[
{ icon: '😂', text: '数据源1' },
{ icon: '🔍', text: '数据源2' },
],
"createDate": "2024-10-24 10:04:04",
"updateDate": "2024-10-24 10:04:04",
"icon": "ant-design:partition-outlined",
......@@ -98,8 +94,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "财务部, 市场部",
standardPath:'/公共代码',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'公共代码'
},
{
"businessId": 101,
......@@ -144,8 +141,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "财务部, 市场部",
standardPath:'/公共代码/共享工作区',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'工作区'
},
{
"businessId": 102,
......@@ -190,8 +188,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "人力资源部, 技术部",
standardPath:'/公共代码/个人工作区',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'工作区'
},
{
"businessId": 201,
......@@ -239,8 +238,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "人力资源部, 技术部",
standardPath:'/公共代码/个人工作区/对外投资出资方式',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'投资'
},
{
"referenceStandard":[
......@@ -288,8 +288,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "人力资源部, 技术部",
standardPath:'/公共代码/个人工作区/对外投资控股标志',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'投资'
},
{
"referenceStandard":[
......@@ -337,8 +338,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "人力资源部, 技术部",
standardPath:'/公共代码/个人工作区/对外投资企业证明',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'投资',
},
{
"referenceStandard":[
......@@ -386,8 +388,9 @@ export const TreeData: any[] = [
"collaborativeDepartment": "人力资源部, 技术部",
standardPath:'/公共代码/共享工作区/zy_basic_standard',
indicatorCaliber:'销售额-成本/实际成本',
referenceDocument:'100',
referenceDocument:'/引用文档',
calculationFormula:'销售额-成本/实际成本',
belongingTheme:'销售'
}
];
......@@ -555,6 +558,87 @@ export const chooseDictoryTreeData = [
icon: 'ion:settings-outline',
},
]
/**编辑页 引用文档树 数据*/
export const referenceDocumentTreeData = [
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 100,
"documentName" : "引用文档管理",
"anotherName":"引用文档管理",
"parentId" : 0,
"ancestors" : "0",
"orderNum" : 0,
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 101,
"documentName" : "文档文档夹1",
"anotherName":"文档文档夹1",
"parentId" : 100,
"ancestors" : "0,100",
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 102,
"documentName" : "文档文档夹2",
"anotherName":"文档文档夹1",
"parentId" : 100,
"ancestors" : "0,100",
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 103,
"documentName" : "文档文档夹3",
"anotherName":"文档文档夹1",
"parentId" : 100,
"ancestors" : "0,100",
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 201,
"documentName" : "文档1",
"anotherName":"文档1",
"parentId" : 101,
"ancestors" : "0,100,101",
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 202,
"documentName" : "文档2",
"anotherName":"文档2",
"parentId" : 102,
"ancestors" : "0,100,102",
"children" : [ ],
icon: 'ion:settings-outline',
},
{
"delFlag" : "0",
"flag" : "1",
"businessId" : 203,
"documentName" : "文档3",
"anotherName":"文档3",
"parentId" : 103,
"ancestors" : "0,100,103",
"children" : [ ],
icon: 'ion:settings-outline',
},
]
/**对比左侧数据*/
export const leftContrastData: any[] = [
......
<template>
<PageWrapper :title="title" class="content-padding" contentBackground @back="goBack">
<!-- <div class="relatedRelationships_module">-->
<BasicTable @register="registerTable3">
<template #toolbar>
<a-button type="primary" @click="referenceBasicStandardsButton">引用标准</a-button>
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
<TableAction
:actions="[
{
icon: 'ant-design:link-outlined',
onClick: Button.bind(null, record),
},
]"
/>
</template>
</template>
<template #standardName="{ text, record }">
<a @click="showDetails(record)"> {{ text }}</a>
<BasicTable @register="registerTable3">
<template #toolbar>
<a-button type="primary" @click="referenceBasicStandardsButton">引用标准</a-button>
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'action'">
<TableAction
:actions="[
{
//解绑
icon: 'ant-design:link-outlined',
onClick: unbindButton.bind(null, record),
},
]"
/>
</template>
</BasicTable>
<!-- </div>-->
</template>
<template #standardName="{ text, record }">
<a @click="showDetails(record)"> {{ text }}</a>
</template>
</BasicTable>
<!-- 引用基础标准 弹窗-->
<RelatedBasicStandardModal @register="registerBasicStandardModal" @success="handleSuccess" />
</PageWrapper>
......@@ -98,18 +95,19 @@ function referenceBasicStandardsButton(record) {
})
}
/**按钮*/
function Button(record) {
router.push({
path: '',
query: {
/**解绑 按钮*/
function unbindButton(record) {
createConfirm({
iconType: 'warning',
title: '确认解绑',
content: '确认解绑选中的数据吗?',
onOk() {
createMessage.success('解绑成功!');
},
});
}
/**表1 跳转*/
function showDetails1() {
......@@ -129,11 +127,3 @@ onMounted(() => {
</script>
<!--<style lang="scss" scoped>-->
<!--.relatedRelationships_module{-->
<!-- ::v-deep(.ant-table-body){-->
<!-- min-height: 150px!important;-->
<!-- height:150px!important;-->
<!-- }-->
<!--}-->
<!--</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