algorithms.py 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. from fastapi import APIRouter
  2. from loguru import logger
  3. from app.controllers.algorithms.graph_coloring import get_graph_coloring
  4. from app.models.domain.algorithms import GraphColoringRequest, GraphColoringResponse
  5. from app.models.domain.algorithms import AttendeesRecommendationRequest, AttendeesRecommendationResponse
  6. router = APIRouter()
  7. @router.get('/status')
  8. async def get_living_condition():
  9. return {'message': 'alive'}
  10. @router.post('/graph-coloring', response_model=GraphColoringResponse)
  11. async def get_graph_coloring_result(graph: GraphColoringRequest):
  12. is_solvable, colored = await get_graph_coloring(graph.graph)
  13. solution = {
  14. 'is_solvable': is_solvable,
  15. 'colored': colored
  16. }
  17. return solution
  18. @router.post('/attendees-recommendation', response_model=AttendeesRecommendationResponse)
  19. async def get_recommended(meeting_info: AttendeesRecommendationRequest):
  20. return {
  21. 'code': 200,
  22. 'message': 'Test',
  23. 'data': {
  24. 'userIdList': []
  25. }
  26. }