From 92935d70cd3b8df61f229d2f9730eaf2ed4d36d2 Mon Sep 17 00:00:00 2001 From: Amoghavarsh <93114621+5Amogh@users.noreply.github.com> Date: Thu, 31 Jul 2025 18:52:40 +0530 Subject: [PATCH] fix: aam-1725 provisional diagnosis rendering issue fix and performance improvement by n factor (#164) * fix: aam-1725 provisional diagnosis rendering issue fix and performance improvement by n factor * fix: amm-1725 provisonal diagnosis in quick consult issue fix --- .../general-opd-diagnosis.component.html | 2 +- .../general-opd-diagnosis.component.ts | 16 +++++++--------- .../ncd-care-diagnosis.component.html | 2 +- .../ncd-care-diagnosis.component.ts | 16 +++++++--------- .../ncd-screening-diagnosis.component.html | 2 +- .../ncd-screening-diagnosis.component.ts | 16 +++++++--------- .../pnc-diagnosis/pnc-diagnosis.component.html | 2 +- .../pnc-diagnosis/pnc-diagnosis.component.ts | 14 ++++++-------- .../quick-consult/quick-consult.component.ts | 5 ++--- 9 files changed, 33 insertions(+), 42 deletions(-) diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.html b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.html index 65099e8b..aa8f2a5e 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.html +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.html @@ -26,7 +26,7 @@
+ *ngFor="let diagnosis of provisionalDiagnosisControls; let i = index; let isLast = last">
diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.ts b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.ts index 87be4106..13bc4b8a 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.ts +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/general-opd-diagnosis/general-opd-diagnosis.component.ts @@ -94,13 +94,11 @@ export class GeneralOpdDiagnosisComponent this.current_language_set = getLanguageJson.currentLanguageObject; } - getProvisionalDiagnosisList(): AbstractControl[] | null { - const provisionalDiagnosisListControl = this.generalDiagnosisForm.get( - 'provisionalDiagnosisList', + get provisionalDiagnosisControls(): AbstractControl[] { + return ( + (this.generalDiagnosisForm.get('provisionalDiagnosisList') as FormArray) + ?.controls || [] ); - return provisionalDiagnosisListControl instanceof FormArray - ? provisionalDiagnosisListControl.controls - : null; } get specialistDaignosis() { @@ -203,8 +201,8 @@ export class GeneralOpdDiagnosisComponent (diagnosisArrayList.at(i)).controls[ 'viewProvisionalDiagnosisProvided' ].disable(); - if (diagnosisArrayList.length < savedDiagnosisData.length) - this.addDiagnosis(); + // if (diagnosisArrayList.length < savedDiagnosisData.length) + this.addDiagnosis(); } } } @@ -280,7 +278,7 @@ export class GeneralOpdDiagnosisComponent } displayDiagnosis(diagnosis: any): string { - return diagnosis?.term || ''; + return typeof diagnosis === 'string' ? diagnosis : diagnosis?.term || ''; } onDiagnosisSelected(selected: any, index: number) { diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.html b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.html index df19c075..ae17aa4c 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.html +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.html @@ -106,7 +106,7 @@

{{ current_language_set?.casesheet?.provisionalDiag }}

+ *ngFor="let diagnosis of provisionalDiagnosisControls; let i = index; let isLast = last">
diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.ts b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.ts index c5bdd27d..5807d1ef 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.ts +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-care-diagnosis/ncd-care-diagnosis.component.ts @@ -104,13 +104,11 @@ export class NcdCareDiagnosisComponent implements OnInit, DoCheck, OnDestroy { this.current_language_set = getLanguageJson.currentLanguageObject; } - getProvisionalDiagnosisList(): AbstractControl[] | null { - const provisionalDiagnosisListControl = this.generalDiagnosisForm.get( - 'provisionalDiagnosisList', + get provisionalDiagnosisControls(): AbstractControl[] { + return ( + (this.generalDiagnosisForm.get('provisionalDiagnosisList') as FormArray) + ?.controls || [] ); - return provisionalDiagnosisListControl instanceof FormArray - ? provisionalDiagnosisListControl.controls - : null; } getDoctorMasterData() { @@ -207,8 +205,8 @@ export class NcdCareDiagnosisComponent implements OnInit, DoCheck, OnDestroy { (diagnosisArrayList.at(i)).controls[ 'viewProvisionalDiagnosisProvided' ].disable(); - if (diagnosisArrayList.length < savedDiagnosisData.length) - this.addDiagnosis(); + // if (diagnosisArrayList.length < savedDiagnosisData.length) + this.addDiagnosis(); } } } @@ -305,7 +303,7 @@ export class NcdCareDiagnosisComponent implements OnInit, DoCheck, OnDestroy { } displayDiagnosis(diagnosis: any): string { - return diagnosis?.term || ''; + return typeof diagnosis === 'string' ? diagnosis : diagnosis?.term || ''; } onDiagnosisSelected(selected: any, index: number) { diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.html b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.html index e5420a8b..0c10133d 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.html +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.html @@ -10,7 +10,7 @@

+ *ngFor="let diagnosis of provisionalDiagnosisControls; let i = index; let isLast = last">
diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.ts b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.ts index 63478c7e..5f4f8446 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.ts +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/ncd-screening-diagnosis/ncd-screening-diagnosis.component.ts @@ -153,13 +153,11 @@ export class NcdScreeningDiagnosisComponent }); } - getProvisionalDiagnosisList(): AbstractControl[] | null { - const provisionalDiagnosisListControl = this.generalDiagnosisForm.get( - 'provisionalDiagnosisList', + get provisionalDiagnosisControls(): AbstractControl[] { + return ( + (this.generalDiagnosisForm.get('provisionalDiagnosisList') as FormArray) + ?.controls || [] ); - return provisionalDiagnosisListControl instanceof FormArray - ? provisionalDiagnosisListControl.controls - : null; } ngDoCheck() { @@ -342,8 +340,8 @@ export class NcdScreeningDiagnosisComponent (diagnosisArrayList.at(i)).controls[ 'viewProvisionalDiagnosisProvided' ].disable(); - if (diagnosisArrayList.length < savedDiagnosisData.length) - this.addDiagnosis(); + //if (diagnosisArrayList.length < savedDiagnosisData.length) + this.addDiagnosis(); } } } @@ -556,7 +554,7 @@ export class NcdScreeningDiagnosisComponent } displayDiagnosis(diagnosis: any): string { - return diagnosis?.term || ''; + return typeof diagnosis === 'string' ? diagnosis : diagnosis?.term || ''; } onDiagnosisSelected(selected: any, index: number) { diff --git a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/pnc-diagnosis/pnc-diagnosis.component.html b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/pnc-diagnosis/pnc-diagnosis.component.html index cc915855..88408df8 100644 --- a/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/pnc-diagnosis/pnc-diagnosis.component.html +++ b/src/app/app-modules/nurse-doctor/case-record/general-case-record/diagnosis/pnc-diagnosis/pnc-diagnosis.component.html @@ -8,7 +8,7 @@

{{ current_language_set?.casesheet?.provisionalDiag }}

provisionalDiagnosisList.at(i)).controls[ 'viewProvisionalDiagnosisProvided' ].disable(); - if (provisionalDiagnosisList.length < provisionalDiagnosisDataList.length) - this.addProvisionalDiagnosis(); + //if (provisionalDiagnosisList.length < provisionalDiagnosisDataList.length) + this.addProvisionalDiagnosis(); } } diff --git a/src/app/app-modules/nurse-doctor/quick-consult/quick-consult.component.ts b/src/app/app-modules/nurse-doctor/quick-consult/quick-consult.component.ts index a88b5a2b..79de333d 100644 --- a/src/app/app-modules/nurse-doctor/quick-consult/quick-consult.component.ts +++ b/src/app/app-modules/nurse-doctor/quick-consult/quick-consult.component.ts @@ -680,8 +680,7 @@ export class QuickConsultComponent (diagnosisArrayList.at(i)).controls[ 'viewProvisionalDiagnosisProvided' ].disable(); - if (diagnosisArrayList.length < savedDiagnosisData.length) - this.addDiagnosis(); + this.addDiagnosis(); } } this.patchPrescriptionDetails(response.prescription); @@ -1372,7 +1371,7 @@ export class QuickConsultComponent } displayDiagnosis(diagnosis: any): string { - return diagnosis?.term || ''; + return typeof diagnosis === 'string' ? diagnosis : diagnosis?.term || ''; } onDiagnosisSelected(selected: any, index: number) {