mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-18 05:40:31 +00:00
feat: payment receive and made form.
This commit is contained in:
@@ -72,7 +72,6 @@ export const fetchInvoicesTable = ({ query } = {}) => {
|
||||
customViewId: response.data.customViewId || -1,
|
||||
},
|
||||
});
|
||||
|
||||
dispatch({
|
||||
type: t.INVOICES_ITEMS_SET,
|
||||
payload: {
|
||||
|
||||
@@ -16,7 +16,8 @@ const initialState = {
|
||||
receivable: {
|
||||
byCustomerId: [],
|
||||
byPaymentReceiveId: [],
|
||||
}
|
||||
},
|
||||
byPaymentReceiveId: {},
|
||||
};
|
||||
|
||||
const defaultInvoice = {
|
||||
@@ -115,6 +116,13 @@ const reducer = createReducer(initialState, {
|
||||
|
||||
state.receivable.byCustomerId[customerId] = saleInvoiceIds
|
||||
},
|
||||
|
||||
[t.INVOICES_BY_PAYMENT_ID]: (state, action) => {
|
||||
const { paymentReceiveId, saleInvoices } = action.payload;
|
||||
const saleInvoiceIds = saleInvoices.map((saleInvoice) => saleInvoice.id);
|
||||
|
||||
state.byPaymentReceiveId[paymentReceiveId] = saleInvoiceIds;
|
||||
},
|
||||
});
|
||||
|
||||
export default createTableQueryReducers('sales_invoices', reducer);
|
||||
|
||||
@@ -19,12 +19,8 @@ const invoicesPageSelector = (state, props, query) => {
|
||||
const viewId = state.salesInvoices.currentViewId;
|
||||
return state.salesInvoices.views?.[viewId]?.pages?.[query.page];
|
||||
};
|
||||
|
||||
const invoicesItemsSelector = (state) => state.salesInvoices.items;
|
||||
|
||||
const invoicesReceiableCustomerSelector = (state, props) => state.salesInvoices.receivable.byCustomerId[props.customerId];
|
||||
const paymentReceivableInvoicesSelector = (state, props) => state.salesInvoices.receivable.byPaymentReceiveId[props.paymentReceiveId];
|
||||
|
||||
|
||||
export const getInvoiceTableQueryFactory = () =>
|
||||
createSelector(
|
||||
@@ -59,39 +55,22 @@ export const getInvoicePaginationMetaFactory = () =>
|
||||
return invoicePage?.paginationMeta || {};
|
||||
});
|
||||
|
||||
// export const getCustomerReceivableInvoicesFactory = () =>
|
||||
// createSelector(
|
||||
// invoicesItemsSelector,
|
||||
// invoicesReceiableCustomerSelector,
|
||||
// (invoicesItems, invoicesIds) => {
|
||||
// return Array.isArray(invoicesIds)
|
||||
// ? (pickItemsFromIds(invoicesItems, invoicesIds) || [])
|
||||
// : [];
|
||||
// },
|
||||
// );
|
||||
|
||||
// export const getPaymentReceivableInvoicesFactory = () =>
|
||||
// createSelector(
|
||||
// invoicesItemsSelector,
|
||||
// paymentReceivableInvoicesSelector,
|
||||
// (invoicesItems, invoicesIds) => {
|
||||
// return Array.isArray(invoicesIds)
|
||||
// ? (pickItemsFromIds(invoicesItems, invoicesIds) || [])
|
||||
// : [];
|
||||
// },
|
||||
// );
|
||||
|
||||
|
||||
export const getPaymentReceiveReceivableInvoicesFactory = () =>
|
||||
export const getCustomerReceivableInvoicesEntriesFactory = () =>
|
||||
createSelector(
|
||||
invoicesItemsSelector,
|
||||
invoicesReceiableCustomerSelector,
|
||||
paymentReceivableInvoicesSelector,
|
||||
(invoicesItems, customerInvoicesIds, paymentInvoicesIds) => {
|
||||
(invoicesItems, customerInvoicesIds) => {
|
||||
const invoicesIds = [
|
||||
...(customerInvoicesIds || []),
|
||||
...(paymentInvoicesIds || []),
|
||||
];
|
||||
return pickItemsFromIds(invoicesItems, invoicesIds);
|
||||
const invoices = pickItemsFromIds(invoicesItems, invoicesIds);
|
||||
|
||||
return invoices.map((invoice) => ({
|
||||
...invoice,
|
||||
invoice_id: invoice.id,
|
||||
total_payment_amount: invoice.payment_amount,
|
||||
id: null,
|
||||
payment_amount: 0,
|
||||
}));
|
||||
},
|
||||
);
|
||||
)
|
||||
@@ -13,5 +13,6 @@ export default {
|
||||
RELOAD_INVOICES: 'RELOAD_INVOICES',
|
||||
|
||||
INVOICES_RECEIVABLE_BY_PAYMENT_ID: 'INVOICES_RECEIVABLE_BY_PAYMENT_ID',
|
||||
INVOICES_RECEIVABLE_BY_CUSTOMER_ID: 'INVOICES_RECEIVABLE_BY_CUSTOMER_ID'
|
||||
INVOICES_RECEIVABLE_BY_CUSTOMER_ID: 'INVOICES_RECEIVABLE_BY_CUSTOMER_ID',
|
||||
INVOICES_BY_PAYMENT_ID: 'INVOICES_BY_PAYMENT_ID'
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user