The Sales Inventory Tracker is a comprehensive and professional-grade application developed as part of a project to enhance our programming and software development skills. Its design focuses on meeting real-world business needs while honing coding techniques in a structured, professional environment.
๐ Key Features
Role-Based Access Control:
- Secure login system with different access levels:
- Managers: Full access to manage inventory, track sales, and generate detailed reports.
- Employees: Limited access to record sales and view assigned tasks.
Inventory Management:
- Add, update, and delete products in inventory.
- Real-time tracking of stock levels to avoid overstocking or shortages.
- Automatic low-stock alerts to streamline restocking.
Sales Tracking:
- Record sales transactions with product details, quantities, and timestamps.
- Maintain a history of sales for auditing and analysis.
Report Generation:
- Generate comprehensive reports, including:
- Sales by product or date.
- Inventory turnover rates.
- Performance analytics for employees and products.
๐ ๏ธ Tech Stack:
-
Backend:
- Java OOP principles (encapsulation, inheritance, polymorphism, and abstraction) for modular design.
- Spring Security for role-based access control and encrypted credentials.
- BCryptPasswordEncoder for secure encryption of passwords.
-
Database:
- PostgreSQL for reliable and scalable data storage.
-
Build Tool:
- Maven to manage dependencies, automate builds, and simplify deployment.
-
Hosting:
- Deployed on Heroku with integrated PostgreSQL.