---
# System prepended metadata

title: C# საფინალო პროექტის იდეები და სპეციფიკაციები

---

# C# საფინალო პროექტის იდეები

## 📋 პროექტის კრიტერიუმები

### სავალდებულო მოთხოვნები:
1. ✅ **ფაილებზე დაფუძნებული ბაზის სისტემა** - XML ან JSON
2. ✅ **მინიმუმ 2 ბაზის მოდელი** (მაგ. Users.json, Products.json)
3. ✅ **სუფთა სტრუქტურა** - ფაილები დალაგებულად
4. ✅ **მენიუს სისტემა** - კონსოლში ნავიგაცია
5. ✅ **მინიმუმ 10 ფუნქცია** (მეთოდი)

### დამატებითი (არა სავალდებულო):
6. ⭐ **ავტორიზაციის სისტემა** - მომხმარებლის სესია

---

## 🛒 პროექტი #1: E-Commerce Shopping Cart System (რეკომენდებული)

### 📊 მონაცემთა მოდელები

#### 1. Users.json
```json
{
  "Users": [
    {
      "UserId": 1,
      "Username": "john_doe",
      "Password": "hashed_password",
      "Email": "john@example.com",
      "Role": "Customer",
      "Balance": 500.00,
      "CreatedDate": "2025-01-15",
      "IsActive": true
    }
  ]
}
```

#### 2. Products.json
```json
{
  "Products": [
    {
      "ProductId": 1,
      "Name": "Laptop HP",
      "Description": "15 inch, 16GB RAM",
      "Price": 1200.00,
      "Stock": 25,
      "Category": "Electronics",
      "ImageUrl": "laptop.jpg",
      "CreatedDate": "2025-01-10"
    }
  ]
}
```

#### 3. Orders.json
```json
{
  "Orders": [
    {
      "OrderId": 1,
      "UserId": 1,
      "OrderDate": "2025-09-29",
      "TotalPrice": 1450.00,
      "Status": "Pending",
      "Items": [
        {
          "ProductId": 1,
          "Quantity": 1,
          "Price": 1200.00
        }
      ]
    }
  ]
}
```

#### 4. Cart.json
```json
{
  "CartItems": [
    {
      "CartId": 1,
      "UserId": 1,
      "ProductId": 1,
      "Quantity": 2,
      "AddedDate": "2025-09-29"
    }
  ]
}
```

### 🎯 ფუნქციები (15 ფუნქცია)

#### მომხმარებლის ფუნქციები:
1. **Register()** - ახალი მომხმარებლის რეგისტრაცია
2. **Login()** - სისტემაში შესვლა
3. **Logout()** - სისტემიდან გასვლა
4. **ViewProfile()** - პროფილის ნახვა
5. **AddBalance()** - ბალანსის შევსება

#### პროდუქტების ფუნქციები:
6. **ViewAllProducts()** - ყველა პროდუქტის ნახვა
7. **SearchProducts()** - პროდუქტის ძიება (სახელით/კატეგორიით)
8. **FilterByCategory()** - კატეგორიით ფილტრაცია
9. **ViewProductDetails()** - პროდუქტის დეტალები

#### კალათის ფუნქციები:
10. **AddToCart()** - კალათაში დამატება
11. **RemoveFromCart()** - კალათიდან წაშლა
12. **ViewCart()** - კალათის ნახვა
13. **UpdateCartQuantity()** - რაოდენობის შეცვლა

#### შეკვეთის ფუნქციები:
14. **Checkout()** - შეკვეთის გაფორმება
15. **ViewOrderHistory()** - შეკვეთების ისტორია
16. **CancelOrder()** - შეკვეთის გაუქმება

#### ადმინის ფუნქციები (დამატებით):
17. **AddProduct()** - პროდუქტის დამატება
18. **UpdateProduct()** - პროდუქტის რედაქტირება
19. **DeleteProduct()** - პროდუქტის წაშლა
20. **ViewAllOrders()** - ყველა შეკვეთის ნახვა

### 📁 პროექტის სტრუქტურა

```
ShoppingCartSystem/
│
├── Data/
│   ├── Users.json
│   ├── Products.json
│   ├── Orders.json
│   └── Cart.json
│
├── Models/
│   ├── User.cs
│   ├── Product.cs
│   ├── Order.cs
│   ├── OrderItem.cs
│   └── CartItem.cs
│
├── Services/
│   ├── UserService.cs
│   ├── ProductService.cs
│   ├── OrderService.cs
│   ├── CartService.cs
│   └── AuthService.cs
│
├── Utils/
│   ├── JsonHelper.cs
│   ├── ValidationHelper.cs
│   └── ConsoleHelper.cs
│
├── Menus/
│   ├── MainMenu.cs
│   ├── UserMenu.cs
│   ├── AdminMenu.cs
│   └── ProductMenu.cs
│
└── Program.cs
```

