Fix TypeScript errors in additional-service module

Updated 24 files to resolve 111 TypeScript compilation errors by:
- Updating imports from direct constant exports to getter functions
- Adding i18n support with useTranslation hook
- Fixing curried function calls to use translation function parameter
- Adding explicit type annotations to map callbacks

All filter components, list wrappers, and page components now properly
use internationalized getter functions for status text and button groups.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Jay Sheen
2025-10-31 09:21:07 +09:00
parent 4d40fa1cf7
commit 95c83ebd7e
25 changed files with 125 additions and 87 deletions

View File

@@ -5,11 +5,12 @@ import { useEffect, useState } from 'react';
import { FilterSelect } from '@/shared/ui/filter/select'; import { FilterSelect } from '@/shared/ui/filter/select';
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';
import { authStatusBtnGroup } from '@/entities/additional-service/model/account-holder-auth/constant'; import { getAuthStatusBtnGroup } from '@/entities/additional-service/model/account-holder-auth/constant';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant'; import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { AccountHolderAuthFilterProps, AccountHolderAuthStatus } from '@/entities/additional-service/model/account-holder-auth/types'; import { AccountHolderAuthFilterProps, AccountHolderAuthStatus } from '@/entities/additional-service/model/account-holder-auth/types';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export const AccountHolderAuthFilter = ({ export const AccountHolderAuthFilter = ({
filterOn, filterOn,
@@ -23,6 +24,7 @@ export const AccountHolderAuthFilter = ({
setEndDate, setEndDate,
setAuthStatus setAuthStatus
}: AccountHolderAuthFilterProps) => { }: AccountHolderAuthFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterStartDate, setFilterStartDate] = useState<string>(moment(startDate).format('YYYYMMDD')); const [filterStartDate, setFilterStartDate] = useState<string>(moment(startDate).format('YYYYMMDD'));
@@ -88,7 +90,7 @@ export const AccountHolderAuthFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='지급상태' title='지급상태'
activeValue={filterAuthStatus} activeValue={filterAuthStatus}
btnGroups={authStatusBtnGroup} btnGroups={getAuthStatusBtnGroup(t)}
setter={setFilterAuthStatus} setter={setFilterAuthStatus}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -9,8 +9,9 @@ import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant'; import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { AccountHolderSearchFilterProps, AccountHolderSearchCl, AccountHolderResultStatus } from '@/entities/additional-service/model/account-holder-search/types'; import { AccountHolderSearchFilterProps, AccountHolderSearchCl, AccountHolderResultStatus } from '@/entities/additional-service/model/account-holder-search/types';
import { resultStatusBtnGroup, SearchTypeOption } from '@/entities/additional-service/model/account-holder-search/constant'; import { getResultStatusBtnGroup, getSearchTypeOption } from '@/entities/additional-service/model/account-holder-search/constant';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export const AccountHolderSearchFilter = ({ export const AccountHolderSearchFilter = ({
filterOn, filterOn,
@@ -30,6 +31,7 @@ export const AccountHolderSearchFilter = ({
setBank, setBank,
setResultStatus setResultStatus
}: AccountHolderSearchFilterProps) => { }: AccountHolderSearchFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterSearchType, setFilterSearchType] = useState<AccountHolderSearchCl>(searchType); const [filterSearchType, setFilterSearchType] = useState<AccountHolderSearchCl>(searchType);
@@ -104,7 +106,7 @@ export const AccountHolderSearchFilter = ({
title='예금주/계좌번호' title='예금주/계좌번호'
selectValue={filterSearchType} selectValue={filterSearchType}
selectSetter={setFilterSearchType} selectSetter={setFilterSearchType}
selectOptions={SearchTypeOption} selectOptions={getSearchTypeOption(t)}
inputValue={filterSearchKeyword} inputValue={filterSearchKeyword}
inputSetter={setFilterSearchKeyword} inputSetter={setFilterSearchKeyword}
></FilterSelectInput> ></FilterSelectInput>
@@ -125,7 +127,7 @@ export const AccountHolderSearchFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='조회결과' title='조회결과'
activeValue={filterResultStatus} activeValue={filterResultStatus}
btnGroups={resultStatusBtnGroup} btnGroups={getResultStatusBtnGroup(t)}
setter={setFilterResultStatus} setter={setFilterResultStatus}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -9,8 +9,9 @@ import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant'; import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { FaceAuthFilterProps, FaceAuthResult, FaceAuthTransType } from '@/entities/additional-service/model/face-auth/types'; import { FaceAuthFilterProps, FaceAuthResult, FaceAuthTransType } from '@/entities/additional-service/model/face-auth/types';
import { AuthResultBtnGroup, TransactionTypeBtnGroup } from '@/entities/additional-service/model/face-auth/constant'; import { getAuthResultBtnGroup, getTransactionTypeBtnGroup } from '@/entities/additional-service/model/face-auth/constant';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export const FaceAuthFilter = ({ export const FaceAuthFilter = ({
filterOn, filterOn,
@@ -28,6 +29,7 @@ export const FaceAuthFilter = ({
setTransType, setTransType,
setAuthResult setAuthResult
}: FaceAuthFilterProps) => { }: FaceAuthFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterMemberId, setFilterMemberId] = useState<string>(userMallId); const [filterMemberId, setFilterMemberId] = useState<string>(userMallId);
@@ -104,14 +106,14 @@ export const FaceAuthFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='거래유형' title='거래유형'
activeValue={filterTransType} activeValue={filterTransType}
btnGroups={TransactionTypeBtnGroup} btnGroups={getTransactionTypeBtnGroup(t)}
setter={setFIlterTransType} setter={setFIlterTransType}
></FilterButtonGroups> ></FilterButtonGroups>
<FilterButtonGroups <FilterButtonGroups
title='인증결과' title='인증결과'
activeValue={filterAuthResult} activeValue={filterAuthResult}
btnGroups={AuthResultBtnGroup} btnGroups={getAuthResultBtnGroup(t)}
setter={setFilterAuthResult} setter={setFilterAuthResult}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -14,8 +14,9 @@ import moment from 'moment';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { AlimtalkAlimCl, AlimtalkSearchCl, AlimTalkSendCl, AlimtalkSendType, ServiceCode } from '../../model/alimtalk/types'; import { AlimtalkAlimCl, AlimtalkSearchCl, AlimTalkSendCl, AlimtalkSendType, ServiceCode } from '../../model/alimtalk/types';
import { FilterSelectInput } from '@/shared/ui/filter/select-input'; import { FilterSelectInput } from '@/shared/ui/filter/select-input';
import { AlimtalkAlimClBtnGroupForGeneral, AlimtalkAlimClBtnGroupForVBank, AlimtalkSearchClOptionGroup, AlimtalkSendClBtnGroup, AlimtalkSendTypeBtnGroup, AlimtalkServiceCodeOptionGroup } from '../../model/alimtalk/constant'; import { getAlimtalkAlimClBtnGroupForGeneral, getAlimtalkAlimClBtnGroupForVBank, getAlimtalkSearchClOptionGroup, getAlimtalkSendClBtnGroup, getAlimtalkSendTypeBtnGroup, getAlimtalkServiceCodeOptionGroup } from '../../model/alimtalk/constant';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export interface AlimtalkFilterProps { export interface AlimtalkFilterProps {
filterOn: boolean; filterOn: boolean;
@@ -62,6 +63,7 @@ export const AlimtalkFilter = ({
setSendType, setSendType,
setSendCl setSendCl
}: AlimtalkFilterProps) => { }: AlimtalkFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterSearchCl, setFilterSearchCl] = useState<AlimtalkSearchCl>(searchCl); const [filterSearchCl, setFilterSearchCl] = useState<AlimtalkSearchCl>(searchCl);
@@ -76,10 +78,10 @@ export const AlimtalkFilter = ({
// 결제수단에 따라 알림구분 버튼 그룹 선택 // 결제수단에 따라 알림구분 버튼 그룹 선택
const alimClBtnGroup = useMemo(() => { const alimClBtnGroup = useMemo(() => {
if (filterServiceCode === ServiceCode.VBANK) { if (filterServiceCode === ServiceCode.VBANK) {
return AlimtalkAlimClBtnGroupForVBank; return getAlimtalkAlimClBtnGroupForVBank(t);
} }
return AlimtalkAlimClBtnGroupForGeneral; return getAlimtalkAlimClBtnGroupForGeneral(t);
}, [filterServiceCode]); }, [filterServiceCode, t]);
const onClickToClose = () => { const onClickToClose = () => {
setFilterOn(false); setFilterOn(false);
@@ -143,7 +145,7 @@ export const AlimtalkFilter = ({
title='주문자,TID' title='주문자,TID'
selectValue={filterSearchCl} selectValue={filterSearchCl}
selectSetter={setFilterSearchCl} selectSetter={setFilterSearchCl}
selectOptions={AlimtalkSearchClOptionGroup} selectOptions={getAlimtalkSearchClOptionGroup(t)}
inputValue={filterSearchValue} inputValue={filterSearchValue}
inputSetter={setFilterSearchValue} inputSetter={setFilterSearchValue}
></FilterSelectInput> ></FilterSelectInput>
@@ -151,7 +153,7 @@ export const AlimtalkFilter = ({
title='결제수단' title='결제수단'
selectValue={filterServiceCode} selectValue={filterServiceCode}
selectSetter={setFilterServiceCode} selectSetter={setFilterServiceCode}
selectOptions={AlimtalkServiceCodeOptionGroup} selectOptions={getAlimtalkServiceCodeOptionGroup(t)}
></FilterSelect> ></FilterSelect>
<FilterButtonGroups <FilterButtonGroups
title='알림구분' title='알림구분'
@@ -169,13 +171,13 @@ export const AlimtalkFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='발송 종류' title='발송 종류'
activeValue={filterSendType} activeValue={filterSendType}
btnGroups={AlimtalkSendTypeBtnGroup} btnGroups={getAlimtalkSendTypeBtnGroup(t)}
setter={setFilterSendType} setter={setFilterSendType}
></FilterButtonGroups> ></FilterButtonGroups>
<FilterButtonGroups <FilterButtonGroups
title='발송 구분' title='발송 구분'
activeValue={filterSendCl} activeValue={filterSendCl}
btnGroups={AlimtalkSendClBtnGroup} btnGroups={getAlimtalkSendClBtnGroup(t)}
setter={setFilterSendCl} setter={setFilterSendCl}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -6,11 +6,12 @@ import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@
import { IMAGE_ROOT } from '@/shared/constants/common'; import { IMAGE_ROOT } from '@/shared/constants/common';
import { FilterSelect } from '@/shared/ui/filter/select'; import { FilterSelect } from '@/shared/ui/filter/select';
import { FilterCalendar } from '@/shared/ui/filter/calendar'; import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FundAccountResultSearchDateTypeBtnGroup, FundAccountResultStatusBtnGroup, FundAccountSearchClOptionsGroup, FundAccountStatusBtnGroup } from '../../model/fund-account/constant'; import { getFundAccountResultSearchDateTypeBtnGroup, getFundAccountResultStatusBtnGroup, getFundAccountSearchClOptionsGroup, getFundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups'; import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterSelectInput } from '@/shared/ui/filter/select-input'; import { FilterSelectInput } from '@/shared/ui/filter/select-input';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export interface FundAccountResultFilterProps { export interface FundAccountResultFilterProps {
filterOn: boolean; filterOn: boolean;
@@ -52,6 +53,7 @@ export const FundAccountResultFilter = ({
setBankCode, setBankCode,
setResultStatus setResultStatus
}: FundAccountResultFilterProps) => { }: FundAccountResultFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterSearchCl, setFilterSearchCl] = useState<FundAccountSearchCl>(searchCl); const [filterSearchCl, setFilterSearchCl] = useState<FundAccountSearchCl>(searchCl);
@@ -132,14 +134,14 @@ export const FundAccountResultFilter = ({
title='수취인/계좌번호' title='수취인/계좌번호'
selectValue={filterSearchCl} selectValue={filterSearchCl}
selectSetter={setFilterSearchCl} selectSetter={setFilterSearchCl}
selectOptions={FundAccountSearchClOptionsGroup} selectOptions={getFundAccountSearchClOptionsGroup(t)}
inputValue={filterSearchValue} inputValue={filterSearchValue}
inputSetter={setFilterSearchValue} inputSetter={setFilterSearchValue}
></FilterSelectInput> ></FilterSelectInput>
<FilterButtonGroups <FilterButtonGroups
title='조회 기준' title='조회 기준'
activeValue={filterSearchDateType} activeValue={filterSearchDateType}
btnGroups={FundAccountResultSearchDateTypeBtnGroup} btnGroups={getFundAccountResultSearchDateTypeBtnGroup(t)}
setter={setFilterSearchDateType} setter={setFilterSearchDateType}
></FilterButtonGroups> ></FilterButtonGroups>
<FilterCalendar <FilterCalendar
@@ -158,7 +160,7 @@ export const FundAccountResultFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='처리 결과' title='처리 결과'
activeValue={filterResultStatus} activeValue={filterResultStatus}
btnGroups={FundAccountResultStatusBtnGroup} btnGroups={getFundAccountResultStatusBtnGroup(t)}
setter={setFilterResultStatus} setter={setFilterResultStatus}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -6,11 +6,12 @@ import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@
import { IMAGE_ROOT } from '@/shared/constants/common'; import { IMAGE_ROOT } from '@/shared/constants/common';
import { FilterSelect } from '@/shared/ui/filter/select'; import { FilterSelect } from '@/shared/ui/filter/select';
import { FilterCalendar } from '@/shared/ui/filter/calendar'; import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FundAccountSearchClOptionsGroup, FundAccountStatusBtnGroup } from '../../model/fund-account/constant'; import { getFundAccountSearchClOptionsGroup, getFundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups'; import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterSelectInput } from '@/shared/ui/filter/select-input'; import { FilterSelectInput } from '@/shared/ui/filter/select-input';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export interface FundAccountTransactionFilterProps { export interface FundAccountTransactionFilterProps {
filterOn: boolean; filterOn: boolean;
@@ -48,6 +49,7 @@ export const FundAccountTransactionFilter = ({
setBankCode, setBankCode,
setStatus setStatus
}: FundAccountTransactionFilterProps) => { }: FundAccountTransactionFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterSearchCl, setFilterSearchCl] = useState<FundAccountSearchCl>(searchCl); const [filterSearchCl, setFilterSearchCl] = useState<FundAccountSearchCl>(searchCl);
@@ -126,7 +128,7 @@ export const FundAccountTransactionFilter = ({
title='수취인/계좌번호' title='수취인/계좌번호'
selectValue={filterSearchCl} selectValue={filterSearchCl}
selectSetter={setFilterSearchCl} selectSetter={setFilterSearchCl}
selectOptions={FundAccountSearchClOptionsGroup} selectOptions={getFundAccountSearchClOptionsGroup(t)}
inputValue={filterSearchValue} inputValue={filterSearchValue}
inputSetter={setFilterSearchValue} inputSetter={setFilterSearchValue}
></FilterSelectInput> ></FilterSelectInput>
@@ -146,7 +148,7 @@ export const FundAccountTransactionFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='처리 결과' title='처리 결과'
activeValue={filterStatus} activeValue={filterStatus}
btnGroups={FundAccountStatusBtnGroup} btnGroups={getFundAccountStatusBtnGroup(t)}
setter={setFilterStatus} setter={setFilterStatus}
></FilterButtonGroups> ></FilterButtonGroups>
</div> </div>

View File

@@ -10,8 +10,8 @@ import {
PayoutSearchDateType PayoutSearchDateType
} from '../../model/payout/types'; } from '../../model/payout/types';
import { import {
PayoutSearchClBtnGroup, getPayoutSearchClBtnGroup,
PayoutDisbursementStatusBtnGroup getPayoutDisbursementStatusBtnGroup
} from '../../model/payout/constant'; } from '../../model/payout/constant';
import { import {
FilterMotionDuration, FilterMotionDuration,
@@ -21,6 +21,7 @@ import {
import moment from 'moment'; import moment from 'moment';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export interface PayoutFilterProps { export interface PayoutFilterProps {
filterOn: boolean; filterOn: boolean;
@@ -59,6 +60,7 @@ export const PayoutFilter = ({
setMinAmount, setMinAmount,
setMaxAmount setMaxAmount
}: PayoutFilterProps) => { }: PayoutFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterSearchDateType, setFilterSearchDateType] = useState<PayoutSearchDateType>(searchDateType); const [filterSearchDateType, setFilterSearchDateType] = useState<PayoutSearchDateType>(searchDateType);
@@ -122,7 +124,7 @@ export const PayoutFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='조회기준' title='조회기준'
activeValue={filterSearchDateType} activeValue={filterSearchDateType}
btnGroups={PayoutSearchClBtnGroup} btnGroups={getPayoutSearchClBtnGroup(t)}
setter={setFilterSearchDateType} setter={setFilterSearchDateType}
></FilterButtonGroups> ></FilterButtonGroups>
<FilterCalendar <FilterCalendar
@@ -135,7 +137,7 @@ export const PayoutFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='지급상태' title='지급상태'
activeValue={filterStatus} activeValue={filterStatus}
btnGroups={PayoutDisbursementStatusBtnGroup} btnGroups={getPayoutDisbursementStatusBtnGroup(t)}
setter={setFilterStatus} setter={setFilterStatus}
></FilterButtonGroups> ></FilterButtonGroups>
<FilterRangeAmount <FilterRangeAmount

View File

@@ -13,14 +13,16 @@ import { useExtensionFundAccountResultListMutation } from '../../api/fund-accoun
import { PATHS } from '@/shared/constants/paths'; import { PATHS } from '@/shared/constants/paths';
import { NumericFormat } from 'react-number-format'; import { NumericFormat } from 'react-number-format';
import { SortTypeBox } from '@/entities/common/ui/sort-type-box'; import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
import { FundAccountResultStatusBtnGroup, FundAccountStatusBtnGroup } from '../../model/fund-account/constant'; import { getFundAccountResultStatusBtnGroup, getFundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { FundAccountResultFilter } from '../filter/fund-account-result-filter'; import { FundAccountResultFilter } from '../filter/fund-account-result-filter';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer'; import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
export const FundAccountResultListWrap = () => { export const FundAccountResultListWrap = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
let recentCursor = null; let recentCursor = null;
@@ -348,7 +350,7 @@ export const FundAccountResultListWrap = () => {
<div className="excrow mr-0"> <div className="excrow mr-0">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
FundAccountResultStatusBtnGroup.map((value, index) => ( getFundAccountResultStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(resultStatus === value.value) ? 'active' : ''}`} className={`keyword-tag ${(resultStatus === value.value) ? 'active' : ''}`}

View File

@@ -19,7 +19,7 @@ import { ListDateGroup } from '../list-date-group';
import { AdditionalServiceCategory } from '../../model/types'; import { AdditionalServiceCategory } from '../../model/types';
import { SortTypeBox } from '@/entities/common/ui/sort-type-box'; import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
import { useExtensionFundAccountTransferExcelMutation } from '../../api/fund-account/use-extension-fund-account-transfer-excel-mutation'; import { useExtensionFundAccountTransferExcelMutation } from '../../api/fund-account/use-extension-fund-account-transfer-excel-mutation';
import { FundAccountStatusBtnGroup } from '../../model/fund-account/constant'; import { getFundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { useExtensionFundAccountBalanceMutation } from '../../api/fund-account/use-extension-fund-account-balance-mutation'; import { useExtensionFundAccountBalanceMutation } from '../../api/fund-account/use-extension-fund-account-balance-mutation';
import { NumericFormat } from 'react-number-format'; import { NumericFormat } from 'react-number-format';
import { FundAccountTransactionFilter } from '../filter/fund-account-trnasaction-filter'; import { FundAccountTransactionFilter } from '../filter/fund-account-trnasaction-filter';
@@ -27,9 +27,11 @@ import { PATHS } from '@/shared/constants/paths';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer'; import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
export const FundAccountTransferListWrap = () => { export const FundAccountTransferListWrap = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
@@ -283,7 +285,7 @@ export const FundAccountTransferListWrap = () => {
<div className="excrow mr-0"> <div className="excrow mr-0">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
FundAccountStatusBtnGroup.map((value, index) => ( getFundAccountStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(status === value.value) ? 'active' : ''}`} className={`keyword-tag ${(status === value.value) ? 'active' : ''}`}

View File

@@ -2,11 +2,13 @@
import moment from 'moment'; import moment from 'moment';
import { AdditionalServiceCategory, DetailInfoSectionProps } from '../../model/types'; import { AdditionalServiceCategory, DetailInfoSectionProps } from '../../model/types';
import { getPaymentStatusText, getProcessStatusText, getSendMethodText } from '../../lib/payment-status-utils'; import { getPaymentStatusText, getProcessStatusText, getSendMethodText } from '../../lib/payment-status-utils';
import { useTranslation } from 'react-i18next';
export const PaymentInfoWrap = ({ export const PaymentInfoWrap = ({
additionalServiceCategory, additionalServiceCategory,
paymentInfo paymentInfo
}: DetailInfoSectionProps) => { }: DetailInfoSectionProps) => {
const { t } = useTranslation();
console.log("PaymentInfo Check: ", paymentInfo) console.log("PaymentInfo Check: ", paymentInfo)
@@ -23,7 +25,7 @@ export const PaymentInfoWrap = ({
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{getSendMethodText(paymentInfo?.sendMethod)}</span> <span className="v">{getSendMethodText(t)(paymentInfo?.sendMethod)}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
@@ -33,7 +35,7 @@ export const PaymentInfoWrap = ({
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k">()</span> <span className="k">()</span>
<span className="v"> {`${getPaymentStatusText(paymentInfo?.paymentStatus)}(${paymentInfo?.failCount})`}</span> <span className="v"> {`${getPaymentStatusText(t)(paymentInfo?.paymentStatus)}(${paymentInfo?.failCount})`}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
@@ -56,7 +58,7 @@ export const PaymentInfoWrap = ({
<> <>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{getProcessStatusText(paymentInfo?.processStatus)}</span> <span className="v">{getProcessStatusText(t)(paymentInfo?.processStatus)}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>

View File

@@ -9,8 +9,9 @@ import { FilterRangeAmount } from '@/shared/ui/filter/range-amount';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant'; import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { KeyInPaymentFilterProps, KeyInPaymentTansactionType } from '@/entities/additional-service/model/key-in/types'; import { KeyInPaymentFilterProps, KeyInPaymentTansactionType } from '@/entities/additional-service/model/key-in/types';
import { keyInPaymentPaymentStatusBtnGroup } from '@/entities/additional-service/model/key-in/constant'; import { getKeyInPaymentPaymentStatusBtnGroup } from '@/entities/additional-service/model/key-in/constant';
import { FilterSelectMid } from '@/shared/ui/filter/select-mid'; import { FilterSelectMid } from '@/shared/ui/filter/select-mid';
import { useTranslation } from 'react-i18next';
export const KeyInPaymentFilter = ({ export const KeyInPaymentFilter = ({
filterOn, filterOn,
@@ -28,6 +29,7 @@ export const KeyInPaymentFilter = ({
setMinAmount, setMinAmount,
setMaxAmount setMaxAmount
}: KeyInPaymentFilterProps) => { }: KeyInPaymentFilterProps) => {
const { t } = useTranslation();
const [filterMid, setFilterMid] = useState<string>(mid); const [filterMid, setFilterMid] = useState<string>(mid);
const [filterStartDate, setFilterStartDate] = useState<string>(startDate); const [filterStartDate, setFilterStartDate] = useState<string>(startDate);
@@ -94,7 +96,7 @@ export const KeyInPaymentFilter = ({
<FilterButtonGroups <FilterButtonGroups
title='거래상태' title='거래상태'
activeValue={filterTransactionStatus} activeValue={filterTransactionStatus}
btnGroups={keyInPaymentPaymentStatusBtnGroup} btnGroups={getKeyInPaymentPaymentStatusBtnGroup(t)}
setter={setFilterTransactionStatus} setter={setFilterTransactionStatus}
></FilterButtonGroups> ></FilterButtonGroups>

View File

@@ -13,15 +13,17 @@ import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constant';
import { useExtensionLinkPayWaitDownloadExcelMutation } from '../../api/link-payment/use-extension-link-pay-wait-download-excel-mutation'; import { useExtensionLinkPayWaitDownloadExcelMutation } from '../../api/link-payment/use-extension-link-pay-wait-download-excel-mutation';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { LinkPaymentProcessStatus, LinkPaymentSearchCl, LinkPaymentSendMethod, LinkPaymentSendStatus, LinkPaymentWaitListItem } from '../../model/link-pay/types'; import { LinkPaymentProcessStatus, LinkPaymentSearchCl, LinkPaymentSendMethod, LinkPaymentSendStatus, LinkPaymentWaitListItem } from '../../model/link-pay/types';
import { ProcessStatusBtnGrouup } from '../../model/link-pay/constant'; import { getProcessStatusBtnGroup } from '../../model/link-pay/constant';
import { useExtensionLinkPayWaitDeleteMutation } from '../../api/link-payment/use-extension-link-pay-wait-delete-mutation'; import { useExtensionLinkPayWaitDeleteMutation } from '../../api/link-payment/use-extension-link-pay-wait-delete-mutation';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer'; import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
export const LinkPaymentWaitSendWrap = () => { export const LinkPaymentWaitSendWrap = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
const [onActionIntersect, setOnActionIntersect] = useState<boolean>(false); const [onActionIntersect, setOnActionIntersect] = useState<boolean>(false);
@@ -199,7 +201,7 @@ export const LinkPaymentWaitSendWrap = () => {
<div className="excrow"> <div className="excrow">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
ProcessStatusBtnGrouup.map((value, index) => ( getProcessStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(processStatus === value.value) ? 'active' : ''}`} className={`keyword-tag ${(processStatus === value.value) ? 'active' : ''}`}

View File

@@ -308,10 +308,10 @@ export const ListItem = ({
const getStatus = () => { const getStatus = () => {
let statusText = ''; let statusText = '';
if (additionalServiceCategory === AdditionalServiceCategory.FundAccountTransfer) { if (additionalServiceCategory === AdditionalServiceCategory.FundAccountTransfer) {
statusText = getFundAccountStatusName(resultStatus); statusText = getFundAccountStatusName(t)(resultStatus);
} }
else if (additionalServiceCategory === AdditionalServiceCategory.FundAccountResult) { else if (additionalServiceCategory === AdditionalServiceCategory.FundAccountResult) {
statusText = getFundAccountResultStatusName(resultStatus); statusText = getFundAccountResultStatusName(t)(resultStatus);
} }
else if (additionalServiceCategory === AdditionalServiceCategory.AccountHolderSearch) { else if (additionalServiceCategory === AdditionalServiceCategory.AccountHolderSearch) {
statusText = resultStatus || ''; statusText = resultStatus || '';
@@ -320,16 +320,16 @@ export const ListItem = ({
statusText = authStatus || ''; statusText = authStatus || '';
} }
else if (additionalServiceCategory === AdditionalServiceCategory.FaceAuth) { else if (additionalServiceCategory === AdditionalServiceCategory.FaceAuth) {
statusText = getTransTypeText(transType) statusText = getTransTypeText(t)(transType)
} }
else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment) { else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment) {
statusText = getSmsClName(smsCl); statusText = getSmsClName(t)(smsCl);
} }
else if (additionalServiceCategory === AdditionalServiceCategory.KeyInPayment) { else if (additionalServiceCategory === AdditionalServiceCategory.KeyInPayment) {
statusText = getKeyInPaymentPaymentStatusName(transactionType) statusText = getKeyInPaymentPaymentStatusName(t)(transactionType)
} }
else if (additionalServiceCategory === AdditionalServiceCategory.Ars) { else if (additionalServiceCategory === AdditionalServiceCategory.Ars) {
statusText = getArsPaymentStatusName(paymentStatus) statusText = getArsPaymentStatusName(t)(paymentStatus)
} }
else { else {
statusText = resultStatus || status || ''; statusText = resultStatus || status || '';
@@ -377,7 +377,7 @@ export const ListItem = ({
str = `${buyerName}(${tid})`; str = `${buyerName}(${tid})`;
} }
else if (additionalServiceCategory === AdditionalServiceCategory.Alimtalk) { else if (additionalServiceCategory === AdditionalServiceCategory.Alimtalk) {
str = `${receiverName}(${getAlimtalkSendTypeText(sendType)})`; str = `${receiverName}(${getAlimtalkSendTypeText(t)(sendType)})`;
} }
return str; return str;
@@ -419,8 +419,8 @@ export const ListItem = ({
<span className="separator">|</span> <span className="separator">|</span>
<span> <span>
{authResult === 'FAIL' {authResult === 'FAIL'
? `${getAuthResultStatusText(authResult)}: ${failReason}` ? `${getAuthResultStatusText(t)(authResult)}: ${failReason}`
: getAuthResultStatusText(authResult) : getAuthResultStatusText(t)(authResult)
} }
</span> </span>
</div> </div>
@@ -430,17 +430,17 @@ export const ListItem = ({
if (paymentStatus === "0" || paymentStatus === "3" || paymentStatus === "4") { if (paymentStatus === "0" || paymentStatus === "3" || paymentStatus === "4") {
rs.push( rs.push(
<div key="link-payment-history" className="transaction-details"> <div key="link-payment-history" className="transaction-details">
<span>{getPaymentStatusText(paymentStatus)}</span> <span>{getPaymentStatusText(t)(paymentStatus)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getSendMethodText(sendMethod)}</span> <span>{getSendMethodText(t)(sendMethod)}</span>
</div> </div>
) )
} else { } else {
rs.push( rs.push(
<div key="link-payment-history" className="transaction-details"> <div key="link-payment-history" className="transaction-details">
<span>{getPaymentStatusText(paymentStatus)}</span> <span>{getPaymentStatusText(t)(paymentStatus)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getSendMethodText(sendMethod)}</span> <span>{getSendMethodText(t)(sendMethod)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{paymentMethod}</span> <span>{paymentMethod}</span>
</div> </div>
@@ -450,16 +450,16 @@ export const ListItem = ({
else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) { else if (additionalServiceCategory === AdditionalServiceCategory.LinkPaymentWait) {
rs.push( rs.push(
<div key="link-payment-wait" className="transaction-details"> <div key="link-payment-wait" className="transaction-details">
<span>{getProcessStatusText(processStatus)}</span> <span>{getProcessStatusText(t)(processStatus)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getSendMethodText(sendMethod)}</span> <span>{getSendMethodText(t)(sendMethod)}</span>
</div> </div>
); );
} }
else if (additionalServiceCategory === AdditionalServiceCategory.Payout) { else if (additionalServiceCategory === AdditionalServiceCategory.Payout) {
rs.push( rs.push(
<div className="transaction-details"> <div className="transaction-details">
<span>{getPayoutStatusText(status)}</span> <span>{getPayoutStatusText(t)(status)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{submallId}</span> <span>{submallId}</span>
</div> </div>
@@ -499,7 +499,7 @@ export const ListItem = ({
<span className="separator">|</span> <span className="separator">|</span>
<span>{getStatus()}</span> <span>{getStatus()}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getArsOrderStatusName(orderStatus)}</span> <span>{getArsOrderStatusName(t)(orderStatus)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{transactionType}</span> <span>{transactionType}</span>
</div> </div>
@@ -511,9 +511,9 @@ export const ListItem = ({
<div className="transaction-details"> <div className="transaction-details">
<span>{getTime()}</span> <span>{getTime()}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getAlimtalkServiceCodeText(serviceCode)}</span> <span>{getAlimtalkServiceCodeText(t)(serviceCode)}</span>
<span className="separator">|</span> <span className="separator">|</span>
<span>{getAlimtalkAlimClText(alimCl)}</span> <span>{getAlimtalkAlimClText(t)(alimCl)}</span>
</div> </div>
); );
} }
@@ -605,7 +605,7 @@ export const ListItem = ({
else if (additionalServiceCategory === AdditionalServiceCategory.Alimtalk) { else if (additionalServiceCategory === AdditionalServiceCategory.Alimtalk) {
rs.push( rs.push(
<div key="payout-item-amount" className={`status-label ${(sendCl === 'REQUEST' || sendCl === 'SUCCESS') ? 'success' : 'fail'}`} <div key="payout-item-amount" className={`status-label ${(sendCl === 'REQUEST' || sendCl === 'SUCCESS') ? 'success' : 'fail'}`}
>{getAlimtalkSendClTypeText(sendCl)}</div> >{getAlimtalkSendClTypeText(t)(sendCl)}</div>
); );
} }
else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment && onResendClick) { else if (additionalServiceCategory === AdditionalServiceCategory.SMSPayment && onResendClick) {

View File

@@ -14,8 +14,9 @@ import {
useSetOnBack useSetOnBack
} from '@/widgets/sub-layout/use-sub-layout'; } from '@/widgets/sub-layout/use-sub-layout';
import { useExtensionAccountHolderAuthListMutation } from '@/entities/additional-service/api/account-holder-auth/use-extension-account-holder-auth-list-mutation'; import { useExtensionAccountHolderAuthListMutation } from '@/entities/additional-service/api/account-holder-auth/use-extension-account-holder-auth-list-mutation';
import { authStatusBtnGroup } from '@/entities/additional-service/model/account-holder-auth/constant'; import { getAuthStatusBtnGroup } from '@/entities/additional-service/model/account-holder-auth/constant';
import { AccountHolderAuthList } from '@/entities/additional-service/ui/account-holder-auth/account-holder-auth-list'; import { AccountHolderAuthList } from '@/entities/additional-service/ui/account-holder-auth/account-holder-auth-list';
import { useTranslation } from 'react-i18next';
import { useExtensionAccountHolderAuthDownloadExcelMutation } from '@/entities/additional-service/api/account-holder-auth/use-extension-account-holder-auth-download-excel-mutation'; import { useExtensionAccountHolderAuthDownloadExcelMutation } from '@/entities/additional-service/api/account-holder-auth/use-extension-account-holder-auth-download-excel-mutation';
import { AccountHolderAuthFilter } from '@/entities/additional-service/ui/account-holder-auth/filter/account-holder-auth-filter'; import { AccountHolderAuthFilter } from '@/entities/additional-service/ui/account-holder-auth/filter/account-holder-auth-filter';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
@@ -27,6 +28,7 @@ import useIntersectionObserver from '@/widgets/intersection-observer';
export const AccountHolderAuthPage = () => { export const AccountHolderAuthPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
@@ -216,7 +218,7 @@ export const AccountHolderAuthPage = () => {
<div className="excrow"> <div className="excrow">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
authStatusBtnGroup.map((value, index) => ( getAuthStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(authStatus === value.value) ? 'active' : ''}`} className={`keyword-tag ${(authStatus === value.value) ? 'active' : ''}`}

View File

@@ -17,9 +17,11 @@ import { ExtensionAccountHolderAuthDetailParams, ExtensionAccountHolderAuthDetai
import moment from 'moment'; import moment from 'moment';
import { getAuthStatusText } from '@/entities/additional-service/model/account-holder-auth/constant'; import { getAuthStatusText } from '@/entities/additional-service/model/account-holder-auth/constant';
import { getAuthResultStatusText } from '@/entities/additional-service/model/face-auth/constant'; import { getAuthResultStatusText } from '@/entities/additional-service/model/face-auth/constant';
import { useTranslation } from 'react-i18next';
export const AccountHolderAuthDetailPage = () => { export const AccountHolderAuthDetailPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const location = useLocation(); const location = useLocation();
const { mid, tid } = location.state || {}; const { mid, tid } = location.state || {};
const [detail, setDetail] = useState<ExtensionAccountHolderAuthDetailResponse>(); const [detail, setDetail] = useState<ExtensionAccountHolderAuthDetailResponse>();
@@ -91,11 +93,11 @@ export const AccountHolderAuthDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{getAuthStatusText(detail?.authStatus)}</span> <span className="v">{getAuthStatusText(t)(detail?.authStatus)}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"> </span> <span className="k"> </span>
<span className="v">{detail?.failReason ? getAuthResultStatusText(detail?.failReason) : '-' }</span> <span className="v">{detail?.failReason ? getAuthResultStatusText(t)(detail?.failReason) : '-' }</span>
</li> </li>
</ul> </ul>
</div> </div>

View File

@@ -20,13 +20,15 @@ import { SortTypeKeys } from '@/entities/common/model/types';
import { AccountHolderSearchList } from '@/entities/additional-service/ui/account-holder-search/account-holder-search-list'; import { AccountHolderSearchList } from '@/entities/additional-service/ui/account-holder-search/account-holder-search-list';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { AccountHolderSearchListItem, AccountHolderSearchCl, AccountHolderResultStatus } from '@/entities/additional-service/model/account-holder-search/types'; import { AccountHolderSearchListItem, AccountHolderSearchCl, AccountHolderResultStatus } from '@/entities/additional-service/model/account-holder-search/types';
import { resultStatusBtnGroup } from '@/entities/additional-service/model/account-holder-search/constant'; import { getResultStatusBtnGroup } from '@/entities/additional-service/model/account-holder-search/constant';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import { useTranslation } from 'react-i18next';
import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check'; import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check';
import useIntersectionObserver from '@/widgets/intersection-observer'; import useIntersectionObserver from '@/widgets/intersection-observer';
export const AccountHolderSearchPage = () => { export const AccountHolderSearchPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
@@ -227,7 +229,7 @@ export const AccountHolderSearchPage = () => {
<div className="excrow"> <div className="excrow">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
resultStatusBtnGroup.map((value, index) => ( getResultStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(resultStatus === value.value) ? 'active' : ''}`} className={`keyword-tag ${(resultStatus === value.value) ? 'active' : ''}`}

View File

@@ -16,9 +16,11 @@ import { DetailInfoWrap } from '@/entities/additional-service/ui/info-wrap/detai
import { ExtensionAccountHolderSearchDetailParams, ExtensionAccountHolderSearchDetailResponse } from '@/entities/additional-service/model/account-holder-search/types'; import { ExtensionAccountHolderSearchDetailParams, ExtensionAccountHolderSearchDetailResponse } from '@/entities/additional-service/model/account-holder-search/types';
import { useExtensionAccountHolderSearchDetailtMutation } from '@/entities/additional-service/api/account-holder-search/use-extension-account-holder-search-detail-mutation'; import { useExtensionAccountHolderSearchDetailtMutation } from '@/entities/additional-service/api/account-holder-search/use-extension-account-holder-search-detail-mutation';
import { getAccountHolderStatusText } from '@/entities/additional-service/model/account-holder-search/constant'; import { getAccountHolderStatusText } from '@/entities/additional-service/model/account-holder-search/constant';
import { useTranslation } from 'react-i18next';
export const AccountHolderSearchDetailPage = () => { export const AccountHolderSearchDetailPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const location = useLocation(); const location = useLocation();
const { mid, tid } = location.state || {}; const { mid, tid } = location.state || {};
@@ -77,7 +79,7 @@ export const AccountHolderSearchDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{getAccountHolderStatusText(detail?.resultStatus)}</span> <span className="v">{getAccountHolderStatusText(t)(detail?.resultStatus)}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>

View File

@@ -13,9 +13,11 @@ import { ExtensionAlimtalkDetailParams, ExtensionAlimtalkDetailResponse } from '
import { useExtensionAlimtalkDetailMutation } from '@/entities/additional-service/api/alimtalk/use-extansion-alimtalk-detail-mutation'; import { useExtensionAlimtalkDetailMutation } from '@/entities/additional-service/api/alimtalk/use-extansion-alimtalk-detail-mutation';
import moment from 'moment'; import moment from 'moment';
import { getAlimtalkAlimClText, getAlimtalkSendClTypeText, getAlimtalkSendTypeText, getAlimtalkServiceCodeText } from '@/entities/additional-service/model/alimtalk/constant'; import { getAlimtalkAlimClText, getAlimtalkSendClTypeText, getAlimtalkSendTypeText, getAlimtalkServiceCodeText } from '@/entities/additional-service/model/alimtalk/constant';
import { useTranslation } from 'react-i18next';
export const AlimtalkDetailPage = () => { export const AlimtalkDetailPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const location = useLocation(); const location = useLocation();
const tid = location.state.tid; const tid = location.state.tid;
@@ -81,7 +83,7 @@ export const AlimtalkDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"> </span> <span className="k"> </span>
<span className="v">{ getAlimtalkSendTypeText(detail?.sendType) }</span> <span className="v">{ getAlimtalkSendTypeText(t)(detail?.sendType) }</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
@@ -89,15 +91,15 @@ export const AlimtalkDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{ getAlimtalkServiceCodeText(detail?.serviceCode) }</span> <span className="v">{ getAlimtalkServiceCodeText(t)(detail?.serviceCode) }</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{ getAlimtalkAlimClText(detail?.alimCl) }</span> <span className="v">{ getAlimtalkAlimClText(t)(detail?.alimCl) }</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{ getAlimtalkSendClTypeText(detail?.sendCl) }</span> <span className="v">{ getAlimtalkSendClTypeText(t)(detail?.sendCl) }</span>
</li> </li>
</ul> </ul>
</div> </div>

View File

@@ -106,11 +106,11 @@ export const ArsDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{ getArsPaymentStatusName(detail?.paymentStatus) }</span> <span className="v">{ getArsPaymentStatusName(t)(detail?.paymentStatus) }</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{ getArsOrderStatusName(detail?.orderStatus) }</span> <span className="v">{ getArsOrderStatusName(t)(detail?.orderStatus) }</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>

View File

@@ -17,8 +17,9 @@ import { useExtensionArsDownloadExcelMutation } from '@/entities/additional-serv
import { ListDateGroup } from '@/entities/additional-service/ui/list-date-group'; import { ListDateGroup } from '@/entities/additional-service/ui/list-date-group';
import { AdditionalServiceCategory } from '@/entities/additional-service/model/types'; import { AdditionalServiceCategory } from '@/entities/additional-service/model/types';
import { SortTypeBox } from '@/entities/common/ui/sort-type-box'; import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
import { ArsPaymentStatusBtnGroup } from '@/entities/additional-service/model/ars/constant'; import { getArsPaymentStatusBtnGroup } from '@/entities/additional-service/model/ars/constant';
import { ArsFilter } from '@/entities/additional-service/ui/filter/ars-filter'; import { ArsFilter } from '@/entities/additional-service/ui/filter/ars-filter';
import { useTranslation } from 'react-i18next';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check'; import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check';
@@ -26,6 +27,7 @@ import useIntersectionObserver from '@/widgets/intersection-observer';
export const ArsListPage = () => { export const ArsListPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
@@ -276,7 +278,7 @@ export const ArsListPage = () => {
<div className="excrow mr-0"> <div className="excrow mr-0">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
ArsPaymentStatusBtnGroup.map((value, index) => ( getArsPaymentStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(paymentStatus === value.value) ? 'active' : ''}`} className={`keyword-tag ${(paymentStatus === value.value) ? 'active' : ''}`}

View File

@@ -17,7 +17,7 @@ import {
import { FaceAuthFilter } from '@/entities/additional-service/ui/face-auth/filter/face-auth-filter'; import { FaceAuthFilter } from '@/entities/additional-service/ui/face-auth/filter/face-auth-filter';
import { ExtensionFaceAuthExcelDownlaodPrams, ExtensionFaceAuthExcelDownlaodResponse, ExtensionFaceAuthListParams, ExtensionFaceAuthListResponse, FaceAuthListItem, FaceAuthResult, FaceAuthTransType } from '@/entities/additional-service/model/face-auth/types'; import { ExtensionFaceAuthExcelDownlaodPrams, ExtensionFaceAuthExcelDownlaodResponse, ExtensionFaceAuthListParams, ExtensionFaceAuthListResponse, FaceAuthListItem, FaceAuthResult, FaceAuthTransType } from '@/entities/additional-service/model/face-auth/types';
import { AuthResultBtnGroup } from '@/entities/additional-service/model/face-auth/constant'; import { getAuthResultBtnGroup } from '@/entities/additional-service/model/face-auth/constant';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import { useExtensionFaceAuthListtMutation } from '@/entities/additional-service/api/face-auth/use-extension-face-auth-list-mutation'; import { useExtensionFaceAuthListtMutation } from '@/entities/additional-service/api/face-auth/use-extension-face-auth-list-mutation';
import { useExtensionFaceAuthDownloadExcelMutation } from '@/entities/additional-service/api/face-auth/use-extension-face-auth-download-excel-mutation'; import { useExtensionFaceAuthDownloadExcelMutation } from '@/entities/additional-service/api/face-auth/use-extension-face-auth-download-excel-mutation';
@@ -265,7 +265,7 @@ export const FaceAuthPage = () => {
<div className="excrow"> <div className="excrow">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
AuthResultBtnGroup.map((value, index) => ( getAuthResultBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(authResult === value.value) ? 'active' : ''}`} className={`keyword-tag ${(authResult === value.value) ? 'active' : ''}`}

View File

@@ -99,7 +99,7 @@ export const FundAccountTransferDetailPage = () => {
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>
<span className="v">{getFundAccountStatusName(detail?.resultStatus) || '-'}</span> <span className="v">{getFundAccountStatusName(t)(detail?.resultStatus) || '-'}</span>
</li> </li>
<li className="kv-row"> <li className="kv-row">
<span className="k"></span> <span className="k"></span>

View File

@@ -20,13 +20,15 @@ import { DEFAULT_PAGE_PARAM } from '@/entities/common/model/constant';
import { KeyInPaymentList } from '@/entities/additional-service/ui/key-in-payment/key-in-payment-list'; import { KeyInPaymentList } from '@/entities/additional-service/ui/key-in-payment/key-in-payment-list';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { KeyInPaymentListItem, KeyInPaymentStatus, KeyInPaymentTansactionType } from '@/entities/additional-service/model/key-in/types'; import { KeyInPaymentListItem, KeyInPaymentStatus, KeyInPaymentTansactionType } from '@/entities/additional-service/model/key-in/types';
import { keyInPaymentPaymentStatusBtnGroup } from '@/entities/additional-service/model/key-in/constant'; import { getKeyInPaymentPaymentStatusBtnGroup } from '@/entities/additional-service/model/key-in/constant';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import { useTranslation } from 'react-i18next';
import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check'; import { useExtensionAccessCheck } from '@/shared/lib/hooks/use-extension-access-check';
import useIntersectionObserver from '@/widgets/intersection-observer'; import useIntersectionObserver from '@/widgets/intersection-observer';
export const KeyInPaymentPage = () => { export const KeyInPaymentPage = () => {
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
// 권한 체크 // 권한 체크
@@ -223,7 +225,7 @@ export const KeyInPaymentPage = () => {
<div className="excrow"> <div className="excrow">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
keyInPaymentPaymentStatusBtnGroup.map((value, index) => ( getKeyInPaymentPaymentStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(transactionType === value.value) ? 'active' : ''}`} className={`keyword-tag ${(transactionType === value.value) ? 'active' : ''}`}

View File

@@ -24,8 +24,9 @@ import moment from 'moment';
import { SortTypeBox } from '@/entities/common/ui/sort-type-box'; import { SortTypeBox } from '@/entities/common/ui/sort-type-box';
import { useExtensionPayoutExcelMutation } from '@/entities/additional-service/api/payout/use-extension-payout-excel-mutation'; import { useExtensionPayoutExcelMutation } from '@/entities/additional-service/api/payout/use-extension-payout-excel-mutation';
import { PayoutFilter } from '@/entities/additional-service/ui/filter/payout-filter'; import { PayoutFilter } from '@/entities/additional-service/ui/filter/payout-filter';
import { PayoutDisbursementStatusBtnGroup } from '@/entities/additional-service/model/payout/constant'; import { getPayoutDisbursementStatusBtnGroup } from '@/entities/additional-service/model/payout/constant';
import { ListDateGroup } from '@/entities/additional-service/ui/list-date-group'; import { ListDateGroup } from '@/entities/additional-service/ui/list-date-group';
import { useTranslation } from 'react-i18next';
import { AdditionalServiceCategory } from '@/entities/additional-service/model/types'; import { AdditionalServiceCategory } from '@/entities/additional-service/model/types';
import { useStore } from '@/shared/model/store'; import { useStore } from '@/shared/model/store';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet'; import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
@@ -38,6 +39,7 @@ export const PayoutListPage = () => {
extensionCode: 'PAYOUT' extensionCode: 'PAYOUT'
}); });
const { navigate } = useNavigate(); const { navigate } = useNavigate();
const { t } = useTranslation();
const userMid = useStore.getState().UserStore.mid; const userMid = useStore.getState().UserStore.mid;
const [onActionIntersect, setOnActionIntersect] = useState<boolean>(false); const [onActionIntersect, setOnActionIntersect] = useState<boolean>(false);
@@ -282,7 +284,7 @@ export const PayoutListPage = () => {
<div className="excrow mr-0"> <div className="excrow mr-0">
<div className="full-menu-keywords no-padding"> <div className="full-menu-keywords no-padding">
{ {
PayoutDisbursementStatusBtnGroup.map((value, index) => ( getPayoutDisbursementStatusBtnGroup(t).map((value: any, index: number) => (
<span <span
key={`key-service-code=${index}`} key={`key-service-code=${index}`}
className={`keyword-tag ${(status === value.value) ? 'active' : ''}`} className={`keyword-tag ${(status === value.value) ? 'active' : ''}`}

View File

@@ -230,16 +230,14 @@ export const SubLayout = () => {
const handleLogin = useCallback(async () => { const handleLogin = useCallback(async () => {
let userParmas; let userParmas;
if(!isNativeEnvironment){ if(!isNativeEnvironment){
/*
userParmas = { userParmas = {
id: 'nictest00', id: 'nictest00',
password: 'nictest00' password: 'nictest00'
}; };
*/ // userParmas = {
userParmas = { // id: 'woowahan5',
id: 'woowahan5', // password: 'nictest00'
password: 'nictest00' // };
};
} }
callLogin(userParmas).then(() => { callLogin(userParmas).then(() => {