minAmount max amount 타입 변경 및 ars

This commit is contained in:
focp212@naver.com
2025-09-24 09:51:44 +09:00
parent 0e1d624b41
commit 4e4d0fd554
22 changed files with 139 additions and 229 deletions

View File

@@ -32,12 +32,12 @@ export interface ExtensionArsListParams {
page: DefaultRequestPagination;
};
export interface ArsListContent {
tid: string;
paymentDate: string;
paymentStatus: string;
orderStatus: string;
arsPaymentMethod: string;
amount: number;
tid?: string;
paymentDate?: string;
paymentStatus?: string;
orderStatus?: string;
arsPaymentMethod?: string;
amount?: number;
};
export interface ExtensionArsListResponse extends DefaulResponsePagination {
content: Array<ArsListContent>;

View File

@@ -23,8 +23,8 @@ export interface ExtensionPayoutListParams {
fromDate: string;
toDate: string;
disbursementStatus: PayoutDisbursementStatus;
minAmount?: number | string;
maxAmount?: number | string;
minAmount?: number;
maxAmount?: number;
page?: DefaultRequestPagination;
};
export interface ExtensionPayoutListResponse extends DefaulResponsePagination{

View File

@@ -2,6 +2,7 @@ import { DefaulResponsePagination, DefaultRequestPagination } from '@/entities/c
import { PayoutContent } from './payout/types';
import { P } from 'node_modules/framer-motion/dist/types.d-Cjd591yU';
import { FundAccountResultContentItem, FundAccountTransferContentItem } from './fund-account/types';
import { ArsListContent } from './ars/types';
// ========================================
// 공통 Enums 및 타입들
@@ -134,14 +135,14 @@ export interface KeyInPaymentFilterProps extends FilterProps {
startDate: string;
endDate: string;
transactionStatus: KeyInPaymentTransactionStatus;
minAmount?: number | string;
maxAmount?: number | string;
minAmount?: number;
maxAmount?: number;
setMid: (mid: string) => void;
setStartDate: (startDate: string) => void;
setEndDate: (endDate: string) => void;
setTransactionStatus: (transactionStatus: KeyInPaymentTransactionStatus) => void;
setMinAmount: (minAmount: string | number) => void;
setMaxAmount: (maxAmount: string | number) => void;
setMinAmount: (minAmount?: number) => void;
setMaxAmount: (maxAmount?: number) => void;
}
// ========================================
@@ -384,7 +385,8 @@ export interface ListItemProps extends
KeyInPaymentListItem, AccountHolderSearchListItem,
AccountHolderAuthListItem, LinkPaymentHistoryListItem,
LinkPaymentWaitListItem,
PayoutContent, FundAccountTransferContentItem {
PayoutContent, FundAccountTransferContentItem,
ArsListContent {
additionalServiceCategory?: AdditionalServiceCategory;
mid?: string
}
@@ -668,8 +670,8 @@ export interface ExtensionKeyinListParams extends ExtensionRequestParams {
fromDate: string;
toDate: string;
paymentStatus: string;
minAmount?: number | string;
maxAmount?: number | string;
minAmount?: number;
maxAmount?: number;
page?: DefaultRequestPagination;
}
@@ -688,8 +690,8 @@ export interface ExtensionKeyinDownloadExcelParams extends ExtensionRequestParam
fromDate?: string;
toDate?: string;
paymentStatus?: string;
minAmount?: number | string;
maxAmount?: number | string;
minAmount?: number;
maxAmount?: number;
}
export interface ExtensionKeyinDownloadExcelResponse {

View File

@@ -28,15 +28,15 @@ export interface PayoutFilterProps {
fromDate: string;
toDate: string;
disbursementStatus: PayoutDisbursementStatus;
minAmount?: number | string;
maxAmount?: number | string;
minAmount?: number;
maxAmount?: number;
setMid: (mid: string) => void;
setSearchCl: (searchCl: PayoutSearchCl) => void;
setFromDate: (fromDate: string) => void;
setToDate: (toDate: string) => void;
setDisbursementStatus: (disbursementStatus: PayoutDisbursementStatus) => void;
setMinAmount: (minAmount: string | number) => void;
setMaxAmount: (maxAmount: string | number) => void;
setMinAmount: (minAmount?: number) => void;
setMaxAmount: (maxAmount?: number) => void;
};
export const PayoutFilter = ({
@@ -63,8 +63,8 @@ export const PayoutFilter = ({
const [filterFromDate, setFilterFromDate] = useState<string>(moment(fromDate).format('YYYY.MM.DD'));
const [filterToDate, setFilterToDate] = useState<string>(moment(toDate).format('YYYY.MM.DD'));
const [filterDisbursementStatus, setFilterDisbursementStatus] = useState<PayoutDisbursementStatus>(disbursementStatus);
const [filterMinAmount, setFilterMinAmount] = useState<number | string>(minAmount || '');
const [filterMaxAmount, setFilterMaxAmount] = useState<number | string>(maxAmount || '');
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const onClickToClose = () => {
setFilterOn(false);

View File

@@ -34,8 +34,8 @@ export const KeyInPaymentFilter = ({
const [filterStartDate, setFilterStartDate] = useState<string>(startDate);
const [filterEndDate, setFilterEndDate] = useState<string>(endDate);
const [filterTransactionStatus, setFilterTransactionStatus] = useState<KeyInPaymentTransactionStatus>(transactionStatus);
const [filterMinAmount, setFilterMinAmount] = useState<number | string>(minAmount || '');
const [filterMaxAmount, setFilterMaxAmount] = useState<number | string>(maxAmount || '');
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const variants = {
hidden: { x: '100%' },

View File

@@ -53,7 +53,10 @@ export const ListDateGroup = ({
receiveAccountNo={ items[i]?.receiveAccountNo }
receiveAccountName={ items[i]?.receiveAccountName }
status={ items[i]?.status }
processDate={items[i]?.processDate }
processDate={ items[i]?.processDate }
orderStatus={ items[i]?.orderStatus }
arsPaymentMethod={ items[i]?.arsPaymentMethod }
></ListItem>
)
}

View File

@@ -20,7 +20,9 @@ export const ListItem = ({
transferAmount, receiveBankName,
receiveAccountNo, receiveAccountName,
status, processDate
status, processDate,
orderStatus, arsPaymentMethod
}: ListItemProps) => {
const { navigate } = useNavigate();
const getItemClass = () => {
@@ -171,6 +173,15 @@ export const ListItem = ({
}
});
}
else if (additionalServiceCategory === AdditionalServiceCategory.Ars){
navigate(PATHS.additionalService.payout.detail, {
state: {
additionalServiceCategory: additionalServiceCategory,
mid: mid,
tid: tid
}
});
}
else {
alert('additionalServiceCategory가 존재하지 않습니다.');
}
@@ -196,6 +207,10 @@ export const ListItem = ({
else if (additionalServiceCategory === AdditionalServiceCategory.FundAccountResult) {
timeStr = moment(requestDate).format('mm:ss');
}
else if (additionalServiceCategory === AdditionalServiceCategory.Ars){
let time = paymentDate?.substring(8, 12);
timeStr = time?.substring(0, 2) + ':' + time?.substring(2, 4);
}
else {
return
}
@@ -208,28 +223,31 @@ export const ListItem = ({
str = `${tid}(${amount})`;
}
else if (additionalServiceCategory === AdditionalServiceCategory.AccountHolderAuth) {
str = `${accountName}(${accountNo})`
str = `${accountName}(${accountNo})`;
}
else if (additionalServiceCategory === AdditionalServiceCategory.AccountHolderSearch) {
str = `${accountNo}`
str = `${accountNo}`;
}
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentHistory ||
additionalServiceCategory === AdditionalServiceCategory.LinkPaymentPending
) {
if (sendMethod === "SMS") {
str = `${"buyerName"}(${"휴대폰 번호"})`
str = `${"buyerName"}(${"휴대폰 번호"})`;
} else {
str = `${"buyerName"}(${"이메일"})`
str = `${"buyerName"}(${"이메일"})`;
}
}
else if (additionalServiceCategory === AdditionalServiceCategory.Payout) {
str = companyName;
}
else if(additionalServiceCategory === AdditionalServiceCategory.FundAccountTransfer){
str = `${receiveAccountName}(${receiveAccountNo})`
str = `${receiveAccountName}(${receiveAccountNo})`;
}
else if(additionalServiceCategory === AdditionalServiceCategory.FundAccountResult){
str = `${receiveAccountName}(${receiveAccountNo})`
str = `${receiveAccountName}(${receiveAccountNo})`;
}
else if(additionalServiceCategory === AdditionalServiceCategory.Ars){
str = '이름(' + tid + ')';
}
return str;
@@ -321,6 +339,19 @@ export const ListItem = ({
</div>
);
}
else if(additionalServiceCategory === AdditionalServiceCategory.Ars){
rs.push(
<div className="transaction-details">
<span>{ getTime() }</span>
<span className="separator">|</span>
<span>{ paymentStatus }</span>
<span className="separator">|</span>
<span>{ orderStatus }</span>
<span className="separator">|</span>
<span>{ arsPaymentMethod }</span>
</div>
);
}
return rs;
};