Browse Source

问题处理

master^2
si@aidatagov.com 6 days ago
parent
commit
551445db2d
  1. 9
      vue-fastapi-backend/module_admin/dao/metadata_config_dao.py
  2. 17
      vue-fastapi-backend/module_admin/service/metadata_config_service.py
  3. 2
      vue-fastapi-frontend/src/views/meta/metasercurity/MetaSecurityRow.vue
  4. 1
      vue-fastapi-frontend/src/views/metadataConfig/bizConfig/index.vue
  5. 7
      vue-fastapi-frontend/src/views/metadataConfig/sec/index.vue

9
vue-fastapi-backend/module_admin/dao/metadata_config_dao.py

@ -108,7 +108,14 @@ class MetadataConfigDao:
db_sec = MetadataSec(**sec.model_dump()) db_sec = MetadataSec(**sec.model_dump())
db.add(db_sec) db.add(db_sec)
await db.flush() await db.flush()
return db_sec return db_sec
@classmethod
async def get_by_sec_level_summary(cls, query_db: AsyncSession, sec_level_summary: str, exclude_onum: str = None):
stmt = select(MetadataSec).where(MetadataSec.sec_level_summary == sec_level_summary)
if exclude_onum:
stmt = stmt.where(MetadataSec.onum != exclude_onum)
result = await query_db.execute(stmt)
return result.scalars().first()
@classmethod @classmethod
async def edit_metadata_sec_dao(cls, db: AsyncSession, onum: str, update_data: dict): async def edit_metadata_sec_dao(cls, db: AsyncSession, onum: str, update_data: dict):

17
vue-fastapi-backend/module_admin/service/metadata_config_service.py

@ -7,7 +7,7 @@ SecuBizConfigQueryModel,SecuBizPermiConfigModel, SecuBizPermiConfigQueryModel,\
TaskBizConfigAddModel, TaskBizConfigQueryModel,TaskBizConfigModel,TaskBizConfigRelaModel TaskBizConfigAddModel, TaskBizConfigQueryModel,TaskBizConfigModel,TaskBizConfigRelaModel
from utils.common_util import CamelCaseUtil from utils.common_util import CamelCaseUtil
from module_admin.entity.do.metadata_config_do import SecuBizConfigRela,TaskBizConfigRela # ORM 类 from module_admin.entity.do.metadata_config_do import SecuBizConfigRela,TaskBizConfigRela # ORM 类
from exceptions.exception import ServiceException from exceptions.exception import ServiceException,ServiceWarning
import uuid import uuid
from module_admin.entity.vo.dataSource_vo import ProcessDefinition,ParmScheduleVo,ProcessInstancePage,ParmSchedule from module_admin.entity.vo.dataSource_vo import ProcessDefinition,ParmScheduleVo,ProcessInstancePage,ParmSchedule
from typing import List from typing import List
@ -121,14 +121,19 @@ class MetadataConfigService:
新增数据安全配置 新增数据安全配置
""" """
try: try:
page_object.onum=str(uuid.uuid4()) # 校验 secLevelSummary 是否已存在
existing = await MetadataConfigDao.get_by_sec_level_summary( query_db, page_object.sec_level_summary,page_object.onum)
if existing:
raise ServiceWarning(message=page_object.sec_level_summary+"该等级简称已存在,不能重复")
page_object.onum = str(uuid.uuid4())
await MetadataConfigDao.add_metadata_sec_dao(query_db, page_object) await MetadataConfigDao.add_metadata_sec_dao(query_db, page_object)
await query_db.commit() await query_db.commit()
return CrudResponseModel(is_success=True, message="新增成功") return CrudResponseModel(is_success=True, message="新增成功")
except Exception as e: except Exception as e:
await query_db.rollback() await query_db.rollback()
raise e raise e
@classmethod @classmethod
async def edit_metadata_sec_services(cls, query_db: AsyncSession, page_object: MetadataSecModel): async def edit_metadata_sec_services(cls, query_db: AsyncSession, page_object: MetadataSecModel):
""" """
@ -138,6 +143,11 @@ class MetadataConfigService:
info = await cls.get_metadata_sec_detail_services(query_db, page_object.onum) info = await cls.get_metadata_sec_detail_services(query_db, page_object.onum)
if info.onum: if info.onum:
try: try:
# 校验 secLevelSummary 是否重复(排除当前记录)
existing = await MetadataConfigDao.get_by_sec_level_summary( query_db, page_object.sec_level_summary,page_object.onum)
if existing:
raise ServiceWarning(message=page_object.sec_level_summary+"该等级简称已存在,不能重复")
await MetadataConfigDao.edit_metadata_sec_dao(query_db, page_object.onum, edit_data) await MetadataConfigDao.edit_metadata_sec_dao(query_db, page_object.onum, edit_data)
await query_db.commit() await query_db.commit()
return CrudResponseModel(is_success=True, message="更新成功") return CrudResponseModel(is_success=True, message="更新成功")
@ -147,6 +157,7 @@ class MetadataConfigService:
else: else:
raise ServiceException(message="数据安全配置不存在") raise ServiceException(message="数据安全配置不存在")
@classmethod @classmethod
async def delete_metadata_sec_services(cls, query_db: AsyncSession, onum_list: str): async def delete_metadata_sec_services(cls, query_db: AsyncSession, onum_list: str):
""" """

2
vue-fastapi-frontend/src/views/meta/metasercurity/MetaSecurityRow.vue

@ -507,6 +507,8 @@ onMounted(() => {
getList(); getList();
getDeptTree(); getDeptTree();
getRoleOrUserList(); getRoleOrUserList();
changeMetaSecurityObj(form.value.objType);
}); });
watch(dbResoursName, (val) => { watch(dbResoursName, (val) => {
if (val) { if (val) {

1
vue-fastapi-frontend/src/views/metadataConfig/bizConfig/index.vue

@ -57,6 +57,7 @@
stripe stripe
> >
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column prop="onum" label="主键" />
<el-table-column prop="bizName" label="业务域名称" /> <el-table-column prop="bizName" label="业务域名称" />
<el-table-column label="风险等级"> <el-table-column label="风险等级">
<template #default="{ row }"> <template #default="{ row }">

7
vue-fastapi-frontend/src/views/metadataConfig/sec/index.vue

@ -159,6 +159,7 @@ const form = reactive({
const rules = { const rules = {
secEffFlag: [{ required: true, message: '请选择有效标志', trigger: 'change' }], secEffFlag: [{ required: true, message: '请选择有效标志', trigger: 'change' }],
secLevelSummary: [{ required: true, message: '请输入等级简称', trigger: 'blur' }],
secLevelName: [{ required: true, message: '请输入等级名称', trigger: 'blur' }] secLevelName: [{ required: true, message: '请输入等级名称', trigger: 'blur' }]
} }
@ -223,7 +224,7 @@ function submitForm() {
const submitData = { ...form } const submitData = { ...form }
delete submitData.updTime // updTime delete submitData.updTime // updTime
try {
if (title.value.includes('新增')) { if (title.value.includes('新增')) {
await addMetadataSec(submitData) await addMetadataSec(submitData)
ElMessage.success('新增成功') ElMessage.success('新增成功')
@ -233,9 +234,7 @@ function submitForm() {
} }
open.value = false open.value = false
getList() getList()
} catch (error) {
ElMessage.error('操作失败,请重试')
}
}) })
} }

Loading…
Cancel
Save