| | 1 | = UseCaseA - Редовен корисник |
| | 2 | |
| | 3 | === UseCaseA01 – Креирање рецепт |
| | 4 | * Актер кој го иницира: Редовен корисник |
| | 5 | * Други актери: Нема |
| | 6 | **Опис:** Корисникот внесува сопствен рецепт, ги наведува состојките со нивните количини и го означува со диететските ограничувања на кои рецептот одговара. Системот ја пресметува вкупната енергетска вредност на рецептот врз основа на податоците за состојките, наместо корисникот да ја внесува вредноста. |
| | 7 | |
| | 8 | * Корисникот ја избира опцијата „Креирај рецепт“. |
| | 9 | * Системот прикажува форма со следните полиња: |
| | 10 | 1. Име |
| | 11 | 2. Упатство (чекори за подготовка) |
| | 12 | 3. Број на порции |
| | 13 | 4. Листа на состојки (состојка + количина во грами) |
| | 14 | 5. Диететски ограничувања |
| | 15 | * Корисникот ги внесува податоците и ја испраќа формата. |
| | 16 | * Системот го зачувува рецептот и го доделува како сопственост на најавениот корисник. |
| | 17 | {{{ |
| | 18 | INSERT INTO recipe (name, guide, kcal_sum, servings, user_email) |
| | 19 | VALUES (:name, :guide, 0, :servings, :user_email) |
| | 20 | RETURNING id; |
| | 21 | }}} |
| | 22 | * Системот внесува еден запис за секоја избрана состојка. |
| | 23 | {{{ |
| | 24 | INSERT INTO recipe_contains_ingredient (recipe_id, ingredient_name, ingredient_quantity) |
| | 25 | VALUES (:recipe_id, :ingredient_name, :quantity); |
| | 26 | }}} |
| | 27 | * Системот внесува еден запис за секое избрано диететско ограничување. |
| | 28 | {{{ |
| | 29 | INSERT INTO recipe_contains_restriction (recipe_id, restriction_id) |
| | 30 | VALUES (:recipe_id, :restriction_id); |
| | 31 | }}} |
| | 32 | |
| | 33 | === UseCaseA02 – Внесување оброк во планерот за внес |
| | 34 | * Актер кој го иницира: Редовен корисник |
| | 35 | * Други актери: Нема |
| | 36 | **Опис:** Корисникот внесува што јадел во одредено време со прикачување на еден или повеќе споделени оброци во записот во планерот. Системот пресметува една порција за секој прикачен оброк и автоматски ја пресметува енергетската вредност на записот. |
| | 37 | * Корисникот ја избира опцијата „Внеси оброк“. |
| | 38 | * Системот прикажува форма со следните полиња: |
| | 39 | 1. Датум и време |
| | 40 | 2. Забелешки (на пример: „Ручек дома“) |
| | 41 | 3. Оброци за прикачување (избрани од доводот или од омилени) |
| | 42 | 4. Веќе консумирано (да / не) |
| | 43 | * Корисникот ги внесува податоците и ја испраќа формата. |
| | 44 | * Системот го внесува записот во планерот. |
| | 45 | {{{ |
| | 46 | INSERT INTO intake_planner (date_time, notes, kcal, is_consumed, user_email) |
| | 47 | VALUES (:date_time, :notes, 0, :is_consumed, :user_email) |
| | 48 | RETURNING id; |
| | 49 | }}} |
| | 50 | * Системот го поврзува секој избран оброк со записот. |
| | 51 | {{{ |
| | 52 | INSERT INTO intake_planner_save_to_list_post (planner_id, post_id) |
| | 53 | VALUES (:planner_id, :post_id); |
| | 54 | }}} |
| | 55 | |
| | 56 | |
| | 57 | === [https://develop.finki.ukim.mk/projects/nutritioneer/wiki/UseCaseModel ⬅️Назад кон општ преглед] |