diff --git a/src/constants/MoveHistory/Database/FieldMappings.js b/src/constants/MoveHistory/Database/FieldMappings.js
index 85c805e1040..972900172c8 100644
--- a/src/constants/MoveHistory/Database/FieldMappings.js
+++ b/src/constants/MoveHistory/Database/FieldMappings.js
@@ -153,4 +153,7 @@ export default {
assigned_sc: 'Counselor assigned',
assigned_too: 'Task ordering officer assigned',
assigned_tio: 'Task invoicing officer assigned',
+ re_assigned_sc: 'Counselor reassigned',
+ re_assigned_too: 'Task ordering officer reassigned',
+ re_assigned_tio: 'Task invoicing officer reassigned',
};
diff --git a/src/constants/MoveHistory/EventTemplates/UpdateAssignedOfficeUser/UpdateAssignedOfficeUser.test.jsx b/src/constants/MoveHistory/EventTemplates/UpdateAssignedOfficeUser/UpdateAssignedOfficeUser.test.jsx
index 218b16bb2a0..bc1e6aa2d73 100644
--- a/src/constants/MoveHistory/EventTemplates/UpdateAssignedOfficeUser/UpdateAssignedOfficeUser.test.jsx
+++ b/src/constants/MoveHistory/EventTemplates/UpdateAssignedOfficeUser/UpdateAssignedOfficeUser.test.jsx
@@ -11,6 +11,9 @@ describe('When given a move that has been assigned', () => {
changedValues: {
sc_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137',
},
+ oldValues: {
+ sc_assigned_id: null,
+ },
context: [{ assigned_office_user_last_name: 'Daniels', assigned_office_user_first_name: 'Jayden' }],
};
@@ -36,6 +39,7 @@ describe('When given a move that has been assigned', () => {
});
it('task ordering officer', () => {
historyRecord.changedValues = { too_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137' };
+ historyRecord.oldValues = { too_assigned_id: null };
historyRecord.context = [
{ assigned_office_user_last_name: 'Robinson', assigned_office_user_first_name: 'Brian' },
];
@@ -48,6 +52,7 @@ describe('When given a move that has been assigned', () => {
});
it('task invoicing officer', () => {
historyRecord.changedValues = { tio_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137' };
+ historyRecord.oldValues = { tio_assigned_id: null };
historyRecord.context = [{ assigned_office_user_last_name: 'Luvu', assigned_office_user_first_name: 'Frankie' }];
const template = getTemplate(historyRecord);
diff --git a/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.jsx b/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.jsx
index fb63a54891d..82fa3b3d2c7 100644
--- a/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.jsx
+++ b/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.jsx
@@ -9,8 +9,10 @@ export default {
eventName: o.updatePaymentRequestStatus,
tableName: t.moves,
getEventNameDisplay: () => 'Updated move',
- getDetails: ({ changedValues }) => {
- if (changedValues?.tio_assigned_id !== undefined) return <> Task Invoicing Officer Unassigned >;
- return <> - >;
- },
+ getDetails: ({ changedValues }) => (
+ <>
+
Payment Requests Addressed
+ {changedValues?.tio_assigned_id !== undefined ? Task Invoicing Officer Unassigned
: null}
+ >
+ ),
};
diff --git a/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.test.jsx b/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.test.jsx
index 8e555c10d84..4868aefe01c 100644
--- a/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.test.jsx
+++ b/src/constants/MoveHistory/EventTemplates/UpdatePaymentRequestStatus/UpdatePaymentRequestStatusMoves.test.jsx
@@ -21,11 +21,11 @@ describe('When given a completed services counseling for a move', () => {
expect(screen.getByText('Updated move')).toBeInTheDocument();
});
- it('defaults to blank entry if TIO ID is not present in changedValues', () => {
+ it('displays default when TIO ID is not present', () => {
const template = getTemplate(historyRecord);
render(template.getDetails(historyRecord));
- expect(screen.getByText('-')).toBeInTheDocument();
+ expect(screen.getByText('Payment Requests Addressed')).toBeInTheDocument();
});
it('displays correct details when a TIO is unassigned', () => {
@@ -36,6 +36,7 @@ describe('When given a completed services counseling for a move', () => {
const template = getTemplate(historyRecord);
render(template.getDetails(historyRecord));
+ expect(screen.getByText('Payment Requests Addressed')).toBeInTheDocument();
expect(screen.getByText('Task Invoicing Officer Unassigned')).toBeInTheDocument();
});
});
diff --git a/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.jsx b/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.jsx
index 4f0a084d37c..0bd4ffcedd8 100644
--- a/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.jsx
+++ b/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.jsx
@@ -14,7 +14,12 @@ export default {
return (
<>
- {historyRecord.changedValues.too_assigned_id !== undefined ? <>Task Ordering Officer Unassigned> : null}
+ {historyRecord?.changedValues?.too_assigned_id !== undefined ? (
+ <>
+ Service Items Addressed
+ Task Ordering Officer Unassigned
+ >
+ ) : null}
>
);
},
diff --git a/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.test.jsx b/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.test.jsx
index b77cade3d48..94d6497cd49 100644
--- a/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.test.jsx
+++ b/src/constants/MoveHistory/EventTemplates/UpdateServiceItemStatus/updateServiceItemStatusUpdateMove.test.jsx
@@ -34,6 +34,7 @@ describe('when given a update service item status, update move history record',
const template = getTemplate(historyRecord);
render(template.getDetails(historyRecord));
+ expect(screen.getByText('Service Items Addressed')).toBeInTheDocument();
expect(screen.getByText('Task Ordering Officer Unassigned')).toBeInTheDocument();
});
});
diff --git a/src/utils/formatters.js b/src/utils/formatters.js
index 5944ecec67f..d979dcdc624 100644
--- a/src/utils/formatters.js
+++ b/src/utils/formatters.js
@@ -602,16 +602,24 @@ export const constructSCOrderOconusFields = (values) => {
};
export const formatAssignedOfficeUserFromContext = (historyRecord) => {
- const { changedValues, context } = historyRecord;
+ const { changedValues, context, oldValues } = historyRecord;
const newValues = {};
if (!context) return newValues;
const name = `${context[0].assigned_office_user_last_name}, ${context[0].assigned_office_user_first_name}`;
- if (changedValues.sc_assigned_id) newValues.assigned_sc = name;
- if (changedValues.too_assigned_id) newValues.assigned_too = name;
- if (changedValues.tio_assigned_id) newValues.assigned_tio = name;
-
+ if (changedValues?.sc_assigned_id) {
+ if (oldValues.sc_assigned_id === null) newValues.assigned_sc = name;
+ if (oldValues.sc_assigned_id !== null) newValues.re_assigned_sc = name;
+ }
+ if (changedValues?.too_assigned_id) {
+ if (oldValues.too_assigned_id === null) newValues.assigned_too = name;
+ if (oldValues.too_assigned_id !== null) newValues.re_assigned_too = name;
+ }
+ if (changedValues?.tio_assigned_id) {
+ if (oldValues.tio_assigned_id === null) newValues.assigned_tio = name;
+ if (oldValues.tio_assigned_id !== null) newValues.re_assigned_tio = name;
+ }
return newValues;
};
/**
diff --git a/src/utils/formatters.test.js b/src/utils/formatters.test.js
index 0165a47aec3..97b99f470a3 100644
--- a/src/utils/formatters.test.js
+++ b/src/utils/formatters.test.js
@@ -355,6 +355,9 @@ describe('formatAssignedOfficeUserFromContext', () => {
changedValues: {
sc_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137',
},
+ oldValues: {
+ sc_assigned_id: null,
+ },
context: [{ assigned_office_user_last_name: 'Daniels', assigned_office_user_first_name: 'Jayden' }],
};
@@ -370,6 +373,9 @@ describe('formatAssignedOfficeUserFromContext', () => {
changedValues: {
too_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137',
},
+ oldValues: {
+ too_assigned_id: null,
+ },
context: [{ assigned_office_user_last_name: 'McLaurin', assigned_office_user_first_name: 'Terry' }],
};
@@ -385,6 +391,9 @@ describe('formatAssignedOfficeUserFromContext', () => {
changedValues: {
tio_assigned_id: 'fb625e3c-067c-49d7-8fd9-88ef040e6137',
},
+ oldValues: {
+ tio_assigned_id: null,
+ },
context: [{ assigned_office_user_last_name: 'Robinson', assigned_office_user_first_name: 'Brian' }],
};