Merge branch 'develop' of https://github.com/bigcapitalhq/client into develop

This commit is contained in:
a.bouhuolia
2021-12-15 12:01:44 +02:00
9 changed files with 68 additions and 17 deletions

View File

@@ -9,9 +9,14 @@ export default function LockingTransactionsDialogContent({
// #ownProps
dialogName,
moduleName,
isEnabled,
}) {
return (
<LockingTransactionsFormProvider moduleName={moduleName} dialogName={dialogName}>
<LockingTransactionsFormProvider
isEnabled={isEnabled}
moduleName={moduleName}
dialogName={dialogName}
>
<LockingTransactionsForm />
</LockingTransactionsFormProvider>
);

View File

@@ -13,7 +13,7 @@ import { useLockingTransactionsContext } from './LockingTransactionsFormProvider
import LockingTransactionsFormContent from './LockingTransactionsFormContent';
import withDialogActions from 'containers/Dialog/withDialogActions';
import { compose } from 'utils';
import { compose, transformToForm } from 'utils';
const defaultInitialValues = {
module: '',
@@ -28,14 +28,29 @@ function LockingTransactionsForm({
// #withDialogActions
closeDialog,
}) {
const { dialogName, moduleName, createLockingTransactionMutate } =
useLockingTransactionsContext();
const {
dialogName,
moduleName,
transactionLocking,
isEnabled,
createLockingTransactionMutate,
} = useLockingTransactionsContext();
// Initial form values.
const initialValues = {
...defaultInitialValues,
module: moduleName,
};
const initialValues = React.useMemo(
() => ({
...(!isEnabled
? {
...defaultInitialValues,
module: moduleName,
}
: {
...transformToForm(transactionLocking, defaultInitialValues),
module: moduleName,
}),
}),
[isEnabled],
);
// Handles the form submit.
const handleFormSubmit = (values, { setSubmitting, setErrors }) => {

View File

@@ -1,25 +1,42 @@
import React from 'react';
import { DialogContent } from 'components';
import { useCreateLockingTransactoin } from 'hooks/query';
import {
useCreateLockingTransactoin,
useEditTransactionsLocking,
} from 'hooks/query';
const LockingTransactionsContext = React.createContext();
/**
* Locking transactions form provider.
*/
function LockingTransactionsFormProvider({ moduleName, dialogName, ...props }) {
function LockingTransactionsFormProvider({
moduleName,
isEnabled,
dialogName,
...props
}) {
// Create locking transactions mutations.
const { mutateAsync: createLockingTransactionMutate } =
useCreateLockingTransactoin();
const { data: transactionLocking, isLoading: isTransactionsLockingLoading } =
useEditTransactionsLocking(moduleName, {
enabled: !!isEnabled,
});
// const isEnabled = transactionLocking?.is_enabled;
// State provider.
const provider = {
dialogName,
moduleName,
createLockingTransactionMutate,
transactionLocking,
isEnabled,
};
return (
<DialogContent>
<DialogContent isLoading={isTransactionsLockingLoading}>
<LockingTransactionsContext.Provider value={provider} {...props} />
</DialogContent>
);

View File

@@ -12,7 +12,7 @@ const LockingTransactionsDialogContent = React.lazy(() =>
*/
function LockingTransactionsDialog({
dialogName,
payload: { module },
payload: { module, isEnabled },
isOpen,
}) {
return (
@@ -28,6 +28,7 @@ function LockingTransactionsDialog({
<LockingTransactionsDialogContent
moduleName={module}
dialogName={dialogName}
isEnabled={isEnabled}
/>
</DialogSuspense>
</Dialog>

View File

@@ -137,8 +137,7 @@ export function StatusAccessor(bill) {
animate={false}
stripes={false}
intent={Intent.PRIMARY}
value={calculateStatus(bill.credited_amount, bill.amount)}
// value={calculateStatus(bill.payment_amount, bill.amount)}
value={calculateStatus(bill.balance, bill.amount)}
/>
</If>
</Choose.When>

View File

@@ -64,7 +64,7 @@ export const statusAccessor = (row) => {
animate={false}
stripes={false}
intent={Intent.PRIMARY}
value={calculateStatus(row.credited_amount, row.balance)}
value={calculateStatus(row.balance_amount, row.balance)}
/>
</If>
</Choose.When>

View File

@@ -251,7 +251,7 @@ function TransactionsLockingItemActions() {
} = useTransactionsLockingItemContext();
const handleLockClick = (event) => {
safeInvoke(onLock, module, event);
safeInvoke(onLock, module, isEnabled, event);
};
const handleEditBtn = (event) => {
safeInvoke(onEditLock, module, event);

View File

@@ -7,7 +7,8 @@ import t from './types';
// Common invalidate queries.
const commonInvalidateQueries = (queryClient) => {
// Invalidate customers.
// Invalidate.
queryClient.invalidateQueries(t.TRANSACTION_LOCKING);
queryClient.invalidateQueries(t.TRANSACTIONS_LOCKING);
};
@@ -100,3 +101,15 @@ export function useTransactionsLocking(query, props) {
},
);
}
export function useEditTransactionsLocking(query, props) {
return useRequestQuery(
[t.TRANSACTION_LOCKING, query],
{ method: 'get', url: `transactions-locking/${query}` },
{
select: (res) => res.data.data,
defaultData: [],
...props,
},
);
}

View File

@@ -185,6 +185,7 @@ const CASH_FLOW_ACCOUNTS = {
};
const TARNSACTIONS_LOCKING = {
TRANSACTION_LOCKING: 'TRANSACTION_LOCKING',
TRANSACTIONS_LOCKING: 'TRANSACTIONS_LOCKING',
};