Commit 74119e59 authored by 张伯涛's avatar 张伯涛

部分修改

parent f3269985
...@@ -100,12 +100,7 @@ export const formSchema: any[] = [ ...@@ -100,12 +100,7 @@ export const formSchema: any[] = [
field: 'algorithmDes', field: 'algorithmDes',
label: '算法描述', label: '算法描述',
component: 'Input', component: 'Input',
rules: [
{
required: true,
message: '请输入算法描述',
},
],
}, },
{ {
field: 'params', field: 'params',
...@@ -117,12 +112,7 @@ export const formSchema: any[] = [ ...@@ -117,12 +112,7 @@ export const formSchema: any[] = [
{ label: 'INT', value: 'INT' }, { label: 'INT', value: 'INT' },
], ],
}, },
rules: [
{
required: true,
message: '请选择敏感类型',
},
],
}, },
{ {
field: 'describe', field: 'describe',
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<PageWrapper dense contentFullHeight fixedHeight contentClass="flex"> <PageWrapper dense contentFullHeight fixedHeight contentClass="flex">
<BasicTable @register="registerTable" :searchInfo="searchInfo"> <BasicTable @register="registerTable" :searchInfo="searchInfo">
<template #toolbar> <template #toolbar>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">删除</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleDeleteIds">删除</a-button>
<a-button type="primary" @click="handleCreate">新增</a-button> <a-button type="primary" @click="handleCreate">新增</a-button>
</template> </template>
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
...@@ -31,7 +31,7 @@ ...@@ -31,7 +31,7 @@
</template> </template>
</template> </template>
</BasicTable> </BasicTable>
<sensitiveRulesModal @register="registerModal" @success="handleSuccess" /> <desensitizationAlgorithmModal @register="registerModal" @success="handleSuccess" />
</PageWrapper> </PageWrapper>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
...@@ -40,7 +40,7 @@ import { BasicTable, useTable, TableAction } from '@/components/Table'; ...@@ -40,7 +40,7 @@ import { BasicTable, useTable, TableAction } from '@/components/Table';
import { PageWrapper } from '@/components/Page'; import { PageWrapper } from '@/components/Page';
import { useMessage } from '@/hooks/web/useMessage'; import { useMessage } from '@/hooks/web/useMessage';
import { useModal } from '@/components/Modal'; import { useModal } from '@/components/Modal';
import sensitiveRulesModal from './desensitizationAlgorithmModal.vue'; import desensitizationAlgorithmModal from './desensitizationAlgorithmModal.vue';
import { columns, searchFormSchema } from './desensitizationAlgorithm.data'; import { columns, searchFormSchema } from './desensitizationAlgorithm.data';
import {tableList} from "@/views/dataSecurity/desensitizationAlgorithm/mock"; import {tableList} from "@/views/dataSecurity/desensitizationAlgorithm/mock";
...@@ -49,7 +49,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router'; ...@@ -49,7 +49,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router';
import { router } from '@/router'; import { router } from '@/router';
defineOptions({ name: 'sensitiveRules' }); defineOptions({ name: 'sensitiveRules' });
const { createMessage } = useMessage(); const { createMessage,createConfirm } = useMessage();
const route = useRoute(); const route = useRoute();
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal(); const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal();
...@@ -94,6 +94,17 @@ const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm,ge ...@@ -94,6 +94,17 @@ const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm,ge
// slots: { customRender: 'action' }, // slots: { customRender: 'action' },
}, },
}); });
function handleDeleteIds() {
createConfirm({
iconType: 'warning',
title: '确认删除',
content: '确认批量删除选中数据吗?',
onOk() {
createMessage.success('批量删除成功!');
},
});
}
/** 新增按钮*/ /** 新增按钮*/
function handleCreate() { function handleCreate() {
openModal(true, { openModal(true, {
......
...@@ -13,7 +13,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -13,7 +13,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'dataLink', field: 'dataLink',
label: '', label: '',
component: 'Select', component: 'Select',
colProps: { span: 3 }, colProps: { span: 2 },
componentProps: { componentProps: {
placeholder: '请选择数据链接', placeholder: '请选择数据链接',
options: [ options: [
...@@ -27,7 +27,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -27,7 +27,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'databaseLink', field: 'databaseLink',
label: ' ', label: ' ',
component: 'Select', component: 'Select',
colProps: { span: 3 }, colProps: { span: 2 },
componentProps: { componentProps: {
placeholder: '请选择数据库链接', placeholder: '请选择数据库链接',
options: [ options: [
...@@ -53,7 +53,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -53,7 +53,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'name', field: 'name',
label: ' ', label: ' ',
component: 'Input', component: 'Input',
colProps: { span: 3 }, colProps: { span: 2 },
componentProps: { componentProps: {
placeholder: '字段名', placeholder: '字段名',
}, },
...@@ -179,13 +179,11 @@ export const formSchema: any[] = [ ...@@ -179,13 +179,11 @@ export const formSchema: any[] = [
{ label: '担保方式', value: '担保方式' }, { label: '担保方式', value: '担保方式' },
], ],
}, },
rules: [ dynamicRules: ({ values }) => {
{ return values.flag === '敏感' ? [{ required: true, message: '说明必填' }] : [];
required: true, },
message: '请选择敏感类型',
},
],
}, },
{ {
field: 'level', field: 'level',
label: '安全分级', label: '安全分级',
...@@ -201,11 +199,8 @@ export const formSchema: any[] = [ ...@@ -201,11 +199,8 @@ export const formSchema: any[] = [
{ label: 'G5', value: 'G5' }, { label: 'G5', value: 'G5' },
], ],
}, },
rules: [ dynamicRules: ({ values }) => {
{ return values.flag === '敏感' ? [{ required: true, message: '说明必填' }] : [];
required: true, },
message: '请选择安全分级',
},
],
}, },
] ]
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<div class="modal_top"> <div class="modal_top">
<div><Icon icon="ant-design:hdd-outlined" :size="30" :color="'#1091FE'" /></div> <div><Icon icon="ant-design:hdd-outlined" :size="30" :color="'#1091FE'" /></div>
<div> <div>
<div class="title">uuid</div> <div class="title">{{formParams.name}}</div>
<div class="path">17kundb/foresight_foresight1/fs_assets/uuid</div> <div class="path">{{formParams.dataLink}}/{{formParams.databaseLink}}/{{formParams.dataTable}}/{{formParams.name}}</div>
</div> </div>
</div> </div>
<BasicForm @register="registerForm" /> <BasicForm @register="registerForm" />
...@@ -23,6 +23,7 @@ const emit = defineEmits(['success', 'register']); ...@@ -23,6 +23,7 @@ const emit = defineEmits(['success', 'register']);
const { createMessage } = useMessage(); const { createMessage } = useMessage();
const isUpdate = ref(true); const isUpdate = ref(true);
const rowId = ref(''); const rowId = ref('');
const formParams = ref('');
//获取接口数据并放在下拉框里(这里是打开了一个弹框) //获取接口数据并放在下拉框里(这里是打开了一个弹框)
//初始化表单 //初始化表单
const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({ const [registerForm, { setFieldsValue, updateSchema, resetFields, validate }] = useForm({
...@@ -39,6 +40,10 @@ const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data ...@@ -39,6 +40,10 @@ const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data
resetFields(); resetFields();
setModalProps({ confirmLoading: false }); setModalProps({ confirmLoading: false });
isUpdate.value = !!data?.isUpdate; isUpdate.value = !!data?.isUpdate;
if (unref(isUpdate)) {
formParams.value = data.record
console.log('formParams',formParams)
}
if (unref(isUpdate)) { if (unref(isUpdate)) {
// 通过id获取行详情信息 // 通过id获取行详情信息
......
...@@ -44,7 +44,7 @@ const [registerModal, { openModal }] = useModal(); ...@@ -44,7 +44,7 @@ const [registerModal, { openModal }] = useModal();
const [registerImport, { openModal: openImportModal }] = useModal(); const [registerImport, { openModal: openImportModal }] = useModal();
const searchInfo = reactive<Recordable>({}); const searchInfo = reactive<Recordable>({});
const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm }] = useTable({ const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm }] = useTable({
title: '脱敏算法', title: '分类分级结果',
api: async (params) => { api: async (params) => {
console.log(params) console.log(params)
const response = { const response = {
......
...@@ -111,15 +111,7 @@ function changeTabs(activeKey: any) { ...@@ -111,15 +111,7 @@ function changeTabs(activeKey: any) {
} }
async function handleSubmit() { async function handleSubmit() {
try { closeModal();
const values = await validate();
setModalProps({ confirmLoading: true });
// TODO custom api
closeModal();
emit('success', { isUpdate: unref(isUpdate), values: { ...values, id: rowId.value } });
} finally {
setModalProps({ confirmLoading: false });
}
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<PageWrapper dense contentFullHeight fixedHeight contentClass="flex"> <PageWrapper dense contentFullHeight fixedHeight contentClass="flex">
<BasicTable @register="registerTable" :searchInfo="searchInfo"> <BasicTable @register="registerTable" :searchInfo="searchInfo">
<template #toolbar> <template #toolbar>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">删除</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleDeleteIds">删除</a-button>
<a-button type="primary" @click="handleCreate">新增</a-button> <a-button type="primary" @click="handleCreate">新增</a-button>
<a-button type="primary" @click="handleImport">导入</a-button> <a-button type="primary" @click="handleImport">导入</a-button>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button>
...@@ -52,7 +52,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router'; ...@@ -52,7 +52,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router';
import { router } from '@/router'; import { router } from '@/router';
defineOptions({ name: 'sensitiveRules' }); defineOptions({ name: 'sensitiveRules' });
const { createMessage } = useMessage(); const { createMessage,createConfirm } = useMessage();
const route = useRoute(); const route = useRoute();
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal(); const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal();
...@@ -103,7 +103,16 @@ function handleCreate() { ...@@ -103,7 +103,16 @@ function handleCreate() {
isUpdate: false, isUpdate: false,
}); });
} }
function handleDeleteIds() {
createConfirm({
iconType: 'warning',
title: '确认删除',
content: '确认批量删除选中数据吗?',
onOk() {
createMessage.success('批量删除成功!');
},
});
}
function handleImport() { function handleImport() {
openImportModal(true, { openImportModal(true, {
}); });
......
...@@ -13,7 +13,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -13,7 +13,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'name', field: 'name',
label: '', label: '',
component: 'Input', component: 'Input',
colProps: { span: 4 }, colProps: { span: 3 },
componentProps: { componentProps: {
placeholder: '搜索对象', placeholder: '搜索对象',
}, },
...@@ -22,7 +22,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -22,7 +22,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'flag', field: 'flag',
label: ' ', label: ' ',
component: 'Select', component: 'Select',
colProps: { span: 4 }, colProps: { span: 3 },
componentProps: { componentProps: {
placeholder: '对象属性', placeholder: '对象属性',
options: [ options: [
...@@ -35,7 +35,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -35,7 +35,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'level', field: 'level',
label: ' ', label: ' ',
component: 'Select', component: 'Select',
colProps: { span: 4 }, colProps: { span: 3 },
componentProps: { componentProps: {
placeholder: '安全分级', placeholder: '安全分级',
options: [ options: [
...@@ -50,7 +50,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -50,7 +50,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'type', field: 'type',
label: ' ', label: ' ',
component: 'Select', component: 'Select',
colProps: { span: 4 }, colProps: { span: 3 },
componentProps: { componentProps: {
placeholder: '敏感类型', placeholder: '敏感类型',
options: [ options: [
...@@ -64,7 +64,7 @@ export const searchFormSchema: FormSchema[] = [ ...@@ -64,7 +64,7 @@ export const searchFormSchema: FormSchema[] = [
field: 'protectiveAction', field: 'protectiveAction',
label: ' ', label: ' ',
component: 'Select', component: 'Select',
colProps: { span: 4 }, colProps: { span: 3 },
componentProps: { componentProps: {
placeholder: '保护动作', placeholder: '保护动作',
options: [ options: [
...@@ -156,9 +156,9 @@ export const formSchema: any[] = [ ...@@ -156,9 +156,9 @@ export const formSchema: any[] = [
componentProps: { componentProps: {
placeholder: '优先级', placeholder: '优先级',
options: [ options: [
{ label: '放行', value: '放行' }, { label: '低', value: '低' },
{ label: '脱敏', value: '脱敏' }, { label: '中', value: '中' },
{ label: '拒绝', value: '拒绝' }, { label: '高', value: '高' },
], ],
}, },
rules: [ rules: [
...@@ -188,5 +188,33 @@ export const formSchema: any[] = [ ...@@ -188,5 +188,33 @@ export const formSchema: any[] = [
}, },
], ],
}, },
{
field: 'protectiveActionFun',
label: '脱敏算法',
component: 'Select',
colProps: { span: 4 },
componentProps: {
placeholder: '脱敏算法',
options: [
{ label: 'Unbase64', value: 'Unbase64' },
],
},
ifShow: ({ values }) => values.protectiveAction === '脱敏',
rules: [
{
required: true,
message: '请选择脱敏算法',
},
],
},
{
field: 'name',
label: '算法参数',
component: 'Input',
colProps: { span: 4 },
componentProps: {
placeholder: '算法参数',
},
ifShow: ({ values }) => values.protectiveAction === '脱敏',
},
] ]
...@@ -7,6 +7,9 @@ ...@@ -7,6 +7,9 @@
<Tabs default-active-key="1" @change="changeTabs"> <Tabs default-active-key="1" @change="changeTabs">
<Tabs.TabPane key="1" tab="用户"> <Tabs.TabPane key="1" tab="用户">
<div class="addDialogBG"> <div class="addDialogBG">
<div style="float: right">
<Icon icon="ant-design:delete-outlined" :size="25" :color="'#ED6F6F'" />
</div>
<a-input placeholder="请输入" v-model:value="valueRef" /> <a-input placeholder="请输入" v-model:value="valueRef" />
<CheckboxGroup v-model="selectedValues"> <CheckboxGroup v-model="selectedValues">
<div v-for="(item, index) in plainOptions" :key="item.value" :span="24" class="checkRow"> <div v-for="(item, index) in plainOptions" :key="item.value" :span="24" class="checkRow">
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<PageWrapper dense contentFullHeight fixedHeight contentClass="flex"> <PageWrapper dense contentFullHeight fixedHeight contentClass="flex">
<BasicTable @register="registerTable" :searchInfo="searchInfo"> <BasicTable @register="registerTable" :searchInfo="searchInfo">
<template #toolbar> <template #toolbar>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">删除</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleDeleteIds">删除</a-button>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button>
<a-button type="primary" @click="handleCreate">新增</a-button> <a-button type="primary" @click="handleCreate">新增</a-button>
</template> </template>
...@@ -50,7 +50,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router'; ...@@ -50,7 +50,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router';
import { router } from '@/router'; import { router } from '@/router';
defineOptions({ name: 'sensitiveRules' }); defineOptions({ name: 'sensitiveRules' });
const { createMessage } = useMessage(); const { createMessage,createConfirm } = useMessage();
const route = useRoute(); const route = useRoute();
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal(); const [registerResetPassword, { openModal: openResetPasswordModal }] = useModal();
...@@ -95,6 +95,17 @@ const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm,ge ...@@ -95,6 +95,17 @@ const [registerTable, { reload, updateTableDataRecord, getSearchInfo, getForm,ge
// slots: { customRender: 'action' }, // slots: { customRender: 'action' },
}, },
}); });
function handleDeleteIds() {
createConfirm({
iconType: 'warning',
title: '确认删除',
content: '确认批量删除选中数据吗?',
onOk() {
createMessage.success('批量删除成功!');
},
});
}
/** 新增按钮*/ /** 新增按钮*/
function handleCreate() { function handleCreate() {
openModal(true, { openModal(true, {
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
<PageWrapper dense contentFullHeight fixedHeight contentClass="flex"> <PageWrapper dense contentFullHeight fixedHeight contentClass="flex">
<BasicTable @register="registerTable" :searchInfo="searchInfo" :rowSelection="rowSelection"> <BasicTable @register="registerTable" :searchInfo="searchInfo" :rowSelection="rowSelection">
<template #toolbar> <template #toolbar>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">删除</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleDeleteIds">删除</a-button>
<a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button> <a-button :disabled="getRowSelection().selectedRowKeys <=0" type="primary" @click="handleExport">导出</a-button>
<a-button type="primary" @click="handleImport">导入</a-button> <a-button type="primary" @click="handleImport">导入</a-button>
<a-button type="primary" @click="handleCreate">新增</a-button> <a-button type="primary" @click="handleCreate">新增</a-button>
...@@ -52,7 +52,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router'; ...@@ -52,7 +52,7 @@ import { useRoute, onBeforeRouteLeave } from 'vue-router';
import { router } from '@/router'; import { router } from '@/router';
defineOptions({ name: 'safetyLevelManage' }); defineOptions({ name: 'safetyLevelManage' });
const { createMessage } = useMessage(); const { createMessage,createConfirm } = useMessage();
const route = useRoute(); const route = useRoute();
const [registerModal, { openModal }] = useModal(); const [registerModal, { openModal }] = useModal();
const [registerImport, { openModal: openImportModal }] = useModal(); const [registerImport, { openModal: openImportModal }] = useModal();
...@@ -105,6 +105,17 @@ function handleImport() { ...@@ -105,6 +105,17 @@ function handleImport() {
}); });
} }
function handleDeleteIds() {
createConfirm({
iconType: 'warning',
title: '确认删除',
content: '确认批量删除选中数据吗?',
onOk() {
createMessage.success('批量删除成功!');
},
});
}
/** 新增按钮*/ /** 新增按钮*/
function handleCreate() { function handleCreate() {
openModal(true, { openModal(true, {
......
...@@ -152,7 +152,7 @@ ...@@ -152,7 +152,7 @@
createConfirm({ createConfirm({
iconType: 'warning', iconType: 'warning',
title: '确认删除', title: '确认删除',
content: '确认批量删除选中文件吗?', content: '确认批量删除选中数据吗?',
onOk() { onOk() {
createMessage.success('批量删除成功!'); createMessage.success('批量删除成功!');
}, },
......
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