### 🎨 მენიუს სტრუქტურა

```
═══════════════════════════════════════
    🛒 SHOPPING CART SYSTEM
═══════════════════════════════════════
1. 👤 Login
2. 📝 Register
3. 🚪 Exit
═══════════════════════════════════════
Choose option: _

[After Login - Customer Menu]
═══════════════════════════════════════
    Welcome, John! 💰 Balance: 500.00₾
═══════════════════════════════════════
1. 🛍️  View Products
2. 🔍 Search Products
3. 🛒 View Cart
4. 📦 My Orders
5. 💰 Add Balance
6. 👤 My Profile
7. 🚪 Logout
═══════════════════════════════════════
Choose option: _

[Admin Menu]
═══════════════════════════════════════
    👨‍💼 ADMIN PANEL
═══════════════════════════════════════
1. ➕ Add Product
2. ✏️  Edit Product
3. ❌ Delete Product
4. 📊 View All Orders
5. 👥 Manage Users
6. 📈 Statistics
7. 🚪 Logout
═══════════════════════════════════════
```

---

## 📚 პროექტი #2: Library Management System

### 📊 მონაცემთა მოდელები

#### 1. Users.json
```json
{
  "Users": [
    {
      "UserId": 1,
      "Username": "librarian01",
      "Role": "Librarian",
      "Email": "lib@library.ge",
      "PhoneNumber": "555123456"
    }
  ]
}
```

#### 2. Books.json
```json
{
  "Books": [
    {
      "BookId": 1,
      "ISBN": "978-0-123456-78-9",
      "Title": "ვეფხისტყაოსანი",
      "Author": "შოთა რუსთაველი",
      "Category": "ქართული ლიტერატურა",
      "PublicationYear": 1200,
      "TotalCopies": 5,
      "AvailableCopies": 3,
      "ShelfLocation": "A-12"
    }
  ]
}
```

#### 3. Borrowings.json
```json
{
  "Borrowings": [
    {
      "BorrowingId": 1,
      "UserId": 2,
      "BookId": 1,
      "BorrowDate": "2025-09-15",
      "DueDate": "2025-10-15",
      "ReturnDate": null,
      "Status": "Active",
      "Fine": 0
    }
  ]
}
```

### 🎯 ფუნქციები (12 ფუნქცია)

1. **Register()** - მკითხველის რეგისტრაცია
2. **Login()** - ავტორიზაცია
3. **SearchBooks()** - წიგნების ძიება (სახელი/ავტორი/ISBN)
4. **ViewAvailableBooks()** - ხელმისაწვდომი წიგნები
5. **BorrowBook()** - წიგნის აღება
6. **ReturnBook()** - წიგნის დაბრუნება
7. **ViewMyBorrowings()** - ჩემი წიგნები
8. **AddBook()** - წიგნის დამატება (Librarian)
9. **RemoveBook()** - წიგნის წაშლა
10. **CheckOverdueBooks()** - დაგვიანებული წიგნები
11. **CalculateFine()** - ჯარიმის გამოთვლა
12. **GenerateReport()** - რეპორტი

---

## 🏨 პროექტი #3: Hotel Booking System

### 📊 მონაცემთა მოდელები

#### 1. Rooms.json
```json
{
  "Rooms": [
    {
      "RoomId": 101,
      "RoomNumber": "101",
      "Type": "Single",
      "PricePerNight": 80.00,
      "Capacity": 1,
      "Floor": 1,
      "Amenities": ["WiFi", "TV", "AC"],
      "IsAvailable": true
    }
  ]
}
```

#### 2. Reservations.json
```json
{
  "Reservations": [
    {
      "ReservationId": 1,
      "UserId": 1,
      "RoomId": 101,
      "CheckInDate": "2025-10-01",
      "CheckOutDate": "2025-10-05",
      "TotalPrice": 320.00,
      "Status": "Confirmed",
      "BookingDate": "2025-09-29"
    }
  ]
}
```

### 🎯 ფუნქციები (11 ფუნქცია)

