Project

General

Profile

Actions

Feature #130

open

1. Setup Base Arch

Added by Redmine Admin about 2 months ago. Updated about 2 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Start date:
12/16/2025
Due date:
% Done:

100%


Description

API

1) Copy Clean Architecture API (starting point)

  • Copy the Clean Arch solution into the new repo/solution.
  • Rename solution + projects to your standard naming (keep it consistent with FuSa.Sw.*).

2) Namespace standardisation

Set root namespace everywhere to:

  • Namespace: FuSa.Sw

Do this in:

  • Project properties (Root Namespace / Assembly Name)
  • Any *.csproj that has <RootNamespace> / <AssemblyName>
  • Global usings (if you use them)
  • All folders/classes where old namespaces exist (bulk replace)

3) Database naming

  • Database name: FuSa.Sw

Update:

  • appsettings.json / appsettings.Production.json connection strings

  • EF Core migrations:

    • delete old migrations and create fresh for FuSa.Sw

4) Remove unnecessary code/modules

You specifically want to remove:

  • Appointment module and all related modules

Typical cleanup areas (do in all layers):

  • Domain

    • Entities, Enums, ValueObjects, Events related to appointments
  • Application

    • Commands/Queries/Handlers/Validators/DTOs
    • Interfaces like IAppointmentRepository, etc.
  • Infrastructure

    • Repositories, EF configs, DbSets, mapping configs
    • Any background jobs or services tied to appointments
  • API

    • Controllers/endpoints
    • Authorization policies/roles only used by appointments
    • Swagger grouping / routes

Also remove:

  • Unused services, unused DI registrations
  • Any seed data related to removed modules

Front End

1) Use client’s design

  • Treat client UI as the “source of truth”.
  • Only copy in the minimum functional pieces needed from your existing FE.

2) Copy only necessary code

Typical “safe” items to reuse:

  • Auth token handling / API base client wiring
  • Shared components (toasts, loader, modal wrapper)
  • Route guards
  • Reusable table/grid helpers (if design allows)

Avoid copying:

  • Old screens and module-specific components (especially anything appointment related)
  • Extra helpers not used by the new UI

3) Use FuSa.Sw.nswag

  • Copy FuSa.Sw.nswag into the FE.

  • Ensure it points to:

    • correct Swagger URL (local/dev/prod)
    • correct output path (your FE’s API client folder)
    • correct namespace/module name for generated TS client (or C# client, whichever you generate)

After generation:

  • Replace old API client usage with the newly generated one
  • Verify compile + API calls

Actions #1

Updated by Redmine Admin about 2 months ago

  • Subject changed from Setup Base Arch to 1. Setup Base Arch
Actions #2

Updated by Redmine Admin about 2 months ago

  • All FE code will go in Orbit Folder
  • Logic To Copy From Base
    • Routing Logic - Same Logic that we have in base code
    • apiCore.ts file
Actions #3

Updated by Redmine Admin about 2 months ago

  • % Done changed from 0 to 70
Actions #4

Updated by Redmine Admin about 2 months ago

  • % Done changed from 70 to 80
Actions #5

Updated by Ujjwal Sud about 2 months ago

  • Assignee changed from Redmine Admin to Ujjwal Sud
Actions #6

Updated by Aman Sharma about 2 months ago

  • Status changed from Archieve to Resolved
Actions #7

Updated by Aman Sharma about 2 months ago

  • % Done changed from 80 to 100
Actions #8

Updated by Ujjwal Sud about 2 months ago

  • Assignee deleted (Ujjwal Sud)
Actions

Also available in: Atom PDF