deployment
DOCUMENTATION SECTION 29A
MFE Name: user-dashboard (User Dashboard)
Version: 1.0.0
Date: 07/04/2025
๐น Overviewโ
The User Dashboard in the Section 29A MFE module allows users to:
-
View all their previously raised report requests. \
-
Raise new report requests via a guided form. \
-
Manage RAs (Resolution Applicants) under each CD (Corporate Debtor). \
-
Select Legal Opinions as required, which dynamically updates the billing. \
๐งโ๐ผ 1. User Dashboard Pageโ
๐ฅ๏ธ Components:โ
-
**Report Requests Table
**-
Displays a list of all previously raised requests by the user. \
-
Each entry shows basic info like CD Name, Number of RAs, Legal Opinion Status, etc. \
-
-
**Raise New Report Request Button
**- On click, opens a new page/form to start a fresh report request flow. \
๐ 2. New Report Request Flowโ
๐น Step 1: Enter Required Detailsโ
-
Fields: \
-
CD Name (Corporate Debtor) \
-
PAN/CIN (based on type) \
-
Additional metadata (as needed) \
-
๐น Step 2: Add RAs (Resolution Applicants)โ
-
Multiple RAs can be added under a single CD. \
-
Each RA will have fields like: \
-
Name \
-
Type (Individual / Company / LLP, etc.) \
-
Relation \
-
PAN/DIN \
-
GSTIN (optional) \
-
๐น Step 3: Legal Opinion Requirementโ
-
For each RA, users can select whether Legal Opinion is required. \
-
Based on this selection, billing will be recalculated accordingly. \
๐ณ 3. Billing Logicโ
-
Billing is dynamically adjusted based on: \
-
Number of RAs \
-
Whether Legal Opinion is selected per RA \
-
-
Total amount shown before final submission. \
โ 4. Final Submissionโ
-
After entering all details and confirming billing: \
-
The user submits the report request. \
-
Data is sent to backend for processing. \
-
User is redirected back to the dashboard.
-
API Integration
The project utilizes GraphQL for API integration, following a structured approach to ensure efficient data fetching and mutation handling. The integration process includes the following steps:
-
**Writing GraphQL Queries & Mutations
**- Create
.graphqlfiles to define queries and mutations. - These files specify the exact data requirements and structure needed from the API.
- Create
-
Generating Type-Safe Files
** Run the command:
** pnpm run generate- This generates TypeScript files containing auto-generated hooks, types, and API bindings based on the defined GraphQL operations.
-
**Creating Custom Hooks
**- A
.tsfile is created to define custom hooks for specific queries/mutations. - These hooks wrap the generated API functions for improved reusability and abstraction.
- A
-
**Using Hooks in Components
**- The custom hooks are then imported and used in React components to fetch and manipulate data dynamically.
The Following are the apis used in the user dashboard.
Listing Service Requests, Creating New Service Requests, Updating Service Requests, listing Service Req Status.
MFE Name: analyst-dashboard (Analyst Dashboard)
Version: 1.0.0
Date: 07/04/2025
๐ Section 29A MFE - Analyst Dashboard (Frontend Documentation)โ
๐น Overviewโ
The Analyst Dashboard is designed for internal analysts to upload and analyze CPs (Connected Parties). Unlike the user dashboard, the analyst doesnโt raise report requests but instead works on existing requests by uploading estimations via Excel. This estimation process helps in moving the report forward for legal opinion and billing.
๐งโ๐ป 1. Analyst Dashboard Pageโ
๐ฅ๏ธ Components:โ
- **Assigned Report Requests Table
**-
Shows a list of reports assigned to the analyst for estimation. \
-
Each row includes: \
-
CD Name \
-
Request Date \
-
Status (e.g., "Pending Estimation", "Estimation Uploaded") \
-
Action button (e.g., "Upload Estimation") \
-
-
๐ 2. Upload Estimations Flowโ
๐น Step 1: Open Estimation Upload Pageโ
-
Triggered by clicking on "Upload Estimation" for a specific report. \
-
Opens a form or modal specific to that CD. \
๐น Step 2: Upload CPs Excelโ
-
Analyst uploads CPs using a pre-defined Excel template. \
-
Types of CPs supported: \
-
Companies \
-
Directors \
-
Individuals \
-
๐น Step 3: Excel Parsing & Previewโ
-
Uploaded Excel is parsed (using ExcelJS or similar). \
-
CPs are categorized automatically based on headers and shown in preview. \
-
Analyst can make edits if necessary before final upload. \
๐ง 3. CPs Analysis Logicโ
-
Each CP is matched with fields like: \
-
Name \
-
PAN / DIN / CIN \
-
Relation \
-
GSTINs, DOB, etc. \
-
-
Analysts can also: \
-
Remove wrongly parsed CPs \
-
Add missing data manually if needed \
-
๐ค 4. Final Uploadโ
-
On confirmation: \
-
Estimation data is sent to the backend. \
-
Report status is updated (e.g.,
under legal review). \ -
Billing component is triggered based on Legal Opinion flags selected by the user earlier.
-
๐ Section 29A MFE - Legal Dashboard (Frontend Documentation)โ
๐น Overviewโ
The Legal Dashboard is used by the legal team to review report requests for which the user has opted for a legal opinion. The legal expert can analyze the estimation data and upload a final legal opinion PDF. Once uploaded, the user can view this document from their dashboard.
โ๏ธ 1. Legal Dashboard Pageโ
๐ฅ๏ธ Components:โ
- **Reports Table (Legal Queue)
**-
Lists all report requests where a legal opinion is required. \
-
Each row displays: \
-
CD Name \
-
Submitted By (User) \
-
Number of RAs \
-
Estimation Status \
-
Legal Opinion Status (Pending / Uploaded) \
-
Action button: **View & Upload Opinion
**
-
-
๐ 2. Legal Opinion Workflowโ
๐น Step 1: View Report Detailsโ
-
On clicking View & Upload Opinion, a detailed view opens. \
-
Components in the view: \
-
CD & RA Summary \
-
Parsed CPs (from estimation) \
-
Estimation file preview/download (optional) \
-
Comment box (optional) \
-
๐น Step 2: Upload Legal Opinionโ
-
Legal user uploads a PDF document that contains the legal opinion. \
-
Metadata captured: \
-
File name \
-
Upload timestamp \
-
Uploaded by (legal user) \
-
โ Upload Validation:โ
-
Only PDF format is accepted. \
-
Upload cannot proceed without selecting a valid file. \
๐ค 3. Final Submissionโ
-
On submitting the opinion: \
-
Backend stores the legal opinion file. \
-
Status of the report is updated (e.g.,
opinion_uploaded). \ -
Notification can be triggered to the original user (optional). \
-
๐๏ธ 4. User Access to Legal Opinionโ
-
Once uploaded, the user can view the legal opinion in their dashboard. \
-
Component: \
-
โLegal Opinionโ column/link in the Report Requests Table. \
-
Opens the uploaded PDF in a viewer or initiates download. \
-
\
๐ Section 29A MFE - CAM Dashboard (Frontend Documentation)โ
๐น Overviewโ
The CAM (Credit Appraisal Manager) Dashboard is the final step in the Section 29A workflow. Once the analyst has uploaded estimations and the legal team has submitted the legal opinion (if opted), the report is marked complete, and the CAM is notified. From here, the CAM confirms the report status and initiates the billing process.
๐งพ 1. CAM Dashboard Pageโ
๐ฅ๏ธ Components:โ
- **Completed Reports Table
**-
Lists all reports that are marked complete after: \
-
Estimation uploaded by analyst โ \
-
Legal opinion uploaded (if selected by user) โ \
-
-
Table columns include: \
-
CD Name \
-
Number of RAs \
-
Estimation & Legal Status \
-
Report Completion Date \
-
Billing Status (Pending / Initiated / Completed) \
-
Action: **Confirm & Initiate Billing
**
-
-
๐ 2. Report Status Updateโ
๐น Step 1: Notification & Loadโ
-
Once backend marks report as
complete, CAM receives: \-
In-app notification (optional) \
-
Or the dashboard automatically reflects new entries in โPending Billingโ status \
-
๐น Step 2: Confirm Completionโ
-
CAM reviews the report summary \
-
Clicks โMark as Confirmedโ or **โReady for Billingโ
**
๐ณ 3. Billing Initiationโ
๐งพ Billing Components:โ
-
Billing Amount is dynamically calculated based on: \
-
Number of RAs \
-
Legal Opinions selected \
-
GST and additional charges
-
๐ค 4. Finalization & Trackingโ
-
After billing is initiated: \
- Status changes to โBilling Initiatedโ or **โPayment Pendingโ
** - Once payment is completed, status updates to **โCompletedโ
**
- Status changes to โBilling Initiatedโ or **โPayment Pendingโ
๐ Workflow Summaryโ
graph TD
Analyst[Estimation Uploaded] --> Legal[Legal Opinion Uploaded]
Legal --> BackendMarkComplete[Report Marked Complete]
BackendMarkComplete --> CAMDashboard[CAM Dashboard]
CAMDashboard --> ConfirmReport[Confirm Completion]
ConfirmReport --> Billing[Initiate Billing]
Billing --> StatusUpdate[Billing Status Updated]
StatusUpdate --> Payment[Payment Processed]
\
Deployment
INFO - MFE
pnpm build
docker build --no-cache -t section29a-fe/info:latest .
docker tag section29a-fe/info:latest us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/info:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/info:latest
Root - MFE
pnpm build
docker build --no-cache -t section29a-fe/root:latest .
docker tag section29a-fe/root:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/root:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/root:latest
Header - MFE
pnpm build
docker build --no-cache -t section29a-fe/sec29a-header:latest .
docker tag section29a-fe/sec29a-header:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/sec29a-header:latest
docker push us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/sec29a-header:latest
User Dashboard - MFE
pnpm build
docker build --no-cache -t section29a-fe/user-dashboard:latest .
docker tag section29a-fe/user-dashboard:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/user-dashboard:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/user-dashboard:latest
Legal Dashboard - MFE
pnpm build
docker build --no-cache -t section29a-fe/legal-dashboard:latest .
docker tag section29a-fe/legal-dashboard:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/legal-dashboard:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/legal-dashboard:latest
Analyst Dashboard MFE
pnpm build
docker build --no-cache -t section29a-fe/analyst-dashboard:latest .
docker tag section29a-fe/analyst-dashboard:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/analyst-dashboard:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/analyst-dashboard:latest
CAM Dashboard - MFE
pnpm build
docker build --no-cache -t section29a-fe/cam-dashboard:latest .
docker tag section29a-fe/cam-dashboard:latest
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/cam-dashboard:latest
docker push
us-west1-docker.pkg.dev/test-genai-422809/signalx-section29a/section29a-fe/cam-dashboard:latest