diff --git a/web-api/src/business/useCases/processStreamRecords/processCaseCorrespondenceEntries.ts b/web-api/src/business/useCases/processStreamRecords/processCaseCorrespondenceEntries.ts index cafa536099e..c8d29a7fa42 100644 --- a/web-api/src/business/useCases/processStreamRecords/processCaseCorrespondenceEntries.ts +++ b/web-api/src/business/useCases/processStreamRecords/processCaseCorrespondenceEntries.ts @@ -14,9 +14,22 @@ export const processCaseCorrespondenceEntries = async ({ `going to upsert ${caseCorrespondenceRecords.length} correspondence records`, ); + function getDocketNumberFromPk(pk?: string) { + if (!pk) { + throw new Error('Case Correspondence is missing a pk'); + } + const parts = pk.split('|'); + if (parts.length > 1 && parts[1].length) { + return parts[1]; + } + throw new Error(`Case Correspondence pk of ${pk} is improperly formatted`); + } + await upsertCaseCorrespondences( caseCorrespondenceRecords.map(record => { - return unmarshall(record.dynamodb.NewImage) as RawCorrespondence; + const unmarshalledData = unmarshall(record.dynamodb.NewImage); + const docketNumber = getDocketNumberFromPk(unmarshalledData.pk); + return { ...unmarshalledData, docketNumber } as RawCorrespondence; }), ); }; diff --git a/web-api/src/business/useCases/processStreamRecords/processCaseWorksheetEntries.ts b/web-api/src/business/useCases/processStreamRecords/processCaseWorksheetEntries.ts index 164c397eef1..1b03aaa10d9 100644 --- a/web-api/src/business/useCases/processStreamRecords/processCaseWorksheetEntries.ts +++ b/web-api/src/business/useCases/processStreamRecords/processCaseWorksheetEntries.ts @@ -14,9 +14,19 @@ export const processCaseWorksheetEntries = async ({ `going to upsert ${caseWorksheetRecords.length} case worksheet records`, ); + function getJudgeUserIdFromGs1pk(gs1pk?: string): string | null { + if (!gs1pk) { + return null; + } + const parts = gs1pk.split('|'); + return parts.length > 1 ? parts[1] : null; + } + await upsertCaseWorksheets( caseWorksheetRecords.map(record => { - return unmarshall(record.dynamodb.NewImage) as RawCaseWorksheet; + const unmarshalledData = unmarshall(record.dynamodb.NewImage); + const judgeUserId = getJudgeUserIdFromGs1pk(unmarshalledData.gs1pk); + return { ...unmarshalledData, judgeUserId } as RawCaseWorksheet; }), ); };