Skip to content

Commit f50cdce

Browse files
authored
Merge pull request #193 from moevm/frontend/get-cleanday-logs-#171
Добавлено отображение логов субботника
2 parents a6f491e + e466c0e commit f50cdce

File tree

7 files changed

+484
-226
lines changed

7 files changed

+484
-226
lines changed

backend/src/api/cleanday.py

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from data.query import GetCleandaysParams, CleandayListResponse, GetCleanday, UserListResponse, GetMembersParams, \
1010
PaginationParams, CleandayLogListResponse, CommentListResponse, UpdateCleanday, CreateCleanday, CreateImages, \
1111
ImageListResponse, UpdateParticipation, CreateParticipation, CleandayResults, GetCleandayLogsParams, \
12-
GetCommentsParams, CreateComment, GetMembersResponse
12+
GetCommentsParams, CreateComment, GetMembersResponse, RequirementListResponse
1313
from repo.cleanday_repo import CleandayRepo
1414
from repo.client import database
1515
import repo.model as repo_model
@@ -400,3 +400,15 @@ async def end_cleanday(cleanday_id: str, results: CleandayResults,
400400
else:
401401
trans.commit_transaction()
402402
return
403+
404+
405+
@router.get("/{cleanday_id}/requirements")
406+
async def get_cleanday_requirements(cleanday_id: str) -> RequirementListResponse:
407+
"""
408+
Получение списка требований для конкретного субботника
409+
"""
410+
requirements = static_cleanday_repo.get_raw_requirements(cleanday_id)
411+
if requirements is None:
412+
raise HTTPException(status_code=404, detail="Cleanday not found")
413+
414+
return RequirementListResponse(contents=requirements, total_count=len(requirements))

backend/src/data/query.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from datetime import datetime
22
from enum import StrEnum, auto
3-
from typing import Optional
3+
from typing import Optional, List
44

55
from pydantic import BaseModel, Field
66

@@ -378,3 +378,8 @@ class CreateComment(BaseModel):
378378
class GetMembersResponse(BaseModel):
379379
users: list[GetMember]
380380
total_count: int
381+
382+
383+
class RequirementListResponse(BaseModel):
384+
contents: List[Requirement]
385+
total_count: int

frontend/src/api/cleanday/endpoints.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ export const CREATE_CLEANDAY_COMMENT: string = '/api/cleandays/{id}/comments';
1818
// Получение субботника по id - GET
1919
export const GET_CLEANDAY: string = '/api/cleandays/{id}';
2020

21+
// Получение требований к участию в субботнике - GET
22+
export const GET_CLEANDAY_REQUIREMENTS: string = '/api/cleandays/{id}/requirements';
23+
2124
// Получение массива субботников по id - GET
2225
//export const GET_CLEANDAYS_BY_ID: string = '';
2326

0 commit comments

Comments
 (0)