diff --git a/force-app/main/default/lwc/clmDocGenWorkbench/clmDocGenWorkbench.js b/force-app/main/default/lwc/clmDocGenWorkbench/clmDocGenWorkbench.js index 77b86ee..cb3ccf6 100644 --- a/force-app/main/default/lwc/clmDocGenWorkbench/clmDocGenWorkbench.js +++ b/force-app/main/default/lwc/clmDocGenWorkbench/clmDocGenWorkbench.js @@ -317,7 +317,7 @@ export default class ClmDocGenWorkbench extends LightningElement { return `${normalizedPrefix}.docx`; } - resetSelectionsToDefaults() { + async resetSelectionsToDefaults() { this.hasLoadedDefaults = false; this.templateFolderName = ''; this.destinationFolderName = ''; @@ -329,7 +329,7 @@ export default class ClmDocGenWorkbench extends LightningElement { this.destinationDocumentOptions = []; this.selectedTemplateSubfolderHref = ''; this.selectedDestinationSubfolderHref = ''; - this.initializeDefaults(true); + await this.initializeDefaults(true); } async loadCaseContext() { diff --git a/force-app/main/default/lwc/clmRequestPreview/clmRequestPreview.js b/force-app/main/default/lwc/clmRequestPreview/clmRequestPreview.js index 878156f..e29fe95 100644 --- a/force-app/main/default/lwc/clmRequestPreview/clmRequestPreview.js +++ b/force-app/main/default/lwc/clmRequestPreview/clmRequestPreview.js @@ -76,6 +76,10 @@ export default class ClmRequestPreview extends LightningElement { } async loadPreview() { + if (!this.recordId) { + this.showMessage('No record context — place this component on a record page.', 'warning'); + return; + } this.preview = await getDocGenPreview({ appraiserCaseId: this.recordId, accountCode: this.accountCode, diff --git a/manifest/package.xml b/manifest/package.xml index f6efe48..01acf9f 100644 --- a/manifest/package.xml +++ b/manifest/package.xml @@ -5,14 +5,31 @@ CustomApplication + CLM_Account_Setting.DTC_CLM_Demo + CLM_Account_Setting.DTC_HUD_Demo + CLM_Account_Setting.DTC_IAM_Enterprise CLM_Environment_Setting.S1 CLM_Environment_Setting.UAT + CLM_Letter_Definition.DTC_CLM_Demo_Appraiser_Review + CLM_Letter_Definition.DTC_CLM_Demo_Education_Letter + CLM_Letter_Definition.DTC_CLM_Demo_Intent_to_Remove_Letter + CLM_Letter_Definition.DTC_CLM_Demo_NOD_Letter + CLM_Letter_Definition.DTC_HUD_Demo_Appraiser_Review + CLM_Letter_Definition.DTC_HUD_Demo_Education_Letter + CLM_Letter_Definition.DTC_HUD_Demo_Intent_to_Remove_Letter + CLM_Letter_Definition.DTC_HUD_Demo_NOD_Letter + CLM_Letter_Definition.DTC_IAM_Ent_Intent_Remove + CLM_Letter_Definition.DTC_IAM_Enterprise_Appraiser_Review + CLM_Letter_Definition.DTC_IAM_Enterprise_Education_Letter + CLM_Letter_Definition.DTC_IAM_Enterprise_NOD_Letter CustomMetadata Appraiser_Case__c Appraiser_Case_Deficiency__c + CLM_Account_Setting__mdt CLM_Environment_Setting__mdt + CLM_Letter_Definition__mdt CustomObject @@ -20,6 +37,10 @@ Appraiser_Case_Deficiency__c CustomTab + + DocusignJWT + ExternalCredential + Appraiser_Case_Record_Page FlexiPage @@ -31,8 +52,18 @@ Appraiser_Case__c-Appraiser Case Layout Appraiser_Case_Deficiency__c-Appraiser Case Deficiency Layout + CLM_Account_Setting__mdt-CLM Account Setting Layout + CLM_Letter_Definition__mdt-CLM Letter Definition Layout Layout + + CLMs1Download + CLMs1NamedCreds + CLMuatDownload + CLMuatNamedCreds + Esignature_Demo_NamedCreds + NamedCredential + Appraiser_Case__c.Generate_Review_Letter QuickAction @@ -43,21 +74,21 @@ PermissionSet - CLMAdminService - CLMAdminServiceTest AppraiserCasePayloadBuilder AppraiserCasePayloadBuilderTest + CLMAdminService + CLMAdminServiceTest CLMDocGenCallout CLMDocGenCalloutTest + DocusignESignatureService + DocusignESignatureServiceTest ApexClass clmDocGenWorkbench + clmRequestPreview + docusignEsignWorkbench LightningComponentBundle - - DocusignJWT - ExternalCredential - 62.0 diff --git a/scripts/apex/createSampleAppraiserCase.apex b/scripts/apex/createSampleAppraiserCase.apex index ce9462e..9f5acc0 100644 --- a/scripts/apex/createSampleAppraiserCase.apex +++ b/scripts/apex/createSampleAppraiserCase.apex @@ -1,32 +1,41 @@ Appraiser_Case__c appraiserCase = new Appraiser_Case__c( Appraiser_Field_Review_Date__c = Date.today(), + Letter_Sent_Date__c = Date.today().addDays(7), + FHA_Case_Number__c = '123-4567890', + Appraiser_Name__c = 'Jamie', + Appraiser_Last_Name__c = 'Appraiser', + Appraiser_Salutation__c = 'Ms.', + Appraiser_Email__c = 'jamie.appraiser@example.com', + Appraiser_Street__c = '245 Lexington Ave', + Appraiser_City__c = 'New York', + Appraiser_State_Province__c = 'NY', + Appraiser_Postal_Code__c = '10016', + Appraiser_Country__c = 'USA', Property_Street__c = '123 Main St', - Property_City__c = 'Ottawa', - Property_State_Province__c = 'ON', - Property_Postal_Code__c = 'K1A 0A1', - Property_Country__c = 'Canada' + Property_City__c = 'Denver', + Property_State_Province__c = 'CO', + Property_Postal_Code__c = '80202', + Property_Country__c = 'USA' ); insert appraiserCase; -insert new List{ - new Appraiser_Deficiency__c( - Name = 'Deficiency 1', +insert new List{ + new Appraiser_Case_Deficiency__c( Appraiser_Case__c = appraiserCase.Id, - Deficiency_Number__c = '1', - Description__c = 'Missing comparable sale analysis', - Resolution__c = 'Provide updated comparable sales section', - Sort_Order__c = 1 + Deficiency_Number__c = 1, + Description__c = 'Missing comparable sale adjustment detail.', + Resolution__c = 'Added adjustment rationale and supporting calculations.', + Reference__c = 'VC-1' ), - new Appraiser_Deficiency__c( - Name = 'Deficiency 2', + new Appraiser_Case_Deficiency__c( Appraiser_Case__c = appraiserCase.Id, - Deficiency_Number__c = '2', - Description__c = 'Exterior condition comments are too brief', - Resolution__c = 'Expand comments and attach photos', - Sort_Order__c = 2 + Deficiency_Number__c = 2, + Description__c = 'Neighborhood trend explanation insufficient.', + Resolution__c = 'Expanded market trend narrative with MLS evidence.', + Reference__c = 'MC-2' ) }; System.debug('Created Appraiser Case Id: ' + appraiserCase.Id); -System.debug('Payload JSON: ' + AppraiserCaseDocGenService.buildPayloadJson(appraiserCase.Id)); -System.debug('Doc Gen JSON: ' + AppraiserCaseDocGenService.buildDocGenRequestJson(appraiserCase.Id, 'APPRAISER_REVIEW_LETTER')); +System.debug('Payload JSON: ' + AppraiserCasePayloadBuilder.buildPayloadJson(appraiserCase.Id)); +System.debug('Data XML:\n' + CLMDocGenCallout.buildDataXmlForCase(appraiserCase.Id));