@@ -107,13 +107,15 @@ export function TaskUpsertModalContainer({ bodyshop, currentUser, taskUpsert, to
|
||||
};
|
||||
|
||||
/**
|
||||
* Handle refetch queries
|
||||
* @param taskObject
|
||||
* Generate refetch queries
|
||||
* @param jobId
|
||||
* @returns {*[]}
|
||||
*/
|
||||
const handleRefetchQueries = (taskObject, jobId) => {
|
||||
const generateRefetchQueries = (jobId) => {
|
||||
const refetchQueries = [];
|
||||
|
||||
if (location.pathname.includes("/manage/jobs") && jobId) {
|
||||
taskObject.refetchQueries.push({
|
||||
refetchQueries.push({
|
||||
query: GET_JOB_BY_PK,
|
||||
variables: {
|
||||
id: jobId
|
||||
@@ -121,15 +123,20 @@ export function TaskUpsertModalContainer({ bodyshop, currentUser, taskUpsert, to
|
||||
});
|
||||
}
|
||||
|
||||
// We have a specified query
|
||||
if (query && Object.keys(query).length) {
|
||||
taskObject.refetchQueries.push(Object.keys(query)[0]);
|
||||
} else {
|
||||
refetchQueries.push(Object.keys(query)[0]);
|
||||
}
|
||||
// We don't have a specified query, check the page
|
||||
else {
|
||||
refetchRouteMappings.forEach((mapping) => {
|
||||
if (location.pathname.includes(mapping.route)) {
|
||||
taskObject.refetchQueries.push(mapping.query);
|
||||
refetchQueries.push(mapping.query);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return refetchQueries;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -144,20 +151,10 @@ export function TaskUpsertModalContainer({ bodyshop, currentUser, taskUpsert, to
|
||||
variables: {
|
||||
taskId: id,
|
||||
task: replaceUndefinedWithNull(values)
|
||||
},
|
||||
refetchQueries: []
|
||||
}
|
||||
};
|
||||
|
||||
if (location.pathname.includes("/manage/jobs") && jobId) {
|
||||
taskObject.refetchQueries.push({
|
||||
query: GET_JOB_BY_PK,
|
||||
variables: {
|
||||
id: jobId
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
handleRefetchQueries(taskObject, jobId);
|
||||
taskObject.refetchQueries = generateRefetchQueries(jobId);
|
||||
|
||||
const taskData = await updateTask(taskObject);
|
||||
|
||||
@@ -217,11 +214,10 @@ export function TaskUpsertModalContainer({ bodyshop, currentUser, taskUpsert, to
|
||||
bodyshopid: bodyshop.id
|
||||
}
|
||||
]
|
||||
},
|
||||
refetchQueries: []
|
||||
}
|
||||
};
|
||||
|
||||
handleRefetchQueries(taskObject, values.jobid);
|
||||
taskObject.refetchQueries = generateRefetchQueries(values.jobid);
|
||||
|
||||
const newTaskData = await insertTask(taskObject);
|
||||
const newTask = newTaskData?.data?.insert_tasks?.returning[0];
|
||||
|
||||
Reference in New Issue
Block a user