| 7 | === Ентитети |
| 8 | |
| 9 | 1. **Companies** - ентитет кој ќе нуди услуга за транспорт на нашиот систем |
| 10 | |
| 11 | > * company_ID, примарен клуч од нумерички тип |
| 12 | > * name, задолжителен атрибут од тип varchar |
| 13 | > * address, задолжителен атрибут од тип varchar |
| 14 | > * phone, атрибут со повеќе вредности од тип varchar |
| 15 | |
| 16 | 2. **Licences ** - слаб ентитет кој претставува лиценца |
| 17 | |
| 18 | > * licence_ID, слаб примарен клуч од нумерички тип |
| 19 | > * valid_from, задолжителен атрибут од тип датум |
| 20 | > * expires_on, задолжителен атрибут од тип датум |
| 21 | |
| 22 | 3. **Employees ** - множество ентитети на вработени |
| 23 | |
| 24 | > * employee_ID, примарен клуч од нумерички тип |
| 25 | > * name, задолжителен атрибут од тип varchar |
| 26 | > * surname, задолжителен атрибут од тип varchar |
| 27 | > * email, опционален? атрибут од тип varchar, во специјален формат на email адреса |
| 28 | > * phone, атрибут со повеќе вредности од тип varchar |
| 29 | |
| 30 | 4. **Administrators** - ентитет кој претставува администратор од компанија |
| 31 | |
| 32 | 5. **Dispatchers** - ентитет кој претставува диспечер |
| 33 | |
| 34 | 6. **Drivers** - ентитет на возач на рута |
| 35 | |
| 36 | 7. **Vehicles** - множество ентитети на возила на компанија |
| 37 | |
| 38 | > * licence_plate, примарен клуч од нумерички тип |
| 39 | > * capacity, задолжителен атрибут од нумерички тип |
| 40 | > * is_free, задолжителен атрибут од тип булеан |
| 41 | > * driven_routes, изведен атрибут |
| 42 | > * promet?, изведен атрибут |
| 43 | |
| 44 | 8. **Types ** - ентитент кој претставува тип на возило |
| 45 | |
| 46 | > * type_ID, примарен клуч од нумерички тип |
| 47 | > * type_name, задолжителен атрибут од тип varchar, домен: комбе, камион, шлепер |
| 48 | |
| 49 | 9. **Clients ** - множество ентитети на клиенти кои имаат потреба од услуга |
| 50 | |
| 51 | > * client_ID, примарен клуч од нумерички тип |
| 52 | > * name, задолжителен атрибут од тип varchar |
| 53 | > * phone, задолжителен атрибут од тип varchar |
| 54 | > * email, задолжителен атрибут од тип varchar во формат на email адреса |
| 55 | > * reservations, атрибут со повеќе вредности од тип varchar |
| 56 | |
| 57 | 10. **Invoice-Faktura ** - ентитет кој претставува фактура за рута |
| 58 | |
| 59 | > * faktura_ID, примарен клуч од нумерички тип |
| 60 | > * price, задолжителен атрибут од тип varchar |
| 61 | > * phone, задолжителен атрибут од тип varchar |
| 62 | |
| 63 | 11. **Reservations ** - ентитет кој претставува резервација на услуга од компанија |
| 64 | |
| 65 | > * reservation_ID, примарен клуч од нумерички тип |
| 66 | |
| 67 | 12. **Routes ** - ентитет кој претставува рута, услугата што ја нуди компанијата |
| 68 | |
| 69 | > * route_ID, примарен клуч од нумерички тип |
| 70 | > * date_from, задолжителен атрибут од тип датум |
| 71 | > * date_to, задолжителен атрибут од тип датум |
| 72 | |
| 73 | 13. **Cities** - ентитет кој претставува почетна или крајна точка на рутата |
| 74 | |
| 75 | > * city_ID, примарен клуч од нумерички тип |
| 76 | > * name, задолжителен атрибут од тип varchar |
| 77 | |
| 78 | 14. **Products-Roba** - ентитет што претставува роба која треба да се превезе |
| 79 | |
| 80 | > * product_ID, примарен клуч од нумерички тип |
| 81 | > * quantity, задолжителен атрибут од нумерички тип |
| 82 | |
| 83 | 15. **Catefories ** - ентитет кој претставува категорија на робата |
| 84 | |
| 85 | > * category_ID, примарен клуч од нумерички тип |
| 86 | > * cat_name, задолжителен атрибут од тип varchar, домен: пијалок, мебел, смрзнато |
| 87 | |
| 88 | |
| 89 | === Релации |
| 90 | 1. //**owns**//, 1:N релација за копанија која поседува возила |
| 91 | |
| 92 | 2. //**works_at**//, 1:N релација за вработени во компанија |
| 93 | |
| 94 | 3. //**has**//, 1:1 релација меѓу компанија и лиценца |
| 95 | |
| 96 | 4. //**drives_with**//, 1:N релација меѓу ентитет возач и возило |
| 97 | |
| 98 | 5. //**drives**//, 1:N релација меѓу ентитет возач и рута |
| 99 | |
| 100 | 6. //**is_of**//, 1:N релација која дефинира тип на возило |
| 101 | |
| 102 | 7. //**follows**//, 1:N релација меѓу диспечер и рутата која ја следи |
| 103 | |
| 104 | 8. //**sends**//, 1:N релација меѓу фактура и администратор кој ја издава |
| 105 | |
| 106 | 9. //**receives**//, 1:N релација меѓу пратена фактура и клиент |
| 107 | |
| 108 | 10. //**contains**//, 1:N релација меѓу фактура и резервација за која е издадена |
| 109 | |
| 110 | 11. //**creates**//, 1:N релација меѓу клиент на апликацијата и резервација |
| 111 | |
| 112 | 12. //**starts_at**//, 1:N релација која ги поврзува почетната точка и рутата |
| 113 | |
| 114 | 13. //**ends_at**//, 1:N релација која ги поврзува крајнта точка и рутата |
| 115 | |
| 116 | 14. //**categorizes_as**//, 1:N релација која означува од која категорија е робата за транспорт |
| 117 | |
| 118 | 15. //**reserves**//, 1:N / 1:1? релација која ги поврзува резервацијата и избраната рута |
| 119 | |
| 120 | 16. //**transport_for**//, 1:N / 1:1? релација меѓу резервацијата и робата за транспорт |
| 121 | |