automation

This commit is contained in:
Hagernesh
2026-06-17 22:16:01 +00:00
parent 5a6e1ef363
commit ff79657018
3 changed files with 58 additions and 17 deletions

View File

@@ -233,24 +233,32 @@ export function useArrivalQueue() {
});
}
function useArrivalMutation<TArgs>(fn: (args: TArgs) => Promise<unknown>) {
function useArrivalInvalidation() {
const qc = useQueryClient();
return useMutation({
mutationFn: fn,
onSuccess: () => {
qc.invalidateQueries({ queryKey: ['warehouse-inventory'] });
qc.invalidateQueries({ queryKey: warehouseKeys.all });
},
});
return () => {
qc.invalidateQueries({ queryKey: ['warehouse-inventory'] });
qc.invalidateQueries({ queryKey: warehouseKeys.all });
};
}
export const useAutoUnloadArrived = () =>
useArrivalMutation(() => warehouseService.autoUnloadArrived());
export const useAutoLoadReady = () => useArrivalMutation(() => warehouseService.autoLoadReady());
export const useUnloadBooking = () =>
useArrivalMutation((args: { bookingId: string; payload?: Record<string, unknown> }) =>
warehouseService.unloadBooking(args.bookingId, args.payload),
);
export function useAutoUnloadArrived() {
const onSuccess = useArrivalInvalidation();
return useMutation({ mutationFn: () => warehouseService.autoUnloadArrived(), onSuccess });
}
export function useAutoLoadReady() {
const onSuccess = useArrivalInvalidation();
return useMutation({ mutationFn: () => warehouseService.autoLoadReady(), onSuccess });
}
export function useUnloadBooking() {
const onSuccess = useArrivalInvalidation();
return useMutation({
mutationFn: (args: { bookingId: string; payload?: Record<string, unknown> }) =>
warehouseService.unloadBooking(args.bookingId, args.payload),
onSuccess,
});
}
export function useInspectionReports(inventoryId?: string) {
return useQuery({