Refactor contact handling across backend and frontend

Replaced usage of "ContactPerson" with "Contact" for consistency across the codebase. Updated related component props, state variables, API calls, and database queries to align with the new model. Also enhanced backend functionality with stricter validations and added support for handling active pgroups in contact management.
This commit is contained in:
GotthardG
2025-01-22 16:31:08 +01:00
parent 6cde57f783
commit 382b1eaba8
24 changed files with 627 additions and 373 deletions

View File

@ -65,7 +65,7 @@ const SpreadsheetTable = ({
shipping_date: null,
arrival_date: null,
returning_date: null,
contact_person_id: selectedShipment?.contact_person?.id,
contact_id: selectedShipment?.contact?.id,
return_address_id: selectedShipment?.return_address?.id,
dewar_name: '',
tracking_number: 'UNKNOWN',
@ -78,7 +78,7 @@ const SpreadsheetTable = ({
useEffect(() => {
setNewDewar((prev) => ({
...prev,
contact_person_id: selectedShipment?.contact_person?.id,
contact_id: selectedShipment?.contact?.id,
return_address_id: selectedShipment?.return_address?.id
}));
}, [selectedShipment]);
@ -259,8 +259,8 @@ const SpreadsheetTable = ({
};
const createOrUpdateDewarsFromSheet = async (data, contactPerson, returnAddress) => {
if (!contactPerson?.id || !returnAddress?.id) {
console.error('contact_person_id or return_address_id is missing');
if (!contact?.id || !returnAddress?.id) {
console.error('contact_id or return_address_id is missing');
return null;
}
@ -288,7 +288,7 @@ const SpreadsheetTable = ({
dewar = {
...initialNewDewarState,
dewar_name: dewarName,
contact_person_id: contactPerson.id,
contact_id: contactPerson.id,
return_address_id: returnAddress.id,
pucks: [],
};
@ -498,7 +498,7 @@ const SpreadsheetTable = ({
await createOrUpdateDewarsFromSheet(
raw_data,
selectedShipment?.contact_person,
selectedShipment?.contact,
selectedShipment?.return_address
);