Child API (Bolalar boshqaruvi)
Ushbu bo'limda foydalanuvchining farzandlari profillarini yaratish, tahrirlash va boshqarish tushuntiriladi.
1. Yangi bola profili yaratish
Foydalanuvchi tizimga kirgandan so'ng kamida bitta bola profili yaratishi kerak.
- URL:
/client/children - Metod:
POST - Headers:
Authorization: Bearer {access_token}
Request Body
{
"name": "Ali",
"birthDate": "2023-06-15",
"gender": "MALE",
"weight": 3.5,
"height": 52,
"headCircumference": 34,
"isPremature": false,
"feedingType": "BREAST",
"allergies": ["Sut"],
"chronicConditions": [],
"notes": "Sog'lom"
}
Agar
weightyokiheightyuborilsa, tizim avtomatik ravishda bolaning tug'ilgan kuniga moslab birinchi Growth Record (o'sish ko'rsatkichi)ni yaratadi.
Gender Enum - Gender Enum
FeedingType Enum - FeedingType Enum
2. Barcha bolalar ro'yxatini olish
Foydalanuvchiga tegishli barcha faol bolalar ro'yxati.
- URL:
/client/children - Metod:
GET
Response
[
{
"id": "uuid",
"name": "Ali",
"birthDate": "2023-06-15",
"gender": "MALE",
"ageLabel": "9 oy 11 kun",
"isSelected": true,
"metrics": {
"weight": 8.5,
"height": 72,
"headCircumference": 44,
"bmi": 16.4,
"recordedAt": "2024-03-26"
}
}
]
Frontend Logikasi:
isSelected: Bu flag hozirda ilovada qaysi bola profili tanlanganini bildiradi.ageLabel: Backend tomonidan hisoblangan tayyor matn (masalan: "2 yosh 3 oy"). Buni to'g'ridan-to'g'ri UI'da ko'rsatish mumkin.metrics: Bolaga tegishli eng oxirgi o'lchov natijalari.
3. Faol bolani o'zgartirish (Switch Child)
Agar foydalanuvchida bir nechta bola bo'lsa, joriy ishlatilayotgan bolani almashtirish.
- URL:
/client/children/active/:id - Metod:
PATCH
Response
{
"activeChildId": "new-uuid"
}
4. Bola profilini tahrirlash va o'chirish
- Tahrirlash:
PATCH /client/children/:id - O'chirish:
DELETE /client/children/:id(Soft delete ishlatiladi).
