import moment from 'moment'; import { NumericFormat } from 'react-number-format'; import { SectionTitleArrow } from '@/entities/common/ui/section-title-arrow'; import { InfoSectionKeys, InfoSectionProps, TransactionCategory } from '../../model/types'; import { SlideDown } from 'react-slidedown'; import 'react-slidedown/lib/slidedown.css'; export const SettlementInfoSection = ({ transactionCategory, settlementInfo, serviceCode, isOpen, onClickToOpenInfo }: InfoSectionProps) => { const subItems: Record> = { approvalSettlementDate: {name: '승인정산일', type: 'date'}, approvalSettlementAmount: {name: '승인정산금액', type: 'number'}, cancelSettlementDate: {name: '취소정산일', type: 'date'}, cancelSettlementAmount: {name: '취소정산금액', type: 'number'}, }; const openSubItems: Record> = { // 신용카드 '01': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 계좌이체 '02': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 가상계좌 '03': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 휴대폰 '05': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 문화상품권 '14': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // SSG머니 '21': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // SSG은행계좌 '24': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 계좌간편결제 '26': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], // 티머니페이 '31': ['approvalSettlementDate', 'approvalSettlementAmount', 'cancelSettlementDate', 'cancelSettlementAmount'], }; const checkValue = (val: any) => { return (!!val || val === 0); }; let newSettlementInfo: Record | undefined = settlementInfo; const subLi = () => { let rs = []; if(!!newSettlementInfo && !!serviceCode && !!openSubItems[serviceCode]){ for(let i=0;i ·  { subItems[k]?.name } { (checkValue(newSettlementInfo[k]) && subItems[k]?.type === 'string') && newSettlementInfo[k] } { (checkValue(newSettlementInfo[k]) && subItems[k]?.type === 'number') && } { (checkValue(newSettlementInfo[k]) && subItems[k]?.type === 'date') && moment(newSettlementInfo[k]).format('YYYY.MM.DD') } ); } } } return rs; }; const onClickToSetOpenInfo = () => { if(!!onClickToOpenInfo){ onClickToOpenInfo(InfoSectionKeys.Settlement); } }; return ( <>
onClickToSetOpenInfo() } > 정산 정보
{ !!isOpen &&
    { (transactionCategory === TransactionCategory.AllTransaction) && subLi() } { (transactionCategory === TransactionCategory.Escrow) && <>
  • ·  승인정산일 { settlementInfo?.approvalSettlementDate? moment(settlementInfo?.approvalSettlementDate).format('YYYY.MM.DD'): '' }
  • ·  승인정산금액
  • ·  취소정산일 { settlementInfo?.cancelSettlementDate? moment(settlementInfo?.cancelSettlementDate).format('YYYY.MM.DD'): '' }
  • ·  취소정산금액
  • }
}
) };