import React from 'react'; import { Modal } from 'app/shared/components/modal/modal'; import datePipe from 'app/shared/pipes/date.pipe'; import { selectCurrentPoolName } from 'app/shared/services/filters/filters.service'; import { useDispatch, useSelector } from 'react-redux'; import { createPaymentDetailsLoadingSelector, selectPaymentDetailsBalanceModalState, selectPaymentDetailsDate, } from 'app/modules/vesselDetails/paymentDetails/store/paymentDetails.selectors'; import { paymentDetailsCloseModal } from '../store/paymentDetails.actions'; import { PAYMENT_DETAILS } from '../store/paymentDetails.actionTypes'; import { Spinner } from 'app/shared/components/spinner/spinner'; import { ROUTER } from 'app/common/routes'; import { selectVesselName } from '../../root/store/vesselDetails.selectors'; import { getFinancialDataColumnsConfig, getModalHeader, getPerDayDataColumnsConfig, getTotalDataColumnsConfig, getYearsColumnsConfig, } from './payment.config'; import { ModelDrivenDataTable } from 'app/shared/modules/tables/dataTable/modelDrivenDataTable'; import { selectBalanceModalOverviewData, selectBalanceModalPaymentBreakdownData, selectBalanceModalPreviousBunkerAdjustmentData, selectBalanceModalPreviousBunkerAdjustmentYears, selectBalanceModalVesselOverviewData, selectPreviousBunkerAdjustmentSummary, } from '../store/paymentTables.selectors'; const PaymentDetailsBalanceModal = () => { const vesselName = useSelector(selectVesselName) ?? ''; const paymentDate = useSelector(selectPaymentDetailsDate); const isOpened = useSelector(selectPaymentDetailsBalanceModalState); const poolName = useSelector(selectCurrentPoolName(ROUTER.lookup(location.pathname).options.pool)); const overviewData = useSelector(selectBalanceModalOverviewData); const vesselData = useSelector(selectBalanceModalVesselOverviewData); const breakdownData = useSelector(selectBalanceModalPaymentBreakdownData); const previousBunkerAdjustmentData = useSelector(selectBalanceModalPreviousBunkerAdjustmentData); const previousBunkerAdjustmentYears = useSelector(selectBalanceModalPreviousBunkerAdjustmentYears); const previousBunkerAdjustmentSummary = useSelector(selectPreviousBunkerAdjustmentSummary); const balanceDetailsFetchCollectionSelector = [ PAYMENT_DETAILS.FETCH_PAYMENT_DETAILS_DATA_SELECTOR ]; const loadingStatus = useSelector(createPaymentDetailsLoadingSelector(balanceDetailsFetchCollectionSelector)); const dispatch = useDispatch(); const formattedPaymentDate = paymentDate ? datePipe.formatLongMonthWithYear(paymentDate) : ''; const onCloseHandler = () => { dispatch(paymentDetailsCloseModal()); }; return (
{loadingStatus ? :

Pool overview

RESULT {formattedPaymentDate}

* Average Pool pay out excluding compensation

Vessel overview

VESSEL RESULT {formattedPaymentDate}

Payment breakdown

Previous Periods Adjustments - Pool earnings

}
); }; export { PaymentDetailsBalanceModal };