1. **Register()** - რეგისტრაცია
2. **Login()** - ავტორიზაცია
3. **SearchRooms()** - ოთახების ძიება (თარიღით/ტიპით)
4. **ViewAvailableRooms()** - ხელმისაწვდომი ოთახები
5. **BookRoom()** - ოთახის დაჯავშნა
6. **ViewMyReservations()** - ჩემი დაჯავშნები
7. **CancelReservation()** - დაჯავშნის გაუქმება
8. **MakePayment()** - გადახდა
9. **AddRoom()** - ოთახის დამატება (Manager)
10. **UpdateRoomPrice()** - ფასის შეცვლა
11. **ViewAllReservations()** - ყველა დაჯავშნა

---

## 🎬 პროექტი #4: Movie Ticket Booking System

### 📊 მონაცემთა მოდელები

#### 1. Movies.json
```json
{
  "Movies": [
    {
      "MovieId": 1,
      "Title": "Inception",
      "Genre": "Sci-Fi",
      "Duration": 148,
      "Rating": "PG-13",
      "Director": "Christopher Nolan",
      "ReleaseYear": 2010,
      "Poster": "inception.jpg"
    }
  ]
}
```

#### 2. Showtimes.json
```json
{
  "Showtimes": [
    {
      "ShowtimeId": 1,
      "MovieId": 1,
      "DateTime": "2025-09-30T18:00:00",
      "Hall": "Hall 1",
      "TotalSeats": 100,
      "AvailableSeats": 85,
      "Price": 15.00
    }
  ]
}
```

#### 3. Bookings.json
```json
{
  "Bookings": [
    {
      "BookingId": 1,
      "UserId": 1,
      "ShowtimeId": 1,
      "SeatNumbers": ["A1", "A2"],
      "TotalPrice": 30.00,
      "BookingDate": "2025-09-29",
      "Status": "Confirmed"
    }
  ]
}
```

### 🎯 ფუნქციები (12 ფუნქცია)

1. **Register()** - რეგისტრაცია
2. **Login()** - ავტორიზაცია
3. **ViewMovies()** - ფილმების ნახვა
4. **SearchMovies()** - ფილმის ძიება
5. **ViewShowtimes()** - სეანსების ნახვა
6. **SelectSeats()** - ადგილების არჩევა
7. **BookTickets()** - ბილეთის შეძენა
8. **ViewMyBookings()** - ჩემი ბილეთები
9. **CancelBooking()** - ბილეთის გაუქმება
10. **AddMovie()** - ფილმის დამატება (Admin)
11. **AddShowtime()** - სეანსის დამატება
12. **ViewStatistics()** - სტატისტიკა

---

## 🍕 პროექტი #5: Restaurant Order Management

### 📊 მონაცემთა მოდელები

#### 1. Menu.json
```json
{
  "MenuItems": [
    {
      "ItemId": 1,
      "Name": "Margherita Pizza",
      "Category": "Main Course",
      "Price": 25.00,
      "Ingredients": ["Dough", "Tomato", "Cheese", "Basil"],
      "IsAvailable": true,
      "PreparationTime": 20
    }
  ]
}
```

#### 2. Orders.json
```json
{
  "Orders": [
    {
      "OrderId": 1,
      "UserId": 1,
      "TableNumber": 5,
      "Items": [
        {
          "ItemId": 1,
          "Quantity": 2,
          "Price": 25.00
        }
      ],
      "TotalPrice": 50.00,
      "OrderDate": "2025-09-29T19:30:00",
      "Status": "Preparing"
    }
  ]
}
```

#### 3. Tables.json
```json
{
  "Tables": [
    {
      "TableId": 1,
      "TableNumber": 5,
      "Capacity": 4,
      "IsOccupied": true,
      "Location": "Indoor"
    }
  ]
}
```

### 🎯 ფუნქციები (11 ფუნქცია)

1. **Register()** - რეგისტრაცია
2. **Login()** - ავტორიზაცია
3. **ViewMenu()** - მენიუს ნახვა
4. **FilterByCategory()** - კატეგორიით ფილტრაცია
5. **AddToOrder()** - კერძის დამატება
6. **PlaceOrder()** - შეკვეთის გაფორმება
7. **ViewMyOrders()** - ჩემი შეკვეთები
8. **ReserveTable()** - მაგიდის დაჯავშნა
9. **AddMenuItem()** - კერძის დამატება (Manager)
10. **UpdateOrderStatus()** - სტატუსის შეცვლა
11. **MakePayment()** - გადახდა
