= Верзија 5 == ER дијаграм [[Image(ERModel_v5.jpg)]] == Податочни побарувања === **Ентитети** 1. **User** - ентитет кој претставува унија од повеќе видови корисници * ID_user - нумерички тип (примарен клуч) * username - varchar тип (задолжителен атрибут) * name_user - varchar тип (задолжителен атрибут) * email - varchar тип (задолжителен атрибут) * password - varchar тип (задолжителен атрибут) * user_created_on - date (задолжителен атрибут) 2. **Administrator** - ентитет кој преставува администратор на системот * authorized_from- varchar тип (задолжителен атрибут) * authorized_till - varchar тип (задолжителен атрибут) 3. **Client** - ентитет кој претставува клиент * phone_number_client - varchar тип (задолжителен атрибут) 4. **Delivery man** - ентитет кој претставува доставувач на нарачки * employed_from - date (задолжителен атрибут) 5. **Warehouseman** - ентитет кој претставува магационер * employed_from - date (задолжителен атрибут) 6. **Order** - ентитет кој претставува нарачка на дел што ја прави корисникот * ID_order - нумерички тип (примарен клуч) * order_status - varchar тип (задолжителен атрибут) * order_date - date (задолжителен атрибут) * quantity_order - нумерички тип (задолжителен атрибут) 7. **Delivery** - ентитет кој претставува достава за нарачката * ID_delivery - нумерички тип (примарен клуч) * delivery_status - varchar тип (задолжителен атрибут) * delivery_address - varchar тип (задолжителен атрибут) 8. **Warehouse** - ентитет кој претставува магацин * ID_warehouse - нумерички тип (примарен клуч) * warehouse_location - varchar тип (задолжителен атрибут) 9. **Car** - ентитет кој претставува модел на автомобил * ID_car - нумерички тип (примарен клуч) * car_type - varchar тип (задолжителен атрибут) * in_production_since - date (задолжителен атрибут) * in_production_till - date (задолжителен атрибут) 10. **Part** - ентитет кој претставува дел за автомобил * ID_part - нумерички тип (примарен клуч) * part_name - varchar тип (задолжителен атрибут) * part_description - varchar тип (опционален атрибут) 11. **Part sample** - ентитет кој претставува примерок од дел за автомобил * ID_part_sample - нумерички тип (примарен клуч) * quantity_part_sample - нумерички тип (задолжителен атрибут) 12. **Price** - ентитет кој претставува дел од автомобил * ID_price - нумерички тип (примарен клуч) * price_from - date (задолжителен атрибут) * price_to - date (опционален атрибут) 13. **Category** - ентитет кој претставува дел од автомобил * ID_category - нумерички тип (примарен клуч) * category_name - varchar тип (задолжителен атрибут) 14. **Part manufacturer** - ентитет кој претставува производител на делови за автомобил * ID_part_manufacturer - нумерички тип (примарен клуч) * pm_name - varchar тип (задолжителен атрибут) * pm_location - varchar тип (задолжителен атрибут) 15. **Repair shop** - ентитет кој претставува сервис за автомобили * ID_repair_shop - нумерички тип (примарен клуч) * rs_name - varchar тип (задолжителен атрибут) * rs_location - varchar тип (задолжителен атрибут) * rs_phone_number - varchar тип (задолжителен атрибут) 16. **Car manufacturer** - ентитет кој претставува производител на автомобили * ID_car_manufacturer - нумерички тип (примарен клуч) * cm_name - varchar тип (задолжителен атрибут) * cm_country - varchar тип (задолжителен атрибут) 17. **Review** - ентитет кој претставува критика која ја пишува клиентот за одреден сервис за автомобили * ID_review - нумерички тип (примарен клуч) * review_rating - нумерички тип (задолжителен атрибут) * review_comment - varchar тип (опционален атрибут) 18. **Car sample** - ентитет кој претставува примерок од автомобил кој го поседува клиентот * VIN - нумерички тип (примарен клуч) * km_driven - нумерички тип (задолжителен атрибут) * displacement - нумерички тип (задолжителен атрибут) * engine_power - нумерички тип (задолжителен атрибут) * fuel_type - varchar тип (задолжителен атрибут) * year_of_production - нумерички тип (задолжителен атрибут) * year_of_first_registration - нумерички тип (задолжителен атрибут) 19. **Service book** - ентитет кој претставува сервисна книшка која корисникот ја води за својот автомобил * ID_service_book - нумерички тип (примарен клуч) * sb_created_on - date (задолжителен атрибут) === **Релации** - ** manages ** - 1:N релација помеѓу Administrator и Users каде што администраторот менаџира со сите корисници на системот \\ - ** writes ** - 1:N релација помеѓу Client и Review каде што ќе се чуваат критики кои клиентите ги пишуваат за сервисите \\ - ** ordered_by ** - 1:N релација помеѓу Client и Order каде што се чуваат нарачките кои ги прави клиентот \\ - ** delivery_for ** - 1:1 релација помеѓу Deliver и Order каде што се чува нарачката за која што се врши доставата \\ - ** delivers ** - 1:N релација помеѓу Delivery man и Delivery каде што се чува кој доставувач е одговорен за доставата и сите достави кои ги доставува тој \\ - ** is_responsible_for ** - 1:N релација помеѓу Warehouseman и Warehouse каде што се чува кој е одговорен за некој магацин \\ - ** is_in_stock_in ** - 1:N релација помеѓу Part sample и Warehouse каде што се чува магацинот во којшто се наоѓа примерокот од делот \\ - ** contains ** - 1:N релација помеѓу Order и Part sample каде што се чуваат примероците кои се наоѓаат во нарачката што ја прави клиентот \\ - ** review_for ** - 1:N релација помеѓу Client и Review каде што се чуваат сите критики кои ги пишува некој корисник за сервис \\ - ** is_a_sample_of_car ** - 1:N релација помеѓу Car sample и Car каде што се чува одредениот примерок од колата што го поседува клиентот \\ - ** belongs_to ** - 1:N релација помеѓу Car sample и Client каде што се чуваат сите автомобили кои ги поседува клиентот \\ - ** for_car ** - 1:1 релација помеѓу Service book и Car sample каде што за секоја кола се чува неговата сервисна книшка \\ - ** is_a_sample_of_part ** - 1:N релација помеѓу Part sample и Part каде што се чува одредениот примерок од делот што го нарачува клиентот \\ - ** manufacturer_from ** - 1:N релација помеѓу Part и Part manufacturer каде што се чува кој го произведува делот \\ - ** costs ** - 1:N релација помеѓу Part и Price каде што ќе се чуваат цените за парчето и која е тековната цена \\ - ** is_produced_by ** - 1:N релација помеѓу Car и Car manufacturer каде што ќе се чува од која фирма е произведена колата \\ - ** is_from ** - 1:N релација помеѓу Part и Category каде што се чува во која категорија спаѓа делот \\ - ** authorized_for ** - N:N релација помеѓу Car manufacturer и Car каде што се чуваат сите овластени сервиси за одредена марка за кола \\ - ** is_appropriate_for ** - N:N релација помеѓу Part sample и Car каде што се чува за кои коли одговараат деловите и кои делови одговараат за некоја кола \\ === **Историјат** - ** Верзија 1: ** Иницијална верзија на моделот. Креирани се ентитетите и релациите меѓу истите - ** Верзија 2: ** Додавање на нов ентитет Delivery со 2 релации помеѓу Delivery и Delivery man и помеѓу Delivery и Order. Ажурирани се ентитетите и релациите меѓу истите и направена е документација за сите ентитети и релации. - ** Верзија 3: ** Додавање на нов ентитет Review со 2 релации помеѓу Review и Client и помеѓу Review и Repair Shop - ** Верзија 4: ** Преместување на quantity_order и quantity_part_sample и ажурирање на релациите - ** Верзија 5: ** Ажурирање на релацијата contains и додавање на ентитет Repair