This commit is contained in:
focp212@naver.com
2025-09-12 14:03:12 +09:00
parent 84288188dc
commit a2a3d6af9b
26 changed files with 2813 additions and 1770 deletions

View File

@@ -5,11 +5,11 @@ import { IMAGE_ROOT } from '@/shared/constants/common';
import { PATHS } from '@/shared/constants/paths';
import { useNavigate } from '@/shared/lib/hooks/use-navigate';
import { BillingList } from '@/entities/transaction/ui/billing-list';
import { BillingListItem, TransactionCategory, SortByKeys } from '@/entities/transaction/model/types';
import { BillingListItem, TransactionCategory, SortByKeys, BillingRequestStatus, BillingProcessResult, BillingPaymentMethod, BillingSearchType } from '@/entities/transaction/model/types';
import { useBillingListMutation } from '@/entities/transaction/api/use-billing-list-mutation';
import { useDownloadExcelMutation } from '@/entities/transaction/api/use-download-excel-mutation';
import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constants';
import { Filter } from '@/entities/transaction/ui/filter';
import { BillingFilter } from '@/entities/transaction/ui/filter/billing-filter';
import { SortOptionsBox } from '@/entities/transaction/ui/sort-options-box';
import { HeaderType } from '@/entities/common/model/types';
import {
@@ -35,8 +35,15 @@ export const BillingListPage = () => {
const [listItems, setListItems] = useState({});
const [filterOn, setFilterOn] = useState<boolean>(false);
const [pageParam, setPageParam] = useState(DEFAULT_PAGE_PARAM);
const [startDate, setStartDate] = useState(moment().subtract(1, 'month').format('YYYY-MM-DD'));
const [mid, setMid] = useState<string>('nictest001m');
const [searchType, setSearchType] = useState<BillingSearchType>(BillingSearchType.ALL);
const [searchKeyword, setSearchKeyword] = useState<string>('');
// const [startDate, setStartDate] = useState(moment().subtract(1, 'month').format('YYYY-MM-DD'));
const [startDate, setStartDate] = useState(moment().format('YYYY-MM-DD'));
const [endDate, setEndDate] = useState(moment().format('YYYY-MM-DD'));
const [requestStatus, setRequestStatus] = useState<BillingRequestStatus>(BillingRequestStatus.ALL);
const [processResult, setProcessResult] = useState<BillingProcessResult>(BillingProcessResult.ALL);
const [paymentMethod, setPaymentMethod] = useState<BillingPaymentMethod>(BillingPaymentMethod.ALL);
useSetHeaderTitle('빌링');
useSetHeaderType(HeaderType.LeftArrow);
@@ -55,14 +62,14 @@ export const BillingListPage = () => {
pageParam.sortBy = (option?.sortBy)? option.sortBy: sortBy;
setPageParam(pageParam);
let listParams = {
mid: 'nictest001m',
searchType: 'ALL',
searchKeyword: '',
mid: mid,
searchType: searchType,
searchKeyword: searchKeyword,
startDate: startDate,
endDate: endDate,
requestStatus: 'ALL',
processResult: 'ALL',
paymentMethod: 'ALL',
requestStatus: requestStatus,
processResult: processResult,
paymentMethod: paymentMethod,
pagination: pageParam
};
@@ -170,10 +177,26 @@ export const BillingListPage = () => {
</div>
</div>
</main>
<Filter
<BillingFilter
filterOn={ filterOn }
setFilterOn={ setFilterOn }
></Filter>
mid={ mid }
searchType={ searchType }
searchKeyword={searchKeyword }
startDate={ startDate }
endDate={ endDate }
requestStatus={ requestStatus }
processResult={ processResult }
paymentMethod={ paymentMethod }
setMid={ setMid }
setSearchType={ setSearchType }
setSearchKeyword={ setSearchKeyword }
setStartDate={ setStartDate }
setEndDate={ setEndDate }
setRequestStatus={ setRequestStatus }
setProcessResult={ setProcessResult }
setPaymentMethod={ setPaymentMethod }
></BillingFilter>
</>
);
};

View File

@@ -1,8 +1,6 @@
import { useEffect, useState } from 'react';
import { useLocation } from 'react-router';
import { PATHS } from '@/shared/constants/paths';
import { Dialog } from '@/shared/ui/dialogs/dialog';
import { overlay } from 'overlay-kit';
import { useNavigate } from '@/shared/lib/hooks/use-navigate';
import { useEscrowDetailMutation } from '@/entities/transaction/api/use-escrow-detail-mutation';
import { ImportantInfoWrap } from '@/entities/transaction/ui/info-wrap/important-info-wrap';