Commit 9d96a6c9 authored by 罗林杰's avatar 罗林杰

修改公共代码

parent cc6afbd8
<template>
<BasicModal width="50%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicModal
width="50%"
v-bind="$attrs"
@register="registerModal"
:title="getTitle"
@ok="handleSubmit"
>
<BasicForm @register="registerForm" />
<BasicTable @register="registerTable"/>
<BasicTable @register="registerTable" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { ref, computed, unref, reactive } from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import {addValueColumns, addValueFormSchema, addValueSearchSchema, searchFormSchema} from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import {
addValueData,TreeData
} from "./publicCodeData";
addValueColumns,
addValueFormSchema,
addValueSearchSchema,
searchFormSchema,
} from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import { addValueData, TreeData } from './publicCodeData';
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 getTitle = computed(() => '添加值');
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
......@@ -37,13 +47,13 @@
setModalProps({ confirmLoading: false });
setFieldsValue({
...data.record,
})
const treeList = handleTree(TreeData, 'businessId',undefined,undefined,undefined)
});
const treeList = handleTree(TreeData, 'businessId', undefined, undefined, undefined);
updateSchema([
{
field: 'QualityId',
componentProps: {
treeData: treeList
treeData: treeList,
},
},
]);
......@@ -53,22 +63,22 @@
title: '源系统码值',
api: async (params) => {
const response = {
pageNu: "1",
pageSize: "10",
pages: "1",
pageNu: '1',
pageSize: '10',
pages: '1',
total: addValueData.length,
code:'',
message:'',
code: '',
message: '',
data: [],
};
//过滤data中的数据,取出等于params.deptId的数据
return { ...response,data: addValueData };
return { ...response, data: addValueData };
},
columns:addValueColumns,
columns: addValueColumns,
useSearchForm: true,
showTableSetting: false,
showIndexColumn:false,
pagination:false,
showIndexColumn: false,
pagination: false,
bordered: true,
formConfig: {
labelWidth: 120,
......@@ -80,27 +90,35 @@
/**确定按钮*/
async function handleSubmit() {
createMessage.success('添加成功');
closeModal()
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
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 cloneData = JSON.parse(JSON.stringify(data));
// 循环所有项
const treeData = cloneData.filter(father => {
const branchArr = cloneData.filter(child => {
const treeData = cloneData.filter((father) => {
const branchArr = cloneData.filter((child) => {
// 返回每一项的子级数组
return father[id] === child[parentId]
})
branchArr.length > 0 ? father.children = branchArr : ''
return father[id] === child[parentId];
});
branchArr.length > 0 ? (father.children = branchArr) : '';
// 返回第一层
return father[parentId] === rootId
})
return treeData !== '' ? treeData : data
return father[parentId] === rootId;
});
return treeData !== '' ? treeData : data;
}
</script>
<template>
<BasicModal width="50%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicModal
width="50%"
v-bind="$attrs"
@register="registerModal"
:title="getTitle"
@ok="handleSubmit"
>
<BasicForm @register="registerForm" />
<BasicTable @register="registerTable" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { ref, computed, unref, reactive } from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import {detailPublicCodeSchema, editPublicCodeSchema} from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import {
addValueData
} from "./publicCodeData";
addValueColumns,
addValueSearchSchema,
detailPublicCodeSchema,
editPublicCodeSchema,
} from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import { addValueData } from './publicCodeData';
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 getTitle = computed(() => '查看详情');
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
......@@ -30,19 +41,45 @@
span: 23,
},
});
const [registerTable] = useTable({
title: '源系统码值',
api: async (params) => {
const response = {
pageNu: '1',
pageSize: '10',
pages: '1',
total: addValueData.length,
code: '',
message: '',
data: [],
};
//过滤data中的数据,取出等于params.deptId的数据
return { ...response, data: addValueData };
},
columns: addValueColumns,
useSearchForm: false,
showTableSetting: false,
showIndexColumn: false,
pagination: false,
bordered: true,
formConfig: {
labelWidth: 120,
schemas: addValueSearchSchema,
autoSubmitOnEnter: true,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false,showOkBtn: false,showCancelBtn: false });
setModalProps({ confirmLoading: false, showOkBtn: false, showCancelBtn: false });
setFieldsValue({
...data.record,
})
});
});
/**确定按钮*/
async function handleSubmit() {
createMessage.success('编辑成功');
closeModal()
closeModal();
}
</script>
<template>
<BasicModal width="50%" v-bind="$attrs" @register="registerModal" :title="getTitle" @ok="handleSubmit">
<BasicModal
width="50%"
v-bind="$attrs"
@register="registerModal"
:title="getTitle"
@ok="handleSubmit"
>
<BasicForm @register="registerForm" />
<BasicTable @register="registerTable" />
</BasicModal>
</template>
<script lang="ts" setup>
import {ref, computed, unref, reactive} from 'vue';
import { ref, computed, unref, reactive } from 'vue';
import { BasicModal, useModalInner } from '@/components/Modal';
import { BasicForm, useForm } from '@/components/Form';
import {editPublicCodeSchema} from './publicCode.data';
import { addValueColumns, addValueSearchSchema, editPublicCodeSchema } from './publicCode.data';
import { useMessage } from '@/hooks/web/useMessage';
import {
addValueData
} from "./publicCodeData";
import { addValueData } from './publicCodeData';
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 getTitle = computed(() => '编辑公共代码');
//获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
......@@ -30,19 +36,45 @@
span: 23,
},
});
const [registerTable] = useTable({
title: '源系统码值',
api: async (params) => {
const response = {
pageNu: '1',
pageSize: '10',
pages: '1',
total: addValueData.length,
code: '',
message: '',
data: [],
};
//过滤data中的数据,取出等于params.deptId的数据
return { ...response, data: addValueData };
},
columns: addValueColumns,
useSearchForm: true,
showTableSetting: false,
showIndexColumn: false,
pagination: false,
bordered: true,
formConfig: {
labelWidth: 120,
schemas: addValueSearchSchema,
autoSubmitOnEnter: true,
},
});
//初始化弹框
const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
resetFields();
setModalProps({ confirmLoading: false });
setFieldsValue({
...data.record,
})
});
});
/**确定按钮*/
async function handleSubmit() {
createMessage.success('编辑成功');
closeModal()
closeModal();
}
</script>
......@@ -907,16 +907,6 @@ export const editPublicCodeSchema: FormSchema[] = [
},
colProps: { lg: 24, md: 24 },
},
{
field: 'sourceSystemCodeValue',
label: '源系统码值',
component: 'Input',
required: true,
componentProps: {
placeholder: '请输入源系统码值',
},
colProps: { lg: 24, md: 24 },
},
];
/**详情公共代码 表单5*/
export const detailPublicCodeSchema: FormSchema[] = [
......@@ -962,20 +952,6 @@ export const detailPublicCodeSchema: FormSchema[] = [
},
colProps: { lg: 24, md: 24 },
},
{
field: 'sourceSystemCodeValue',
label: '源系统码值',
component: 'Input',
required: true,
componentProps: {
style: {
border: 'none',
},
readonly: true,
placeholder: '请输入源系统码值',
},
colProps: { lg: 24, md: 24 },
},
];
/**编辑公共代码 列表表头*/
export const addValueColumns: BasicColumn[] = [
......
......@@ -549,7 +549,7 @@
/>
</template>
</Description>
<textarea v-model="jsonData" style="width: 100%; height: 250px"></textarea>
<textarea v-model="jsonData" disabled style="width: 100%; height: 250px"></textarea>
</div>
<div style="width: 50%; border: rgb(217, 217, 217) 1px solid">
<span style="font-size: 18px; font-weight: bold; margin-left: 10px">目标端配置</span>
......@@ -587,14 +587,14 @@
@click="handleCopy"
/>
<Icon
style="font-size: 25px !important; margin-right: 5px; marin-left: 5px"
style="font-size: 25px !important; margin-right: 5px"
icon="tabler:reload"
:color="'rgb(136, 141, 156)'"
@click="handleReload"
/>
</template>
</Description>
<textarea v-model="jsonData" style="width: 100%; height: 250px"></textarea>
<textarea v-model="jsonData" disabled style="width: 100%; height: 250px"></textarea>
</div>
</div>
<div v-if="scene === 'message'">
......@@ -636,14 +636,14 @@
@click="handleCopy"
/>
<Icon
style="font-size: 25px !important; margin-right: 5px; marin-left: 5px"
style="font-size: 25px !important; margin-right: 5px; margin-left: 5px"
icon="tabler:reload"
:color="'rgb(136, 141, 156)'"
@click="handleReload"
/>
</template>
</Description>
<textarea v-model="jsonData" style="width: 100%; height: 250px"></textarea>
<textarea v-model="jsonData" disabled style="width: 100%; height: 250px"></textarea>
</div>
</TabPane>
<TabPane v-if="tabKey === '5'" key="10" tab="数据流向">
......
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