wiki:ER-Diagram

Version 2 (modified by 173067, 2 weeks ago) ( diff )

--

Дијаграм

слика

Податочни побарувања

Ентитети

1. User - Ентитет за корисникот и неговите информации.

  • UserID - примарен клуч, int
  • Name - varchar
  • Surname - varchar
  • Email - varchar
  • Password - varchar
  • Phone number - varchar
  • DateJoined - datetime

2. Flight - Ентитет за лет.

3. Booking - Ентитет за листата на резервирани летови за корисникот.

  • BookingID - примарен клуч, int
  • UserID - foreign key, int
  • FlightID - foreign key, int
  • BookingDate - datetime
  • PaymentStatus - enum('Pending','Completed', 'Cancelled')
  • TotalCost - decimal(10,2)
  • SeatNumber - int

4. Destination - Ентитет за дестинација.

5. Review - Ентитет за листата на рецензии.

  • ReviewID- примарен клуч, int
  • UserID - foreign key, int,
  • TargetID - foreign key, int (може да биде FlightID или DestinationID)
  • ReviewComment - text
  • Rating - decimal(2,1)
  • Date - datetime

6. Airport - Ентитет за аеродром.

  • AirportID - примарен клуч, int, задолжителен
  • Name - varchar
  • City - varchar
  • Country - varchar
  • Code - char(3)

7. Payment - Ентитет за трансакции.

  • PaymentID - примарен клуч, int
  • BookingID - foreign key, int
  • UserID - foreign key, int
  • Payment method - enum('Credit Card','Debit card', 'PayPal')
  • Amount - decimal(10,2)
  • TransactionDate - datetime
  • PaymentStatus - enum('Success', 'Failed', 'Processing')

8. Notification - Ентитет за известувања.

  • NotificationID- примарен клуч, int
  • UserID - foreign key, int
  • Message - text
  • Type - enum('Booking Confirmation', 'Flight Delay', 'General Update')
  • DateSent - datetime

9. Wishlist - Ентитет за листа со посакувани дестинации.

  • WishlistID - примарен клуч, int
  • UserID - foreign key, int
  • TargetID - foreign key, int (може да биде FlightID или DestinationID)
  • DateAdded - datetime

10. Administrator - Ентитет за тикети за поддршка.

  • AdminID - примарен клуч, int
  • Email - varchar

11. SupportTicket - Ентитет за тикети за поддршка.

  • TicketID- примарен клуч, int
  • UserID - foreign key, int
  • Subject - varchar
  • Description - text
  • Status - enum('Open', 'In Progress', 'Resolved')
  • DateCreated - datetime
  • DateResolved - datetime (nullable)
  • AssignedTo - foreign key, int

1-1 Релации

  • has - релација помеѓу Payment и Booking. Секој Payment е за еден Booking, и секој Booking има само еден Payment.

1-M Релации

  • creates - релација помеѓу User и Booking. Секој User може да има повеќе Bookings, и еден Booking може да има повеќе Users.
  • leaves - релација помеѓу User и Review. Секој User може да остави повеќе Reviews, но едно Review може да припаѓа на еден User.
  • adds to - релација помеѓу User и Wishlist. Секој User може да има повеќе ставки во Wishlist, но една ставка од Wishlist може да припаѓа само на еден User.
  • makes a - релација помеѓу User и Payment. Секој User може да има повеќе Payments, но еден Payment може да припаѓа на еден User.
  • gets a - релација помеѓу User и Notification. Секој User може да добие повеќе Notifications, но една нотификација е пратена до само еден User.
  • opens a - релација помеѓу User и Support Ticket. Секој User може да отвори повеќе Support Tickets, но еден тикет може да е отворен од само еден User.
  • has a - релација помеѓу Flight и Booking. Секој Flight може да има повеќе Bookings, но еден Booking е линкуван со само еден Flight.
  • has a - релација помеѓу Airport и Flight. Секој Airport може да има повеќе departing or arriving Flights, но секој Flight departs or arrives на еден Airport.
  • has a - релација помеѓу Destination и Review. Секој Destination може да има повеќе Reviews, но еден Review може да припаѓа на само една Destination.
  • works on - релација помеѓу Administrator и Support Ticket. Секој Administrator може да работи на повеќе Support Tickets, но еден Support Ticket може да припаѓа само на еден Administrator.

M-N Релации

  • added in - релација помеѓу Flight и Wishlist. Wishlist може да содржи повеќе Flights, и секој Flight може да се содржи во повеќе Wishlists.
  • added in - релација помеѓу Destination и Wishlist. Wishlist може да содржи повеќе Destinations, и секој Destination може да се содржи во повеќе Wishlists.
  • added for - релација помеѓу Flight и Review. Review може да има за повеќе Flights, и зa секој Flight може да има повеќе Reviews.
  • added for - релација помеѓу Destination и Review. Review може да има за повеќе Destinations , и секој Destination може да има повеќе Reviews.

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.