تفاصيل العمل

? Overview

This system provides a digital platform for managing city/village services, citizen requests, complaints, and IoT-based utility monitoring (Electricity & Water). It is structured using Clean Architecture principles to ensure scalability, maintainability, and testability.

? Tech Stack

Backend: .NET 8 Web API

Architecture: Clean Architecture (Domain, Application, Infrastructure, API)

Database: MongoDB

Authentication: ASP.NET Core Identity with JWT

Real-time: SignalR (for notifications and IoT alerts)

Logging: Serilog

? Project Structure

SmartCity.Domain: Core entities, value objects, and repository interfaces.

SmartCity.Application: Business logic, CQRS (MediatR), DTOs, and mapping.

SmartCity.Infrastructure: Persistence (MongoDB), Identity services, and external integrations.

SmartCity.API: RESTful endpoints and middleware.

✨ Key Features

Dashboard: Real-time statistics for managers and citizens.

Service Management: Digital catalog of services (e.g., Beach Access, Villa Maintenance).

Service Requests: Citizens can request services and track their status.

Complaint System: Report issues with categories and status tracking.

IoT Monitoring: Utility meter (Water/Electricity) monitoring with usage alerts.

Manager Portal: Tools for managing requests and responding to complaints.

? Getting Started

Prerequisites

.NET 8 SDK

MongoDB (Local or Atlas)

Configuration

Update the appsettings.json in SmartCity.API with your MongoDB connection string:

"MongoDbSettings": {

"ConnectionString": "mongodb://localhost:27017",

"DatabaseName": "SmartCityDb"

}

Running the Project

Navigate to the project root.

Run the application:

dotnet run --project src/SmartCity.API

Open http://localhost:5000/swa... to explore the API.

? Seed Data

On initial run, the system automatically seeds:

Admin Account: admin@smartcity.com / Admin123!

Citizen Account: ahmdasanhabwanar@gmail.com / Ahmed

Default Services: Beach Access, Villa Maintenance, Cleaning, etc.

Sample Data: Initial complaints, service requests, and utility meter readings.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
11
تاريخ الإضافة
المهارات