diff --git a/src/entities/additional-service/model/sms-payment/types.ts b/src/entities/additional-service/model/sms-payment/types.ts index 097bd4b..c81b119 100644 --- a/src/entities/additional-service/model/sms-payment/types.ts +++ b/src/entities/additional-service/model/sms-payment/types.ts @@ -1,5 +1,5 @@ import { DefaulResponsePagination, DefaultRequestPagination } from '@/entities/common/model/types'; -import { ExtensionRequestParams, ListItemProps } from '../types'; +import { ExtensionRequestParams, FilterProps, ListItemProps } from '../types'; export enum SmsType { ALL = "ALL", @@ -23,6 +23,22 @@ export interface SmsPaymentListItem { export interface SmsPaymentListProps { listItems: Record>; mid: string; + onResendClick?: () => void; +} + +export interface SmsPaymentFilterProps extends FilterProps { + mid: string; + searchCl: SmsPaymentSearchType; + searchValue: string; + fromDate: string; + toDate: string; + smsCl: SmsType; + setMid: (mid: string) => void; + setSearchCl: (searchCl: SmsPaymentSearchType) => void; + setSearchValue: (searchValue: string) => void; + setFromDate: (fromDate: string) => void; + setToDate: (toDate: string) => void; + setSmsCl: (smsCl: SmsType) => void; } export interface ExtensionSmsPaymentListParams extends ExtensionRequestParams { diff --git a/src/entities/additional-service/model/types.ts b/src/entities/additional-service/model/types.ts index 39dbc6e..285b8e3 100644 --- a/src/entities/additional-service/model/types.ts +++ b/src/entities/additional-service/model/types.ts @@ -397,7 +397,8 @@ export interface ListItemProps extends FundAccountResultContentItem, ArsListContent, AlimtalkListContent { additionalServiceCategory?: AdditionalServiceCategory; - mid?: string + mid?: string; + onResendClick?: () => void; } export interface ListDateGroupProps { @@ -405,6 +406,7 @@ export interface ListDateGroupProps { date?: string; items?: Array; mid?: string; + onResendClick?: () => void; } export interface AdditionalServiceListProps { diff --git a/src/entities/additional-service/ui/account-holder-auth/account-holder-auth-filter.tsx b/src/entities/additional-service/ui/account-holder-auth/account-holder-auth-filter.tsx deleted file mode 100644 index e69de29..0000000 diff --git a/src/entities/additional-service/ui/account-holder-search/filter/account-holder-search-filter.tsx b/src/entities/additional-service/ui/account-holder-search/filter/account-holder-search-filter.tsx index 6c3b01e..3cc3081 100644 --- a/src/entities/additional-service/ui/account-holder-search/filter/account-holder-search-filter.tsx +++ b/src/entities/additional-service/ui/account-holder-search/filter/account-holder-search-filter.tsx @@ -39,10 +39,6 @@ export const AccountHolderSearchFilter = ({ const [filterEndDate, setFilterEndDate] = useState(moment(endDate).format('YYYY.MM.DD')); const [filterBank, setFilterBank] = useState(bank) const [filterProcessResult, setFilterProcessResult] = useState(processResult); - const [dateReadOnly, setDateReadyOnly] = useState(true); - const [filterDateOptionsBtn, setFilterDateOptionsBtn] = useState(FilterDateOptions.Input); - - const [calendarOpen, setCalendarOpen] = useState(false); const variants = { hidden: { x: '100%' }, @@ -124,17 +120,17 @@ export const AccountHolderSearchFilter = ({ diff --git a/src/entities/additional-service/ui/list-date-group.tsx b/src/entities/additional-service/ui/list-date-group.tsx index 0b36445..bbb02d7 100644 --- a/src/entities/additional-service/ui/list-date-group.tsx +++ b/src/entities/additional-service/ui/list-date-group.tsx @@ -7,7 +7,8 @@ export const ListDateGroup = ({ additionalServiceCategory, date, items, - mid + mid, + onResendClick }: ListDateGroupProps) => { moment.locale('ko'); const getStateDate = () => { @@ -65,6 +66,7 @@ export const ListDateGroup = ({ receiverName={ items[i]?.receiverName } smsCl= { items[i]?.smsCl } + onResendClick={ onResendClick } > ) } diff --git a/src/entities/additional-service/ui/list-item.tsx b/src/entities/additional-service/ui/list-item.tsx index ff2bbd0..8983f13 100644 --- a/src/entities/additional-service/ui/list-item.tsx +++ b/src/entities/additional-service/ui/list-item.tsx @@ -27,7 +27,8 @@ export const ListItem = ({ alimCl, sendType, sendCl, paymentMethod, receiverName, - smsCl + smsCl, + onResendClick }: ListItemProps) => { const { navigate } = useNavigate(); const getItemClass = () => { @@ -518,11 +519,12 @@ export const ListItem = ({ >{sendCl} ); } - else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment) { + else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment && onResendClick) { rs.push(
onResendClick()} >{'재발송'}
) } diff --git a/src/entities/additional-service/ui/sms-payment/sms-payment-filter.tsx b/src/entities/additional-service/ui/sms-payment/sms-payment-filter.tsx index 89d5054..cac34d0 100644 --- a/src/entities/additional-service/ui/sms-payment/sms-payment-filter.tsx +++ b/src/entities/additional-service/ui/sms-payment/sms-payment-filter.tsx @@ -1,8 +1,140 @@ -export const SmsPaymentFilter = () => { +import moment from 'moment'; +import { IMAGE_ROOT } from '@/shared/constants/common'; +import { motion } from 'framer-motion'; +import { useState } from 'react'; +import { FilterSelect } from '@/shared/ui/filter/select'; +import { FilterSelectInput } from '@/shared/ui/filter/select-input'; +import { FilterDateOptions } from '@/entities/common/model/types'; +import { FilterCalendar } from '@/shared/ui/filter/calendar'; +import { FilterButtonGroups } from '@/shared/ui/filter/button-groups'; +import { SmsPaymentFilterProps, SmsPaymentSearchType, SmsType } from '../../model/sms-payment/types'; +export const SmsPaymentFilter = ({ + filterOn, + setFilterOn, + mid, + searchCl, + searchValue, + fromDate, + toDate, + smsCl, + setMid, + setSearchCl, + setSearchValue, + setFromDate, + setToDate, + setSmsCl +}: SmsPaymentFilterProps) => { + + const [filterMid, setFilterMid] = useState(mid); + const [filterSearchCl, setFilterSearchCl] = useState(searchCl); + const [filterSearchValue, setFilterSearchValue] = useState(searchValue); + const [filterFromDate, setFilterFromDate] = useState(moment(fromDate).format('YYYY.MM.DD')); + const [filterToDate, setFilterToDate] = useState(moment(toDate).format('YYYY.MM.DD')); + const [filterSmsCl, setFilterSmsCl] = useState(smsCl); + + const variants = { + hidden: { x: '100%' }, + visible: { x: '0%' }, + }; + + const onClickToSetFilter = () => { + setMid(filterMid); + setSearchCl(filterSearchCl); + setSearchValue(filterSearchValue); + setFromDate(filterFromDate); + setToDate(filterToDate); + setSmsCl(filterSmsCl); + onClickToClose(); + }; + + let MidOptions = [ + { name: 'nictest001m', value: 'nictest001m' }, + { name: 'nictest002m', value: 'nictest002m' } + ]; + + let searchTypeOption = [ + { name: '주문자', value: SmsPaymentSearchType.BUYER_NAME }, + { name: '수신번호', value: SmsPaymentSearchType.RECEIVE_PHONE_NUMBER }, + ] + + let smsTypeOption = [ + { name: '전체', value: SmsType.ALL }, + { name: '가상계좌요청', value: SmsType.VACCOUNT_REQ }, + { name: '가상계좌 요청+입금', value: SmsType.VACCOUNT_REQ_DEPOSIT }, + ] + + const onClickToClose = () => { + setFilterOn(false); + }; return ( <> - + +
+
+
필터
+
+ +
+
+ +
+ + + + + +
+
+ +
+
+
); }; \ No newline at end of file diff --git a/src/entities/additional-service/ui/sms-payment/sms-payment-list.tsx b/src/entities/additional-service/ui/sms-payment/sms-payment-list.tsx index d1fab73..b956e85 100644 --- a/src/entities/additional-service/ui/sms-payment/sms-payment-list.tsx +++ b/src/entities/additional-service/ui/sms-payment/sms-payment-list.tsx @@ -4,7 +4,8 @@ import { ListDateGroup } from '../list-date-group'; export const SmsPaymentList = ({ listItems, - mid + mid, + onResendClick }: SmsPaymentListProps) => { const getListDateGroup = () => { @@ -17,6 +18,7 @@ export const SmsPaymentList = ({ date={key} items={value} mid={mid} + onResendClick={onResendClick} > ) } diff --git a/src/pages/additional-service/sms-payment/sms-payment-page.tsx b/src/pages/additional-service/sms-payment/sms-payment-page.tsx index 26c36be..813bb0c 100644 --- a/src/pages/additional-service/sms-payment/sms-payment-page.tsx +++ b/src/pages/additional-service/sms-payment/sms-payment-page.tsx @@ -14,6 +14,7 @@ import { SmsPaymentListItem, SmsPaymentSearchType, SmsType } from '@/entities/ad import { useExtensionSmsListMutation } from '@/entities/additional-service/api/sms-payment/use-extension-sms-list-mutation'; import { useExtensionSmsDownloadExcelMutation } from '@/entities/additional-service/api/sms-payment/use-extension-sms-download-excel-mutation'; import { SmsPaymentList } from '@/entities/additional-service/ui/sms-payment/sms-payment-list'; +import { SmsPaymentFilter } from '@/entities/additional-service/ui/sms-payment/sms-payment-filter'; export const SmsPaymentPage = () => { @@ -86,7 +87,9 @@ export const SmsPaymentPage = () => { fromDate: fromDate, toDate: toDate, smsCl: smsCl === SmsType.ALL ? '' : smsCl, - }) + }).then((rs) => { + console.log('Excel Dowload Status : ' + rs.status) + }); } @@ -147,8 +150,9 @@ export const SmsPaymentPage = () => {
@@ -158,6 +162,23 @@ export const SmsPaymentPage = () => { bottomSmsPaymentDetailResendOn={bottomSmsPaymentDetailResendOn} setBottomSmsPaymentDetailResendOn={setBottomSmsPaymentDetailResendOn} > + + ); }; \ No newline at end of file