From 1fcbc35aabcc4aeffb79b8f3c8880ada2c873bb8 Mon Sep 17 00:00:00 2001 From: "focp212@naver.com" Date: Fri, 7 Nov 2025 12:36:58 +0900 Subject: [PATCH] =?UTF-8?q?=EB=8B=AC=EB=A0=A5=20=EA=B4=80=EB=A0=A8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/entities/vat-return/ui/list-wrap.tsx | 2 +- .../transaction/all-transaction/list-page.tsx | 2 +- src/pages/transaction/billing/list-page.tsx | 3 +-- .../transaction/cash-receipt/list-page.tsx | 2 +- src/pages/transaction/escrow/list-page.tsx | 3 +-- .../ui/calendar/nice-calendar-month.tsx | 27 ++++++++++++------- src/shared/ui/calendar/nice-calendar.tsx | 18 ++++++++++--- src/shared/ui/filter/calendar-month.tsx | 2 +- src/shared/ui/filter/calendar.tsx | 2 +- 9 files changed, 40 insertions(+), 21 deletions(-) diff --git a/src/entities/vat-return/ui/list-wrap.tsx b/src/entities/vat-return/ui/list-wrap.tsx index cdc126e..fde535a 100644 --- a/src/entities/vat-return/ui/list-wrap.tsx +++ b/src/entities/vat-return/ui/list-wrap.tsx @@ -35,7 +35,7 @@ export const ListWrap = () => { const [listItems, setListItems] = useState>([]); const [pageParam, setPageParam] = useState(DEFAULT_PAGE_PARAM); const [mid, setMid] = useState(userMid); - const [startMonth, setStartMonth] = useState(moment().subtract(1, 'month').format('YYYYMM')); + const [startMonth, setStartMonth] = useState(moment().format('YYYYMM')); const [endMonth, setEndMonth] = useState(moment().format('YYYYMM')); const [receiptType, setReceiptType] = useState(VatReturnReceiptType.ALL); const [targetType, setTargetType] = useState(VatReturnTargetType.ALL); diff --git a/src/pages/transaction/all-transaction/list-page.tsx b/src/pages/transaction/all-transaction/list-page.tsx index de4b150..6eb97d0 100644 --- a/src/pages/transaction/all-transaction/list-page.tsx +++ b/src/pages/transaction/all-transaction/list-page.tsx @@ -56,7 +56,7 @@ export const AllTransactionListPage = () => { const [tid, setTid] = useState(''); const [dateCl, setDateCl] = useState(''); const [goodsName, setGoodsName] = useState(''); - const [fromDate, setFromDate] = useState(moment().subtract(1, 'month').format('YYYYMMDD')); + const [fromDate, setFromDate] = useState(moment().format('YYYYMMDD')); const [toDate, setToDate] = useState(moment().format('YYYYMMDD')); const [statusCode, setStatusCode] = useState(''); const [serviceCode, setServiceCode] = useState('01'); diff --git a/src/pages/transaction/billing/list-page.tsx b/src/pages/transaction/billing/list-page.tsx index ac96561..1e76a89 100644 --- a/src/pages/transaction/billing/list-page.tsx +++ b/src/pages/transaction/billing/list-page.tsx @@ -51,8 +51,7 @@ export const BillingListPage = () => { const [mid, setMid] = useState(userMid); const [searchType, setSearchType] = useState(BillingSearchType.ALL); const [searchKeyword, setSearchKeyword] = useState(''); - const [startDate, setStartDate] = useState(moment().subtract(1, 'month').format('YYYYMMDD')); - //const [startDate, setStartDate] = useState(moment().format('YYYYMMDD')); + const [startDate, setStartDate] = useState(moment().format('YYYYMMDD')); const [endDate, setEndDate] = useState(moment().format('YYYYMMDD')); const [requestStatus, setRequestStatus] = useState(BillingRequestStatus.ALL); const [processResult, setProcessResult] = useState(BillingProcessResult.ALL); diff --git a/src/pages/transaction/cash-receipt/list-page.tsx b/src/pages/transaction/cash-receipt/list-page.tsx index 3ce2f19..cbca43d 100644 --- a/src/pages/transaction/cash-receipt/list-page.tsx +++ b/src/pages/transaction/cash-receipt/list-page.tsx @@ -52,7 +52,7 @@ export const CashReceiptListPage = () => { const [filterOn, setFilterOn] = useState(false); const [pageParam, setPageParam] = useState(DEFAULT_PAGE_PARAM); const [mid, setMid] = useState(userMid); - const [startDate, setStartDate] = useState(moment().subtract(1, 'month').format('YYYYMMDD')); + const [startDate, setStartDate] = useState(moment().format('YYYYMMDD')); const [endDate, setEndDate] = useState(moment().format('YYYYMMDD')); const [purposeType, setPurposeType] = useState(CashReceiptPurposeType.ALL); const [transactionType, setTransactionType] = useState(CashReceiptTransactionType.ALL); diff --git a/src/pages/transaction/escrow/list-page.tsx b/src/pages/transaction/escrow/list-page.tsx index eaa1da4..50f3c51 100644 --- a/src/pages/transaction/escrow/list-page.tsx +++ b/src/pages/transaction/escrow/list-page.tsx @@ -51,8 +51,7 @@ export const EscrowListPage = () => { const [mid, setMid] = useState(userMid); const [searchType, setSearchType] = useState(EscrowSearchType.ALL); const [searchKeyword, setSearchKeyword] = useState(''); - const [startDate, setStartDate] = useState(moment().subtract(1, 'month').format('YYYYMMDD')); - // const [startDate, setStartDate] = useState(moment().format('YYYYMMDD')); + const [startDate, setStartDate] = useState(moment().format('YYYYMMDD')); const [endDate, setEndDate] = useState(moment().format('YYYYMMDD')); const [deliveryStatus, setDeliveryStatus] = useState(EscrowDeliveryStatus.ALL); const [settlementStatus, setSettlementStatus] = useState(EscrowSettlementStatus.ALL); diff --git a/src/shared/ui/calendar/nice-calendar-month.tsx b/src/shared/ui/calendar/nice-calendar-month.tsx index 819fe22..b4e790f 100644 --- a/src/shared/ui/calendar/nice-calendar-month.tsx +++ b/src/shared/ui/calendar/nice-calendar-month.tsx @@ -16,6 +16,8 @@ interface NiceCalendarProps { singleMonth?: string; calendarType: CalendarType; setNewMonth: (month: string) => void; + searchPeriod?: number; + periodType?: 'year' | 'month'; }; const NiceCalendarMonth = ({ @@ -25,7 +27,9 @@ const NiceCalendarMonth = ({ endMonth, singleMonth, calendarType, - setNewMonth + setNewMonth, + searchPeriod, + periodType }: NiceCalendarProps) => { const { i18n } = useTranslation(); const currentLocale = i18n.language || 'en'; @@ -39,11 +43,21 @@ const NiceCalendarMonth = ({ }; const onClickToClose = () => { - // setCalendarOpen(false); + setCalendarOpen(false); }; const setMinMaxValueDate = () => { if(calendarType === CalendarType.Start){ - setMinMonth(undefined); + if(!searchPeriod){ + searchPeriod = 3; + } + if(!periodType){ + periodType = 'year'; + } + if(periodType && searchPeriod && searchPeriod > 0){ + const endDate = moment(endMonth, ['YYYY.MM', 'YYYYMM'], true); + setMinMonth(moment(endDate, 'YYYY.MM.DD').subtract(searchPeriod, periodType).toDate()); + } + // setMinMonth(undefined); if(!!endMonth){ // Parse endMonth with moment, handling both YYYY.MM and YYYYMM formats const endDate = moment(endMonth, ['YYYY.MM', 'YYYYMM'], true); @@ -131,7 +145,7 @@ const NiceCalendarMonth = ({ { (calendarOpen) && <>
- onClickToClose() }> + void; minDate?: Date; maxDate?: Date; + searchPeriod?: number; + periodType?: 'year' | 'month' | 'day'; }; interface TileClassNameProps { @@ -35,7 +37,9 @@ const NiceCalendar = ({ calendarType, setNewDate, minDate: propMinDate, - maxDate: propMaxDate + maxDate: propMaxDate, + searchPeriod, + periodType }: NiceCalendarProps) => { const { i18n, t } = useTranslation(); const currentLocale = i18n.language || 'en'; @@ -53,8 +57,16 @@ const NiceCalendar = ({ }; const setMinMaxValueDate = () => { if(calendarType === CalendarType.Start){ - //setMinDate(propMinDate || moment(endDate, 'YYYY.MM.DD').subtract(1, 'month').toDate()); - setMinDate(propMinDate || undefined); + if(!searchPeriod){ + searchPeriod = 3; + } + if(!periodType){ + periodType = 'month'; + } + if(periodType && searchPeriod && searchPeriod > 0){ + setMinDate(propMinDate || moment(endDate, 'YYYY.MM.DD').subtract(searchPeriod, periodType).toDate()); + } + // setMinDate(propMinDate || undefined); if(!!endDate){ setMaxDate(moment(endDate, 'YYYY.MM.DD').toDate()); } diff --git a/src/shared/ui/filter/calendar-month.tsx b/src/shared/ui/filter/calendar-month.tsx index 10645b9..a98f3ae 100644 --- a/src/shared/ui/filter/calendar-month.tsx +++ b/src/shared/ui/filter/calendar-month.tsx @@ -24,7 +24,7 @@ export const FilterCalendarMonth = ({ const { t } = useTranslation(); const [filterTitle, setFilterTitle] = useState(title || t('filter.period')); const [monthReadOnly, setMonthReadyOnly] = useState(false); - const [filterMonthOptionsBtn, setFilterMonthOptionsBtn] = useState(FilterMonthOptions.Input); + const [filterMonthOptionsBtn, setFilterMonthOptionsBtn] = useState(FilterMonthOptions.Month1); const [calendarOpen, setCalendarOpen] = useState(false); const [calendarType, setCalendarType] = useState(CalendarType.Start); diff --git a/src/shared/ui/filter/calendar.tsx b/src/shared/ui/filter/calendar.tsx index d065f70..79e03cf 100644 --- a/src/shared/ui/filter/calendar.tsx +++ b/src/shared/ui/filter/calendar.tsx @@ -24,7 +24,7 @@ export const FilterCalendar = ({ const { t } = useTranslation(); const [filterTitle, setFilterTitle] = useState(title || t('filter.period')); const [dateReadOnly, setDateReadyOnly] = useState(false); - const [filterDateOptionsBtn, setFilterDateOptionsBtn] = useState(FilterDateOptions.Input); + const [filterDateOptionsBtn, setFilterDateOptionsBtn] = useState(FilterDateOptions.Today); const [calendarOpen, setCalendarOpen] = useState(false); const [calendarType, setCalendarType] = useState(CalendarType.Start);