Newer
Older
safe-algo-pro / apis / device_scene_realtion.py
from typing import List, Optional

from fastapi import APIRouter, Depends, Query
from sqlmodel import Session

from apis.base import StandardResponse, standard_response
from db.database import get_db
from entity.device_scene_relation import DeviceSceneRelationInfo, DeviceSceneRelation

from services.device_scene_relation_service import DeviceSceneRelationService

router = APIRouter()


@router.get("/get_by_device", response_model=StandardResponse[DeviceSceneRelationInfo])
def list_by_device(
        device_id: int,
        db: Session = Depends(get_db)):
    service = DeviceSceneRelationService(db)
    scene = service.get_device_scene(device_id)
    return standard_response(data=scene)


@router.post("/update_by_device", response_model=StandardResponse[DeviceSceneRelation])
def update_by_device(device_id: int, scene_id: int,
                     db: Session = Depends(get_db)):
    service = DeviceSceneRelationService(db)
    relation = service.update_relation_by_device(device_id, scene_id)
    return standard_response(data=relation)