# jtg-induction/dot-assginment-divesh-singh-uid-0087 architecture

> Architecture diagram of the GitHub repository jtg-induction/dot-assginment-divesh-singh-uid-0087, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/jtg-induction/dot-assginment-divesh-singh-uid-0087
- Repository: https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087

## Overview

This repository is documented as a restaurant-management backend API for customer, restaurant-owner, and super-admin workflows. The README describes restaurant onboarding, menu management, restaurant discovery, and order acceptance or rejection; the entity model includes users, restaurants, menu items, and orders with lifecycle status. Sampled code confirms Web API routing, a database-availability endpoint, and an Entity Framework context backed by SQL Server. Most business endpoints and integrations are not present in the sampled source, so their wiring is not inferred.

Main entry points: [`RestaurantManagement/Data/Applicationdbcontext.cs`](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Data/Applicationdbcontext.cs) (EF database context), [`RestaurantManagement`](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement) (Order handling), [`RestaurantManagement/check.cs`](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/check.cs) (Database check endpoint), [`RestaurantManagement/App_Start/WebApiConfig.cs`](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/App_Start/WebApiConfig.cs) (Web API routing)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_workflows["Product workflows"]
  node_onboarding["Restaurant onboarding"]
  node_menu["Menu management"]
  node_discovery["Restaurant discovery"]
  node_orders["Order handling"]
  node_lifecycle["Order lifecycle<br/>[OrderStatus.cs]"]
end

subgraph group_api["API runtime"]
  node_routing["Web API routing<br/>[WebApiConfig.cs]"]
  node_health["Database check endpoint<br/>[check.cs]"]
end

subgraph group_data["Domain and persistence"]
  node_context["EF database context"]
  node_users["User accounts<br/>[User.cs]"]
  node_restaurants["Restaurant records<br/>[Restaurant.cs]"]
  node_menuitems["Menu item records<br/>[MenuItem.cs]"]
  node_orderrecords["Order records<br/>[Order.cs]"]
end

node_admin(("Super Admin"))
node_owner(("Restaurant Owner"))
node_customer(("Customer"))
node_sql[("SQL Server")]

node_admin -->|"provisions"| node_onboarding
node_owner -->|"manages menu"| node_menu
node_owner -->|"accepts or rejects"| node_orders
node_customer -->|"fetches details"| node_discovery
node_routing -->|"routes request"| node_health
node_health -->|"checks database"| node_context
node_context -->|"queries"| node_sql
node_context -->|"maps"| node_users
node_context -->|"maps"| node_restaurants
node_context -->|"maps"| node_menuitems
node_context -->|"maps"| node_orderrecords
node_orders -->|"tracks statuses"| node_lifecycle

click node_onboarding "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement"
click node_menu "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement"
click node_discovery "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement"
click node_orders "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement"
click node_lifecycle "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Enum/OrderStatus.cs"
click node_routing "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/App_Start/WebApiConfig.cs"
click node_health "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/check.cs"
click node_context "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Data/Applicationdbcontext.cs"
click node_users "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/User.cs"
click node_restaurants "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/Restaurant.cs"
click node_menuitems "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/MenuItem.cs"
click node_orderrecords "https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/Order.cs"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_onboarding,node_menu,node_discovery,node_orders,node_lifecycle toneBlue
class node_routing,node_health,node_sql toneAmber
class node_context,node_users,node_restaurants,node_menuitems,node_orderrecords toneMint
class node_admin,node_owner,node_customer toneIndigo
```

## Components

### Product workflows

- [Restaurant onboarding](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement): `RestaurantManagement`
- [Menu management](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement): `RestaurantManagement`
- [Restaurant discovery](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement): `RestaurantManagement`
- [Order handling](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/tree/main/RestaurantManagement): `RestaurantManagement`
- [Order lifecycle](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Enum/OrderStatus.cs): `RestaurantManagement/Models/Enum/OrderStatus.cs`

### API runtime

- [Web API routing](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/App_Start/WebApiConfig.cs): `RestaurantManagement/App_Start/WebApiConfig.cs`
- [Database check endpoint](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/check.cs): `RestaurantManagement/check.cs`

### Domain and persistence

- [EF database context](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Data/Applicationdbcontext.cs): `RestaurantManagement/Data/Applicationdbcontext.cs`
- [User accounts](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/User.cs): `RestaurantManagement/Models/Entity/User.cs`
- [Restaurant records](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/Restaurant.cs): `RestaurantManagement/Models/Entity/Restaurant.cs`
- [Menu item records](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/MenuItem.cs): `RestaurantManagement/Models/Entity/MenuItem.cs`
- [Order records](https://github.com/jtg-induction/dot-assginment-divesh-singh-uid-0087/blob/main/RestaurantManagement/Models/Entity/Order.cs): `RestaurantManagement/Models/Entity/Order.cs`

### Other components

- **Super Admin**
- **Restaurant Owner**
- **Customer**
- **SQL Server**

## Connections

- Super Admin → Restaurant onboarding: provisions
- Restaurant Owner → Menu management: manages menu
- Restaurant Owner → Order handling: accepts or rejects
- Customer → Restaurant discovery: fetches details
- Web API routing → Database check endpoint: routes request
- Database check endpoint → EF database context: checks database
- EF database context → SQL Server: queries
- EF database context → User accounts: maps
- EF database context → Restaurant records: maps
- EF database context → Menu item records: maps
- EF database context → Order records: maps
- Order handling → Order lifecycle: tracks statuses
