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 28f6f3d..929f037 100644 --- a/vue-fastapi-backend/module_admin/dao/data_asset_dao.py +++ b/vue-fastapi-backend/module_admin/dao/data_asset_dao.py @@ -1,4 +1,4 @@ -from sqlalchemy import select, update, delete, insert +from sqlalchemy import select, update, delete, insert,func ,Integer from sqlalchemy.ext.asyncio import AsyncSession from module_admin.entity.do.data_ast_content_do import DataAssetInfo from module_admin.entity.do.dataast_do import DataAssetInfoAppr @@ -168,8 +168,13 @@ class DataAssetDao: # 数据资产来源 if search_params.get('data_ast_src'): - conditions.append(DataAssetInfo.data_ast_src == search_params['data_ast_src']) - + if search_params['data_ast_src'] == '表数据资产': + conditions.append( + DataAssetInfo.data_ast_src.op("regexp")("^[0-9]+$") + ) + else: + conditions.append(DataAssetInfo.data_ast_src == search_params['data_ast_src']) + # 将所有条件添加到查询 for condition in conditions: query = query.where(condition) diff --git a/vue-fastapi-backend/module_admin/entity/do/data_ast_content_do.py b/vue-fastapi-backend/module_admin/entity/do/data_ast_content_do.py index 74769ac..1b8f7fd 100644 --- a/vue-fastapi-backend/module_admin/entity/do/data_ast_content_do.py +++ b/vue-fastapi-backend/module_admin/entity/do/data_ast_content_do.py @@ -54,8 +54,8 @@ class DataAssetInfo(Base): data_ast_faq = Column(Text, nullable=True, comment='资产常见问题') data_ast_estb_time = Column(DateTime, nullable=True, server_default=func.now(), comment='资产建立时间') data_ast_upd_time = Column(DateTime, nullable=True, server_default=func.now(), onupdate=func.now(), comment='资产更新时间') - # data_ast_src = Column(String(255), nullable=True, comment='资产来源') - data_ast_src = Column(Integer, nullable=True, comment='数据资产来源') + data_ast_src = Column(String(255), nullable=True, comment='资产来源') + # data_ast_src = Column(Integer, nullable=True, comment='数据资产来源') ast_no = Column(Integer, nullable=True, comment='资产编号') diff --git a/vue-fastapi-backend/module_admin/entity/vo/data_asset_vo.py b/vue-fastapi-backend/module_admin/entity/vo/data_asset_vo.py index c7d6afc..e437bf8 100644 --- a/vue-fastapi-backend/module_admin/entity/vo/data_asset_vo.py +++ b/vue-fastapi-backend/module_admin/entity/vo/data_asset_vo.py @@ -81,7 +81,7 @@ class DataAssetSearchModel(BaseModel): data_ast_type: Optional[str] = Field(default=None, alias="dataAstType", description='资产类型') data_ast_screen: Optional[str] = Field(default=None, alias="dataAstScreen", description='资产应用场景') data_ast_clas: Optional[str] = Field(default=None, alias="dataAstClas", description='资产标签') - # data_ast_src: Optional[str] = Field(default=None, alias="dataAstSrc", description='资产来源') - data_ast_src: Optional[int] = Field(default=None, alias="dataAstSrc", description='资产来源') + data_ast_src: Optional[str] = Field(default=None, alias="dataAstSrc", description='资产来源') + # data_ast_src: Optional[int] = Field(default=None, alias="dataAstSrc", description='资产来源') page_num: int = Field(default=1, alias="pageNum", description='当前页码') page_size: int = Field(default=10, alias="pageSize", description='每页记录数') \ No newline at end of file diff --git a/vue-fastapi-frontend/src/utils/dsSysUtils.js b/vue-fastapi-frontend/src/utils/dsSysUtils.js new file mode 100644 index 0000000..e2671a3 --- /dev/null +++ b/vue-fastapi-frontend/src/utils/dsSysUtils.js @@ -0,0 +1,15 @@ +import useUserStore from '@/store/modules/user'; + +export function getNameById(id) { + const userStore = useUserStore(); + const list = userStore.dsSysList || []; + const item = list.find(x => x.id === id); + return item ? item.name : ''; +} + +export function getIdByName(name) { + const userStore = useUserStore(); + const list = userStore.dsSysList || []; + const item = list.find(x => x.name === name); + return item ? item.id : null; +} diff --git a/vue-fastapi-frontend/src/views/dataAsset/directory/index.vue b/vue-fastapi-frontend/src/views/dataAsset/directory/index.vue index 0a02a7f..3271f8e 100644 --- a/vue-fastapi-frontend/src/views/dataAsset/directory/index.vue +++ b/vue-fastapi-frontend/src/views/dataAsset/directory/index.vue @@ -406,6 +406,7 @@ import BookmarkMoveDialog from './components/BookmarkMoveDialog.vue' import { nextTick } from 'vue' const { proxy } = getCurrentInstance() const { hasPermiOr } = auth +import { getNameById, getIdByName } from '@/utils/dsSysUtils'; const defaultProps = { children: 'children', @@ -543,7 +544,7 @@ const handleNodeClick = async (node) => { label: item.fldCnName, })) getMetaSecurityData({ - dataAstSrc: node.dataAstSrc, + dataAstSrc: getNameById(node.dataAstSrc), dataAstEngName: fides.data.mdlName+"."+ node.dataAstEngName, }) .then(({ data }) => { diff --git a/vue-fastapi-frontend/src/views/metadataConfig/bizPermiConfig/index.vue b/vue-fastapi-frontend/src/views/metadataConfig/bizPermiConfig/index.vue index d7a2d3d..3c9cebe 100644 --- a/vue-fastapi-frontend/src/views/metadataConfig/bizPermiConfig/index.vue +++ b/vue-fastapi-frontend/src/views/metadataConfig/bizPermiConfig/index.vue @@ -105,7 +105,7 @@