The Order Management System (OMS) is a comprehensive solution designed to manage the entire sales order process from quotation to final payment. This system streamlines the workflow by automating key processes and providing detailed status tracking through various stages of an order’s lifecycle.
Key Features
Quotation Management
Create and send quotations to clients.
Version history for all quotation revisions based on client feedback.
Conversion of approved quotations to sales orders, with automatic item detail copying.
Sales Order Processing
Update the status of sales orders through purchasing and manufacturing processes.
Generate delivery orders once sales orders are ready for dispatch.
Create delivery notes post-delivery.
Invoicing and Payments
Generate invoices for delivered orders.
Log multiple part payments against an invoice.
Mark orders as complete upon full payment.
Issue credit notes for any defects or issues in delivered items.
Order Status Tracking
Multiple dashboards for tracking orders in different stages (quotation, manufacturing, delivery).
Identify delayed orders and their current stages.
Inventory Management
Manage inventory for raw materials and ready-to-deliver items.
Stock keeping and warehouse storage management with assigned locations.
Inbound and outbound storage transaction details.
Transportation Module
Fleet management and driver availability tracking.
Trip management for order deliveries with route optimization.
Monitor orders in transit.
Calendar view for scheduled trips, including fleet and driver details and trip duration.
User Management
System user management.
Role management and role access/permission allocation.
Configuration Module
Each of the above mentioned modules required project level as well as module level configurations like order status, inventory type and categories, fleet types, user category etc.
Technologies Used
Backend:
Developed using ASP.NET Core framework with C# language.
API implementation using .NET Core.
Database generation using Entity Framework (EF) Core with a code-first approach.
Frontend: Built using .NET Core MVC.
Architecture:
Followed Clean Architecture principles.
Employed proper naming conventions and coding standards such as the DRY principle.
Implemented repository pattern for data manipulation.
Centralized error handling using custom middleware.