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.
		
		
		
		
		
			
		
			
				
					
					
						
							75 lines
						
					
					
						
							3.4 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							75 lines
						
					
					
						
							3.4 KiB
						
					
					
				| import json | |
| import os | |
| import shutil | |
| from fastapi import APIRouter, Depends, Request, UploadFile, File, Form | |
| 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.approval_vo import ApplyModel, OperateModel, ApprovalQueryObject, SaveConfModel | |
| from module_admin.service.login_service import LoginService | |
| from module_admin.service.approval_service import ApprovalService | |
| from utils.log_util import logger | |
| from utils.response_util import ResponseUtil | |
| 
 | |
| approvalController = APIRouter(prefix='/approval', dependencies=[Depends(LoginService.get_current_user)]) | |
| 
 | |
| 
 | |
| @approvalController.post("/apply") | |
| async def flow_apply(request: Request, | |
|                      apply: ApplyModel, | |
|                      query_db: AsyncSession = Depends(get_db)): | |
|     apply_result = await ApprovalService.apply_services(query_db, apply) | |
|     return ResponseUtil.success(msg=apply_result.message) | |
| 
 | |
| 
 | |
| @approvalController.post("/operate") | |
| async def flow_operate(request: Request, | |
|                        operate: OperateModel, | |
|                        query_db: AsyncSession = Depends(get_db), | |
|                        current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     operate_result = await ApprovalService.operate_services(query_db, operate, current_user) | |
|     return ResponseUtil.success(msg=operate_result.message) | |
| 
 | |
| 
 | |
| @approvalController.get("/list") | |
| async def flow_list(request: Request, | |
|                     query_param: ApprovalQueryObject = Depends(ApprovalQueryObject.as_query), | |
|                     query_db: AsyncSession = Depends(get_db), | |
|                     current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     meta_query_result = await ApprovalService.get_flow_list_services(query_db, query_param, current_user) | |
|     return ResponseUtil.success(data=meta_query_result) | |
| 
 | |
| 
 | |
| @approvalController.get("/waitingTotal") | |
| async def getWaitingTotal(request: Request, | |
|                           query_db: AsyncSession = Depends(get_db), | |
|                           current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     meta_query_result = await ApprovalService.get_waiting_total_services(query_db, current_user) | |
|     return ResponseUtil.success(data=meta_query_result) | |
| 
 | |
| 
 | |
| @approvalController.post("/cancelApply/{flow_id}") | |
| async def cancel_apply(request: Request, | |
|                        flow_id: str, | |
|                        query_db: AsyncSession = Depends(get_db), | |
|                        current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     operate_result = await ApprovalService.cancel_apply_services(query_db, flow_id, current_user) | |
|     return ResponseUtil.success(msg=operate_result.message) | |
| 
 | |
| 
 | |
| @approvalController.get("/conf/list") | |
| async def get_conf_list(request: Request, | |
|                         module: str, | |
|                         query_db: AsyncSession = Depends(get_db), | |
|                         current_user: CurrentUserModel = Depends(LoginService.get_current_user)): | |
|     meta_query_result = await ApprovalService.get_conf_list_services(module, query_db, current_user) | |
|     return ResponseUtil.success(data=meta_query_result) | |
| 
 | |
| 
 | |
| @approvalController.post("/conf/save") | |
| async def save_flow_config( | |
|         saveConfModel: SaveConfModel, | |
|         query_db: AsyncSession = Depends(get_db), | |
| ): | |
|     operate_result = await ApprovalService.save_flow_config_services(query_db, saveConfModel) | |
|     return ResponseUtil.success(msg=operate_result.message)
 | |
| 
 |