Changes between Version 5 and Version 6 of ERModel


Ignore:
Timestamp:
09/13/26 21:59:10 (2 weeks ago)
Author:
223235
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ERModel

    v5 v6  
    66
    77
    8 **ADMIN**
    9 * user_id int, примарен клуч DEFAULT 1
    10 * CONSTRAINT fk_admin_user
    11         FOREIGN KEY (user_id)
    12         REFERENCES api_user(user_id)
    13         ON UPDATE CASCADE
    14         ON DELETE SET DEFAULT
    15 
    16 **ALLERGEN**
    17 * allergen_id serial, примарен клуч
    18 * allergen_name string, задолжителен и уникатен
    19 * allergen_description string
    20 
    21 **API_USER**
    22 * user_id serial, примарен клуч
    23 * user_first_name string, задолжителен
    24 * user_last_name string, задолжителен
    25 * user_email string, задолжителен и уникатен
    26 * user_phone_no string, уникатен
    27 * user_password_hash TEXT, задолжителен
    28 
    29 **CATEGORY**
    30 * cat_id serial, примарен клуч
    31 * cat_name string, задолжителен и уникатен
    32 * cat_description string
    33 
    34 **COMPANY**
    35 * company_id serial, примарен клуч
    36 * company_name string, задолжителен и уникатен
    37 * company_address string, задолжителен
    38 
    39 **COMPANY_ORDER**
    40 * comp_order_id serial, примарен клуч
    41 * company_id int, задолжителен
    42 * delivery_id int, уникатен
    43 * CONSTRAINT fk_company_order_company
    44     FOREIGN KEY (company_id)
    45     REFERENCES company(company_id)
    46     ON UPDATE CASCADE
    47     ON DELETE RESTRICT
    48 * CONSTRAINT fk_company_order_delivery
    49     FOREIGN KEY (delivery_id)
    50     REFERENCES delivery(delivery_id)
    51     ON UPDATE CASCADE
    52     ON DELETE SET NULL
    53 
    54 **CONTRACT**
    55 * contract_id serial, примарен клуч
    56 * company_id int, задолжителен
    57 * rest_id int, задолжителен
    58 * contract_status_id int, задолжителен
    59 * contract_start_date date, задолжителен
    60 * contract_end_date date, задолжителен
    61 * CONSTRAINT fk_contract_company
    62     FOREIGN KEY (company_id)
    63     REFERENCES company(company_id)
    64     ON UPDATE CASCADE
    65     ON DELETE RESTRICT
    66 * CONSTRAINT fk_contract_restaurant
    67     FOREIGN KEY (rest_id)
    68     REFERENCES restaurant(rest_id)
    69     ON UPDATE CASCADE
    70     ON DELETE RESTRICT
    71 * CONSTRAINT fk_contract_status
    72     FOREIGN KEY (contract_status_id)
    73     REFERENCES contract_status(contract_status_id)
    74     ON UPDATE CASCADE
    75     ON DELETE RESTRICT
    76 * CONSTRAINT chk_contract_dates CHECK (contract_end_date >= contract_start_date)
    77 
    78 **CONTRACT_STATUS**
    79 * contract_status_id serial, примарен клуч
    80 * contract_status_name string, задолжителен и уникатен
    81 
    82 **CUSTOMER**
    83 *  user_id int PRIMARY KEY DEFAULT 1
    84 * CONSTRAINT fk_customer_user
    85     FOREIGN KEY (user_id)
    86     REFERENCES api_user(user_id)
    87     ON UPDATE CASCADE
    88     ON DELETE SET DEFAULT
    89 
    90 **CUSTOMER_ORDER**
    91 * order_id serial, примарен клуч
    92 * comp_order_id int, задолжителен
    93 * company_customer_user_id int, задолжителен DEFAULT 1
    94 * order_datetime timestamp, задолжителен DEFAULT CURRENT_TIMESTAMP
    95 * o_status_id int, задолжителен
    96 * order_total NUMERIC(10,2), задолжителен
    97 * CONSTRAINT fk_customer_order_company_order
    98     FOREIGN KEY (comp_order_id)
    99     REFERENCES company_order(comp_order_id)
    100     ON UPDATE CASCADE
    101     ON DELETE RESTRICT
    102 * CONSTRAINT fk_customer_order_customer
    103     FOREIGN KEY (company_customer_user_id)
    104     REFERENCES company_customer(user_id)
    105     ON UPDATE CASCADE
    106     ON DELETE SET DEFAULT
    107 * CONSTRAINT fk_customer_order_status
    108     FOREIGN KEY (o_status_id)
    109     REFERENCES order_status(o_status_id)
    110     ON UPDATE CASCADE
    111     ON DELETE RESTRICT
    112 * CONSTRAINT chk_order_total CHECK (order_total >= 0)
    113    
    114 **DELIVERY**
    115 * delivery_id serial, примарен клуч
    116 * delivery_date DATE, задолжителен DEFAULT CURRENT_DATE
    117 * delivery_notes string
    118 * d_status_id int, задолжителен
    119 * driver_user_id int, задолжителен DEFAULT 1
    120 * CONSTRAINT fk_delivery_status
    121     FOREIGN KEY (d_status_id)
    122     REFERENCES delivery_status(d_status_id)
    123     ON UPDATE CASCADE
    124     ON DELETE RESTRICT
    125 * CONSTRAINT fk_delivery_driver
    126     FOREIGN KEY (driver_user_id)
    127     REFERENCES driver(user_id)
    128     ON UPDATE CASCADE
    129     ON DELETE SET DEFAULT
    130 
    131 **DELIVERY_REVIEW**
    132 * delivery_review_id serial, примарен клуч
    133 * delivery_id int, задолжителен и уникатен
    134 * del_review_courier_rating int, задолжителен
    135 * del_review_speed_rating int, задолжителен
    136 * CONSTRAINT fk_delivery_review_delivery
    137         FOREIGN KEY (delivery_id)
    138         REFERENCES delivery(delivery_id)
    139         ON UPDATE CASCADE
    140         ON DELETE CASCADE
    141 * CONSTRAINT chk_delivery_review_courier_rating CHECK (del_review_courier_rating BETWEEN 1 AND 5)
    142 * CONSTRAINT chk_delivery_review_speed_rating CHECK (del_review_speed_rating BETWEEN 1 AND 5)
    143 
    144 **DELIVERY_STATUS**
    145 * d_status_id serial, примарен клуч
    146 * d_status_name string, задолжителен и уникатен
    147 
    148 **DRINK**
    149 * drink_id serial, примарен клуч
    150 * rest_id int, задолжителен
    151 * drink_name string, задолжителен
    152 * drink_milliliters int, задолжителен
    153 * drink_price NUMERIC(10,2), задолжителен
    154 * CONSTRAINT fk_drink_restaurant
    155     FOREIGN KEY (rest_id)
    156     REFERENCES restaurant(rest_id)
    157     ON UPDATE CASCADE
    158     ON DELETE RESTRICT
    159 * CONSTRAINT chk_drink_milliliters CHECK (drink_milliliters > 0)
    160 * CONSTRAINT chk_drink_price CHECK (drink_price >= 0)
    161 * CONSTRAINT uq_drink_restaurant_name UNIQUE (rest_id, drink_name)
    162 
    163 **DRIVER**
    164 * user_id int PRIMARY KEY DEFAULT 1
    165 * CONSTRAINT fk_driver_user
    166     FOREIGN KEY (user_id)
    167     REFERENCES api_user(user_id)
    168     ON UPDATE CASCADE
    169     ON DELETE SET DEFAULT
    170 
    171 **CUSTOMER_LOYALTY**
    172 * cus_loyalty_id serial, примарен клуч
    173 * user_id int, задолжителен и уникатен
    174 * cus_loyalty_curr_points int, задолжителен DEFAULT 0
    175 * cus_loyalty_joined_at timestamp, задолжителен DEFAULT CURRENT_TIMESTAMP
    176 * cus_loyalty_status_id int, задолжителен
    177 * tier_id int, задолжителен
    178 * CONSTRAINT fk_customer_loyalty_user
    179     FOREIGN KEY (user_id)
    180     REFERENCES customer(user_id)
    181     ON UPDATE CASCADE
    182     ON DELETE CASCADE
    183 * CONSTRAINT fk_customer_loyalty_status
    184     FOREIGN KEY (cus_loyalty_status_id)
    185     REFERENCES customer_loyalty_status(cus_loyalty_status_id)
    186     ON UPDATE CASCADE
    187     ON DELETE RESTRICT
    188 * CONSTRAINT fk_customer_loyalty_tier
    189     FOREIGN KEY (tier_id)
    190     REFERENCES loyalty_tier(tier_id)
    191     ON UPDATE CASCADE
    192     ON DELETE RESTRICT
    193 * CONSTRAINT chk_customer_loyalty_points CHECK (cus_loyalty_curr_points >= 0)
    194 
    195 **CUSTOMER_LOYALTY_STATUS**
    196 * cus_loyalty_status_id serial, примарен клуч
    197 * cus_loyalty_status_name string, задолжителен и уникатен
    198 
    199 **INGREDIENT**
    200 * ingr_id serial, примарен клуч
    201 * ingr_name string, задолжителен и уникатен
    202 
    203 **LOYALTY_TIER**
    204 * tier_id serial, примарен клуч
    205 * tier_name string, задолжителен и уникатен
    206 * tier_minimum_points int, задолжителен
    207 * tier_maximum_points int, задолжителен
    208 * tier_discount_percentage NUMERIC(5,2), задолжителен
    209 * tier_free_delivery_eligibility bool, задолжителен DEFAULT FALSE
    210 * tier_priority_support bool, задолжителен DEFAULT FALSE
    211 * tier_created_at DATE, задолжителен DEFAULT CURRENT_DATE
    212 * tier_update_at timestamp, задолжителен DEFAULT CURRENT_TIMESTAMP
    213 * CONSTRAINT chk_tier_points_nonnegative CHECK (tier_minimum_points >= 0 AND tier_maximum_points >= 0)
    214 * CONSTRAINT chk_tier_points_range CHECK (tier_maximum_points >= tier_minimum_points)
    215 * CONSTRAINT chk_tier_discount CHECK (tier_discount_percentage >= 0 AND tier_discount_percentage <= 100)
    216 
    217 **LUNCH_TIME**
    218 * lunch_time_id serial, примарен клуч
    219 * comp_order_id int
    220 * contract_id int, задолжителен
    221 * lunch_start timestamp, задолжителен
    222 * lunch_end timestamp, задолжителен
    223 * lunch_preorder_offset int, задолжителен DEFAULT 0
    224 * lunch_weekday string, задолжителен
    225 * CONSTRAINT fk_lunch_time_company_order
    226     FOREIGN KEY (comp_order_id)
    227     REFERENCES company_order(comp_order_id)
    228     ON UPDATE CASCADE
    229     ON DELETE SET NULL
    230 * CONSTRAINT fk_lunch_time_contract
    231     FOREIGN KEY (contract_id)
    232     REFERENCES contract(contract_id)
    233     ON UPDATE CASCADE
    234     ON DELETE CASCADE
    235 * CONSTRAINT chk_lunch_time_offset CHECK (lunch_preorder_offset >= 0)
    236 * CONSTRAINT chk_lunch_weekday CHECK (
    237     lunch_weekday IN ('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday')
    238 )
    239 * CONSTRAINT chk_lunch_interval CHECK (lunch_end > lunch_start)
    240 
    241 **MEAL**
    242 * meal_id serial, примарен клуч
    243 * cat_id int, задолжителен
    244 * rest_id int, задолжителен
    245 * meal_name string, задолжителен
    246 * meal_description string
    247 * meal_price NUMERIC(10,2), задолжителен
    248 * meal_weight int, задолжителен
    249 * CONSTRAINT fk_meal_category
    250     FOREIGN KEY (cat_id)
    251     REFERENCES category(cat_id)
    252     ON UPDATE CASCADE
    253     ON DELETE RESTRICT
    254 * CONSTRAINT fk_meal_restaurant
    255     FOREIGN KEY (rest_id)
    256     REFERENCES restaurant(rest_id)
    257     ON UPDATE CASCADE
    258     ON DELETE RESTRICT
    259 * CONSTRAINT chk_meal_price CHECK (meal_price >= 0)
    260 * CONSTRAINT chk_meal_weight CHECK (meal_weight > 0)
    261 * CONSTRAINT uq_meal_restaurant_name UNIQUE (rest_id, meal_name)
    262 
    263 **ORDER_REVIEW**
    264 * order_review_id serial, примарен клуч
    265 * order_id int, задолжителен и уникатен
    266 * order_review_food_rating int, задолжителен
    267 * order_review_res_rating int, задолжителен
    268 * CONSTRAINT fk_order_review_order
    269     FOREIGN KEY (order_id)
    270     REFERENCES customer_order(order_id)
    271     ON UPDATE CASCADE
    272     ON DELETE CASCADE
    273 * CONSTRAINT chk_order_review_food_rating CHECK (order_review_food_rating BETWEEN 1 AND 5)
    274 * CONSTRAINT chk_order_review_res_rating CHECK (order_review_res_rating BETWEEN 1 AND 5)
    275 
    276 **ORDER_STATUS**
    277 * o_status_id serial, примарен клуч
    278 * o_status_name string, задолжителен и уникатен
    279 
    280 **RESTAURANT**
    281 * rest_id serial, примарен клуч
    282 * rest_name string, задолжителен
    283 * rest_email string, задолжителен и уникатен
    284 * rest_location string, задолжителен
    285 * rest_phone string, задолжителен и уникатен
    286 * rest_website string, уникатен
    287 
    288 **REVIEW**
    289 * review_id serial, примарен клуч
    290 * review_comment string
    291 * review_created_at timestamp, задолжителен DEFAULT CURRENT_TIMESTAMP
    292 * review_rating int, задолжителен
    293 * CONSTRAINT chk_review_rating CHECK (review_rating BETWEEN 1 AND 5)
    294 
    295 ==== Релациски табели
    296 
    297 **Order_Meal**
    298 * order_id int, задолжителен
    299 * meal_id int, задолжителен
    300 * quantity int, задолжителен DEFAULT 1
    301 * PRIMARY KEY (order_id, meal_id), примарен клуч
    302 * CONSTRAINT fk_order_meal_order
    303     FOREIGN KEY (order_id)
    304     REFERENCES customer_order(order_id)
    305     ON UPDATE CASCADE
    306     ON DELETE CASCADE
    307 * CONSTRAINT fk_order_meal_meal
    308     FOREIGN KEY (meal_id)
    309     REFERENCES meal(meal_id)
    310     ON UPDATE CASCADE
    311     ON DELETE RESTRICT
    312 * CONSTRAINT chk_order_meal_quantity CHECK (quantity > 0)
    313 
    314 **Order_Drink**
    315 * order_id int, задолжителен
    316 * drink_id int, задолжителен
    317 * quantity int, задолжителен DEFAULT 1
    318 * PRIMARY KEY (order_id, drink_id), примарен клуч
    319 * CONSTRAINT fk_order_drink_order
    320     FOREIGN KEY (order_id)
    321     REFERENCES customer_order(order_id)
    322     ON UPDATE CASCADE
    323     ON DELETE CASCADE
    324 * CONSTRAINT fk_order_drink_drink
    325     FOREIGN KEY (drink_id)
    326     REFERENCES drink(drink_id)
    327     ON UPDATE CASCADE
    328     ON DELETE RESTRICT
    329 * CONSTRAINT chk_order_drink_quantity CHECK (quantity > 0)
    330 
    331 **Meal_Ingredient**
    332 * meal_id int, задолжителен
    333 * ingr_id int, задолжителен
    334 * PRIMARY KEY (meal_id, ingr_id), примарен клуч
    335 * CONSTRAINT fk_meal_ingredient_meal
    336     FOREIGN KEY (meal_id)
    337     REFERENCES meal(meal_id)
    338     ON UPDATE CASCADE
    339     ON DELETE CASCADE
    340 * CONSTRAINT fk_meal_ingredient_ingredient
    341     FOREIGN KEY (ingr_id)
    342     REFERENCES ingredient(ingr_id)
    343     ON UPDATE CASCADE
    344     ON DELETE CASCADE
    345 
    346 **Allergen_Ingredient**
    347 * allergen_id int, задолжителен
    348 * ingr_id int, задолжителен
    349 * PRIMARY KEY (allergen_id, ingr_id), примарен клуч
    350 * CONSTRAINT fk_allergen_ingredient_allergen
    351     FOREIGN KEY (allergen_id)
    352     REFERENCES allergen(allergen_id)
    353     ON UPDATE CASCADE
    354     ON DELETE CASCADE
    355 * CONSTRAINT fk_allergen_ingredient_ingredient
    356     FOREIGN KEY (ingr_id)
    357     REFERENCES ingredient(ingr_id)
    358     ON UPDATE CASCADE
    359     ON DELETE CASCADE
     8== Објаснување на ентитетите
     9
     10Овој документ ги опишува сите ентитети и нивните атрибути дефинирани во последната верзија на SQL-шемата – schema7.0_dll.sql.
     11
     12=== API_USER
     13
     14Ги содржи основните податоци за сите корисници на системот. Секој корисник има една улога и може да биде администратор, клиент или доставувач.
     15
     16- user_id – единствен идентификатор на корисникот и примарен клуч.
     17- user_first_name – име на корисникот.
     18- user_last_name – презиме на корисникот.
     19- user_email – единствена адреса за електронска пошта со проверка на форматот.
     20- user_phone_no – изборен и единствен телефонски број со проверка на форматот.
     21- user_role – улога на корисникот; дозволени вредности се api_admin, customer и driver.
     22
     23=== COMPANY
     24
     25Ги претставува компаниите чии вработени можат да нарачуваат преку системот.
     26
     27- company_id – единствен идентификатор на компанијата и примарен клуч.
     28- company_name – единствено име на компанијата.
     29- company_address – адреса на компанијата на која се организира доставата.
     30
     31=== RESTAURANT
     32
     33Ги содржи рестораните што нудат храна и пијалоци и соработуваат со компаниите.
     34
     35- rest_id – единствен идентификатор на ресторанот и примарен клуч.
     36- rest_name – име на ресторанот.
     37- rest_email – единствена адреса за електронска пошта со проверка на форматот.
     38- rest_location – физичка локација или адреса на ресторанот.
     39- rest_phone – единствен телефонски број со проверка на форматот.
     40- rest_website – изборна и единствена веб-страница на ресторанот.
     41
     42=== CATEGORY
     43
     44Служи за групирање на јадењата според нивниот вид.
     45
     46- cat_id – единствен идентификатор на категоријата и примарен клуч.
     47- cat_name – единствено име на категоријата.
     48- cat_description – изборен опис на категоријата.
     49
     50=== CONTRACT_STATUS
     51
     52Ги дефинира можните статуси на договорите меѓу компаниите и рестораните.
     53
     54- contract_status_id – единствен идентификатор на статусот и примарен клуч.
     55- contract_status_name – единствен назив на статусот на договорот.
     56
     57=== CUSTOMER_LOYALTY_STATUS
     58
     59Ги дефинира можните статуси на членството во програмата за лојалност.
     60
     61- cus_loyalty_status_id – единствен идентификатор на статусот и примарен клуч.
     62- cus_loyalty_status_name – единствен назив на статусот на лојалност.
     63
     64=== DELIVERY_STATUS
     65
     66Ги дефинира состојбите низ кои може да помине една достава.
     67
     68- d_status_id – единствен идентификатор на статусот и примарен клуч.
     69- d_status_name – единствен назив на статусот на доставата.
     70
     71=== ORDER_STATUS
     72
     73Ги дефинира можните статуси на клиентските нарачки.
     74
     75- o_status_id – единствен идентификатор на статусот и примарен клуч.
     76- o_status_name – единствен назив на статусот на нарачката.
     77
     78=== INGREDIENT
     79
     80Ги претставува состојките што се користат за подготовка на јадењата.
     81
     82- ingr_id – единствен идентификатор на состојката и примарен клуч.
     83- ingr_name – единствено име на состојката.
     84
     85=== ALERGEN
     86
     87Ги содржи алергените што можат да бидат присутни во состојките.
     88
     89- alergen_id – единствен идентификатор на алергенот и примарен клуч.
     90- alergen_name – единствено име на алергенот.
     91- alergen_description – изборен опис на алергенот и неговото влијание.
     92
     93=== LOYALTY_TIER
     94
     95Ги дефинира нивоата и поволностите во програмата за лојалност.
     96
     97- tier_id – единствен идентификатор на нивото и примарен клуч.
     98- tier_name – единствено име на нивото.
     99- tier_minimum_points – минимален број поени потребни за нивото; не смее да биде негативен.
     100- tier_maximum_points – максимален број поени за нивото; мора да биде еднаков или поголем од минималниот број.
     101- tier_discount_percentage – процент на попуст во интервал од 0 до 100.
     102- tier_free_delivery_eligibility – означува дали нивото овозможува бесплатна достава.
     103- tier_priority_support – означува дали нивото овозможува приоритетна поддршка.
     104- tier_created_at – датум на создавање на нивото.
     105- tier_update_at – датум и време на последното ажурирање на нивото.
     106
     107=== REVIEW
     108
     109Ги чува заедничките информации за рецензиите на нарачките и доставите.
     110
     111- review_id – единствен идентификатор на рецензијата и примарен клуч.
     112- review_comment – изборен текстуален коментар.
     113- review_created_at – датум и време на создавање на рецензијата.
     114- review_rating – општа оцена во интервал од 1 до 5.
     115
     116=== API_ADMIN
     117
     118Ги претставува администраторите и рестораните со кои тие управуваат.
     119
     120- user_id – идентификатор на корисникот и примарен клуч; мора да постои како корисник со администраторска улога.
     121- user_role – фиксна улога со вредност api_admin.
     122- rest_id – идентификатор на ресторанот со кој е поврзан администраторот.
     123
     124=== CUSTOMER
     125
     126Ги претставува клиентите, односно вработените што создаваат нарачки преку системот.
     127
     128- user_id – идентификатор на корисникот и примарен клуч; мора да постои како корисник со клиентска улога.
     129- user_role – фиксна улога со вредност customer.
     130- company_id – идентификатор на компанијата во која работи клиентот.
     131
     132=== DRIVER
     133
     134Ги претставува доставувачите ангажирани од рестораните.
     135
     136- user_id – идентификатор на корисникот и примарен клуч; мора да постои како корисник со улога на доставувач.
     137- user_role – фиксна улога со вредност driver.
     138- rest_id – идентификатор на ресторанот за кој работи доставувачот.
     139
     140=== CONTRACT
     141
     142Ја претставува деловната соработка меѓу една компанија и еден ресторан во определен временски период.
     143
     144- contract_id – единствен идентификатор на договорот и примарен клуч.
     145- company_id – идентификатор на компанијата што учествува во договорот.
     146- contract_end_date – краен датум на договорот.
     147- contract_start_date – почетен датум на договорот.
     148- contract_status_id – идентификатор на тековниот статус на договорот.
     149- rest_id – идентификатор на ресторанот што учествува во договорот.
     150
     151Крајниот датум на договорот не смее да биде пред почетниот датум.
     152
     153=== DELIVERY
     154
     155Ги содржи информациите за транспортот на заедничката нарачка до компанијата.
     156
     157- delivery_id – единствен идентификатор на доставата и примарен клуч.
     158- delivery_date – датум на доставување; стандардно се поставува тековниот датум.
     159- delivery_notes – изборни дополнителни забелешки за доставата.
     160- d_status_id – идентификатор на статусот на доставата.
     161- driver_user_id – изборен идентификатор на назначениот доставувач.
     162
     163=== COMPANY_ORDER
     164
     165Претставува заедничка компаниска нарачка во која се групираат индивидуалните нарачки на вработените.
     166
     167- comp_order_id – единствен идентификатор на компаниската нарачка и примарен клуч.
     168- company_id – идентификатор на компанијата за која е создадена нарачката.
     169- delivery_id – изборен и единствен идентификатор на доставата поврзана со нарачката.
     170
     171=== MEAL
     172
     173Ги претставува јадењата што рестораните ги нудат во своите менија.
     174
     175- meal_id – единствен идентификатор на јадењето и примарен клуч.
     176- cat_id – идентификатор на категоријата во која припаѓа јадењето.
     177- meal_description – изборен опис на јадењето.
     178- meal_name – име на јадењето; мора да биде единствено во рамките на ресторанот.
     179- meal_price – цена на јадењето; не смее да биде негативна.
     180- meal_weight – тежина на јадењето; мора да биде поголема од нула.
     181- rest_id – идентификатор на ресторанот што го нуди јадењето.
     182
     183=== DRINK
     184
     185Ги претставува пијалоците што рестораните ги нудат во своите менија.
     186
     187- drink_id – единствен идентификатор на пијалокот и примарен клуч.
     188- drink_milliliters – количина на пијалокот во милилитри; мора да биде поголема од нула.
     189- drink_name – име на пијалокот; мора да биде единствено во рамките на ресторанот.
     190- drink_price – цена на пијалокот; не смее да биде негативна.
     191- rest_id – идентификатор на ресторанот што го нуди пијалокот.
     192
     193=== CUSTOMER_LOYALTY
     194
     195Го следи учеството на секој клиент во програмата за лојалност.
     196
     197- cus_loyalty_id – единствен идентификатор на членството и примарен клуч.
     198- cus_loyalty_curr_points – тековен број поени; почнува од нула и не смее да биде негативен.
     199- cus_loyalty_joined_at – датум и време кога клиентот се приклучил на програмата.
     200- cus_loyalty_status_id – идентификатор на статусот на членството.
     201- user_id – единствен идентификатор на клиентот; еден клиент може да има само едно членство.
     202- tier_id – идентификатор на тековното ниво на лојалност.
     203
     204=== CUSTOMER_ORDER
     205
     206Претставува индивидуална нарачка создадена од конкретен клиент.
     207
     208- order_id – единствен идентификатор на нарачката и примарен клуч.
     209- comp_order_id – идентификатор на компаниската нарачка во која е вклучена.
     210- customer_user_id – идентификатор на клиентот што ја создал нарачката.
     211- order_datetime – датум и време на создавање на нарачката.
     212- o_status_id – идентификатор на статусот на нарачката.
     213- order_total – вкупен износ на нарачката; почнува од нула и не смее да биде негативен.
     214
     215=== INVOICE
     216
     217Претставува фактура издадена за една заедничка компаниска нарачка.
     218
     219- invoice_id – единствен идентификатор на фактурата и примарен клуч.
     220- comp_order_id – единствен идентификатор на компаниската нарачка; за една нарачка може да постои најмногу една фактура.
     221
     222=== LUNCH_TIME
     223
     224Ги дефинира термините за ручек и временските правила поврзани со договорот.
     225
     226- lunch_time_id – единствен идентификатор на терминот и примарен клуч.
     227- comp_order_id – изборен идентификатор на компаниската нарачка поврзана со терминот.
     228- contract_id – идентификатор на договорот за кој е дефиниран терминот.
     229- lunch_end – датум и време на завршување на терминот.
     230- lunch_preorder_offset – дозволено време за предвремено нарачување; не смее да биде негативно.
     231- lunch_start – датум и време на почеток на терминот.
     232- lunch_weekday – ден во неделата за кој важи терминот.
     233
     234Времето на завршување мора да биде по времето на почеток.
     235
     236=== MEAL_INGREDIENT
     237
     238Ја претставува врската повеќе-спрема-повеќе меѓу јадењата и состојките.
     239
     240- ingr_id – идентификатор на состојката.
     241- meal_id – идентификатор на јадењето.
     242
     243Комбинацијата од двата идентификатори е единствена и претставува сложен примарен клуч.
     244
     245=== ALERGEN_INGREDIENT
     246
     247Ја претставува врската повеќе-спрема-повеќе меѓу алергените и состојките.
     248
     249- alergen_id – идентификатор на алергенот.
     250- ingr_id – идентификатор на состојката.
     251
     252Комбинацијата од двата идентификатори е единствена и претставува сложен примарен клуч.
     253
     254=== ORDER_MEAL
     255
     256Ги поврзува индивидуалните нарачки со избраните јадења.
     257
     258- meal_id – идентификатор на избраното јадење.
     259- order_id – идентификатор на нарачката во која е вклучено јадењето.
     260
     261Комбинацијата е сложен примарен клуч, поради што истото јадење може да се појави само еднаш во една нарачка.
     262
     263=== ORDER_DRINK
     264
     265Ги поврзува индивидуалните нарачки со избраните пијалоци.
     266
     267- drink_id – идентификатор на избраниот пијалок.
     268- order_id – идентификатор на нарачката во која е вклучен пијалокот.
     269
     270Комбинацијата е сложен примарен клуч, поради што истиот пијалок може да се појави само еднаш во една нарачка.
     271
     272=== DELIVERY_REVIEW
     273
     274Содржи дополнителни оценки поврзани со конкретна достава.
     275
     276- delivery_review_id – единствен идентификатор на рецензијата за достава и примарен клуч.
     277- del_review_courier_rating – оцена за доставувачот во интервал од 1 до 5.
     278- del_review_speed_rating – оцена за брзината на доставата во интервал од 1 до 5.
     279- delivery_id – единствен идентификатор на оценетата достава; една достава може да има најмногу една рецензија.
     280- review_id – единствен идентификатор на основната рецензија.
     281
     282=== ORDER_REVIEW
     283
     284Содржи дополнителни оценки поврзани со конкретна клиентска нарачка.
     285
     286- order_review_id – единствен идентификатор на рецензијата за нарачка и примарен клуч.
     287- order_id – единствен идентификатор на оценетата нарачка; една нарачка може да има најмногу една рецензија.
     288- order_review_food_rating – оцена за храната во интервал од 1 до 5.
     289- order_review_res_rating – оцена за ресторанот во интервал од 1 до 5.
     290- review_id – единствен идентификатор на основната рецензија.