Compare commits

...

2 Commits

Author SHA1 Message Date
xueyinfei 673ef69411 Merge remote-tracking branch 'origin/master' 1 month ago
xueyinfei c1ad000b26 元数据模块bug修复 1 month ago
  1. 235
      vue-fastapi-backend/module_admin/controller/datastd_controller.py
  2. 10
      vue-fastapi-backend/module_admin/dao/datastd_dao.py
  3. 28
      vue-fastapi-backend/module_admin/entity/vo/datastd_vo.py
  4. 5
      vue-fastapi-backend/module_admin/service/datastd_service.py
  5. 2
      vue-fastapi-backend/module_admin/service/meta_service.py
  6. 13
      vue-fastapi-frontend/src/views/meta/metaInfo/index.vue

235
vue-fastapi-backend/module_admin/controller/datastd_controller.py

@ -6,23 +6,28 @@ from config.get_db import get_db
from module_admin.entity.vo.user_vo import CurrentUserModel from module_admin.entity.vo.user_vo import CurrentUserModel
from module_admin.annotation.log_annotation import Log from module_admin.annotation.log_annotation import Log
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.entity.vo.datastd_vo import DataStdCodeModel,DataStdDictApprModel,DataStdCodeApprModel, DataStdCodePageQueryModel, DeleteDataStdModel,DataStdDictModel,DataStdDictPageQueryModel,DataStdMainModel,DataStdMainPageQueryModel,DataStdMainApprModel from module_admin.entity.vo.datastd_vo import DataStdCodeModel, DataStdDictApprModel, DataStdCodeApprModel, \
DataStdCodePageQueryModel, DeleteDataStdModel, DataStdDictModel, DataStdDictPageQueryModel, DataStdMainModel, \
DataStdMainPageQueryModel, DataStdMainApprModel, StdDictNoPageParam
from module_admin.service.datastd_service import DataStdService from module_admin.service.datastd_service import DataStdService
from module_admin.service.login_service import LoginService from module_admin.service.login_service import LoginService
from utils.log_util import logger from utils.log_util import logger
from utils.page_util import PageResponseModel from utils.page_util import PageResponseModel
from utils.response_util import ResponseUtil from utils.response_util import ResponseUtil
import uuid import uuid
from module_admin.entity.vo.data_ast_content_vo import DataCatalogPageQueryModel, DeleteDataCatalogModel,DataCatalogResponseWithChildren,DataAssetCatalogTreeResponse,DataCatalogMovedRequest,DataCatalogMergeRequest,DataCatalogChild,DataCatalogMoverelRequest from module_admin.entity.vo.data_ast_content_vo import DataCatalogPageQueryModel, DeleteDataCatalogModel, \
DataCatalogResponseWithChildren, DataAssetCatalogTreeResponse, DataCatalogMovedRequest, DataCatalogMergeRequest, \
DataCatalogChild, DataCatalogMoverelRequest
from pydantic_validation_decorator import ValidateFields from pydantic_validation_decorator import ValidateFields
from utils.common_util import bytes2file_response from utils.common_util import bytes2file_response
datastdController = APIRouter(prefix='/datastd', dependencies=[Depends(LoginService.get_current_user)]) datastdController = APIRouter(prefix='/datastd', dependencies=[Depends(LoginService.get_current_user)])
#标准代码相关API # 标准代码相关API
@datastdController.get( @datastdController.get(
'/stdcode/code/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/list', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_std_code_list( async def get_std_code_list(
request: Request, request: Request,
@ -31,62 +36,85 @@ async def get_std_code_list(
): ):
code_page_query_result = await DataStdService.get_std_code_list_services(query_db, code_page_query, is_page=True) code_page_query_result = await DataStdService.get_std_code_list_services(query_db, code_page_query, is_page=True)
return ResponseUtil.success(model_content=code_page_query_result) return ResponseUtil.success(model_content=code_page_query_result)
@datastdController.get( @datastdController.get(
'/stdcode/Appr/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/Appr/list', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_appr_std_code_list( async def get_appr_std_code_list(
request: Request, request: Request,
code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query), code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
code_page_query_result = await DataStdService.get_appr_std_code_list_services(query_db, code_page_query, is_page=True) code_page_query_result = await DataStdService.get_appr_std_code_list_services(query_db, code_page_query,
is_page=True)
return ResponseUtil.success(model_content=code_page_query_result) return ResponseUtil.success(model_content=code_page_query_result)
@datastdController.get( @datastdController.get(
'/stdcode/code/maplist', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/maplist', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_std_code_map_list( async def get_std_code_map_list(
request: Request, request: Request,
code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query), code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
code_page_query_result = await DataStdService.get_std_code_map_list_services(query_db, code_page_query, is_page=True) code_page_query_result = await DataStdService.get_std_code_map_list_services(query_db, code_page_query,
is_page=True)
return ResponseUtil.success(model_content=code_page_query_result) return ResponseUtil.success(model_content=code_page_query_result)
@datastdController.get( @datastdController.get(
'/stdcode/code/maplist2', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/maplist2', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_std_code_map_list2( async def get_std_code_map_list2(
request: Request, request: Request,
code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query), code_page_query: DataStdCodePageQueryModel = Depends(DataStdCodePageQueryModel.as_query),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
code_page_query_result = await DataStdService.get_std_main_map_list_services(query_db, code_page_query, is_page=True) code_page_query_result = await DataStdService.get_std_main_map_list_services(query_db, code_page_query,
is_page=True)
return ResponseUtil.success(model_content=code_page_query_result) return ResponseUtil.success(model_content=code_page_query_result)
@datastdController.get('/stdcode/code/listappr', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
)
@datastdController.get('/stdcode/code/listappr', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
)
async def get_std_code_appr_list( async def get_std_code_appr_list(
request: Request, request: Request,
main_page_query: DataStdCodeApprModel= Depends(DataStdCodeApprModel), main_page_query: DataStdCodeApprModel = Depends(DataStdCodeApprModel),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
main_page_query_result = await DataStdService.get_std_code_appr_list(query_db, main_page_query, is_page=True) main_page_query_result = await DataStdService.get_std_code_appr_list(query_db, main_page_query, is_page=True)
logger.info('获取数据标准列表成功') logger.info('获取数据标准列表成功')
return ResponseUtil.success(data=main_page_query_result) return ResponseUtil.success(data=main_page_query_result)
@datastdController.get( @datastdController.get(
'/stdcode/code/{id}', response_model=DataStdCodeModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/{id}', response_model=DataStdCodeModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def query_detail_code(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_code(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.code_detail_services(query_db, id) config_detail_result = await DataStdService.code_detail_services(query_db, id)
logger.info(f'获取config_id为{id}的信息成功') logger.info(f'获取config_id为{id}的信息成功')
return ResponseUtil.success(data=config_detail_result) return ResponseUtil.success(data=config_detail_result)
@datastdController.get( @datastdController.get(
'/stdcode/codeAppr/{id}', response_model=DataStdCodeModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/codeAppr/{id}', response_model=DataStdCodeModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def query_detail_code_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_code_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.code_appr_detail_services(query_db, id) config_detail_result = await DataStdService.code_appr_detail_services(query_db, id)
logger.info(f'获取config_id为{id}的信息成功') logger.info(f'获取config_id为{id}的信息成功')
return ResponseUtil.success(data=config_detail_result) return ResponseUtil.success(data=config_detail_result)
@datastdController.post('/stdcode/code', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:add'))]) @datastdController.post('/stdcode/code', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:add'))])
@Log(title='代码管理', business_type=BusinessType.INSERT) @Log(title='代码管理', business_type=BusinessType.INSERT)
async def add_std_code( async def add_std_code(
@ -95,7 +123,6 @@ async def add_std_code(
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user), current_user: CurrentUserModel = Depends(LoginService.get_current_user),
): ):
add_std_code.create_by = current_user.user.user_name add_std_code.create_by = current_user.user.user_name
add_std_code.create_time = datetime.now() add_std_code.create_time = datetime.now()
add_std_code.upd_prsn = current_user.user.user_name add_std_code.upd_prsn = current_user.user.user_name
@ -120,18 +147,22 @@ async def edit_std_code(
return ResponseUtil.success(msg=edit_std_code_result.message) return ResponseUtil.success(msg=edit_std_code_result.message)
@datastdController.delete('/stdcode/code/{ids}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:remove'))]) @datastdController.delete('/stdcode/code/{ids}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:remove'))])
@Log(title='代码管理', business_type=BusinessType.DELETE) @Log(title='代码管理', business_type=BusinessType.DELETE)
async def delete_std_code( async def delete_std_code(
request: Request, request: Request,
ids: str, ids: str,
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
delete_std_code = DeleteDataStdModel(ids =ids) delete_std_code = DeleteDataStdModel(ids=ids)
delete_std_code_result = await DataStdService.delete_std_code_services(request, query_db, delete_std_code) delete_std_code_result = await DataStdService.delete_std_code_services(request, query_db, delete_std_code)
logger.info(delete_std_code_result.message) logger.info(delete_std_code_result.message)
return ResponseUtil.success(msg=delete_std_code_result.message) return ResponseUtil.success(msg=delete_std_code_result.message)
@datastdController.delete('/stdcode/codeappr/{ids}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:delete'))])
@datastdController.delete('/stdcode/codeappr/{ids}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:delete'))])
@Log(title='标准代码与代码项管理', business_type=BusinessType.DELETE) @Log(title='标准代码与代码项管理', business_type=BusinessType.DELETE)
async def delete_std_code_with_items_appr( async def delete_std_code_with_items_appr(
request: Request, request: Request,
@ -144,7 +175,10 @@ async def delete_std_code_with_items_appr(
return ResponseUtil.success(msg="提交删除标准代码审批成功") return ResponseUtil.success(msg="提交删除标准代码审批成功")
except Exception as e: except Exception as e:
return ResponseUtil.error(msg=str(e)) return ResponseUtil.error(msg=str(e))
@datastdController.post('/stdcode/codeWithItems', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@datastdController.post('/stdcode/codeWithItems',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT) @Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT)
async def add_std_code_with_items( async def add_std_code_with_items(
request: Request, request: Request,
@ -158,14 +192,17 @@ async def add_std_code_with_items(
code.create_time = datetime.now() code.create_time = datetime.now()
code.upd_prsn = current_user.user.user_name code.upd_prsn = current_user.user.user_name
code.upd_time = datetime.now() code.upd_time = datetime.now()
code.src_sys='公司级' if 'company'==code.cd_type else code.src_sys code.src_sys = '公司级' if 'company' == code.cd_type else code.src_sys
# 传递给服务层,处理标准代码和代码项的添加 # 传递给服务层,处理标准代码和代码项的添加
result = await DataStdService.add_std_code_with_items_services(request, query_db, code, code_item_list) result = await DataStdService.add_std_code_with_items_services(request, query_db, code, code_item_list)
# 返回响应 # 返回响应
logger.info(result.message) logger.info(result.message)
return ResponseUtil.success(msg=result.message) return ResponseUtil.success(msg=result.message)
@datastdController.post('/stdcode/codeWithItems/appr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@datastdController.post('/stdcode/codeWithItems/appr',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT) @Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT)
async def add_std_code_with_items_appr( async def add_std_code_with_items_appr(
request: Request, request: Request,
@ -182,7 +219,10 @@ async def add_std_code_with_items_appr(
return ResponseUtil.success(msg="标准代码及代码项添加成功,等待审批") return ResponseUtil.success(msg="标准代码及代码项添加成功,等待审批")
except Exception as e: except Exception as e:
return ResponseUtil.error(msg=str(e)) return ResponseUtil.error(msg=str(e))
@datastdController.put('/stdcode/codeWithItems', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@datastdController.put('/stdcode/codeWithItems',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:add'))])
@Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT) @Log(title='标准代码与代码项管理', business_type=BusinessType.INSERT)
async def edit_std_code_with_items( async def edit_std_code_with_items(
request: Request, request: Request,
@ -192,7 +232,7 @@ async def edit_std_code_with_items(
current_user: CurrentUserModel = Depends(LoginService.get_current_user), current_user: CurrentUserModel = Depends(LoginService.get_current_user),
): ):
# 设置标准代码的创建和更新时间 # 设置标准代码的创建和更新时间
code.src_sys='公司级' if 'company'==code.cd_type else code.src_sys code.src_sys = '公司级' if 'company' == code.cd_type else code.src_sys
code.upd_prsn = current_user.user.user_name code.upd_prsn = current_user.user.user_name
code.upd_time = datetime.now() code.upd_time = datetime.now()
# 传递给服务层,处理标准代码和代码项的添加 # 传递给服务层,处理标准代码和代码项的添加
@ -203,10 +243,8 @@ async def edit_std_code_with_items(
return ResponseUtil.success(msg=result.message) return ResponseUtil.success(msg=result.message)
@datastdController.put('/stdcode/codeWithItems/appr',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:edit'))])
@datastdController.put('/stdcode/codeWithItems/appr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:codeWithItems:edit'))])
@Log(title='标准代码与代码项管理', business_type=BusinessType.UPDATE) @Log(title='标准代码与代码项管理', business_type=BusinessType.UPDATE)
async def edit_std_code_with_items_appr( async def edit_std_code_with_items_appr(
request: Request, request: Request,
@ -223,24 +261,25 @@ async def edit_std_code_with_items_appr(
except Exception as e: except Exception as e:
return ResponseUtil.error(msg=str(e)) return ResponseUtil.error(msg=str(e))
# ----------------------------------------------------------------数据字典----------------------------------------------------------------------------------------------------
@datastdController.get('/stddict/dict/listappr', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
# ----------------------------------------------------------------数据字典---------------------------------------------------------------------------------------------------- )
@datastdController.get('/stddict/dict/listappr', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
)
async def get_std_dict_appr_list( async def get_std_dict_appr_list(
request: Request, request: Request,
main_page_query: DataStdDictApprModel= Depends(DataStdDictApprModel), main_page_query: DataStdDictApprModel = Depends(DataStdDictApprModel),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
main_page_query_result = await DataStdService.get_std_dict_appr_list(query_db, main_page_query, is_page=True) main_page_query_result = await DataStdService.get_std_dict_appr_list(query_db, main_page_query, is_page=True)
logger.info('获取数据标准列表成功') logger.info('获取数据标准列表成功')
return ResponseUtil.success(data=main_page_query_result) return ResponseUtil.success(data=main_page_query_result)
@datastdController.get( @datastdController.get(
'/stddict/dict/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))] '/stddict/dict/list', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
) )
async def get_std_dict_list( async def get_std_dict_list(
request: Request, request: Request,
@ -253,11 +292,12 @@ async def get_std_dict_list(
@datastdController.get( @datastdController.get(
'/stddict/dict/listNoPage', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))] '/stddict/dict/listNoPage', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
) )
async def get_std_dict_list_no_page( async def get_std_dict_list_no_page(
request: Request, request: Request,
query: str, query: StdDictNoPageParam = Depends(StdDictNoPageParam.as_query),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
dict_page_query_result = await DataStdService.get_std_dict_list_no_page_services(query_db, query) dict_page_query_result = await DataStdService.get_std_dict_list_no_page_services(query_db, query)
@ -265,16 +305,17 @@ async def get_std_dict_list_no_page(
return ResponseUtil.success(data=dict_page_query_result) return ResponseUtil.success(data=dict_page_query_result)
@datastdController.get( @datastdController.get(
'/stddict/dict/{id}', response_model=DataStdDictModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))] '/stddict/dict/{id}', response_model=DataStdDictModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:list'))]
) )
async def query_detail_dict(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_dict(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.dict_detail_services(query_db, id) config_detail_result = await DataStdService.dict_detail_services(query_db, id)
logger.info(f'获取config_id为{id}的信息成功') logger.info(f'获取config_id为{id}的信息成功')
return ResponseUtil.success(data=config_detail_result) return ResponseUtil.success(data=config_detail_result)
@datastdController.post('/stddict/dict', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:add'))]) @datastdController.post('/stddict/dict', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:add'))])
@Log(title='数据字典', business_type=BusinessType.INSERT) @Log(title='数据字典', business_type=BusinessType.INSERT)
async def add_std_dict( async def add_std_dict(
@ -283,7 +324,6 @@ async def add_std_dict(
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user), current_user: CurrentUserModel = Depends(LoginService.get_current_user),
): ):
add_std_dict.create_by = current_user.user.user_name add_std_dict.create_by = current_user.user.user_name
add_std_dict.create_time = datetime.now() add_std_dict.create_time = datetime.now()
add_std_dict.upd_prsn = current_user.user.user_name add_std_dict.upd_prsn = current_user.user.user_name
@ -308,26 +348,32 @@ async def edit_std_dict(
return ResponseUtil.success(msg=edit_std_dict_result.message) return ResponseUtil.success(msg=edit_std_dict_result.message)
@datastdController.delete('/stddict/dict/{ids}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:remove'))]) @datastdController.delete('/stddict/dict/{ids}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stddict:dict:remove'))])
@Log(title='数据字典', business_type=BusinessType.DELETE) @Log(title='数据字典', business_type=BusinessType.DELETE)
async def delete_std_dict( async def delete_std_dict(
request: Request, request: Request,
ids: str, ids: str,
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
delete_std_dict = DeleteDataStdModel(ids =ids) delete_std_dict = DeleteDataStdModel(ids=ids)
delete_std_dict_result = await DataStdService.delete_std_dict_services(request, query_db, delete_std_dict) delete_std_dict_result = await DataStdService.delete_std_dict_services(request, query_db, delete_std_dict)
logger.info(delete_std_dict_result.message) logger.info(delete_std_dict_result.message)
return ResponseUtil.success(msg=delete_std_dict_result.message) return ResponseUtil.success(msg=delete_std_dict_result.message)
# 字典审批接口 # 字典审批接口
@datastdController.get( @datastdController.get(
'/stddict/dictappr/{id}', response_model=DataStdDictModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stddict/dictappr/{id}', response_model=DataStdDictModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def query_detail_dict_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_dict_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.get_std_dict_change_by_id(query_db, id) config_detail_result = await DataStdService.get_std_dict_change_by_id(query_db, id)
logger.info(f'获取数据标准ID为{id}的信息成功') logger.info(f'获取数据标准ID为{id}的信息成功')
return ResponseUtil.success(data=config_detail_result) return ResponseUtil.success(data=config_detail_result)
@datastdController.post('/stddict/dictappr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:add'))]) @datastdController.post('/stddict/dictappr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:add'))])
@Log(title='数据字典', business_type=BusinessType.INSERT) @Log(title='数据字典', business_type=BusinessType.INSERT)
async def add_std_dict_appr( async def add_std_dict_appr(
@ -343,6 +389,8 @@ async def add_std_dict_appr(
add_std_dict_result = await DataStdService.add_std_dict_appr(query_db, add_std_dict) add_std_dict_result = await DataStdService.add_std_dict_appr(query_db, add_std_dict)
logger.info(add_std_dict_result.message) logger.info(add_std_dict_result.message)
return ResponseUtil.success(msg=add_std_dict_result.message) return ResponseUtil.success(msg=add_std_dict_result.message)
@datastdController.put('/stddict/dictappr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:edit'))]) @datastdController.put('/stddict/dictappr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:edit'))])
@Log(title='数据字典', business_type=BusinessType.UPDATE) @Log(title='数据字典', business_type=BusinessType.UPDATE)
async def edit_std_dict_appr( async def edit_std_dict_appr(
@ -356,7 +404,10 @@ async def edit_std_dict_appr(
edit_std_dict_result = await DataStdService.edit_std_dict_appr(query_db, edit_std_dict) edit_std_dict_result = await DataStdService.edit_std_dict_appr(query_db, edit_std_dict)
logger.info(edit_std_dict_result.message) logger.info(edit_std_dict_result.message)
return ResponseUtil.success(msg=edit_std_dict_result.message) return ResponseUtil.success(msg=edit_std_dict_result.message)
@datastdController.delete('/stddict/dictappr/{id}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@datastdController.delete('/stddict/dictappr/{id}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@Log(title='数据字典', business_type=BusinessType.DELETE) @Log(title='数据字典', business_type=BusinessType.DELETE)
async def delete_std_dict_Appr( async def delete_std_dict_Appr(
request: Request, request: Request,
@ -367,13 +418,12 @@ async def delete_std_dict_Appr(
logger.info(delete_std_dict_result.message) logger.info(delete_std_dict_result.message)
return ResponseUtil.success(msg=delete_std_dict_result.message) return ResponseUtil.success(msg=delete_std_dict_result.message)
# ----------------------------------------------------------------标准目录---------------------------------------------------------------------------------------------------- # ----------------------------------------------------------------标准目录----------------------------------------------------------------------------------------------------
@datastdController.get( @datastdController.get(
'/cata/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:list'))] '/cata/list', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:list'))]
) )
async def get_data_catalog_list( async def get_data_catalog_list(
request: Request, request: Request,
@ -381,20 +431,19 @@ async def get_data_catalog_list(
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user), current_user: CurrentUserModel = Depends(LoginService.get_current_user),
): ):
# 设置字段
#设置字段
user_id = current_user.user.user_id user_id = current_user.user.user_id
# 获取分页数据 # 获取分页数据
catalog_page_query_result = await DataStdService.get_catalog_list_services(query_db, catalog_page_query, user_id, is_page=True) catalog_page_query_result = await DataStdService.get_catalog_list_services(query_db, catalog_page_query, user_id,
is_page=True)
logger.info('获取成功') logger.info('获取成功')
return ResponseUtil.success(model_content=catalog_page_query_result) return ResponseUtil.success(model_content=catalog_page_query_result)
@datastdController.get( @datastdController.get(
'/cata/atree',response_model=DataAssetCatalogTreeResponse,dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:atree'))],summary="Data Asset Tree Query" '/cata/atree', response_model=DataAssetCatalogTreeResponse,
dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:atree'))], summary="Data Asset Tree Query"
) )
async def get_data_asset_catalog_tree(query_db: AsyncSession = Depends(get_db)): async def get_data_asset_catalog_tree(query_db: AsyncSession = Depends(get_db)):
try: try:
@ -406,6 +455,7 @@ async def get_data_asset_catalog_tree(query_db: AsyncSession = Depends(get_db)):
logger.error(f"数据资产树获取失败: {str(e)}", exc_info=True) logger.error(f"数据资产树获取失败: {str(e)}", exc_info=True)
return ResponseUtil.error(msg="数据查询异常,请联系管理员") return ResponseUtil.error(msg="数据查询异常,请联系管理员")
@datastdController.post('/cata', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:add'))]) @datastdController.post('/cata', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:add'))])
@ValidateFields(validate_model='add_data_catalog') @ValidateFields(validate_model='add_data_catalog')
@Log(title='标准分类管理', business_type=BusinessType.INSERT) @Log(title='标准分类管理', business_type=BusinessType.INSERT)
@ -426,7 +476,7 @@ async def add_data_catalog(
if add_result.is_success: if add_result.is_success:
if add_catalog.supr_content_onum is not None: if add_catalog.supr_content_onum is not None:
supr_content_onum = add_catalog.supr_content_onum supr_content_onum = add_catalog.supr_content_onum
await DataStdService.edit_catalog_leaf_services(query_db,supr_content_onum, 0) await DataStdService.edit_catalog_leaf_services(query_db, supr_content_onum, 0)
else: else:
logger.error(add_result.message) logger.error(add_result.message)
# 返回标准化响应 # 返回标准化响应
@ -434,6 +484,7 @@ async def add_data_catalog(
msg=add_result.message msg=add_result.message
) )
@datastdController.put('/cata/edit', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:edit'))]) @datastdController.put('/cata/edit', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:edit'))])
@ValidateFields(validate_model='edit_data_catalog') @ValidateFields(validate_model='edit_data_catalog')
@Log(title='标准分类管理', business_type=BusinessType.UPDATE) @Log(title='标准分类管理', business_type=BusinessType.UPDATE)
@ -446,7 +497,6 @@ async def edit_data_catalog(
# 设置审计字段 # 设置审计字段
edit_catalog.upd_prsn = current_user.user.user_name edit_catalog.upd_prsn = current_user.user.user_name
# 调用服务层方法 # 调用服务层方法
edit_result = await DataStdService.edit_catalog_child_services(query_db, edit_catalog) edit_result = await DataStdService.edit_catalog_child_services(query_db, edit_catalog)
logger.info(edit_result.message) logger.info(edit_result.message)
@ -511,6 +561,7 @@ async def removerel_data_ast_catalog(
# 返回标准化响应 # 返回标准化响应
return ResponseUtil.success() return ResponseUtil.success()
@datastdController.put('/cata/moverel', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:edit'))]) @datastdController.put('/cata/moverel', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:edit'))])
@ValidateFields(validate_model='moverel_data_ast_catalog') @ValidateFields(validate_model='moverel_data_ast_catalog')
@Log(title='标准分类管理', business_type=BusinessType.UPDATE) @Log(title='标准分类管理', business_type=BusinessType.UPDATE)
@ -528,20 +579,24 @@ async def moverel_data_ast_catalog(
return ResponseUtil.success() return ResponseUtil.success()
@datastdController.delete('/cata/{content_onums}',
@datastdController.delete('/cata/{content_onums}', dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:remove'))]) dependencies=[Depends(CheckUserInterfaceAuth('system:data_catalog:remove'))])
@Log(title='标准分类管理', business_type=BusinessType.DELETE) @Log(title='标准分类管理', business_type=BusinessType.DELETE)
async def delete_data_catalog(request: Request, content_onums: str, query_db: AsyncSession = Depends(get_db), async def delete_data_catalog(request: Request, content_onums: str, query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user), current_user: CurrentUserModel = Depends(LoginService.get_current_user),
): ):
delete_catalog = DeleteDataCatalogModel(content_onums=content_onums) delete_catalog = DeleteDataCatalogModel(content_onums=content_onums)
delete_catalog_result = await DataStdService.delete_catalog_services(query_db, delete_catalog,user_id=current_user.user.user_id) delete_catalog_result = await DataStdService.delete_catalog_services(query_db, delete_catalog,
user_id=current_user.user.user_id)
logger.info(delete_catalog_result.message) logger.info(delete_catalog_result.message)
return ResponseUtil.success(msg=delete_catalog_result.message) return ResponseUtil.success(msg=delete_catalog_result.message)
#----------------------------------------------数据标准--------------------------------------------------------------------------------------------------------------------------
# ----------------------------------------------数据标准--------------------------------------------------------------------------------------------------------------------------
@datastdController.get( @datastdController.get(
'/stdmain/main/list', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stdmain/main/list', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def get_std_main_list( async def get_std_main_list(
request: Request, request: Request,
@ -551,39 +606,50 @@ async def get_std_main_list(
main_page_query_result = await DataStdService.get_std_main_list(query_db, main_page_query, is_page=True) main_page_query_result = await DataStdService.get_std_main_list(query_db, main_page_query, is_page=True)
logger.info('获取数据标准列表成功') logger.info('获取数据标准列表成功')
return ResponseUtil.success(model_content=main_page_query_result) return ResponseUtil.success(model_content=main_page_query_result)
@datastdController.get( @datastdController.get(
'/stdmain/main/listappr', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stdmain/main/listappr', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def get_std_main_appr_list( async def get_std_main_appr_list(
request: Request, request: Request,
main_page_query: DataStdMainApprModel= Depends(DataStdMainApprModel), main_page_query: DataStdMainApprModel = Depends(DataStdMainApprModel),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
main_page_query_result = await DataStdService.get_std_main_appr_list(query_db, main_page_query, is_page=True) main_page_query_result = await DataStdService.get_std_main_appr_list(query_db, main_page_query, is_page=True)
logger.info('获取数据标准列表成功') logger.info('获取数据标准列表成功')
return ResponseUtil.success(data=main_page_query_result) return ResponseUtil.success(data=main_page_query_result)
@datastdController.get( @datastdController.get(
'/stdmain/main/selectlist', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stdmain/main/selectlist', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def get_std_main_select_list( async def get_std_main_select_list(
request: Request, request: Request,
main_page_query: DataStdMainModel= Depends(DataStdMainModel), main_page_query: DataStdMainModel = Depends(DataStdMainModel),
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
main_query_result = await DataStdService.get_std_main_list_all(query_db, main_page_query) main_query_result = await DataStdService.get_std_main_list_all(query_db, main_page_query)
logger.info('获取数据标准列表成功') logger.info('获取数据标准列表成功')
return ResponseUtil.success(data=main_query_result) return ResponseUtil.success(data=main_query_result)
@datastdController.get( @datastdController.get(
'/stdmain/main/{id}', response_model=DataStdMainModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stdmain/main/{id}', response_model=DataStdMainModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def query_detail_main(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_main(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.get_std_main_by_id(query_db, id) config_detail_result = await DataStdService.get_std_main_by_id(query_db, id)
logger.info(f'获取数据标准ID为{id}的信息成功') logger.info(f'获取数据标准ID为{id}的信息成功')
return ResponseUtil.success(data=config_detail_result) return ResponseUtil.success(data=config_detail_result)
@datastdController.get( @datastdController.get(
'/stdmain/mainappr/{id}', response_model=DataStdMainModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))] '/stdmain/mainappr/{id}', response_model=DataStdMainModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:list'))]
) )
async def query_detail_main_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)): async def query_detail_main_appr(request: Request, id: str, query_db: AsyncSession = Depends(get_db)):
config_detail_result = await DataStdService.get_std_main_change_by_id(query_db, id) config_detail_result = await DataStdService.get_std_main_change_by_id(query_db, id)
@ -608,6 +674,7 @@ async def add_std_main(
logger.info(add_std_main_result.message) logger.info(add_std_main_result.message)
return ResponseUtil.success(msg=add_std_main_result.message) return ResponseUtil.success(msg=add_std_main_result.message)
@datastdController.post('/stdmain/mainAppr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:add'))]) @datastdController.post('/stdmain/mainAppr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:add'))])
@Log(title='数据标准', business_type=BusinessType.INSERT) @Log(title='数据标准', business_type=BusinessType.INSERT)
async def add_std_main_appr( async def add_std_main_appr(
@ -638,6 +705,8 @@ async def edit_std_main(
edit_std_main_result = await DataStdService.edit_std_main(query_db, edit_std_main) edit_std_main_result = await DataStdService.edit_std_main(query_db, edit_std_main)
logger.info(edit_std_main_result.message) logger.info(edit_std_main_result.message)
return ResponseUtil.success(msg=edit_std_main_result.message) return ResponseUtil.success(msg=edit_std_main_result.message)
@datastdController.put('/stdmain/mainAppr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:edit'))]) @datastdController.put('/stdmain/mainAppr', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:edit'))])
@Log(title='数据标准', business_type=BusinessType.UPDATE) @Log(title='数据标准', business_type=BusinessType.UPDATE)
async def edit_std_main_appr( async def edit_std_main_appr(
@ -652,7 +721,9 @@ async def edit_std_main_appr(
logger.info(edit_std_main_result.message) logger.info(edit_std_main_result.message)
return ResponseUtil.success(msg=edit_std_main_result.message) return ResponseUtil.success(msg=edit_std_main_result.message)
@datastdController.delete('/stdmain/main/{id}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@datastdController.delete('/stdmain/main/{id}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@Log(title='数据标准', business_type=BusinessType.DELETE) @Log(title='数据标准', business_type=BusinessType.DELETE)
async def delete_std_main( async def delete_std_main(
request: Request, request: Request,
@ -662,7 +733,10 @@ async def delete_std_main(
delete_std_main_result = await DataStdService.delete_std_main(query_db, id) delete_std_main_result = await DataStdService.delete_std_main(query_db, id)
logger.info(delete_std_main_result.message) logger.info(delete_std_main_result.message)
return ResponseUtil.success(msg=delete_std_main_result.message) return ResponseUtil.success(msg=delete_std_main_result.message)
@datastdController.delete('/stdmain/mainAppr/{id}', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@datastdController.delete('/stdmain/mainAppr/{id}',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@Log(title='数据标准', business_type=BusinessType.DELETE) @Log(title='数据标准', business_type=BusinessType.DELETE)
async def delete_std_main_Appr( async def delete_std_main_Appr(
request: Request, request: Request,
@ -672,20 +746,27 @@ async def delete_std_main_Appr(
delete_std_main_result = await DataStdService.delete_std_main_Appr(query_db, id) delete_std_main_result = await DataStdService.delete_std_main_Appr(query_db, id)
logger.info(delete_std_main_result.message) logger.info(delete_std_main_result.message)
return ResponseUtil.success(msg=delete_std_main_result.message) return ResponseUtil.success(msg=delete_std_main_result.message)
@datastdController.put('/stdmain/mainonum', dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@datastdController.put('/stdmain/mainonum',
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdmain:main:remove'))])
@Log(title='数据标准', business_type=BusinessType.DELETE) @Log(title='数据标准', business_type=BusinessType.DELETE)
async def change_std_main_onum( async def change_std_main_onum(
request: Request, request: Request,
edit_std_main: DataStdMainModel, edit_std_main: DataStdMainModel,
query_db: AsyncSession = Depends(get_db), query_db: AsyncSession = Depends(get_db),
): ):
delete_std_main_result = await DataStdService.change_std_main_onum(query_db, edit_std_main.onum,edit_std_main.belt_data_std_content) delete_std_main_result = await DataStdService.change_std_main_onum(query_db, edit_std_main.onum,
edit_std_main.belt_data_std_content)
logger.info(delete_std_main_result.message) logger.info(delete_std_main_result.message)
return ResponseUtil.success(msg=delete_std_main_result.message) return ResponseUtil.success(msg=delete_std_main_result.message)
# 标准代码映射图谱 # 标准代码映射图谱
@datastdController.get( @datastdController.get(
'/stdcode/code/mapstdlistOld/{id}', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/mapstdlistOld/{id}', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_code_std_map_list( async def get_code_std_map_list(
request: Request, request: Request,
@ -698,7 +779,8 @@ async def get_code_std_map_list(
@datastdController.get( @datastdController.get(
'/stdcode/code/mapstdlist/{id}', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/mapstdlist/{id}', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_code_map_list( async def get_code_map_list(
request: Request, request: Request,
@ -708,8 +790,11 @@ async def get_code_map_list(
code_page_query_result = await DataStdService.get_code_map_list(query_db, id) code_page_query_result = await DataStdService.get_code_map_list(query_db, id)
logger.info('获取列配置列表成功') logger.info('获取列配置列表成功')
return ResponseUtil.success(data=code_page_query_result) return ResponseUtil.success(data=code_page_query_result)
@datastdController.get( @datastdController.get(
'/stdcode/code/mapstdlist2/{id}', response_model=PageResponseModel, dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))] '/stdcode/code/mapstdlist2/{id}', response_model=PageResponseModel,
dependencies=[Depends(CheckUserInterfaceAuth('datastd:stdcode:code:list'))]
) )
async def get_code_map_list2( async def get_code_map_list2(
request: Request, request: Request,

10
vue-fastapi-backend/module_admin/dao/datastd_dao.py

@ -1,7 +1,8 @@
from sqlalchemy import delete, select, update, desc,or_,not_ from sqlalchemy import delete, select, update, desc,or_,not_
from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.ext.asyncio import AsyncSession
from module_admin.entity.do.datastd_do import DataStdCode,DataStdDict,DataAstContent,DataAstContentRela,DataStdMain,DataStdMainAppr,DataStdDictAppr,DataStdCodeAppr from module_admin.entity.do.datastd_do import DataStdCode,DataStdDict,DataAstContent,DataAstContentRela,DataStdMain,DataStdMainAppr,DataStdDictAppr,DataStdCodeAppr
from module_admin.entity.vo.datastd_vo import DataStdCodeModel,DataStdDictModel,DataStdMainModel,DataStdMainApprModel,DataStdDictApprModel,DataStdCodeApprModel from module_admin.entity.vo.datastd_vo import DataStdCodeModel, DataStdDictModel, DataStdMainModel, \
DataStdMainApprModel, DataStdDictApprModel, DataStdCodeApprModel, StdDictNoPageParam
from module_admin.entity.do.dept_do import SysDept from module_admin.entity.do.dept_do import SysDept
from utils.page_util import PageUtil from utils.page_util import PageUtil
from sqlalchemy.orm import aliased from sqlalchemy.orm import aliased
@ -400,7 +401,7 @@ class DataStdDao:
return col_list return col_list
@classmethod @classmethod
async def get_std_dict_list_no_page(cls, db: AsyncSession, query: str): async def get_std_dict_list_no_page(cls, db: AsyncSession, query: StdDictNoPageParam):
""" """
获取 DataStdDict 的列表信息支持模糊查询和分页 获取 DataStdDict 的列表信息支持模糊查询和分页
:param db: ORM对象 :param db: ORM对象
@ -411,9 +412,10 @@ class DataStdDao:
# 构建查询条件 # 构建查询条件
filters = [] filters = []
filters.append(or_( filters.append(or_(
DataStdDict.data_dict_cn_name.like(f"%{query}%"), DataStdDict.data_dict_cn_name.like(f"%{query.queryStr}%"),
DataStdDict.data_dict_eng_name.like(f"%{query}%") DataStdDict.data_dict_eng_name.like(f"%{query.queryStr}%")
)) ))
filters.append(DataStdDict.src_sys == query.ssysCd)
# c1 = aliased(DataStdDict) # 技术部门 # c1 = aliased(DataStdDict) # 技术部门
# 构建查询语句 # 构建查询语句
query = ( query = (

28
vue-fastapi-backend/module_admin/entity/vo/datastd_vo.py

@ -38,7 +38,9 @@ class DataStdCodeApprModel(DataStdCodeModel):
flowId: Optional[str] = Field(default=None, description='审批Id') flowId: Optional[str] = Field(default=None, description='审批Id')
oldInstId: Optional[str] = Field(default=None, description='原始正式id') oldInstId: Optional[str] = Field(default=None, description='原始正式id')
compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)') compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)')
approStatus: Optional[str] = Field(default=None, description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)') approStatus: Optional[str] = Field(default=None,
description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)')
@as_query @as_query
class DataStdCodePageQueryModel(DataStdCodeModel): class DataStdCodePageQueryModel(DataStdCodeModel):
@ -56,6 +58,7 @@ class DeleteDataStdModel(BaseModel):
model_config = ConfigDict(alias_generator=to_camel) model_config = ConfigDict(alias_generator=to_camel)
ids: str = Field(description='需要删除的参数主键') ids: str = Field(description='需要删除的参数主键')
class DataStdDictModel(BaseModel): class DataStdDictModel(BaseModel):
""" """
标准字典表对应Pydantic模型 (Standard Dictionary Table Pydantic Model) 标准字典表对应Pydantic模型 (Standard Dictionary Table Pydantic Model)
@ -79,6 +82,7 @@ class DataStdDictModel(BaseModel):
data_std_no: Optional[str] = Field(default=None, description='数据标准编号') data_std_no: Optional[str] = Field(default=None, description='数据标准编号')
data_dict_stat: Optional[str] = Field(default=None, description='字典状态(1:有效 0:无效)') data_dict_stat: Optional[str] = Field(default=None, description='字典状态(1:有效 0:无效)')
@as_query @as_query
class DataStdDictPageQueryModel(DataStdDictModel): class DataStdDictPageQueryModel(DataStdDictModel):
""" """
@ -86,12 +90,17 @@ class DataStdDictPageQueryModel(DataStdDictModel):
""" """
page_num: int = Field(default=1, description='当前页码') page_num: int = Field(default=1, description='当前页码')
page_size: int = Field(default=10, description='每页记录数') page_size: int = Field(default=10, description='每页记录数')
class DataStdDictApprModel(DataStdDictModel): class DataStdDictApprModel(DataStdDictModel):
changeType: Optional[str] = Field(default=None, description='变更类型') changeType: Optional[str] = Field(default=None, description='变更类型')
flowId: Optional[str] = Field(default=None, description='审批Id') flowId: Optional[str] = Field(default=None, description='审批Id')
oldInstId: Optional[str] = Field(default=None, description='原始正式id') oldInstId: Optional[str] = Field(default=None, description='原始正式id')
compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)') compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)')
approStatus: Optional[str] = Field(default=None, description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)') approStatus: Optional[str] = Field(default=None,
description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)')
class DataStdMainModel(BaseModel): class DataStdMainModel(BaseModel):
""" """
标准代码表对应Pydantic模型 (Standard Code Table Pydantic Model) 标准代码表对应Pydantic模型 (Standard Code Table Pydantic Model)
@ -121,6 +130,8 @@ class DataStdMainModel(BaseModel):
data_std_src: Optional[str] = Field(default=None, description='标准来源') data_std_src: Optional[str] = Field(default=None, description='标准来源')
data_clas: Optional[str] = Field(default=None, description='数据类别') data_clas: Optional[str] = Field(default=None, description='数据类别')
typical_fld: Optional[str] = Field(default=None, description='典型字段') typical_fld: Optional[str] = Field(default=None, description='典型字段')
@as_query @as_query
class DataStdMainPageQueryModel(DataStdMainModel): class DataStdMainPageQueryModel(DataStdMainModel):
""" """
@ -128,9 +139,20 @@ class DataStdMainPageQueryModel(DataStdMainModel):
""" """
page_num: int = Field(default=1, description='当前页码') page_num: int = Field(default=1, description='当前页码')
page_size: int = Field(default=10, description='每页记录数') page_size: int = Field(default=10, description='每页记录数')
@as_query
class StdDictNoPageParam(BaseModel):
model_config = ConfigDict(alias_generator=to_camel, from_attributes=True)
queryStr: Optional[str] = Field(default=None, description='查询数据字典名称或代码')
ssysCd: Optional[str] = Field(default=None, description='系统名称')
class DataStdMainApprModel(DataStdMainModel): class DataStdMainApprModel(DataStdMainModel):
changeType: Optional[str] = Field(default=None, description='变更类型') changeType: Optional[str] = Field(default=None, description='变更类型')
flowId: Optional[str] = Field(default=None, description='审批Id') flowId: Optional[str] = Field(default=None, description='审批Id')
oldInstId: Optional[str] = Field(default=None, description='原始正式id') oldInstId: Optional[str] = Field(default=None, description='原始正式id')
compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)') compareId: Optional[str] = Field(default=None, description='原始数据id(用于对比差异)')
approStatus: Optional[str] = Field(default=None, description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)') approStatus: Optional[str] = Field(default=None,
description='审批状态(waiting,申请中,pending审核中,succeed,rejected已审核,canceled已取消)')

5
vue-fastapi-backend/module_admin/service/datastd_service.py

@ -3,6 +3,9 @@ from sqlalchemy.ext.asyncio import AsyncSession
from exceptions.exception import ServiceException from exceptions.exception import ServiceException
from module_admin.dao.datastd_dao import DataStdDao from module_admin.dao.datastd_dao import DataStdDao
from module_admin.entity.vo.common_vo import CrudResponseModel from module_admin.entity.vo.common_vo import CrudResponseModel
from module_admin.entity.vo.datastd_vo import DataStdCodeModel, DeleteDataStdModel, DataStdDictModel, DataStdMainModel,\
DataStdMainApprModel, DataStdDictApprModel, DataStdCodeApprModel, DataStdCodePageQueryModel, StdDictNoPageParam
from utils.common_util import CamelCaseUtil
from module_admin.entity.vo.datastd_vo import DataStdCodeModel,DeleteDataStdModel,DataStdDictModel,DataStdMainModel,DataStdMainApprModel,DataStdDictApprModel,DataStdCodeApprModel,DataStdCodePageQueryModel from module_admin.entity.vo.datastd_vo import DataStdCodeModel,DeleteDataStdModel,DataStdDictModel,DataStdMainModel,DataStdMainApprModel,DataStdDictApprModel,DataStdCodeApprModel,DataStdCodePageQueryModel
import uuid import uuid
from module_admin.entity.vo.approval_vo import ApplyModel from module_admin.entity.vo.approval_vo import ApplyModel
@ -625,7 +628,7 @@ class DataStdService:
return col_list_result return col_list_result
@classmethod @classmethod
async def get_std_dict_list_no_page_services(cls, query_db: AsyncSession, query: str): async def get_std_dict_list_no_page_services(cls, query_db: AsyncSession, query: StdDictNoPageParam):
""" """
获取列配置列表信息service 获取列配置列表信息service

2
vue-fastapi-backend/module_admin/service/meta_service.py

@ -170,7 +170,7 @@ class MetaService:
fldNullRate=column.fld_null_rate if column else None, fldNullRate=column.fld_null_rate if column else None,
dataDictId=column.data_dict_id if column else None, dataDictId=column.data_dict_id if column else None,
recStat=column.rec_stat if column else None, recStat=column.rec_stat if column else None,
updTime=column.upd_time if column else None updTime=column.upd_time.isoformat() if column else None
) )
return json.dumps(columnDict) return json.dumps(columnDict)

13
vue-fastapi-frontend/src/views/meta/metaInfo/index.vue

@ -351,7 +351,7 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="血缘关系" name="bloodRelation"> <el-tab-pane label="血缘关系" name="bloodRelation">
<div style="width: 100%;height: 100%"> <div style="width: 100%;height: 100%">
<blood-relation :currentTable="currentMetaData" :data="bloodRelation"></blood-relation> <blood-relation v-if="activeColumnTab === 'bloodRelation'" :currentTable="currentMetaData" :data="bloodRelation"></blood-relation>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="存储过程" name="proc"> <el-tab-pane label="存储过程" name="proc">
@ -851,7 +851,14 @@
} }
function remoteStddict(query){ function remoteStddict(query){
if (query !== ""){ if (query !== ""){
let param = {query:query} let param = {queryStr:query}
let dbList = databaseList.value[0].children;
for (let i = 0; i < dbList.length; i++) {
if (currentMetaData.value.ssysCd.toUpperCase() === dbList[i].name.toUpperCase()){
param.ssysCd = dbList[i].id + ""
}
}
listStdDictNoPage(param).then(res=>{ listStdDictNoPage(param).then(res=>{
stddictOptions.value = res.data stddictOptions.value = res.data
}) })
@ -886,7 +893,7 @@
function changeBloodOption(){ function changeBloodOption(){
if (procId.value === -1){ if (procId.value === -1){
proxy.$modal.msgWarning("此表暂无血缘,请执行存储过程跑批任务后查看"); proxy.$modal.msgWarning("此表暂无血缘,请执行存储过程跑批任务后查看");
bloodRelation.value = [] bloodRelation.value = {}
}else { }else {
getMetaDataBloodRelship(procId.value).then(res=>{ getMetaDataBloodRelship(procId.value).then(res=>{
bloodRelation.value = res.data bloodRelation.value = res.data

Loading…
Cancel
Save