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.
		
		
		
		
			
				
					42 lines
				
				1.8 KiB
			
		
		
			
		
	
	
					42 lines
				
				1.8 KiB
			| 
								 
											8 months ago
										 
									 | 
							
								from typing import List
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								from fastapi import APIRouter, Depends, Request
							 | 
						||
| 
								 | 
							
								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.entity.vo.dataint_vo import TsmcbPageObject, SaveTsmcbModel
							 | 
						||
| 
								 | 
							
								from module_admin.service.login_service import LoginService
							 | 
						||
| 
								 | 
							
								from module_admin.service.tsmcb_service import TsmcbService
							 | 
						||
| 
								 | 
							
								from utils.response_util import ResponseUtil
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								tsmcbController = APIRouter(prefix='/dataint/tsmcb', dependencies=[Depends(LoginService.get_current_user)])
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@tsmcbController.get("/list")
							 | 
						||
| 
								 | 
							
								async def get_tsmcb_list(request: Request, tsmcb_query: TsmcbPageObject = Depends(TsmcbPageObject.as_query),
							 | 
						||
| 
								 | 
							
								                        query_db: AsyncSession = Depends(get_db),
							 | 
						||
| 
								 | 
							
								                        current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
							 | 
						||
| 
								 | 
							
								    meta_query_result = await TsmcbService.get_tsmcb_list_services(query_db, tsmcb_query, current_user)
							 | 
						||
| 
								 | 
							
								    return ResponseUtil.success(data=meta_query_result)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@tsmcbController.post("/save")
							 | 
						||
| 
								 | 
							
								async def save_tsmcb(request: Request,
							 | 
						||
| 
								 | 
							
								                    saveTsmcbModel: SaveTsmcbModel,
							 | 
						||
| 
								 | 
							
								                    query_db: AsyncSession = Depends(get_db),
							 | 
						||
| 
								 | 
							
								                    current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
							 | 
						||
| 
								 | 
							
								    result = await TsmcbService.save_tsmcb(query_db, saveTsmcbModel, current_user)
							 | 
						||
| 
								 | 
							
								    return ResponseUtil.success(msg=result.message)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@tsmcbController.post("/delete")
							 | 
						||
| 
								 | 
							
								async def delete_tsmcb(request: Request,
							 | 
						||
| 
								 | 
							
								                    array: List[str],
							 | 
						||
| 
								 | 
							
								                    query_db: AsyncSession = Depends(get_db),
							 | 
						||
| 
								 | 
							
								                    current_user: CurrentUserModel = Depends(LoginService.get_current_user)):
							 | 
						||
| 
								 | 
							
								    result = await TsmcbService.delete_tsmcb(query_db, array)
							 | 
						||
| 
								 | 
							
								    return ResponseUtil.success(msg=result.message)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 |