Convert transaction constants to i18n-compatible getter functions
- Convert all hardcoded constant arrays to functions accepting TFunction - Add transaction.constants namespace with 40+ translation keys - Update contant.ts: All exports now use get* prefix (e.g., getCashReceiptPurposeTypeBtnGroup) - Replace ko/en properties with single name property using t() function Updated constants: - getAllTransactionMoidTidOptionsGroup(t) - getAllTransactionStatusCodeBtnGroup(t) - getAllTransactionServiceCodeOptionsGroup(t) - getAllTransactionStatusCode(t) - getCashReceiptPurposeTypeBtnGroup(t) - getCashReceiptTransactionTypeBtnGroup(t) - getCashReceiptProcessResultBtnGroup(t) - getEscrowSearchTypeOptionsGroup(t) - getEscrowDeliveryStatusBtnGroup(t) - getEscrowSettlementStatusBtnGroup(t) - getBillingSearchTypeOptionsGroup(t) - getBillingRequestStatusBtnGroup(t) - getBillingProcessResultBtnGroup(t) - getBillingPaymentMethodBtnGroup(t) Updated components (9 files): - Filter components: all-transaction, cash-receipt, billing, escrow - List pages: billing, cash-receipt, escrow - UI components: list-item, important-info-section All constants now properly support Korean/English language switching. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import {
|
||||
import { TFunction } from 'i18next';
|
||||
import {
|
||||
AllTransactionMoidTid,
|
||||
AllTransactionSearchCl,
|
||||
AllTransactionServiceCode,
|
||||
@@ -6,7 +7,7 @@ import {
|
||||
CashReceiptPurposeType,
|
||||
CashReceiptTransactionType,
|
||||
CashReceiptProcessResult,
|
||||
BillingPaymentMethod,
|
||||
BillingPaymentMethod,
|
||||
BillingProcessResult,
|
||||
BillingRequestStatus,
|
||||
BillingSearchType,
|
||||
@@ -15,121 +16,121 @@ import {
|
||||
EscrowSettlementStatus
|
||||
} from '@/entities/transaction/model/types';
|
||||
|
||||
export const AllTransactionMoidTidOptionsGroup = [
|
||||
{name: '주문번호', value: AllTransactionMoidTid.MOID},
|
||||
{name: 'TID', value: AllTransactionMoidTid.TID},
|
||||
export const getAllTransactionMoidTidOptionsGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.orderNumber'), value: AllTransactionMoidTid.MOID},
|
||||
{name: t('transaction.constants.tid'), value: AllTransactionMoidTid.TID},
|
||||
];
|
||||
|
||||
export const AllTransactionStatusCodeBtnGroup = [
|
||||
{name: '전체', value: AllTransactionStatusCode.ALL},
|
||||
{name: '승인/입금완료', value: AllTransactionStatusCode.APPROVAL},
|
||||
{name: '전취소/취소', value: AllTransactionStatusCode.CANCEL},
|
||||
{name: '후취소/환불', value: AllTransactionStatusCode.REFUND}
|
||||
];
|
||||
export const AllTransactionServiceCodeOptionsGroup = [
|
||||
{name: '전체', value: AllTransactionServiceCode.ALL},
|
||||
{name: '신용카드', value: AllTransactionServiceCode.CREDIT_CARD},
|
||||
{name: '가상계좌', value: AllTransactionServiceCode.VIRTUAL_ACCOUNT},
|
||||
{name: '계좌이체', value: AllTransactionServiceCode.ACCOUNT_TRANSFER},
|
||||
{name: '계좌간편결제', value: AllTransactionServiceCode.ACCOUNT_SIMPLE_TRANSFER},
|
||||
{name: '휴대폰', value: AllTransactionServiceCode.MOBILE_PAYMENT},
|
||||
{name: 'SSG 머니', value: AllTransactionServiceCode.SSGMONEY},
|
||||
{name: 'SSG 은행계좌', value: AllTransactionServiceCode.SSGBANK},
|
||||
{name: '문화상품권', value: AllTransactionServiceCode.CULT},
|
||||
{name: '티머니페이', value: AllTransactionServiceCode.TMONEY},
|
||||
|
||||
export const getAllTransactionStatusCodeBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: AllTransactionStatusCode.ALL},
|
||||
{name: t('transaction.constants.approvalComplete'), value: AllTransactionStatusCode.APPROVAL},
|
||||
{name: t('transaction.constants.totalCancel'), value: AllTransactionStatusCode.CANCEL},
|
||||
{name: t('transaction.constants.refund'), value: AllTransactionStatusCode.REFUND}
|
||||
];
|
||||
|
||||
export const AllTracsactionStatusCode = [
|
||||
export const getAllTransactionServiceCodeOptionsGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: AllTransactionServiceCode.ALL},
|
||||
{name: t('transaction.constants.creditCard'), value: AllTransactionServiceCode.CREDIT_CARD},
|
||||
{name: t('transaction.constants.virtualAccount'), value: AllTransactionServiceCode.VIRTUAL_ACCOUNT},
|
||||
{name: t('transaction.constants.accountTransfer'), value: AllTransactionServiceCode.ACCOUNT_TRANSFER},
|
||||
{name: t('transaction.constants.accountSimpleTransfer'), value: AllTransactionServiceCode.ACCOUNT_SIMPLE_TRANSFER},
|
||||
{name: t('transaction.constants.mobilePayment'), value: AllTransactionServiceCode.MOBILE_PAYMENT},
|
||||
{name: t('transaction.constants.ssgMoney'), value: AllTransactionServiceCode.SSGMONEY},
|
||||
{name: t('transaction.constants.ssgBank'), value: AllTransactionServiceCode.SSGBANK},
|
||||
{name: t('transaction.constants.cultureLand'), value: AllTransactionServiceCode.CULT},
|
||||
{name: t('transaction.constants.tmoneyPay'), value: AllTransactionServiceCode.TMONEY},
|
||||
];
|
||||
|
||||
export const getAllTransactionStatusCode = (t: TFunction) => [
|
||||
{
|
||||
serviceCode: '',
|
||||
serviceCode: '',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인/입금완료', en: 'Approval'},
|
||||
{code: '1', ko: '전취소/취소', en: 'Total Cancellation'},
|
||||
{code: '2', ko: '후취소/환불', en: 'Cancellation'}
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approvalComplete')},
|
||||
{code: '1', name: t('transaction.constants.totalCancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')}
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '01',
|
||||
serviceCode: '01',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '전취소', en: 'Total Cancellation'},
|
||||
{code: '2', ko: '후취소', en: 'Cancellation'}
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.totalCancelShort')},
|
||||
{code: '2', name: t('transaction.constants.cancelShort')}
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '02',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '03',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '입금', en: 'Payment Complete'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '3', ko: '입금대기', en: 'Waiting Payment'},
|
||||
{code: '4', ko: '채번취소', en: 'Cancellation Issue'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.deposit')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
{code: '3', name: t('transaction.constants.waitingDeposit')},
|
||||
{code: '4', name: t('transaction.constants.issueCancel')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '05',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '14',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '21',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '24',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '26',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '취소', en: 'Cancellation'},
|
||||
{code: '2', ko: '환불', en: 'Refund'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.cancel')},
|
||||
{code: '2', name: t('transaction.constants.refund')},
|
||||
]
|
||||
},
|
||||
{
|
||||
serviceCode: '31',
|
||||
list: [
|
||||
{code: '', ko: '전체', en: 'All'},
|
||||
{code: '0', ko: '승인', en: 'Approval'},
|
||||
{code: '1', ko: '전취소', en: 'Total Cancellation'},
|
||||
{code: '2', ko: '후취소', en: 'Cancellation'},
|
||||
{code: '', name: t('transaction.constants.all')},
|
||||
{code: '0', name: t('transaction.constants.approval')},
|
||||
{code: '1', name: t('transaction.constants.totalCancelShort')},
|
||||
{code: '2', name: t('transaction.constants.cancelShort')},
|
||||
]
|
||||
},
|
||||
];
|
||||
@@ -140,63 +141,72 @@ export const AllTransactionCardBankCodeOptionsGroup = {
|
||||
|
||||
|
||||
|
||||
export const CashReceiptPurposeTypeBtnGroup = [
|
||||
{name: '전체', value: CashReceiptPurposeType.ALL},
|
||||
{name: '소득공제', value: CashReceiptPurposeType.INCOME_DEDUCTION},
|
||||
{name: '지출증빙', value: CashReceiptPurposeType.EXPENSE_PROOF},
|
||||
export const getCashReceiptPurposeTypeBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: CashReceiptPurposeType.ALL},
|
||||
{name: t('transaction.handWrittenIssuance.incomeDeduction'), value: CashReceiptPurposeType.INCOME_DEDUCTION},
|
||||
{name: t('transaction.handWrittenIssuance.expenseProof'), value: CashReceiptPurposeType.EXPENSE_PROOF},
|
||||
];
|
||||
export const CashReceiptTransactionTypeBtnGroup = [
|
||||
{name: '전체', value: CashReceiptTransactionType.ALL},
|
||||
{name: '승인', value: CashReceiptTransactionType.APPROVAL},
|
||||
{name: '취소', value: CashReceiptTransactionType.CANCEL},
|
||||
|
||||
export const getCashReceiptTransactionTypeBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: CashReceiptTransactionType.ALL},
|
||||
{name: t('transaction.constants.approval'), value: CashReceiptTransactionType.APPROVAL},
|
||||
{name: t('transaction.constants.cancel'), value: CashReceiptTransactionType.CANCEL},
|
||||
];
|
||||
export const CashReceiptProcessResultBtnGroup = [
|
||||
{name: '전체', value: CashReceiptProcessResult.ALL},
|
||||
{name: '요청', value: CashReceiptProcessResult.REQUEST},
|
||||
{name: '요청취소', value: CashReceiptProcessResult.REQUEST_CANCEL},
|
||||
{name: '요청완료', value: CashReceiptProcessResult.REQUEST_COMPLETE},
|
||||
{name: '발급완료', value: CashReceiptProcessResult.ISSUE_COMPLETE},
|
||||
{name: '요청실패', value: CashReceiptProcessResult.REQUEST_FAIL},
|
||||
{name: '발급실패', value: CashReceiptProcessResult.ISSUE_FAIL},
|
||||
|
||||
export const getCashReceiptProcessResultBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: CashReceiptProcessResult.ALL},
|
||||
{name: t('transaction.constants.request'), value: CashReceiptProcessResult.REQUEST},
|
||||
{name: t('transaction.constants.requestCancel'), value: CashReceiptProcessResult.REQUEST_CANCEL},
|
||||
{name: t('transaction.constants.requestComplete'), value: CashReceiptProcessResult.REQUEST_COMPLETE},
|
||||
{name: t('transaction.constants.issueComplete'), value: CashReceiptProcessResult.ISSUE_COMPLETE},
|
||||
{name: t('transaction.constants.requestFail'), value: CashReceiptProcessResult.REQUEST_FAIL},
|
||||
{name: t('transaction.constants.issueFail'), value: CashReceiptProcessResult.ISSUE_FAIL},
|
||||
];
|
||||
export const EscrowSearchTypeOptionsGroup = [
|
||||
{name: '주문번호', value: EscrowSearchType.ORDER_NUMBER },
|
||||
{name: 'TID', value: EscrowSearchType.TID }
|
||||
|
||||
export const getEscrowSearchTypeOptionsGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.orderNumber'), value: EscrowSearchType.ORDER_NUMBER },
|
||||
{name: t('transaction.constants.tid'), value: EscrowSearchType.TID }
|
||||
];
|
||||
export const EscrowDeliveryStatusBtnGroup = [
|
||||
{name: '전체', value: EscrowDeliveryStatus.ALL},
|
||||
{name: '결제완료', value: EscrowDeliveryStatus.PAY_COMPLETE},
|
||||
{name: '배송등록', value: EscrowDeliveryStatus.DELIVERY_INSERT},
|
||||
{name: '배송완료', value: EscrowDeliveryStatus.DELIVERY_COMPLETE},
|
||||
{name: '구매확인', value: EscrowDeliveryStatus.PURCHASE_CONFIRM},
|
||||
{name: '구매거절', value: EscrowDeliveryStatus.PURCHASE_REJECT},
|
||||
{name: '환불처리', value: EscrowDeliveryStatus.RETURN_PROCESSING},
|
||||
{name: '지급완료', value: EscrowDeliveryStatus.DEPOSIT_COMPLETE},
|
||||
|
||||
export const getEscrowDeliveryStatusBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: EscrowDeliveryStatus.ALL},
|
||||
{name: t('transaction.constants.paymentComplete'), value: EscrowDeliveryStatus.PAY_COMPLETE},
|
||||
{name: t('transaction.constants.deliveryRegistration'), value: EscrowDeliveryStatus.DELIVERY_INSERT},
|
||||
{name: t('transaction.constants.deliveryComplete'), value: EscrowDeliveryStatus.DELIVERY_COMPLETE},
|
||||
{name: t('transaction.constants.purchaseConfirm'), value: EscrowDeliveryStatus.PURCHASE_CONFIRM},
|
||||
{name: t('transaction.constants.purchaseReject'), value: EscrowDeliveryStatus.PURCHASE_REJECT},
|
||||
{name: t('transaction.constants.refundProcessing'), value: EscrowDeliveryStatus.RETURN_PROCESSING},
|
||||
{name: t('transaction.constants.depositComplete'), value: EscrowDeliveryStatus.DEPOSIT_COMPLETE},
|
||||
];
|
||||
export const EscrowSettlementStatusBtnGroup = [
|
||||
{name: '전체', value: EscrowSettlementStatus.ALL},
|
||||
{name: '신용카드', value: EscrowSettlementStatus.CREDIT_CARD},
|
||||
{name: '가상계좌', value: EscrowSettlementStatus.REAL_ACCOUNT},
|
||||
{name: '계좌이체', value: EscrowSettlementStatus.ACCOUNT_TRANSFER},
|
||||
|
||||
export const getEscrowSettlementStatusBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: EscrowSettlementStatus.ALL},
|
||||
{name: t('transaction.constants.creditCard'), value: EscrowSettlementStatus.CREDIT_CARD},
|
||||
{name: t('transaction.constants.virtualAccount'), value: EscrowSettlementStatus.REAL_ACCOUNT},
|
||||
{name: t('transaction.constants.accountTransfer'), value: EscrowSettlementStatus.ACCOUNT_TRANSFER},
|
||||
];
|
||||
export const BillingSearchTypeOptionsGroup = [
|
||||
{name: '주문번호', value: BillingSearchType.ORDER_NUMBER },
|
||||
{name: 'TID', value: BillingSearchType.TID }
|
||||
|
||||
export const getBillingSearchTypeOptionsGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.orderNumber'), value: BillingSearchType.ORDER_NUMBER },
|
||||
{name: t('transaction.constants.tid'), value: BillingSearchType.TID }
|
||||
];
|
||||
export const BillingRequestStatusBtnGroup = [
|
||||
{name: '전체', value: BillingRequestStatus.ALL},
|
||||
{name: '진행중', value: BillingRequestStatus.IN_PROGRESS},
|
||||
{name: '성공', value: BillingRequestStatus.SUCCESS},
|
||||
{name: '요청취소', value: BillingRequestStatus.REQUEST_CANCEL},
|
||||
|
||||
export const getBillingRequestStatusBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: BillingRequestStatus.ALL},
|
||||
{name: t('transaction.constants.inProgress'), value: BillingRequestStatus.IN_PROGRESS},
|
||||
{name: t('transaction.constants.success'), value: BillingRequestStatus.SUCCESS},
|
||||
{name: t('transaction.constants.requestCancel'), value: BillingRequestStatus.REQUEST_CANCEL},
|
||||
];
|
||||
export const BillingProcessResultBtnGroup = [
|
||||
{name: '전체', value: BillingProcessResult.ALL},
|
||||
{name: '성공', value: BillingProcessResult.SUCCESS},
|
||||
{name: '실패', value: BillingProcessResult.FAILURE},
|
||||
|
||||
export const getBillingProcessResultBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: BillingProcessResult.ALL},
|
||||
{name: t('transaction.constants.success'), value: BillingProcessResult.SUCCESS},
|
||||
{name: t('transaction.constants.failure'), value: BillingProcessResult.FAILURE},
|
||||
];
|
||||
export const BillingPaymentMethodBtnGroup = [
|
||||
{name: '전체', value: BillingPaymentMethod.ALL},
|
||||
{name: '신용카드', value: BillingPaymentMethod.CREDIT_CARD},
|
||||
{name: '가상계좌', value: BillingPaymentMethod.VIRTUAL_ACCOUNT},
|
||||
{name: '휴대폰', value: BillingPaymentMethod.MOBILE_PAYMENT},
|
||||
|
||||
export const getBillingPaymentMethodBtnGroup = (t: TFunction) => [
|
||||
{name: t('transaction.constants.all'), value: BillingPaymentMethod.ALL},
|
||||
{name: t('transaction.constants.creditCard'), value: BillingPaymentMethod.CREDIT_CARD},
|
||||
{name: t('transaction.constants.virtualAccount'), value: BillingPaymentMethod.VIRTUAL_ACCOUNT},
|
||||
{name: t('transaction.constants.mobilePayment'), value: BillingPaymentMethod.MOBILE_PAYMENT},
|
||||
];
|
||||
|
||||
@@ -9,8 +9,8 @@ import { FilterCalendar } from '@/shared/ui/filter/calendar';
|
||||
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
|
||||
import { FilterRangeAmount } from '@/shared/ui/filter/range-amount';
|
||||
import {
|
||||
AllTransactionMoidTidOptionsGroup,
|
||||
AllTracsactionStatusCode,
|
||||
getAllTransactionMoidTidOptionsGroup,
|
||||
getAllTransactionStatusCode,
|
||||
} from '@/entities/transaction/model/contant';
|
||||
import {
|
||||
AllTransactionFilterProps,
|
||||
@@ -80,6 +80,9 @@ export const AllTransactionFilter = ({
|
||||
|
||||
const [statusCodeBtns, setStatusCodeBtns] = useState<Array<Record<string, string>>>();
|
||||
|
||||
const moidTidOptionsGroup = getAllTransactionMoidTidOptionsGroup(t);
|
||||
const allTransactionStatusCode = getAllTransactionStatusCode(t);
|
||||
|
||||
const onClickToClose = () => {
|
||||
setFilterOn(false);
|
||||
};
|
||||
@@ -155,12 +158,12 @@ export const AllTransactionFilter = ({
|
||||
};
|
||||
|
||||
const onChangeServiceCode = (val: string) => {
|
||||
let list = AllTracsactionStatusCode.filter((value, index) => {
|
||||
let list = allTransactionStatusCode.filter((value, index) => {
|
||||
return val === value.serviceCode;
|
||||
})[0]?.list;
|
||||
let btns = list?.map((value, index) => {
|
||||
return {
|
||||
name: value.ko,
|
||||
name: value.name,
|
||||
value: value.code
|
||||
}
|
||||
});
|
||||
@@ -211,7 +214,7 @@ export const AllTransactionFilter = ({
|
||||
title={t('filter.orderNumberTid')}
|
||||
selectValue={ filterMoidTidType }
|
||||
selectSetter={ setFilterMoidTidType }
|
||||
selectOptions={ AllTransactionMoidTidOptionsGroup }
|
||||
selectOptions={ moidTidOptionsGroup }
|
||||
inputValue={ filterMoidTidValue }
|
||||
inputSetter={ setFilterMoidTidValue }
|
||||
></FilterSelectInput>
|
||||
|
||||
@@ -9,10 +9,10 @@ import { FilterCalendar } from '@/shared/ui/filter/calendar';
|
||||
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
|
||||
import { FilterRangeAmount } from '@/shared/ui/filter/range-amount';
|
||||
import {
|
||||
BillingSearchTypeOptionsGroup,
|
||||
BillingRequestStatusBtnGroup,
|
||||
BillingProcessResultBtnGroup,
|
||||
BillingPaymentMethodBtnGroup
|
||||
getBillingSearchTypeOptionsGroup,
|
||||
getBillingRequestStatusBtnGroup,
|
||||
getBillingProcessResultBtnGroup,
|
||||
getBillingPaymentMethodBtnGroup
|
||||
} from '@/entities/transaction/model/contant';
|
||||
import {
|
||||
BillingFilterProps,
|
||||
@@ -68,6 +68,11 @@ export const BillingFilter = ({
|
||||
|
||||
const midOptions = useStore.getState().UserStore.selectOptionsMids;
|
||||
|
||||
const searchTypeOptionsGroup = getBillingSearchTypeOptionsGroup(t);
|
||||
const requestStatusBtnGroup = getBillingRequestStatusBtnGroup(t);
|
||||
const processResultBtnGroup = getBillingProcessResultBtnGroup(t);
|
||||
const paymentMethodBtnGroup = getBillingPaymentMethodBtnGroup(t);
|
||||
|
||||
const onClickToClose = () => {
|
||||
setFilterOn(false);
|
||||
};
|
||||
@@ -131,7 +136,7 @@ export const BillingFilter = ({
|
||||
title={t('filter.orderNumberTid')}
|
||||
selectValue={ filterSearchType }
|
||||
selectSetter={ setFilterSearchType }
|
||||
selectOptions={ BillingSearchTypeOptionsGroup }
|
||||
selectOptions={ searchTypeOptionsGroup }
|
||||
inputValue={ searchKeyword }
|
||||
inputSetter={ setFilterSearchKeyword }
|
||||
></FilterSelectInput>
|
||||
@@ -146,19 +151,19 @@ export const BillingFilter = ({
|
||||
<FilterButtonGroups
|
||||
title={t('filter.requestStatus')}
|
||||
activeValue={ filterRequestStatus }
|
||||
btnGroups={ BillingRequestStatusBtnGroup }
|
||||
btnGroups={ requestStatusBtnGroup }
|
||||
setter={ setFilterRequestStatus }
|
||||
></FilterButtonGroups>
|
||||
<FilterButtonGroups
|
||||
title={t('filter.processingResult')}
|
||||
activeValue={ filterProcessResult }
|
||||
btnGroups={ BillingProcessResultBtnGroup }
|
||||
btnGroups={ processResultBtnGroup }
|
||||
setter={ setFilterProcessResult }
|
||||
></FilterButtonGroups>
|
||||
<FilterButtonGroups
|
||||
title={t('filter.paymentMethod')}
|
||||
activeValue={ filterPaymentMethod }
|
||||
btnGroups={ BillingPaymentMethodBtnGroup }
|
||||
btnGroups={ paymentMethodBtnGroup }
|
||||
setter={ setFilterPaymentMethod }
|
||||
></FilterButtonGroups>
|
||||
|
||||
|
||||
@@ -8,9 +8,9 @@ import { FilterSelectInput } from '@/shared/ui/filter/select-input';
|
||||
import { FilterCalendar } from '@/shared/ui/filter/calendar';
|
||||
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
|
||||
import {
|
||||
CashReceiptPurposeTypeBtnGroup,
|
||||
CashReceiptTransactionTypeBtnGroup,
|
||||
CashReceiptProcessResultBtnGroup
|
||||
getCashReceiptPurposeTypeBtnGroup,
|
||||
getCashReceiptTransactionTypeBtnGroup,
|
||||
getCashReceiptProcessResultBtnGroup
|
||||
} from '@/entities/transaction/model/contant';
|
||||
import {
|
||||
CashReceiptFilterProps,
|
||||
@@ -64,6 +64,10 @@ export const CashReceiptFilter = ({
|
||||
|
||||
const midOptions = useStore.getState().UserStore.selectOptionsMids;
|
||||
|
||||
const purposeTypeBtnGroup = getCashReceiptPurposeTypeBtnGroup(t);
|
||||
const transactionTypeBtnGroup = getCashReceiptTransactionTypeBtnGroup(t);
|
||||
const processResultBtnGroup = getCashReceiptProcessResultBtnGroup(t);
|
||||
|
||||
const onClickToClose = () => {
|
||||
setFilterOn(false);
|
||||
};
|
||||
@@ -130,19 +134,19 @@ export const CashReceiptFilter = ({
|
||||
<FilterButtonGroups
|
||||
title={t('filter.purpose')}
|
||||
activeValue={ filterPurposeType }
|
||||
btnGroups={ CashReceiptPurposeTypeBtnGroup }
|
||||
btnGroups={ purposeTypeBtnGroup }
|
||||
setter={ setFilterPurposeType }
|
||||
></FilterButtonGroups>
|
||||
<FilterButtonGroups
|
||||
title={t('filter.transactionCategory')}
|
||||
activeValue={ filterTransactionType }
|
||||
btnGroups={ CashReceiptTransactionTypeBtnGroup }
|
||||
btnGroups={ transactionTypeBtnGroup }
|
||||
setter={ setFilterTransactionType }
|
||||
></FilterButtonGroups>
|
||||
<FilterButtonGroups
|
||||
title={t('filter.progressStatus')}
|
||||
activeValue={ filterProcessResult }
|
||||
btnGroups={ CashReceiptProcessResultBtnGroup }
|
||||
btnGroups={ processResultBtnGroup }
|
||||
setter={ setFilterProcessResult }
|
||||
></FilterButtonGroups>
|
||||
<FilterSelectInput
|
||||
|
||||
@@ -9,9 +9,9 @@ import { FilterCalendar } from '@/shared/ui/filter/calendar';
|
||||
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
|
||||
import { FilterRangeAmount } from '@/shared/ui/filter/range-amount';
|
||||
import {
|
||||
EscrowDeliveryStatusBtnGroup,
|
||||
EscrowSettlementStatusBtnGroup,
|
||||
EscrowSearchTypeOptionsGroup
|
||||
getEscrowDeliveryStatusBtnGroup,
|
||||
getEscrowSettlementStatusBtnGroup,
|
||||
getEscrowSearchTypeOptionsGroup
|
||||
} from '@/entities/transaction/model/contant';
|
||||
import {
|
||||
EscrowFilterProps,
|
||||
@@ -62,7 +62,11 @@ export const EscrowFilter = ({
|
||||
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
|
||||
|
||||
const midOptions = useStore.getState().UserStore.selectOptionsMids;
|
||||
|
||||
|
||||
const searchTypeOptionsGroup = getEscrowSearchTypeOptionsGroup(t);
|
||||
const deliveryStatusBtnGroup = getEscrowDeliveryStatusBtnGroup(t);
|
||||
const settlementStatusBtnGroup = getEscrowSettlementStatusBtnGroup(t);
|
||||
|
||||
const onClickToClose = () => {
|
||||
setFilterOn(false);
|
||||
};
|
||||
@@ -125,7 +129,7 @@ export const EscrowFilter = ({
|
||||
title={t('filter.orderNumberTid')}
|
||||
selectValue={ filterSearchType }
|
||||
selectSetter={ setSearchType }
|
||||
selectOptions={ EscrowSearchTypeOptionsGroup }
|
||||
selectOptions={ searchTypeOptionsGroup }
|
||||
inputValue={ searchKeyword }
|
||||
inputSetter={ setSearchKeyword }
|
||||
></FilterSelectInput>
|
||||
@@ -140,13 +144,13 @@ export const EscrowFilter = ({
|
||||
<FilterButtonGroups
|
||||
title={t('filter.deliveryStatus')}
|
||||
activeValue={ filterDeliveryStatus }
|
||||
btnGroups={ EscrowDeliveryStatusBtnGroup }
|
||||
btnGroups={ deliveryStatusBtnGroup }
|
||||
setter={ setFilterDeliveryStatus }
|
||||
></FilterButtonGroups>
|
||||
<FilterButtonGroups
|
||||
title={t('filter.paymentMethod')}
|
||||
activeValue={ filterSettlementStatus }
|
||||
btnGroups={ EscrowSettlementStatusBtnGroup }
|
||||
btnGroups={ settlementStatusBtnGroup }
|
||||
setter={ setFilterSettlementStatus }
|
||||
></FilterButtonGroups>
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ import { useNavigate } from '@/shared/lib/hooks/use-navigate';
|
||||
import { ListItemProps, TransactionCategory } from '../model/types';
|
||||
import moment from 'moment';
|
||||
import { useStore } from '@/shared/model/store';
|
||||
import { AllTracsactionStatusCode } from '../model/contant';
|
||||
import { getAllTransactionStatusCode } from '../model/contant';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
export const ListItem = ({
|
||||
@@ -129,15 +129,16 @@ export const ListItem = ({
|
||||
const getStatusName = () => {
|
||||
let str;
|
||||
if(transactionCategory === TransactionCategory.AllTransaction){
|
||||
Loop1:
|
||||
for(let i=0;i<AllTracsactionStatusCode.length;i++){
|
||||
if(serviceCode === AllTracsactionStatusCode[i]?.serviceCode){
|
||||
let list = AllTracsactionStatusCode[i]?.list;
|
||||
const allTransactionStatusCode = getAllTransactionStatusCode(t);
|
||||
Loop1:
|
||||
for(let i=0;i<allTransactionStatusCode.length;i++){
|
||||
if(serviceCode === allTransactionStatusCode[i]?.serviceCode){
|
||||
let list = allTransactionStatusCode[i]?.list;
|
||||
if(!!list){
|
||||
Loop2:
|
||||
for(let j=0;j<list.length;j++){
|
||||
if(list[j]?.code === statusCode){
|
||||
str = list[j]?.ko;
|
||||
str = list[j]?.name;
|
||||
break Loop1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next';
|
||||
import { NumericFormat } from 'react-number-format';
|
||||
import { InfoSectionProps, TransactionCategory } from '../../model/types';
|
||||
import { useStore } from '@/shared/model/store';
|
||||
import { AllTracsactionStatusCode } from '../../model/contant';
|
||||
import { getAllTransactionStatusCode } from '../../model/contant';
|
||||
|
||||
export const ImportantInfoSection = ({
|
||||
transactionCategory,
|
||||
@@ -29,15 +29,16 @@ export const ImportantInfoSection = ({
|
||||
const getStatusName = (serviceCode: string, statusCode: string) => {
|
||||
let str;
|
||||
if(transactionCategory === TransactionCategory.AllTransaction){
|
||||
Loop1:
|
||||
for(let i=0;i<AllTracsactionStatusCode.length;i++){
|
||||
if(serviceCode === AllTracsactionStatusCode[i]?.serviceCode){
|
||||
let list = AllTracsactionStatusCode[i]?.list;
|
||||
const allTransactionStatusCode = getAllTransactionStatusCode(t);
|
||||
Loop1:
|
||||
for(let i=0;i<allTransactionStatusCode.length;i++){
|
||||
if(serviceCode === allTransactionStatusCode[i]?.serviceCode){
|
||||
let list = allTransactionStatusCode[i]?.list;
|
||||
if(!!list){
|
||||
Loop2:
|
||||
for(let j=0;j<list.length;j++){
|
||||
if(list[j]?.code === statusCode){
|
||||
str = list[j]?.ko;
|
||||
str = list[j]?.name;
|
||||
break Loop1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -514,6 +514,46 @@
|
||||
"customerName": "Customer Name",
|
||||
"transactionConfirmation": "Transaction Confirmation"
|
||||
},
|
||||
"constants": {
|
||||
"all": "All",
|
||||
"orderNumber": "Order Number",
|
||||
"tid": "TID",
|
||||
"approval": "Approval",
|
||||
"approvalComplete": "Approval/Payment Complete",
|
||||
"cancel": "Cancel",
|
||||
"cancelShort": "Cancellation",
|
||||
"totalCancel": "Total Cancellation/Cancel",
|
||||
"totalCancelShort": "Total Cancellation",
|
||||
"refund": "Refund",
|
||||
"deposit": "Deposit",
|
||||
"waitingDeposit": "Waiting Deposit",
|
||||
"issueCancel": "Issue Cancel",
|
||||
"creditCard": "Credit Card",
|
||||
"virtualAccount": "Virtual Account",
|
||||
"accountTransfer": "Account Transfer",
|
||||
"accountSimpleTransfer": "Account Simple Payment",
|
||||
"mobilePayment": "Mobile Payment",
|
||||
"ssgMoney": "SSG Money",
|
||||
"ssgBank": "SSG Bank Account",
|
||||
"cultureLand": "Culture Gift Certificate",
|
||||
"tmoneyPay": "Tmoney Pay",
|
||||
"request": "Request",
|
||||
"requestCancel": "Request Cancel",
|
||||
"requestComplete": "Request Complete",
|
||||
"issueComplete": "Issue Complete",
|
||||
"requestFail": "Request Failed",
|
||||
"issueFail": "Issue Failed",
|
||||
"paymentComplete": "Payment Complete",
|
||||
"deliveryRegistration": "Delivery Registration",
|
||||
"deliveryComplete": "Delivery Complete",
|
||||
"purchaseConfirm": "Purchase Confirm",
|
||||
"purchaseReject": "Purchase Reject",
|
||||
"refundProcessing": "Refund Processing",
|
||||
"depositComplete": "Deposit Complete",
|
||||
"inProgress": "In Progress",
|
||||
"success": "Success",
|
||||
"failure": "Failure"
|
||||
},
|
||||
"handWrittenIssuance": {
|
||||
"step1Title": "Enter Issue Information",
|
||||
"step2Title": "Enter Issue Amount",
|
||||
|
||||
@@ -518,6 +518,46 @@
|
||||
"customerName": "고객명",
|
||||
"transactionConfirmation": "거래 확인서"
|
||||
},
|
||||
"constants": {
|
||||
"all": "전체",
|
||||
"orderNumber": "주문번호",
|
||||
"tid": "TID",
|
||||
"approval": "승인",
|
||||
"approvalComplete": "승인/입금완료",
|
||||
"cancel": "취소",
|
||||
"cancelShort": "후취소",
|
||||
"totalCancel": "전취소/취소",
|
||||
"totalCancelShort": "전취소",
|
||||
"refund": "환불",
|
||||
"deposit": "입금",
|
||||
"waitingDeposit": "입금대기",
|
||||
"issueCancel": "채번취소",
|
||||
"creditCard": "신용카드",
|
||||
"virtualAccount": "가상계좌",
|
||||
"accountTransfer": "계좌이체",
|
||||
"accountSimpleTransfer": "계좌간편결제",
|
||||
"mobilePayment": "휴대폰",
|
||||
"ssgMoney": "SSG 머니",
|
||||
"ssgBank": "SSG 은행계좌",
|
||||
"cultureLand": "문화상품권",
|
||||
"tmoneyPay": "티머니페이",
|
||||
"request": "요청",
|
||||
"requestCancel": "요청취소",
|
||||
"requestComplete": "요청완료",
|
||||
"issueComplete": "발급완료",
|
||||
"requestFail": "요청실패",
|
||||
"issueFail": "발급실패",
|
||||
"paymentComplete": "결제완료",
|
||||
"deliveryRegistration": "배송등록",
|
||||
"deliveryComplete": "배송완료",
|
||||
"purchaseConfirm": "구매확인",
|
||||
"purchaseReject": "구매거절",
|
||||
"refundProcessing": "환불처리",
|
||||
"depositComplete": "지급완료",
|
||||
"inProgress": "진행중",
|
||||
"success": "성공",
|
||||
"failure": "실패"
|
||||
},
|
||||
"handWrittenIssuance": {
|
||||
"step1Title": "발행 정보 입력",
|
||||
"step2Title": "발행 금액 입력",
|
||||
|
||||
@@ -21,7 +21,7 @@ import { useDownloadExcelMutation } from '@/entities/transaction/api/use-downloa
|
||||
import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constant';
|
||||
import { BillingFilter } from '@/entities/transaction/ui/filter/billing-filter';
|
||||
import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
|
||||
import { BillingRequestStatusBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { getBillingRequestStatusBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { SortTypeKeys, HeaderType, DefaultRequestPagination } from '@/entities/common/model/types';
|
||||
import {
|
||||
useSetOnBack,
|
||||
@@ -203,8 +203,8 @@ export const BillingListPage = () => {
|
||||
<div className="excrow">
|
||||
<div className="full-menu-keywords no-padding">
|
||||
{
|
||||
BillingRequestStatusBtnGroup.map((value, index) => (
|
||||
<span
|
||||
getBillingRequestStatusBtnGroup(t).map((value: any, index: number) => (
|
||||
<span
|
||||
key={ `key-service-code=${ index }` }
|
||||
className={ `keyword-tag ${(requestStatus === value.value)? 'active': ''}` }
|
||||
onClick={ () => onClickToRequestStatus(value.value) }
|
||||
|
||||
@@ -30,7 +30,7 @@ import {
|
||||
useSetHeaderType,
|
||||
useSetFooterMode
|
||||
} from '@/widgets/sub-layout/use-sub-layout';
|
||||
import { CashReceiptTransactionTypeBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { getCashReceiptTransactionTypeBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { useStore } from '@/shared/model/store';
|
||||
import { useCashReceiptSummaryMutation } from '@/entities/transaction/api/use-cash-receipt-summary-mutation';
|
||||
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
|
||||
@@ -256,7 +256,7 @@ export const CashReceiptListPage = () => {
|
||||
<div>
|
||||
<div className="full-menu-keywords no-padding">
|
||||
{
|
||||
CashReceiptTransactionTypeBtnGroup.map((value, index) => (
|
||||
getCashReceiptTransactionTypeBtnGroup(t).map((value: any, index: number) => (
|
||||
<span
|
||||
key={`key-service-code=${index}`}
|
||||
className={`keyword-tag ${(transactionType === value.value) ? 'active' : ''}`}
|
||||
|
||||
@@ -19,7 +19,7 @@ import { useEscrowListMutation } from '@/entities/transaction/api/use-escrow-lis
|
||||
import { useDownloadExcelMutation } from '@/entities/transaction/api/use-download-excel-mutation';
|
||||
import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constant';
|
||||
import { EscrowFilter } from '@/entities/transaction/ui/filter/escrow-filter';
|
||||
import { EscrowDeliveryStatusBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { getEscrowDeliveryStatusBtnGroup } from '@/entities/transaction/model/contant';
|
||||
import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
|
||||
import { SortTypeKeys, HeaderType, DefaultRequestPagination } from '@/entities/common/model/types';
|
||||
import {
|
||||
@@ -207,8 +207,8 @@ export const EscrowListPage = () => {
|
||||
<div className="excrow">
|
||||
<div className="full-menu-keywords no-padding">
|
||||
{
|
||||
EscrowDeliveryStatusBtnGroup.map((value, index) => (
|
||||
<span
|
||||
getEscrowDeliveryStatusBtnGroup(t).map((value: any, index: number) => (
|
||||
<span
|
||||
key={ `key-service-code=${ index }` }
|
||||
className={ `keyword-tag ${(deliveryStatus === value.value)? 'active': ''}` }
|
||||
onClick={ () => onClickToDeliveryStatus(value.value) }
|
||||
|
||||
Reference in New Issue
Block a user