Merge main and resolve conflicts

- Keep local changes for refactored detail components
- Remove obsolete detail-page files
- Maintain bug fixes and type improvements

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
HyeonJongKim
2025-11-05 19:43:09 +09:00
12 changed files with 117 additions and 17 deletions

View File

@@ -4,6 +4,8 @@ import { ListDateGroup } from '../list-date-group';
import { AdditionalServiceCategory } from '../../model/types'
import { AccountHolderSearchListProps } from '../../model/account-holder-search/types';
import { useTranslation } from 'react-i18next';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
export const AccountHolderSearchList = ({
listItems,
@@ -63,6 +65,10 @@ export const AccountHolderSearchList = ({
const onClickToNavigate = () => {
if (!checkGrant(60, 'X')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.accountHolderSearch.request)
};
@@ -74,7 +80,7 @@ export const AccountHolderSearchList = ({
<div className="apply-row">
<button
className="btn-50 btn-blue flex-1"
onClick={ () => onClickToNavigate() }
onClick={onClickToNavigate}
>{ t('additionalService.accountHolderSearch.searchRequest') }</button>
</div>
</>

View File

@@ -19,6 +19,8 @@ import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
import { FundAccountResultDetail } from './detail/result-detail';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
export const FundAccountResultListWrap = () => {
const { navigate } = useNavigate();
@@ -144,6 +146,10 @@ export const FundAccountResultListWrap = () => {
};
const onClickToOpenEmailBottomSheet = () => {
if (!checkGrant(55, 'D')) {
showAlert(t('common.nopermission'));
return;
}
setEmailBottomSheetOn(true);
};
@@ -251,6 +257,10 @@ export const FundAccountResultListWrap = () => {
]);
const onClickToNavigate = () => {
if (!checkGrant(55, 'W')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.fundAccount.transferRequest);
};

View File

@@ -28,6 +28,8 @@ import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
import { FundAccountTransferDetail } from './detail/transfer-detail';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
export const FundAccountTransferListWrap = () => {
const { navigate } = useNavigate();
@@ -127,6 +129,10 @@ export const FundAccountTransferListWrap = () => {
};
const onClickToOpenEmailBottomSheet = () => {
if (!checkGrant(55, 'D')) {
showAlert(t('common.nopermission'));
return;
}
setEmailBottomSheetOn(true);
};
@@ -234,6 +240,10 @@ export const FundAccountTransferListWrap = () => {
]);
const onClickToNavigate = () => {
if (!checkGrant(55, 'W')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.fundAccount.transferRequest);
};

View File

@@ -4,6 +4,8 @@ import { ListDateGroup } from '../list-date-group';
import { KeyInPaymentListItem, KeyInPaymentListProps } from '../../model/key-in/types';
import { JSX } from 'react';
import { useTranslation } from 'react-i18next';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
export const KeyInPaymentList = ({
additionalServiceCategory,
@@ -59,6 +61,10 @@ export const KeyInPaymentList = ({
};
const onClickToNavigate = () => {
if (!checkGrant(56, 'X')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.keyInPayment.request);
};
@@ -70,7 +76,7 @@ export const KeyInPaymentList = ({
<div className="apply-row">
<button
className="btn-50 btn-blue flex-1"
onClick={() => onClickToNavigate()}
onClick={onClickToNavigate}
>{t('additionalService.linkPay.paymentRequest')}</button>
</div>
</>

View File

@@ -17,6 +17,8 @@ import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
import { LinkPaymentHistoryDetail } from './detail/link-payment-history-detail';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
const getPaymentResultBtnGroup = (t: any) => [
{ name: t('additionalService.linkPayment.all'), value: LinkPaymentPaymentStatus.ALL },
@@ -76,6 +78,10 @@ export const LinkPaymentHistoryWrap = () => {
});
const onClickToNavigate = () => {
if (!checkGrant(54, 'W')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.linkPayment.request)
};
@@ -133,6 +139,10 @@ export const LinkPaymentHistoryWrap = () => {
};
const onClickToOpenEmailBottomSheet = () => {
if (!checkGrant(54, 'D')) {
showAlert(t('common.nopermission'));
return;
}
setEmailBottomSheetOn(true);
};
@@ -219,7 +229,7 @@ export const LinkPaymentHistoryWrap = () => {
<button
className="download-btn"
aria-label={t('common.download')}
onClick={() => onClickToOpenEmailBottomSheet()}
onClick={onClickToOpenEmailBottomSheet}
>
<img
src={IMAGE_ROOT + '/ico_download.svg'}
@@ -259,7 +269,7 @@ export const LinkPaymentHistoryWrap = () => {
<div className="apply-row">
<button
className="btn-50 btn-blue flex-1"
onClick={() => onClickToNavigate()}
onClick={onClickToNavigate}
>{t('additionalService.linkPayment.applyRequest')}</button>
</div>
<LinkPaymentHistoryFilter

View File

@@ -18,6 +18,8 @@ import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
import useIntersectionObserver from '@/widgets/intersection-observer';
import { useTranslation } from 'react-i18next';
import { LinkPaymentWaitDetail } from './detail/link-payment-wait-detail';
import { checkGrant } from '@/shared/lib/check-grant';
import { showAlert } from '@/widgets/show-alert';
export const LinkPaymentWaitSendWrap = () => {
@@ -64,6 +66,10 @@ export const LinkPaymentWaitSendWrap = () => {
setFilterOn(!filterOn);
};
const onClickToNavigate = () => {
if (!checkGrant(54, 'W')) {
showAlert(t('common.nopermission'));
return;
}
navigate(PATHS.additionalService.linkPayment.request)
}
@@ -120,6 +126,10 @@ export const LinkPaymentWaitSendWrap = () => {
};
const onClickToOpenEmailBottomSheet = () => {
if (!checkGrant(54, 'D')) {
showAlert(t('common.nopermission'));
return;
}
setEmailBottomSheetOn(true);
};
@@ -195,7 +205,7 @@ export const LinkPaymentWaitSendWrap = () => {
<button
className="download-btn"
aria-label={t('common.download')}
onClick={() => onClickToOpenEmailBottomSheet()}
onClick={onClickToOpenEmailBottomSheet}
>
<img
src={IMAGE_ROOT + '/ico_download.svg'}
@@ -235,7 +245,7 @@ export const LinkPaymentWaitSendWrap = () => {
<div className="apply-row">
<button
className="btn-50 btn-blue flex-1"
onClick={() => onClickToNavigate()}
onClick={onClickToNavigate}
>{t('additionalService.linkPayment.applyRequest')}</button>
</div>
<LinkPaymentWaitSendFilter