Student ID: 2522190010
Course: Object Oriented Programming (OOP) Project
Platform: ASP.NET Core MVC (.NET 8.0)
S4_FinalFixes This project is an Object-Oriented Inventory and Warehouse Control System developed as a final assignment. It simulates a warehouse environment ("TeknoStore") with features like stock tracking, FIFO sales logic, and supplier management.
- Composition over Inheritance:
InventoryItemclass is composed ofProductandSupplierobjects. - In-Memory Database: Uses a static
WarehouseDataclass for data persistence during runtime. - UML Design: Class structure adheres to OOP principles (Encapsulation, Composition).
- CRUD Operations: Add, List, and Delete inventory items.
- Validation: Server-side validation for required fields (Email format, Phone, etc.).
- Localization: System configured for Turkish Lira (₺) currency format.
- FIFO Sales System: Automatically sells the items with the nearest expiration date first.
- Stock Optimization: Automatically removes items with 0 quantity from the warehouse.
- Restock Reporting: Generates alerts for critical stock levels (< 10 units).
- Safety Checks: Prevents selling more items than currently available in stock.
- This project is designed to be compatible with .NET 6.0 and .NET 8.0.
- If you are using .NET 10, please update the
<TargetFramework>in the.csprojfile accordingly. global.jsonhas been removed to ensure the project runs with your local SDK version.
This project is an Object-Oriented Inventory and Warehouse Control System designed as part of Assignment 16. It simulates a real-world warehouse environment for a technology store ("TeknoStore"). The system allows tracking products, managing stock levels, and applying advanced algorithms for sales and restocking using C# and ASP.NET Core MVC.
- C# (Backend Logic)
- ASP.NET Core MVC (Web Framework)
- HTML5 / Bootstrap 5 (Frontend Styling)
- Git & GitHub (Version Control)
- Clone the repository.
- Open the solution in JetBrains Rider or Visual Studio.
- Select the
httprun configuration (to avoid SSL issues). - Run the project and navigate to the localhost URL.
Developed by Umut Şimşek 2522190010 for the Fall 2024-2025 Semester.