This commit is contained in:
focp212@naver.com
2025-09-24 09:51:51 +09:00
14 changed files with 32 additions and 172 deletions

View File

@@ -5,7 +5,7 @@ import { CBDCAxiosError } from '@/shared/@types/error';
import { import {
ExtensionSmsDetailParams, ExtensionSmsDetailParams,
ExtensionSmsDetailResponse ExtensionSmsDetailResponse
} from '../model/types'; } from '../../model/types';
import { import {
useMutation, useMutation,
UseMutationOptions UseMutationOptions

View File

@@ -5,7 +5,7 @@ import { CBDCAxiosError } from '@/shared/@types/error';
import { import {
ExtensionSmsDownloadExcelParams, ExtensionSmsDownloadExcelParams,
ExtensionSmsDownloadExcelResponse ExtensionSmsDownloadExcelResponse
} from '../model/types'; } from '../../model/types';
import { import {
useMutation, useMutation,
UseMutationOptions UseMutationOptions

View File

@@ -5,7 +5,7 @@ import { CBDCAxiosError } from '@/shared/@types/error';
import { import {
ExtensionSmsListParams, ExtensionSmsListParams,
ExtensionSmsListResponse ExtensionSmsListResponse
} from '../model/types'; } from '../../model/types';
import { import {
useMutation, useMutation,
UseMutationOptions UseMutationOptions

View File

@@ -5,7 +5,7 @@ import { CBDCAxiosError } from '@/shared/@types/error';
import { import {
ExtensionSmsResendParams, ExtensionSmsResendParams,
ExtensionSmsResendResponse ExtensionSmsResendResponse
} from '../model/types'; } from '../../model/types';
import { import {
useMutation, useMutation,
UseMutationOptions UseMutationOptions

View File

@@ -30,10 +30,11 @@ export enum AdditionalServiceCategory {
AccountHolderAuth = 'AccountHolderAuth', AccountHolderAuth = 'AccountHolderAuth',
AccountHolderSearch = 'AccountHolderSearch', AccountHolderSearch = 'AccountHolderSearch',
LinkPaymentHistory = 'LinkPaymentHistory', LinkPaymentHistory = 'LinkPaymentHistory',
LinkPaymentPending = 'LinkPaymentPending', LinkPaymentWait = 'LinkPaymentWait',
FundAccountTransfer = 'FundAccountTransfer', FundAccountTransfer = 'FundAccountTransfer',
FundAccountResult = 'FundAccountResult', FundAccountResult = 'FundAccountResult',
SettlementAgency = 'SettlementAgency', SettlementAgency = 'SettlementAgency',
SMSPayment = 'SMSPayment',
Payout = 'Payout', Payout = 'Payout',
Ars = 'Ars', Ars = 'Ars',
} }
@@ -107,6 +108,11 @@ export interface FilterProps {
setFilterOn: (filterOn: boolean) => void; setFilterOn: (filterOn: boolean) => void;
} }
// ========================================
// SMS 결제 통보 관련 타입들
// ========================================
// ======================================== // ========================================
// 키인결제 관련 타입들 // 키인결제 관련 타입들
// ======================================== // ========================================
@@ -322,7 +328,7 @@ export interface LinkPaymentHistoryFilterProps extends FilterProps {
setSendMethod: (sendMethod: LinkPaymentSendMethod) => void; setSendMethod: (sendMethod: LinkPaymentSendMethod) => void;
} }
export interface LinkPaymentPendingSendFilterProps extends FilterProps { export interface LinkPaymentWaitFilterProps extends FilterProps {
mid: string; mid: string;
searchType: LinkPaymentSearchType; searchType: LinkPaymentSearchType;
searchKeyword: string; searchKeyword: string;
@@ -716,6 +722,7 @@ export interface ExtensionKeyinApplyResponse {
// ======================================== // ========================================
// SMS 결제알림 확장 서비스 // SMS 결제알림 확장 서비스
// ========================================
export interface ExtensionSmsResendParams extends ExtensionRequestParams { export interface ExtensionSmsResendParams extends ExtensionRequestParams {
tid: string; tid: string;
} }
@@ -725,12 +732,12 @@ export interface ExtensionSmsResendResponse {
} }
export interface ExtensionSmsListParams extends ExtensionRequestParams { export interface ExtensionSmsListParams extends ExtensionRequestParams {
tid: string;
searchCl: string; searchCl: string;
searchValue: string; searchValue: string;
fromDate: string; fromDate: string;
toDate: string; toDate: string;
smsCl: string; smsCl: string;
page?: DefaultRequestPagination;
} }
export interface ExtensionSmsListItemProps { export interface ExtensionSmsListItemProps {
@@ -768,11 +775,10 @@ export interface ExtensionSmsDetailResponse {
receiverName: string; receiverName: string;
sendMessage: string; sendMessage: string;
} }
// ========================================
// 알림톡 확장 서비스 // 알림톡 확장 서비스
// ========================================
export interface SendMerchantInfoItem { export interface SendMerchantInfoItem {
cardApprovalFlag: boolean; cardApprovalFlag: boolean;
cardCancelFlag: boolean; cardCancelFlag: boolean;

View File

@@ -52,7 +52,7 @@ export const PaymentInfoWrap = ({
</span> </span>
</li> </li>
</> </>
}{(additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending) && }{(additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) &&
<> <>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>

View File

@@ -58,7 +58,7 @@ export const TitleInfoWrap = ({
</> </>
)} )}
{/*링크결제_발송대기*/} {/*링크결제_발송대기*/}
{additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending && ( {additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait && (
<> <>
<> <>
<div className="num-amount"> <div className="num-amount">

View File

@@ -1,38 +0,0 @@
interface DetailDeetsInfoSectionProps {
deetsInfo?: any;
show?: boolean;
onClickToShowInfo?: () => void;
}
export const DetailDeetsInfoSection = ({
deetsInfo,
show,
onClickToShowInfo
}: DetailDeetsInfoSectionProps) => {
return (
<>
<div className="txn-section">
<div className="section-title"> </div>
<ul className="kv-list">
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">01073937470</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">mod201705545050</span>
</li>
</ul>
</div>
</>
)
}

View File

@@ -1,50 +0,0 @@
interface DetailPaymentInfoSectionProps {
paymentInfo?: any;
show?: boolean;
onClickToShowInfo?: () => void;
}
export const DetailPaymentInfoSection = ({
paymentInfo,
show,
onClickToShowInfo
}: DetailPaymentInfoSectionProps) => {
return (
<>
<div className="txn-section">
<div className="section-title"> </div>
<ul className="kv-list">
<li className="kv-row">
<span className="k"></span>
<span className="v">*</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">SMS</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">2025.06.08</span>
</li>
<li className="kv-row">
<span className="k">()</span>
<span className="v">(2)</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">2025.06.08</span>
</li>
</ul>
</div>
</>
)
}

View File

@@ -1,58 +0,0 @@
interface DetailPendingPaymentInfoSectionProps {
paymentInfo?: any;
show?: boolean;
onClickToShowInfo?: () => void;
}
export const DetailPaymentInfoSection = ({
paymentInfo,
show,
onClickToShowInfo
}: DetailPendingPaymentInfoSectionProps) => {
return (
<>
<div className="txn-section">
<div className="section-title"> </div>
<ul className="kv-list">
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">2025.06.05</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">2025.06.08</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">SMS</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">*</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">01073937470</span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v"></span>
</li>
<li className="kv-row">
<span className="k"></span>
<span className="v">moid201705545050</span>
</li>
</ul>
</div>
</>
)
}

View File

@@ -4,7 +4,7 @@ import { IMAGE_ROOT } from '@/shared/constants/common';
import { motion } from 'framer-motion'; import { motion } from 'framer-motion';
import { ChangeEvent, useState } from 'react'; import { ChangeEvent, useState } from 'react';
import { import {
LinkPaymentPendingSendFilterProps, LinkPaymentWaitFilterProps,
LinkPaymentSearchType, LinkPaymentSearchType,
LinkPaymentSendMethod, LinkPaymentSendMethod,
LinkPaymentSendingStatus, LinkPaymentSendingStatus,
@@ -15,7 +15,7 @@ import { FilterDateOptions } from '@/entities/common/model/types';
import { FilterCalendar } from '@/shared/ui/filter/calendar'; import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups'; import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
export const LinkPaymentPendingSendFilter = ({ export const LinkPaymentWaitSendFilter = ({
filterOn, filterOn,
setFilterOn, setFilterOn,
mid, mid,
@@ -32,7 +32,7 @@ export const LinkPaymentPendingSendFilter = ({
setEndDate, setEndDate,
setSendMethod, setSendMethod,
setSendingStatus setSendingStatus
}: LinkPaymentPendingSendFilterProps) => { }: LinkPaymentWaitFilterProps) => {
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);

View File

@@ -1,7 +1,7 @@
import moment from 'moment'; import moment from 'moment';
import { IMAGE_ROOT } from "@/shared/constants/common"; import { IMAGE_ROOT } from "@/shared/constants/common";
import { useState, useEffect } from "react"; import { useState, useEffect } from "react";
import { LinkPaymentPendingSendFilter } from "./filter/link-payment-pending-send-filter"; import { LinkPaymentWaitSendFilter } from "./filter/link-payment-pending-send-filter";
import { useNavigate } from '@/shared/lib/hooks/use-navigate'; import { useNavigate } from '@/shared/lib/hooks/use-navigate';
import { PATHS } from "@/shared/constants/paths"; import { PATHS } from "@/shared/constants/paths";
import { LinkPaymentWaitList } from "./link-payment-wait-list"; import { LinkPaymentWaitList } from "./link-payment-wait-list";
@@ -164,7 +164,7 @@ export const LinkPaymentWaitSendWrap = () => {
<LinkPaymentWaitList <LinkPaymentWaitList
listItems={listItems} listItems={listItems}
additionalServiceCategory={AdditionalServiceCategory.LinkPaymentPending} additionalServiceCategory={AdditionalServiceCategory.LinkPaymentWait}
></LinkPaymentWaitList> ></LinkPaymentWaitList>
<div className="apply-row"> <div className="apply-row">
<button <button
@@ -172,7 +172,7 @@ export const LinkPaymentWaitSendWrap = () => {
onClick={() => onClickToNavigate()} onClick={() => onClickToNavigate()}
> </button> > </button>
</div> </div>
<LinkPaymentPendingSendFilter <LinkPaymentWaitSendFilter
filterOn={filterOn} filterOn={filterOn}
setFilterOn={setFilterOn} setFilterOn={setFilterOn}
mid={mid} mid={mid}
@@ -189,7 +189,7 @@ export const LinkPaymentWaitSendWrap = () => {
setEndDate={setEndDate} setEndDate={setEndDate}
setSendMethod={setSendMethod} setSendMethod={setSendMethod}
setSendingStatus={setSendingStatus} setSendingStatus={setSendingStatus}
></LinkPaymentPendingSendFilter> ></LinkPaymentWaitSendFilter>
</> </>
) )
} }

View File

@@ -91,7 +91,7 @@ export const ListItem = ({
else if (paymentStatus === "INACTIVE") { else if (paymentStatus === "INACTIVE") {
rs = 'gray'; rs = 'gray';
} }
} else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending) { } else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) {
if (processStatus === "SEND_REQUEST") { if (processStatus === "SEND_REQUEST") {
rs = 'blue' rs = 'blue'
} else { } else {
@@ -134,7 +134,7 @@ export const ListItem = ({
} }
}); });
} }
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending) { else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) {
navigate(PATHS.additionalService.linkPayment.pendingDetail, { navigate(PATHS.additionalService.linkPayment.pendingDetail, {
state: { state: {
additionalServiceCategory: additionalServiceCategory, additionalServiceCategory: additionalServiceCategory,
@@ -229,7 +229,7 @@ export const ListItem = ({
str = `${accountNo}`; str = `${accountNo}`;
} }
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentHistory || else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentHistory ||
additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait
) { ) {
if (sendMethod === "SMS") { if (sendMethod === "SMS") {
str = `${"buyerName"}(${"휴대폰 번호"})`; str = `${"buyerName"}(${"휴대폰 번호"})`;
@@ -303,7 +303,7 @@ export const ListItem = ({
); );
} }
} }
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending) { else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) {
rs.push( rs.push(
<div className="transaction-details"> <div className="transaction-details">
<span>{getProcessStatusText(processStatus)}</span> <span>{getProcessStatusText(processStatus)}</span>
@@ -384,7 +384,7 @@ export const ListItem = ({
); );
} }
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentHistory || else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentHistory ||
additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait
) { ) {
rs.push( rs.push(
<div className="transaction-amount"> <div className="transaction-amount">

View File

@@ -103,14 +103,14 @@ export const LinkPaymentWaitDetailPage = () => {
<div className="tab-pane sub active"> <div className="tab-pane sub active">
<div className="pay-top"> <div className="pay-top">
<TitleInfoWrap <TitleInfoWrap
additionalServiceCategory={AdditionalServiceCategory.LinkPaymentPending} additionalServiceCategory={AdditionalServiceCategory.LinkPaymentWait}
titleInfo={titleInfo} titleInfo={titleInfo}
></TitleInfoWrap> ></TitleInfoWrap>
<div className="txn-divider minus"></div> <div className="txn-divider minus"></div>
<PaymentInfoWrap <PaymentInfoWrap
additionalServiceCategory={AdditionalServiceCategory.LinkPaymentPending} additionalServiceCategory={AdditionalServiceCategory.LinkPaymentWait}
paymentInfo={paymentInfo} paymentInfo={paymentInfo}
></PaymentInfoWrap> ></PaymentInfoWrap>
</div> </div>