80 lines
2.0 KiB
TypeScript
80 lines
2.0 KiB
TypeScript
import {
|
|
getPaymentMethodOptions,
|
|
usePaymentMethodsListQuery,
|
|
} from "@erp/catalogs/client/payment-methods";
|
|
import {
|
|
getPaymentTermOptions,
|
|
usePaymentTermsListQuery,
|
|
} from "@erp/catalogs/client/payment-terms";
|
|
import { getTaxRegimeOptions, useTaxRegimesListQuery } from "@erp/catalogs/client/tax-regimes";
|
|
import { useMemo } from "react";
|
|
|
|
export const useCustomerUpdateFiscalController = () => {
|
|
const paymentMethodsQuery = usePaymentMethodsListQuery({
|
|
criteria: {
|
|
pageSize: 999,
|
|
filters: [
|
|
{
|
|
field: "isActive",
|
|
operator: "EQUALS",
|
|
value: "true",
|
|
},
|
|
],
|
|
},
|
|
});
|
|
|
|
const paymentTermsQuery = usePaymentTermsListQuery({
|
|
criteria: {
|
|
filters: [
|
|
{
|
|
field: "isActive",
|
|
operator: "EQUALS",
|
|
value: "true",
|
|
},
|
|
],
|
|
},
|
|
});
|
|
|
|
const taxRegimesQuery = useTaxRegimesListQuery({
|
|
criteria: {
|
|
filters: [
|
|
{
|
|
field: "isActive",
|
|
operator: "EQUALS",
|
|
value: "true",
|
|
},
|
|
],
|
|
},
|
|
});
|
|
|
|
const paymentMethodOptions = useMemo(() => {
|
|
return getPaymentMethodOptions(paymentMethodsQuery.data?.items ?? []);
|
|
}, [paymentMethodsQuery.data?.items]);
|
|
|
|
const paymentTermOptions = useMemo(() => {
|
|
return getPaymentTermOptions(paymentTermsQuery.data?.items ?? []);
|
|
}, [paymentTermsQuery.data?.items]);
|
|
|
|
const taxRegimeOptions = useMemo(() => {
|
|
return getTaxRegimeOptions(taxRegimesQuery.data?.items ?? []);
|
|
}, [taxRegimesQuery.data?.items]);
|
|
|
|
return {
|
|
paymentMethodOptions,
|
|
paymentTermOptions,
|
|
taxRegimeOptions,
|
|
|
|
isLoading: paymentMethodsQuery.isLoading || paymentTermsQuery.isLoading,
|
|
|
|
isFetching: paymentMethodsQuery.isFetching || paymentTermsQuery.isFetching,
|
|
|
|
isError: paymentMethodsQuery.isError || paymentTermsQuery.isError,
|
|
|
|
error: paymentMethodsQuery.error ?? paymentTermsQuery.error,
|
|
};
|
|
};
|
|
|
|
export type UseCustomerUpdateFiscalControllerResult = ReturnType<
|
|
typeof useCustomerUpdateFiscalController
|
|
>;
|