1
0
Fork 0
TakwayPlatform/app/routes/user_route.py

71 lines
2.5 KiB
Python

from fastapi import APIRouter, HTTPException, status
from ..controllers.user_controller import *
from fastapi import Depends
from sqlalchemy.orm import Session
from ..dependencies.database import get_db
router = APIRouter()
#角色创建接口
@router.post('/users', response_model=UserCrateResponse)
async def create_user(user: UserCrateRequest,db: Session = Depends(get_db)):
response = await create_user_handler(user,db)
return response
#角色更新接口
@router.put('/users/{user_id}', response_model=UserUpdateResponse)
async def update_user(user_id: int, user: UserUpdateRequest, db: Session = Depends(get_db)):
response = await update_user_handler(user_id, user, db)
return response
#角色删除接口
@router.delete('/users/{user_id}', response_model=UserDeleteResponse)
async def delete_user(user_id: int, db: Session = Depends(get_db)):
response = await delete_user_handler(user_id, db)
return response
#角色查询接口
@router.get('/users/{user_id}', response_model=UserQueryResponse)
async def get_user(user_id: int, db: Session = Depends(get_db)):
response = await get_user_handler(user_id, db)
return response
#硬件绑定接口
@router.post('/users/hardware',response_model=HardwareBindResponse)
async def bind_hardware(hardware: HardwareBindRequest, db: Session = Depends(get_db)):
response = await bind_hardware_handler(hardware, db)
return response
#硬件解绑接口
@router.delete('/users/hardware/{hardware_id}',response_model=HardwareUnbindResponse)
async def unbind_hardware(hardware_id: int, db: Session = Depends(get_db)):
response = await unbind_hardware_handler(hardware_id, db)
return response
#硬件换绑
@router.put('/users/hardware/{hardware_id}/bindchange',response_model=HardwareChangeBindResponse)
async def change_bind_hardware(hardware_id: int, user: HardwareChangeBindRequest, db: Session = Depends(get_db)):
response = await change_bind_hardware_handler(hardware_id, user, db)
return response
#硬件信息更新
@router.put('/users/hardware/{hardware_id}/info',response_model=HardwareUpdateResponse)
async def update_hardware_info(hardware_id: int, hardware: HardwareUpdateRequest, db: Session = Depends(get_db)):
response = await update_hardware_handler(hardware_id, hardware, db)
return response
#硬件查询
@router.get('/users/hardware/{hardware_id}',response_model=HardwareQueryResponse)
async def get_hardware(hardware_id: int, db: Session = Depends(get_db)):
response = await get_hardware_handler(hardware_id, db)
return response