wiki:ERModel

Version 12 (modified by 201165, 8 days ago) ( diff )

--

Nutritioneer | Концептуален дијаграм и ЕР Модел

FIX: Removal of 'creates' relaton

Ентитети и табели

User – сите корисници на целиот систем

  • id (PK, bigint, not nullable)
  • email (text, not nullable)
  • username (text, not nullable)
  • password (text, not nullable)
  • role (enum, not nullable) o User, Administrator, Trainer

Recipe – сите рецепти и нивни информации

  • id (PK, bigint, not nullable)
  • name (text, not nullable)
  • guide (text, not nullable)
  • kcal_sum (numeric, not nullable)

Ingredient – сите намирници и состојки

  • id (PK, bigint, not nullable)
  • name (text, not nullable)
  • description (text, not nullable)
  • energy (numeric, not nullable)
  • kcal (numeric, not nullable)
  • type (enum, not nullable) o Dairy, Meat, Fish, Herb, Carb, Vegetable, Fruit, Other, …

Nutrient – различните хранливи материи кои се неопходни

  • id (PK, bigint, not nullable)
  • quantity (numeric, not nullable)
  • description (text, not nullable)
  • unit (enum, not nullable) o Milligram, gram, microgram
  • type (enum, not nullable) o Macro-nutrient, Micro-nutrient

Restriction – хранлива рестрикција од различна сфера на секојдневието

  • id (PK, bigint, not nullable)
  • description (text, not nullable)
  • type (enum, not nullable) o Vegan, Vegetarian, Halal, Kosher, Pescatarian, Allergens, Keto, …

Post – ентитет кој ке го содржи секој пост на апликацијата

  • id (PK, bigint, not nullable)
  • media (blob, nullable)
  • isPrivate (Boolean, not nullable)
  • isFavourite (Boolean, not nullable)
  • created_by (FK, bigint, not nullable)
  • status (enum, not nullable) o Published, Draft, Archived

Comment – ентитет за коментарите присутни на постовите

  • id (PK, bigint, not nullable)
  • description (text, not nullable)
  • post_id (FK, bigint, not nullable)
  • created_by (FK, bigint, not nullable)

Grocery_List – ентитет за пазарната листа со два начини на вметување записи

  • id (PK, bigint, not nullable)
  • date_time (timestamp, not nullable)
  • notes (text, nullable)
  • isBought (Boolean, not nullable)
  • kcal (numeric, not nullable)
  • user_id(FK, bigint, not nullable)

Intake_Planner – записи за логирање исхрана и создавање meal-plan

  • id (PK, bigint, not nullable)
  • date_time (timestamp, not nullable)
  • notes (text, nullable)
  • kcal (numeric, not nullable)
  • isConsumed (Boolean, not nullable)
  • user_id (FK, bigint, not nullable)

Biometrics – биометрички податоци сместени во ентитет за компаративна анализа

  • id (PK, bigint, not nullable)
  • date(date, not nullable)
  • weight (numeric, nullable)
  • height (numeric, nullable)
  • age (numeric, nullable)
  • muscle_fat_ratio (numeric, nullable)
  • user_id (FK, bigint, not nullable)

Релациски табели

Recipe_Contains_Ingeredient

  • recipe_id (FK, bigint, non nullable)
  • ingredient_id (FK, text, non nullable)
  • ingredient_quantity (numeric, non nullable)
  • PK (recipe_id, ingredient_id)

Ingredient_Contains_Nutrient

  • ingredient_id (FK, text, non nullable)
  • nutrient_id (FK, bigint, non nullable)
  • quantitiy (numeric, non nullable)
  • PK (ingredient_id, nutrient_id)

Recipe_Contains_Restriction

  • restriction_id (FK, bigint, non nullable)
  • recipe_id (FK, bigint, non nullable)
  • PK (recipe_id, restriction_id)

Grocery_List_Bulk_Add_Ingredient

  • list_id (FK, bigint, non nullable)
  • recipe_id (FK, bigint, non nullable)
  • PK (list_id, recipe_id)

Grocery_List_Single_Add_Ingredient

  • list_id (FK, bigint, non nullable)
  • ingredient_id (FK, text, non nullable)
  • buy_quantity (numeric, non nullable)
  • PK (list_id, ingredient_id)

Intake_Planner_save_to_list_Post

  • planner_id (FK, bigint, not nullable)
  • post_id (FK, bigint, not nullable)
  • PK (planner_id, post_id)

Релации

RECIPE posts_on POST | 1:N

POST has COMMENT | 1:N

USER add COMMENT | 1:N

INTAKE_PLANER save_to_list POST | M:N

USER create RECIPE 1:N

USER record_intake INTAKE_PLANNER | 1:N

USER record BIOMETRICS | 1:N

RECIPE contains INGREDIENT | M:N

GROCERY_LIST add_bulk_ingedients INGREDIENT (from RECIPE) | M:N

GROCERY_LIST add_single_ingredient IGREDIENT | M:N

INGREDIENT contains NUTRIENT | M:N

USER modify GROCERY_LIST | 1:N

Навигација низ проектот

​Почетна страна

Фаза Име на фаза Статус
P0 ​Дефинирање проект Одобрен
P1 ​Концептуален дизајн и ЕР Дијаграм Одобрен
P2 ​Логички и физички дизајн - DDL Pending Confirmation
P3 ​Кориснички/апикациски сценарија со базата на податоци Pending Confirmation
P4 ​Протип со основни функционалности WIP
М1 Презентација на прототип WIP
P5 ​Нормализација и оптимизација на дизајн WIP
P6 ​Напредни извештаи од базата WIP
P7 ​Понапреден развој на базата WIP
P8 ​Напреден апликативен развој WIP
P9 ​Дополнителни имплементации WIP
М2 Финализиран проект WIP

(Trac навигација)

Attachments (4)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.