| 1 | = Верзија 1 |
| 2 | |
| 3 | == Дијаграм |
| 4 | |
| 5 | [[Image(ERmodel_v1.jpg)]] |
| 6 | |
| 7 | == Податочни побарувања |
| 8 | |
| 9 | == Ентитети |
| 10 | |
| 11 | '''1. Villa''' - ентитет за објекти кој ги нудат сите услиги и за кои се резервира. |
| 12 | * Примарен клуч: villa_id - број за разликување на инстанци од вили во комплексот(нумерички тип, задолжителен) |
| 13 | ''Атрибути:'' |
| 14 | * name - текстуален тип, задолжителен |
| 15 | * location - текстуален тип, задолжителен |
| 16 | * villa_view_type - текстуален тип, задолжителен |
| 17 | |
| 18 | '''2.Reservation''' - ентитет за избор и правење на резервација |
| 19 | * Примарен клуч: reservation_id - број за разликување на инстанци од резервации(нумерички тип , задолжителен) |
| 20 | ''Атрибути:'' |
| 21 | * start_date - тип датум, задолжителен |
| 22 | * end_date - тип датум, задолжителен |
| 23 | * number_guests - нумерички тип, задолжителен |
| 24 | * children - нумерички тип |
| 25 | * adults - нумерички тип, задолжителен |
| 26 | |
| 27 | '''3.Rooms''' - ентитет кој ја дефинира собата |
| 28 | * Примарен клуч: room_id - број за разликување на инстанци од соби(нумерички тип, задолжителен) |
| 29 | ''Атрибути:'' |
| 30 | * price - нумерички тип, задолжителен |
| 31 | * availability - boolean тип, задолжителен |
| 32 | * room_type - текстуален тип, задолжителен |
| 33 | |
| 34 | '''4.Prepared Meal''' - слаб ентитет кој го дефинира приготвениот оброкот и го наследува неговиот примарен клуч |
| 35 | * Примарен клуч: meal_id |
| 36 | |
| 37 | '''5.Meal''' - ентитет за сите видови на оброци кои ги нуди ресторанот |
| 38 | * Примарен клуч:meal_id - број за разликување на инстанци од оброци(нумерички тип, задолжителен) |
| 39 | ''Атрибути:'' |
| 40 | * price - нумерички тип, задолжителен |
| 41 | * meal_type - текстуален тип, задолжителен |
| 42 | |
| 43 | '''6.Product''' - ентитет кој дефинира одреден продукт |
| 44 | * Примарен клуч: product_id - број за разликување на инстанци од продукти(нумерички тип, задолжителен) |
| 45 | ''Атрибути:'' |
| 46 | * product_type - текстуален тип, задолжителен |
| 47 | * number_of_products - нумерички тип, задолжителен |
| 48 | |
| 49 | '''7.Events''' - ентитет кој ги дефинира настаните во комплексот |
| 50 | * Примарен клуч: event_id - број за разликување на инстанци од настани(нумерички тип, задолжителен) |
| 51 | ''Атрибути:'' |
| 52 | * event_type - текстуален тип, задолжителен |
| 53 | * price - нумерички тип, задолжителен |
| 54 | * number_of_interested_guests - нумерички тип |
| 55 | |
| 56 | '''8.Activities''' - ентитет кој ги дефинира активностите во комплексот |
| 57 | * Примарен клуч:activity_id - број за разликување на инстанци од активности(нумерички тип, задолжителен) |
| 58 | ''Атрибути:'' |
| 59 | * activity_type - текстуален тип, задолжителен |
| 60 | * location - текстуален тип, задолжителен |
| 61 | * price - нумерички тип, задолжителен |
| 62 | * number_of_interested_guests - нумерички тип |
| 63 | |
| 64 | '''9.Service''' - ентитет кој ги дефинира видовите на услуги кои ги нуди комплексот |
| 65 | * Примарен клуч:service_id - број за разликување на инстанци од услуги(нумерички тип, задолжителен) |
| 66 | ''Атрибути:'' |
| 67 | * price - нумерички тип, задолжителен |
| 68 | * service_type - текстуален тип, задолжителен |
| 69 | |
| 70 | '''10.User''' - ентитет за корисникот кој се логира, од кој наследуваат 4 други ентитети. |
| 71 | * Примарен клуч: user_id - број за разликување на инстанци од корисници(нумерички тип, задолжителен) |
| 72 | ''Атрибути:'' |
| 73 | * EMBG - текстуален тип, задолжителен |
| 74 | * email - текстуален тип, задолжителен |
| 75 | * address - текстуален тип, задолжителен |
| 76 | * phone_number - текстуален тип, задолжителен |
| 77 | |
| 78 | '''11.Login''' - ентитет за најава на корисник во системот |
| 79 | * Примарен клуч: login_id |
| 80 | ''Атрибути:'' |
| 81 | * username - текстуален тип, задолжителен |
| 82 | * password - текстуален тип, задолжителен |
| 83 | |
| 84 | '''12.Guests''' - ентитет кој го дефинира гостинот и наследува од User |
| 85 | * Примарен клуч: user_id |
| 86 | ''Атрибути:'' |
| 87 | * passport_number - текстуален тип, задолжителен |
| 88 | |
| 89 | '''13.Server''' - ентитет кој го дефинира вработениот кој врши услуга и наследува од User |
| 90 | * Примарен клуч: user_id |
| 91 | ''Атрибути:'' |
| 92 | * shift - текстуален тип, задолжителен |
| 93 | * salary - нумерички тип, задолжителен |
| 94 | |
| 95 | '''14.Receptionist''' - ентитет кој го дефинира вработениот на позиција рецепционист и наследува од User |
| 96 | * Примарен клуч: user_id |
| 97 | ''Атрибути:'' |
| 98 | * shift - текстуален тип, задолжителен |
| 99 | * salary - нумерички тип, задолжителен |
| 100 | |
| 101 | '''15.Chef''' - ентитет кој го дефинира вработениот во кујна и наследува од User |
| 102 | * Примарен клуч: user_id |
| 103 | ''Атрибути:'' |
| 104 | * shift - текстуален тип, задолжителен |
| 105 | * salary - нумерички тип, задолжителен |
| 106 | |
| 107 | '''16.Beverage''' - ентитет за дефинирање на пијалок |
| 108 | * Примарен клуч: beverage_id - број за разликување на инстанци од пијалоци(нумерички тип, задолжителен) |
| 109 | ''Атрибути:'' |
| 110 | * price - нумерички тип, задолжителен |
| 111 | * beverage_type - текстуален тип, задолжителен |
| 112 | |
| 113 | '''17.Payment''' - ентитет за извршена наплата, од кој наследуваат 2 други ентитета |
| 114 | * Примарен клуч: payment_id - број за разликување на инстанци од наплати (нумерички тип, задолжителен) |
| 115 | ''Атрибути:'' |
| 116 | * total_payment - нумерички тип, задолжителен |
| 117 | * rec_id - нумерички тип, задолжителен |
| 118 | * pay_date - тип дата, задолжителен |
| 119 | * customer_id - нумерички тип, задолжителен |
| 120 | |
| 121 | '''18.On site''' - ентитет за наплата во живо, кој наследува од Payment |
| 122 | * Примарен клуч: payment_id |
| 123 | ''Атрибути:'' |
| 124 | * currency - текстуален тип, задолжителен |
| 125 | * payment_type - текстуален тип, задолжителен |
| 126 | |
| 127 | '''19.Online''' - ентитет за наплата online, кој наследува од Payment |
| 128 | * Примарен клуч:payment_id |
| 129 | ''Атрибути:'' |
| 130 | * card_number - текстуален тип, задолжителен |
| 131 | |
| 132 | == Релации |
| 133 | |
| 134 | '''1.user_has_login''' - еден корисник може да има N најави, додека една најава може да е направена само од еден корисник |
| 135 | |
| 136 | '''2.receptionist_process_payment_onsite'''- рецепционерот може да процесира N плаќања, додека плаќањето може да биде процесирано од 1 рецепционер |
| 137 | |
| 138 | '''3.guests_make_payment''' - гостите може да направат N плаќања, додека плаќањето може да биде направено само од 1 гостин |
| 139 | |
| 140 | '''4.guests_make_reservation''' - резервација може да се прави од N гости и N гости може да прават резервации |
| 141 | |
| 142 | '''5.payment_for_reservation''' - плаќањето може да се изврши за N резервации, додека резервацијата е наплатена од 1 плаќање |
| 143 | |
| 144 | '''6.reservation_for_service''' - резервацијата може да биде за N опслужувања, додека опслужувањето се резервира од 1 резервација |
| 145 | |
| 146 | '''7.reservation_for_rooms''' - собата може да има N резервации, додека резервацијата може да биде за 1 соба |
| 147 | |
| 148 | '''8.reservation_for_events''' - резервацијата може да биде направена за N настани, и за еден настан може да има N резервации |
| 149 | |
| 150 | '''9.reservation_for_activity''' - резервацијата може да биде направена за N активности, и за една активност може да има N резервации |
| 151 | |
| 152 | '''10.reservation_for_meal''' - резервацијата може да биде направена за N оброци, и за еден оброк може да има N резервации |
| 153 | |
| 154 | ''Атрибут'': quantity |
| 155 | |
| 156 | '''11.reservation_in_villa''' - вилата може да има N резервации, додека резервацијата е за 1 вила |
| 157 | |
| 158 | '''12.villa_has_rooms''' - вилата има N соби, а собата може да биде само во 1 вила |
| 159 | |
| 160 | '''13.rooms_has_service''' - собата може да има N опслужувања, додека опслужувањето се врши за 1 соба |
| 161 | |
| 162 | '''14.server_do_service''' - келнерот врши N опслужувања, а опслужувањето се врши од 1 келне.р |
| 163 | |
| 164 | '''15.service_for_beverages''' - опслужувањето може да биде за N пијалоци |
| 165 | |
| 166 | ''Атрибут: quantity'' |
| 167 | |
| 168 | '''16.preparedmeal_from_meal''' - порцијата е од 1 оброк, а оброкот може да има N порции |
| 169 | |
| 170 | '''17.meal_madeof_product''' - продуктот може да се користи во N оброци, и оброкот може да е направен од N продукти |
| 171 | |
| 172 | '''18.chef_prepares_meal''' - готвачот може да направи N оброци, а оброкот е направен од 1 готвач |
| 173 | |
| 174 | |
| 175 | == Историјат |