From 9be39c13e8535c27ff243f5be1f62e79a3a967aa Mon Sep 17 00:00:00 2001
From: xueyinfei <1207092115@qq.com>
Date: Sat, 17 Jan 2026 14:59:39 +0800
Subject: [PATCH] =?UTF-8?q?=E5=85=83=E6=95=B0=E6=8D=AE=E9=A1=B5=E9=9D=A2?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/data_ast_info_controller.py | 54 -------------------
.../module_admin/dao/data_asset_dao.py | 14 +++++
.../module_admin/service/meta_service.py | 25 ++++++---
.../src/assets/icons/svg/assets.svg | 1 +
.../src/views/meta/metaInfo/index.vue | 9 +++-
5 files changed, 41 insertions(+), 62 deletions(-)
delete mode 100644 vue-fastapi-backend/module_admin/controller/data_ast_info_controller.py
create mode 100644 vue-fastapi-frontend/src/assets/icons/svg/assets.svg
diff --git a/vue-fastapi-backend/module_admin/controller/data_ast_info_controller.py b/vue-fastapi-backend/module_admin/controller/data_ast_info_controller.py
deleted file mode 100644
index 2445dbb..0000000
--- a/vue-fastapi-backend/module_admin/controller/data_ast_info_controller.py
+++ /dev/null
@@ -1,54 +0,0 @@
-# # data_ast_content_controller.py
-# from fastapi import APIRouter, Depends, Request
-# from pydantic_validation_decorator import ValidateFields
-# from sqlalchemy.ext.asyncio import AsyncSession
-# from config.get_db import get_db
-# from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
-# from module_admin.service.login_service import LoginService
-# from module_admin.service.data_ast_content_service import DataAstInfoService
-# from module_admin.entity.vo.data_ast_content_vo import DataAstInfoRequest, DataAstInfoResponse, DataAstInfoPageQueryModel
-# from module_admin.entity.vo.user_vo import CurrentUserModel
-# from utils.response_util import ResponseUtil
-
-# dataAstInfoController = APIRouter(prefix='/system/data_ast_info', dependencies=[Depends(LoginService.get_current_user)])
-
-# @dataAstInfoController.post('', dependencies=[Depends(CheckUserInterfaceAuth('system:data_ast_info:add'))])
-# @ValidateFields(validate_model='add_data_ast_info')
-# async def add_data_ast_info(
-# request: Request,
-# add_data_ast_info: DataAstInfoRequest,
-# query_db: AsyncSession = Depends(get_db),
-# current_user: CurrentUserModel = Depends(LoginService.get_current_user),
-# ):
-# add_result = await DataAstInfoService.add_data_ast_info_services(query_db, add_data_ast_info)
-# logger.info(add_result.message)
-# return ResponseUtil.success(
-# msg=add_result.message,
-# data=add_result.data
-# )
-
-# @dataAstInfoController.post('/batch', dependencies=[Depends(CheckUserInterfaceAuth('system:data_ast_info:add'))])
-# @ValidateFields(validate_model='add_data_ast_info_batch')
-# async def add_data_ast_info_batch(
-# request: Request,
-# add_data_ast_info_list: List[DataAstInfoRequest],
-# query_db: AsyncSession = Depends(get_db),
-# current_user: CurrentUserModel = Depends(LoginService.get_current_user),
-# ):
-# add_result = await DataAstInfoService.add_data_ast_info_batch_services(query_db, add_data_ast_info_list)
-# logger.info(add_result.message)
-# return ResponseUtil.success(
-# msg=add_result.message,
-# data=add_result.data
-# )
-
-# @dataAstInfoController.get('/list', dependencies=[Depends(CheckUserInterfaceAuth('system:data_ast_info:list'))])
-# async def get_data_ast_info_list(
-# request: Request,
-# data_ast_info_page_query: DataAstInfoPageQueryModel = Depends(DataAstInfoPageQueryModel.as_query),
-# query_db: AsyncSession = Depends(get_db),
-# current_user: CurrentUserModel = Depends(LoginService.get_current_user),
-# ):
-# data_ast_info_list_result = await DataAstInfoService.get_data_ast_info_list_services(query_db, data_ast_info_page_query, is_page=True)
-# logger.info('获取成功')
-# return ResponseUtil.success(model_content=data_ast_info_list_result)
\ No newline at end of file
diff --git a/vue-fastapi-backend/module_admin/dao/data_asset_dao.py b/vue-fastapi-backend/module_admin/dao/data_asset_dao.py
index d25ea8e..6353ccd 100644
--- a/vue-fastapi-backend/module_admin/dao/data_asset_dao.py
+++ b/vue-fastapi-backend/module_admin/dao/data_asset_dao.py
@@ -74,6 +74,20 @@ class DataAssetDao:
).scalars().first()
return data_asset
+ @classmethod
+ async def get_data_asset_appr_by_ast_no(cls, db: AsyncSession, ast_no: str):
+ """
+ 根据资产编号获取数据资产信息
+
+ :param db: orm对象
+ :param ast_no: 资产编号
+ :return: 数据资产信息对象
+ """
+ data_asset = (
+ await db.execute(select(DataAssetInfoAppr).where(DataAssetInfoAppr.ast_no == ast_no))
+ ).scalars().first()
+ return data_asset
+
@classmethod
async def insert_data_asset(cls, db: AsyncSession, data_asset: Dict[str, Any]):
"""
diff --git a/vue-fastapi-backend/module_admin/service/meta_service.py b/vue-fastapi-backend/module_admin/service/meta_service.py
index f14c0dc..76cf75f 100644
--- a/vue-fastapi-backend/module_admin/service/meta_service.py
+++ b/vue-fastapi-backend/module_admin/service/meta_service.py
@@ -9,6 +9,7 @@ from module_admin.entity.vo.meta_vo import MetaPageObject, MetaColObject, Supple
from module_admin.entity.do.meta_do import MetadataSuppInfo, MetadataFldSuppInfo, MetadataSuppInfoVett, \
MetadataFldSuppInfoVett, MetadataExtractInfo, MetadataFldTabExtractInfo
from module_admin.dao.meta_dao import MetaDao
+from module_admin.dao.data_asset_dao import DataAssetDao
from module_admin.dao.datastd_dao import DataStdDao
from module_admin.dao.user_dao import UserDao
from datetime import datetime
@@ -49,6 +50,14 @@ class MetaService:
for table in meta_rel_list.rows:
tab_list = await MetaDao.get_meta_tab_clas(result_db, table['ssysId'], table['mdlName'],
table['tabEngName'])
+ hasAsset = await DataAssetDao.get_data_asset_by_ast_no(result_db, table['extractOnum'])
+ table['hasAsset'] = '0' # 未发布
+ if hasAsset:
+ table['hasAsset'] = '1' # 已发布
+ else:
+ hasAsset2 = await DataAssetDao.get_data_asset_appr_by_ast_no(result_db, table['extractOnum'])
+ if hasAsset2:
+ table['hasAsset'] = '2' # 发布中
table['batchTabClas'] = CamelCaseUtil.transform_result(tab_list)
return meta_rel_list
else:
@@ -328,7 +337,8 @@ class MetaService:
'tab_eng_name': preNode['b_tab_eng_name'],
'fld_eng_name': preNode['b_fld_eng_name']},
"endArrow": True,
- "relation_type": preNode['relation_type']} if preNode['father'] == 'A' else \
+ "relation_type": preNode['relation_type']} if preNode[
+ 'father'] == 'A' else \
{"source": {'ssys_id': preNode['b_ssys_id'],
'mdl_name': preNode['b_mdl_name'],
'tab_eng_name': preNode['b_tab_eng_name'],
@@ -537,7 +547,8 @@ class MetaService:
获取元数据导入模板service
:return: 元数据导入模板excel的二进制数据
"""
- table_header_list = ['系统代码', '模式名称', '对象英文名', '补录对象名称', '补录对象描述', '对象治理标志', '负责人']
+ table_header_list = ['系统代码', '模式名称', '对象英文名', '补录对象名称', '补录对象描述', '对象治理标志',
+ '负责人']
column_header_list = ['系统代码', '模式名称', '对象英文名', '字段英文名', '字段补录名', '补录主键',
'补录字段描述', '引用字典/标准', '安全等级']
selector_header_list = ['补录主键', '安全等级']
@@ -691,7 +702,7 @@ class MetaService:
continue
if row['pic'] and len(row['pic']) > 0:
# 校验负责人是否存在
- user = await UserDao.get_user_by_name(result_db,row['pic'])
+ user = await UserDao.get_user_by_name(result_db, row['pic'])
if user is None:
result_list['table'].append({
"row": index + 2,
@@ -720,11 +731,11 @@ class MetaService:
str(row[
'tab_desc']).strip() != '' else oldTable.tab_desc if oldTable else None
suppTableInfo.pic = row['pic'] if row['pic'] and \
- str(row[
- 'pic']).strip() != '' else oldTable.pic if oldTable else None
+ str(row[
+ 'pic']).strip() != '' else oldTable.pic if oldTable else None
suppTableInfo.gov_flag = row['gov_flag'] if row['gov_flag'] and \
- str(row[
- 'gov_flag']).strip() != '' else oldTable.gov_flag if oldTable else None
+ str(row[
+ 'gov_flag']).strip() != '' else oldTable.gov_flag if oldTable else None
suppTableInfo.rec_subm_prsn = current_user.user.user_name
suppTableInfo.tab_clas = oldTable.tab_clas if oldTable else None
suppTableInfo.apply_time = applyTime
diff --git a/vue-fastapi-frontend/src/assets/icons/svg/assets.svg b/vue-fastapi-frontend/src/assets/icons/svg/assets.svg
new file mode 100644
index 0000000..20d8284
--- /dev/null
+++ b/vue-fastapi-frontend/src/assets/icons/svg/assets.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/vue-fastapi-frontend/src/views/meta/metaInfo/index.vue b/vue-fastapi-frontend/src/views/meta/metaInfo/index.vue
index 54c3129..7bec6e5 100644
--- a/vue-fastapi-frontend/src/views/meta/metaInfo/index.vue
+++ b/vue-fastapi-frontend/src/views/meta/metaInfo/index.vue
@@ -124,7 +124,14 @@
@select="handleSelection"
@select-all="handleSelectionAll"
>
-
+
+
+
+
+
+
+
+