Skip to content

Commit c468e53

Browse files
fix an issue to add & show labels for added damaged parts in Damage-Reports photoes section (#555)
1 parent 0f7ac7f commit c468e53

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

packages/camera/src/components/Capture/capture.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ const Capture = forwardRef(({
276276
endTour,
277277
};
278278
const startUploadAsync = useStartUploadAsync(startUploadAsyncParams);
279-
const uploadAdditionalDamage = useUploadAdditionalDamage({ inspectionId });
279+
const uploadAdditionalDamage = useUploadAdditionalDamage({ inspectionId, addDamageParts });
280280

281281
const [goPrevSight, goNextSight] = useNavigationBetweenSights({ sights });
282282

packages/camera/src/components/Capture/hooks.js

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { manipulateAsync, SaveFormat } from 'expo-image-manipulator';
66

77
import { useCallback, useEffect, useMemo, useState } from 'react';
88
import { Platform } from 'react-native';
9+
import { useTranslation } from 'react-i18next';
910
import Actions from '../../actions';
1011
import Constants from '../../const';
1112
import log from '../../utils/log';
@@ -304,9 +305,9 @@ export function useStartUploadAsync({
304305
}, [uploads, inspectionId, sights.state, mapTasksToSights, task, onFinish, endTour]);
305306
}
306307

307-
export function useUploadAdditionalDamage({
308-
inspectionId,
309-
}) {
308+
export function useUploadAdditionalDamage({ inspectionId, addDamageParts }) {
309+
const { t, i18n } = useTranslation();
310+
310311
return useCallback(async ({ picture, parts }) => {
311312
if (!inspectionId) {
312313
throw Error(`Please provide a valid "inspectionId". Got ${inspectionId}.`);
@@ -322,6 +323,15 @@ export function useUploadAdditionalDamage({
322323
filename,
323324
};
324325

326+
const part = addDamageParts[0];
327+
const resources = Object.keys(i18n.options.resources);
328+
const metadata = {
329+
category: 'exterior',
330+
label: resources.reduce((accumulator, lng) => {
331+
accumulator[lng] = t(`partSelector.parts.${part}`, { lng });
332+
return accumulator;
333+
}, {}),
334+
};
325335
const json = JSON.stringify({
326336
acquisition: {
327337
strategy: 'upload_multipart_form_keys',
@@ -336,6 +346,7 @@ export function useUploadAdditionalDamage({
336346
tasks: ['damage_detection'],
337347
image_type: 'close_up',
338348
additional_data: {
349+
...metadata,
339350
overlay: undefined,
340351
createdAt: new Date(),
341352
},
@@ -375,7 +386,7 @@ export function useUploadAdditionalDamage({
375386

376387
throw err;
377388
}
378-
}, [inspectionId]);
389+
}, [inspectionId, addDamageParts]);
379390
}
380391

381392
/**

0 commit comments

Comments
 (0)