Dashboard
🔑 Super Admin
0
Total Applicants
0
Fitness Tested
0
Health Assessed
0
Psych Tested
Recent Applicants
| Student | Class | Source | Fitness | Status |
|---|
Grade Distribution
All Applicants
🔍
All
Boys
Girls
5th
6th
7th
8th
🌐 Public
| Student | Gender | Class | Age | Sport | Source | Fitness | Health | Psych | Status | Actions |
|---|
Fitness Tests
🔍
All
Tested
Pending
Health Assessments
🔍
| Student | Class | Prakriti | Dhatu | Illness | Diet | Total/69 | Grade | Status | Actions |
|---|
Psychology Assessments
🔍
| Student | Class | TAS | TAF | Profile | Observation | Status | Actions |
|---|
Filters:
🔍
Grade Distribution
Score Distribution
Sport-wise Performance
Fitness Report — Detailed View
0 records
| # | Student | Class | Gender | Sport | Score | Max | % | Grade | Status | Remarks |
|---|
Grade Distribution
Prakriti Breakdown
Doctor Decisions
Health Report — Detailed View
0 records
| # | Student | Class | Gender | Sport | Prakriti | Dhatu | Clinical | Total/69 | Grade | Doctor Decision |
|---|
Profile Distribution
TAS vs TAF Scatter
Psychologist Decisions
Psychology Report — Detailed View
0 records
| # | Student | Class | Gender | Sport | TAS | TAF | Profile | Anxiety | Motivation | Psychologist Decision |
|---|
⚙️ Dynamic Fitness Assessment Engine
Build fully configurable tests — all dynamic, no hardcoded fields. Questions flow into Norms → Tests → Mapping → Live Form.
1
Question Master
2
Norm Config
3
Test Templates
4
Assign Questions
5
Formulas
6
DB Schema
📋 Question Master
Create reusable fitness questions → these will appear in Norm Config & Test Assignments automatically.
Question Name
Type
Unit
Max Marks
Mandatory
Total: 0 marks · 0 questions ·
FitnessQuestions
📌 APIs:
POST /api/fitness/questions · GET /api/fitness/questions · PUT /api/fitness/questions/{id}These questions auto-populate Norm Config (Step 2) and Assign Questions (Step 4).📐 Norm Configuration
Questions from Step 1 appear here. Define marks ranges per question/gender/age group →
FitnessQuestionNormsAdd Norm Rule
📌 APIs:
POST /api/fitness/norms · GET /api/fitness/norms/question/{questionId}Fields: FitnessQuestionId, AgeGroupId, Gender, OperatorType, NormalizedMinValue, NormalizedMaxValue, Marks, Grade, VersionNo, EffectiveFrom🗂 Test Templates
Create named fitness test definitions →
FitnessTestsSaved Test Templates
| Test Name | Code | Standards | Gender | Status | Actions |
|---|
📌 APIs:
POST /api/fitness/tests · GET /api/fitness/tests · PUT /api/fitness/tests/{id}🔗 Assign Questions to Test
Questions from Step 1 appear here. Tick which questions belong to each test →
FitnessTestQuestionMappingsSelect a test above to assign questions
🔥 Dynamic Rendering: Frontend calls
GET /api/fitness/test-template/{testId} → returns this question list → UI renders form dynamically → no hardcoded fields!
📌 APIs:
Response:
POST /api/fitness/tests/assign-questions · GET /api/fitness/test-template/{testId}Response:
[{questionId, questionName, questionType, unit, isMandatory, displayOrder, maxMarks}]🧮 Formula Configuration
Store calculation formulas in DB →
FitnessQuestionFormulas| Code | Name | Expression | Used By | Status |
|---|
Tables: FitnessQuestionFormulas, FitnessFormulaVariables
CalculationType values: None · NormBased · FormulaBased · BMI · AutoCalculated
CalculationType values: None · NormBased · FormulaBased · BMI · AutoCalculated
📊 Database Schema
Complete table structure for the Dynamic Fitness Engine (SQL Server)
Complete Flow: Applicant → FitnessTests → FitnessQuestions → FitnessQuestionNorms → FitnessTestQuestionMappings → FitnessStudentTests → FitnessStudentTestAnswers → FitnessCalculationLogs
🩺 Dynamic Health Assessment Engine
Fully configurable health assessment — Prakriti Parameters · Dhatu Sarata · Clinical Scoring · Grade Rules. All dynamic, no hardcoded fields.
1
Parameter Master
2
Scoring Config
3
Assessment Templates
4
Assign Sections
5
Grade Rules
6
DB Schema
📋 Health Parameter Master
Define all health assessment parameters across 3 sections: Prakriti, Dhatu Sarata, and Clinical. These auto-populate Scoring Config (Step 2) and Assessment Templates (Step 3).
🌀
10 params
Section 1: Prakriti Parameters
Evaluated by doctor — each parameter maps to Vata/Pitta/Kapha. Auto-calculates Constitution Type.
Parameter Name
Dosha Options
Display Order
Category
Mandatory
Total: 0 parameters → Max Constitution Score: 10 marks ·
HealthPrakrutiParameters
🧬
6 dhatus
Section 2: Dhatu Sarata Parameters
Tissue quality evaluation — each Dhatu scored as Heen/Madhyam/Uttam. Max 3 marks per dhatu.
Dhatu Name (Sanskrit + English)
Heen Marks
Madhyam Marks
Uttam Marks
Max Marks
Total Dhatu Marks: 0 / configured max ·
HealthDhatuParameters
🩻
0 params
Section 3: Clinical Parameters
Vitals, habits, and body system evaluations. Each parameter has selectable options with configured marks.
Parameter Name
Input Type
Options / Values
Max Marks
Category
Clinical Max: 0 marks ·
HealthClinicalParameters
📌 APIs:
POST /api/health/parameters · GET /api/health/parameters?section=prakriti|dhatu|clinical · PUT /api/health/parameters/{id} Parameters auto-populate the Scoring Config (Step 2) and the live Health Assessment form for doctors. No hardcoded fields — all driven from this master.📐 Health Scoring Configuration
Configure exact marks for each option/selection in every parameter. Rules stored in
HealthScoringRules → doctor selects → system auto-scores.🌀
Prakriti Constitution Scoring
Maps Constitution Type → Bonus Performance Score
Each of the 10 Prakriti parameters = 1 mark. Constitution Type gives bonus marks based on the dominant dosha combination:
Constitution Type
Base Score
Bonus Marks
Total Marks
Formula: Prakriti Score = (No. of params filled × 1) + Constitution Bonus · Max = 10 + bonus ·
HealthPrakrutiScoringRules🧬
Dhatu Sarata Scoring
Per-dhatu marks based on quality level
| Quality Level | Marks | Description | Actions |
|---|
Formula: Dhatu Score = Σ(marks for each dhatu quality) · Max = 18 (6 dhatus × 3 max) ·
HealthDhatuScoringRules🩻
Clinical Parameter Scoring
Marks for each clinical option selection — from Step 1 clinical params
Parameter
Option Label
Option Value
Marks
📌 APIs:
POST /api/health/scoring-rules · GET /api/health/scoring-rules/{parameterId} Fields: HealthParameterId, OptionLabel, OptionValue, Marks, IsNormal, IsDefault, SortOrder🗂 Health Assessment Templates
Create named health assessment definitions. Each template controls which sections/parameters are active →
HealthAssessmentTemplatesSaved Health Templates
| Template Name | Code | Standards | Prakriti | Dhatu | Clinical | Status | Actions |
|---|
📌 APIs:
POST /api/health/templates · GET /api/health/templates · PUT /api/health/templates/{id}🔗 Assign Parameters to Template
Select which parameters appear in each assessment template. Tick to include, drag to reorder →
HealthTemplateParameterMappingsSelect a template above to assign parameters
🔥 Dynamic Rendering: Frontend calls
GET /api/health/template/{templateId}/parameters → returns this list → Doctor UI renders dynamically → no hardcoded fields!📌 APIs:
Response:
POST /api/health/templates/assign-parameters · GET /api/health/template/{templateId}Response:
[{parameterId, parameterName, section, inputType, displayOrder, isMandatory, maxMarks, scoringOptions}]🎖 Health Grade Rules
Map total health score ranges to grades. Also configure Doctor's Final Decision rules →
HealthGradeRules🧮
Score Breakdown Configuration
Total Health Score =
49
Prakriti + Dhatu + Clinical
Note: Original system has 69 total (Prakriti ~13 + Dhatu 18 + Clinical ~38). Adjust above to match your configuration.
🏅
Health Grade Thresholds
| Grade | Min Score | Max Score | % Range | Label | Doctor Action |
|---|
👨⚕️
Doctor Final Decision Rules
Configure auto-suggestion for Doctor's final recommendation based on health score and grade:
| Condition | Auto-Suggestion | Status | Override Allowed |
|---|
📊 Health Assessment Database Schema
Complete table structure for the Dynamic Health Assessment Engine (SQL Server)
Complete Flow: Applicant (selected) → HealthAssessmentTemplates → HealthPrakrutiParameters → HealthDhatuParameters → HealthClinicalParameters → HealthStudentAssessments → HealthStudentParameterResponses → HealthCalculationResults → HealthDoctorDecisions
🧠 Psychology Test Configuration Engine
Motivational Profile & Anxiety Assessment · TAS / TAF Scoring · Norm-based Classification · 8 Groups × 8 Questions · Dynamic Grade Rules
1
Question Groups
2
Question Bank
3
Norms Master
4
Score Formula
5
Result Rules
6
Assessment Templates
7
DB Schema
📚 Psychology Question Group Master
8 question groups — 7 scored (LS, OO, DS, CMA, VL, ASCS, FA) + 1 Lie Scale reference only. Each group contributes to TAS or TAF composite scores.
🧠
8 groups
Group Configuration
Define each group's contribution to TAS or TAF composite score
Code
Group Name
Description
Contributes To
Questions
Scored?
Score Map: TAS = LS + DS + CMA + VL + OO | TAF = ASCS + FA | LIE = Reference only ·
PsychQuestionGroups
📌 APIs:
Fields: Id, GroupCode, GroupName, Description, ContributesTo (TAS/TAF/NONE), QuestionCount, IsScored, DisplayOrder, IsActive
POST /api/psych/groups · GET /api/psych/groups · PUT /api/psych/groups/{id}Fields: Id, GroupCode, GroupName, Description, ContributesTo (TAS/TAF/NONE), QuestionCount, IsScored, DisplayOrder, IsActive
❓ Psychology Question Bank
64 questions across 8 groups. Each answered on 5-point Likert scale: 1=Strongly Disagree → 5=Strongly Agree. All stored in
PsychQuestions
LIKERT SCALE:
1
2
3
4
5
1=Strongly Disagree · 2=Slightly Disagree · 3=Neutral · 4=Slightly Agree · 5=Strongly Agree
Max/group: 40 · Max scored total: 280
📌 APIs:
Fields: Id, PsychQuestionGroupId, QuestionText, QuestionIndex, DisplayOrder, IsReverse, IsActive
POST /api/psych/questions · GET /api/psych/questions?groupId={id} · PUT /api/psych/questions/{id}Fields: Id, PsychQuestionGroupId, QuestionText, QuestionIndex, DisplayOrder, IsReverse, IsActive
📊 Psychology Norms Master
Define TAS and TAF threshold limits by Standard and Gender. System auto-fetches norms for each student's profile to classify the psychological result.
📏
Norm Thresholds by Standard & Gender
TAS = Total Achievement Score · TAF = Total Anxiety/Fear Score ·
PsychNorms| Standard | Gender | TAS Limit (Min for High Achieving) |
TAF Limit (Min for High Anxiety) |
Actions |
|---|
CLASSIFICATION LOGIC
HIGH ACHIEVING
TAS ≥ Limit AND TAF < Limit
HIGH ANXIETY
TAS < Limit AND TAF ≥ Limit
CONFLICT
TAS ≥ Limit AND TAF ≥ Limit
CALM
TAS < Limit AND TAF < Limit
📌 APIs:
Fields: Id, TenantId, Standard, Gender, TASLimit, TAFLimit, IsActive, CreatedBy, CreatedAt
POST /api/psych/norms · GET /api/psych/norms?standard={std}&gender={gender} · PUT /api/psych/norms/{id}Fields: Id, TenantId, Standard, Gender, TASLimit, TAFLimit, IsActive, CreatedBy, CreatedAt
🧮 Psychology Score Formula Configuration
Configure how group scores roll up to TAS and TAF composite scores.
📐
TAS – Total Achievement Score Formula
TAS =
LS + DS + CMA + VL + OO
→
RANGE
40 – 200
5 groups × 8Q × max 5pts
| Group Code | Group Name | Questions | Min Score | Max Score | Contributes to TAS |
|---|
😰
TAF – Total Anxiety/Fear Score Formula
TAF =
ASCS + FA
→
RANGE
16 – 80
2 groups × 8Q × max 5pts
| Group Code | Group Name | Questions | Min Score | Max Score | Contributes to TAF |
|---|
🔍
LIE Scale — Reference Only
LIE Scale (8 questions) is completed by the student but its score is NOT included in TAS or TAF.
It is displayed to the psychologist as a reference indicator of response reliability.
LIE_Score = Sum of 8 LIE group answers (8 to 40)
📌 Calculation API:
Input: StudentId + TestId + All 64 answers → Returns: TAS, TAF, LIE_Score, NormLimits, Result, Description
POST /api/psych/calculateInput: StudentId + TestId + All 64 answers → Returns: TAS, TAF, LIE_Score, NormLimits, Result, Description
🏷 Psychology Result Classification Rules
Configure the 4 result classifications based on TAS vs TAF comparison to norm limits.
⚡
Auto-Classification Rules
System evaluates TAS and TAF against norm limits →
PsychResultRules| Result Type | TAS Condition | TAF Condition | Description | Psychologist Suggestion | Active |
|---|
Logic Engine:
IF (TAS >= TAS_Limit) AND (TAF < TAF_Limit) → "High Achieving" | Limits fetched dynamically from PsychNorms by Gender + Standard.
👩⚕️
Psychologist Final Decision Configuration
| Condition / Grade | Auto-Suggestion | Display Badge | Override Allowed | Forward to Selection |
|---|
🗂 Psychology Assessment Templates
Create named psychology assessment sessions →
PsychAssessmentTemplatesACTIVE QUESTION GROUPS
| Template Name | Code | Standards | Gender | Prerequisite | Time Limit | Groups | Status | Actions |
|---|
📌 APIs:
On test start:
POST /api/psych/templates · GET /api/psych/templates · PUT /api/psych/templates/{id}On test start:
GET /api/psych/template/{id}/questions → returns all groups + questions → frontend renders dynamically
📊 Psychology Test Database Schema
Complete SQL Server table structure for the Psychology Assessment Engine
Complete Flow: Health-Cleared Students → PsychAssessmentTemplates → PsychQuestionGroups → PsychQuestions → PsychNorms → PsychStudentTests → PsychStudentAnswers → PsychCalculationResults → PsychDoctorDecisions → FinalSelectionPool
Fitness Norms Reference
Performance ranges from official Kridakul criteria
Health Assessment Scoring
| Factor | Normal Score | Abnormal |
|---|---|---|
| Respiratory System | 2 | Crepts/Rhonci=1 |
| Cardiovascular | 2 | Murmur=1 |
| Abdomen | 2 | Shool/Bloating=1 |
| Urination | 2 | Burning/Blood=1 |
| Defecation | 2 | Irregular=1 |
| Tongue (Jivha) | 3 Niram | Ali Sam=2, Sam=1 |
| Illness Frequency | 3 Once/yr | Seasonal=2, Frequent=1 |
| Diet Habits | 2 Proper | Improper=1 |
| Prakriti (10 params) | 1 mark each → 10 + Constitution bonus | |
| Dhatu Sarata (6 tissues) | 3 Uttam each | Madhyam=2, Heen=1 → max 18 |
Total Health Marks = 69
Psychology TAS/TAF Reference Limits
| Gender | Class | TAS Limit | TAF Limit |
|---|
Grade Thresholds (Fitness)
| Grade | Min % | Max % | Description |
|---|---|---|---|
| O | 100 | Outstanding | |
| A | 74 | Excellent | |
| B | 59 | Good | |
| F | 0 | 49 | Needs Improvement |