You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							99 lines
						
					
					
						
							4.6 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							99 lines
						
					
					
						
							4.6 KiB
						
					
					
				| from fastapi import APIRouter, Depends, Request, UploadFile, File | |
| from sqlalchemy.ext.asyncio import AsyncSession | |
| from config.get_db import get_db | |
| from module_admin.entity.vo.user_vo import CurrentUserModel | |
| from module_admin.service.login_service import LoginService | |
| from utils.response_util import ResponseUtil | |
| from utils.common_util import bytes2file_response | |
| 
 | |
| from module_admin.service.meta_service import MetaService | |
| from module_admin.entity.vo.meta_vo import MetaPageObject, MetaColObject, SuppleModel, MetaBusinessRelShipObject, \ | |
|     MetaProcQueryObject | |
| 
 | |
| metaController = APIRouter(prefix='/dasset', dependencies=[Depends(LoginService.get_current_user)]) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/get") | |
| async def get_meta_list(request: Request, meta_query: MetaPageObject = Depends(MetaPageObject.as_query), | |
|                         query_db: AsyncSession = Depends(get_db), | |
|                         current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     meta_query_result = await MetaService.get_meta_list_services(query_db, meta_query, current_user) | |
|     return ResponseUtil.success(data=meta_query_result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/column/list") | |
| async def get_meta_list(request: Request, meta_query: MetaColObject = Depends(MetaColObject.as_query), | |
|                         query_db: AsyncSession = Depends(get_db)): | |
|     meta_query_result = await MetaService.get_meta_col_list_services(query_db, meta_query) | |
|     return ResponseUtil.success(data=meta_query_result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/clas/list") | |
| async def get_meta_clas_list(request: Request, query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.get_meta_clas_list_services(query_db) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.post("/meta/supp") | |
| async def meta_supp(request: Request, | |
|                     supple: SuppleModel, | |
|                     query_db: AsyncSession = Depends(get_db), | |
|                     current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     result = await MetaService.meta_supp(query_db, supple, current_user) | |
|     return ResponseUtil.success(msg=result.message) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/getMetaInfoApplyBusinessDetail") | |
| async def getMetaInfoApplyBusinessDetail(request: Request, | |
|                                          businessId: str, | |
|                                          query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.get_meta_apply_detail_services(query_db, businessId) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/getTable/{tableId}") | |
| async def getTableByTableId(request: Request, | |
|                             tableId: int, | |
|                             query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.get_table_by_id(query_db, tableId) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/business/relation") | |
| async def getBusinessRelationShip(request: Request, | |
|                                   meta_query: MetaBusinessRelShipObject = Depends(MetaBusinessRelShipObject.as_query), | |
|                                   query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.getBusinessRelationShip(query_db, meta_query) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/business/proc") | |
| async def getBusinessProc(request: Request, | |
|                           meta_query: MetaProcQueryObject = Depends(MetaProcQueryObject.as_query), | |
|                           query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.getMetaProc(query_db, meta_query) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.get("/meta/blood/relation/{procId}") | |
| async def getBloodRelationShip(request: Request, | |
|                                procId: int, | |
|                                query_db: AsyncSession = Depends(get_db)): | |
|     result = await MetaService.getBloodRelationShip(query_db, procId) | |
|     return ResponseUtil.success(data=result) | |
| 
 | |
| 
 | |
| @metaController.post("/meta/importTemplate") | |
| async def export_system_user_template(request: Request, query_db: AsyncSession = Depends(get_db)): | |
|     meta_import_template_result = await MetaService.get_meta_import_template_services() | |
|     return ResponseUtil.streaming(data=bytes2file_response(meta_import_template_result)) | |
| 
 | |
| 
 | |
| @metaController.post('/meta/importData') | |
| async def batch_import_meta_data( | |
|         request: Request, | |
|         file: UploadFile = File(...), | |
|         query_db: AsyncSession = Depends(get_db), | |
|         current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     batch_import_result = await MetaService.batch_import_meta_services(query_db, file, current_user) | |
|     return ResponseUtil.success(msg=batch_import_result)
 | |
| 
 |