Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

ConsoleCRM

A web-based Customer Relationship Management (CRM) and Enterprise Resource Planning (ERP) system designed specifically for console repair shops to streamline customer management, ticket pipelines, dynamic invoicing, and inventory operations. Built with ASP.NET Core and Entity Framework Core.

Features

  • Create, edit, and manage customer profiles with contact information
  • Track customers devices with detailed ticket system
  • Generate, create, and manage invoices with payment tracking
  • Maintain inventory of items
  • Manage services, service rates and service-related transactions
  • Configurable shop-level settings and preferences
  • Secure login with cookie-based authentication

Project Structure

ConsoleCRM/
├── Models/               # Data models (Customer, Ticket, Invoice, ...)
├── Pages/                # Razor Pages (UI layer)
│   ├── admin/            # Admin settings
│   ├── Authentication/   # Log in/out pages
│   ├── customers/        # Customer management pages
│   ├── inventory/        # Inventory management pages
│   ├── invoices/         # Invoice management pages
│   ├── pos/              # Point of Sale system for quick retail transactions
│   ├── Shared/           # SVGs/validation JS'es
│   ├── tickets/          # Repair ticket pages
│   └── tracking/         # Repair ticket tracking page for customers
├── Data/                 # Database context and initializer
├── Migrations/           # Entity Framework migrations
├── wwwroot/              # Static files (Images, Fonts, JS, CSS, Uploads, ...)
├── Program.cs            # Application startup configuration
└── appsettings.json      # Configuration file

Models

  • Customer: Stores customer information (name, surname, phone number)
  • Ticket: Repair tickets linked to customers
  • TicketPhoto: Photo attachments for tickets
  • Invoice: Invoice records with associated items
  • InvoiceItem: Line items within invoices
  • Device: Devices tracked per customer
  • ServiceRate: Service pricing information
  • User: User accounts for CRM system
  • Platform: Console platform configuration data
  • Inventory: Inventory management
  • ShopSetting: Shop-wide configuration settings

Prerequisites

  • .NET 8 SDK
  • Microsoft.EntityFrameworkCore
  • Npgsql.EntityFrameworkCore.PostgreSQL
  • Magick.NET-Q8-AnyCPU
  • Visual Studio Code or Visual Studio 2022

Getting Started

1. Clone the Repository

git clone https://github.com/rreha/consolecrm
cd consolecrm

2. Configure Database Connection

Export your PostgreSQL connection string with credentials:

export ConnectionStrings__DefaultConnection="Host=YOUR_IP_HERE;Port=YOUR_PORT_HERE;Database=ConsoleCRM;Username=YOUR_USERNAME_HERE;Password=YOUR_PASSWORD_HERE"

3. Restore Dependencies

cd ConsoleCRM
dotnet restore

4. Apply Database Migrations

dotnet ef database update

5. Run the Application

dotnet run

Usage & Screenshots

Authentication

Login page

  • Navigate to /login to access the login page

Dashboard

Dashboard page
Dashboard page

  • Overview of active repairs, stocks and recent activity
  • Quick action command center for fast navigation
  • Visual charting of repair trends and platform statistics

Point of Sale (Quick Retail Sale)

POS page

  • Fast checkout system for walk-in retail sales without needing to create a customer profile or repair ticket
  • QR code scanner integration for rapid item entry
  • Manual item lookup with real-time stock validation
  • Dynamic cart preview with automatic tax calculation and grand totals
  • Automatically deducts sold items from inventory and instantly generates a paid receipt

Support Tickets

Tickets page

  • Open new support requests with photo attachments
  • View ticket status and details
  • Dynamic QR code generation with one click thermal label printing
  • Use ticket photo functionality for visual documentation
  • Mark tickets as resolved

Invoicing

Invoice page

  • Generate invoices for customers
  • Break down invoice totals by service/product
  • Monitor invoice payment status
  • Access comprehensive invoice information

Inventory Management

Inventory page

  • Track parts, SKUs, and stock levels across different hardware platforms
  • Dynamic QR code generation with one-click thermal label printing
  • Color-coded stock status indicators (Low Stock and Out of Stock warnings)
  • Advanced search by SKU, part name, or platform with built-in pagination
  • Track both wholesale cost and retail pricing for Point of Sale (POS) integration

Customer Management

Customers page

  • Chart.js integration for visual data representation
  • Add new customers with name, surname, and phone number
  • Update existing customer information
  • See all support tickets for a customer

Tracking Page

Tracking page
Tracking page

  • A dedicated page allowing clients to securely check the real-time repair status and progress of their devices

Admin Settings

Admin page
Admin page
Admin page
Admin page

  • Configure shop-wide settings and preferences
  • International phone number masking with libphonenumber-js

Technologies and Libraries Used

About

A web-based CRM and ERP system designed specifically for console repair shops to streamline customer management, ticket pipelines, dynamic invoicing, and inventory operations.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages