Skip to content

y4-systems/ev-station-booking-system-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Electric Vehicle Station Booking System API Overview

This repository contains the backend Web API for the Electric Vehicle Station Booking System. The API is developed in C# and serves as the central business logic layer for all client applications (web and mobile). It exposes RESTful endpoints for managing users, EV owners, charging stations, and bookings.

Key Responsibilities

  • Implements all business rules and logic for the system (FAT Service)
  • Handles authentication, authorization, and role-based access control
  • Manages CRUD operations for users, EV owners, charging stations, and bookings
  • Enforces booking rules (e.g., reservation windows, update/cancel restrictions)
  • Generates QR codes for bookings.
  • Integrates with MongoDB Atlas for NoSQL data storage

Technologies Used

  • ASP.NET Core Web API (C#)
  • MongoDB Atlas (NoSQL database)
  • QRCoder (QR code generation)
  • Swagger (API documentation)

Main Endpoints

  • User Management: Create, update, delete users; assign roles (Backoffice, Station Operator)
  • EV Owner Management: Create, update, delete EV owner profiles; activate/deactivate accounts
  • Charging Station Management: Create, update, deactivate stations; manage slot schedules
  • Booking Management: Create, update, cancel bookings; confirm bookings and generate QR codes; retrieve bookings by QR code

How the API Fits in the System

  • The API is the point of interaction for both the web and mobile clients
  • All data access and business logic are centralized in the API
  • The web and mobile apps are responsible only for user interface.

Running the API

  1. Clone the repository:
    git clone https://github.com/y4-systems/ev-station-booking-system-api.git
  2. Configure MongoDB Atlas connection by creating .env. Use .env.sample for the reference.
  3. Run the API:
    dotnet run
  4. Access Swagger UI for API documentation at http://localhost:5000/swagger/index.html

Related Repositories

Releases

No releases published

Packages

 
 
 

Contributors