diff --git a/src/components/pages/report/DailyMarketingReportContent.tsx b/src/components/pages/report/DailyMarketingReportContent.tsx index 3ddbd6cf..d17df01e 100644 --- a/src/components/pages/report/DailyMarketingReportContent.tsx +++ b/src/components/pages/report/DailyMarketingReportContent.tsx @@ -1,6 +1,6 @@ 'use client'; -import { ChangeEventHandler, useState } from 'react'; +import { ChangeEventHandler, useEffect, useState } from 'react'; import { pdf } from '@react-pdf/renderer'; import toast from 'react-hot-toast'; @@ -28,7 +28,10 @@ import { import { Warehouse } from '@/types/api/master-data/warehouse'; import { Customer } from '@/types/api/master-data/customer'; import { MarketingReportApi } from '@/services/api/report/marketing-report'; -import { MARKETING_TYPE_OPTIONS } from '@/config/constant'; +import { + MARKETING_DATE_FILTER_TYPE_OPTIONS, + MARKETING_TYPE_OPTIONS, +} from '@/config/constant'; import { httpClient } from '@/services/http/client'; import { BaseApiResponse } from '@/types/api/api-general'; import { @@ -150,6 +153,15 @@ const DailyMarketingReportContent = () => { updateFilter('end_date', e.target.value ? e.target.value : ''); }; + const [selectedMarketingDateFilterType, setSelectedMarketingDateFilterType] = + useState(null); + const marketingDateFilterTypeChangeHandler = ( + val: OptionType | OptionType[] | null + ) => { + setSelectedMarketingDateFilterType(val as OptionType); + updateFilter('filter_by', val ? ((val as OptionType).value as string) : ''); + }; + const [selectedMarketingType, setSelectedMarketingType] = useState(null); const marketingTypeChangeHandler = ( @@ -252,6 +264,23 @@ const DailyMarketingReportContent = () => { resetFilter(); }; + useEffect(() => { + if ( + tableFilterState.filter_by === 'realization_date' || + tableFilterState.filter_by === 'so_date' + ) { + setSelectedMarketingDateFilterType({ + label: + tableFilterState.filter_by === 'realization_date' + ? 'Tanggal Realisasi' + : 'Tanggal SO', + value: tableFilterState.filter_by, + }); + } else { + setSelectedMarketingDateFilterType(null); + } + }, [tableFilterState.filter_by]); + return (
@@ -341,6 +370,18 @@ const DailyMarketingReportContent = () => {
+ +