- 자금이체 : 이체신청,결과조회 리스트,상세정보 수정

- 부가서비스 엑셀 다운로드 이메일 바텀시트 추가
This commit is contained in:
HyeonJongKim
2025-10-23 13:47:16 +09:00
parent a60b5ba69e
commit fbc910caf9
15 changed files with 293 additions and 181 deletions

View File

@@ -28,6 +28,7 @@ import { PayoutDisbursementStatusBtnGroup } from '@/entities/additional-service/
import { ListDateGroup } from '@/entities/additional-service/ui/list-date-group';
import { AdditionalServiceCategory } from '@/entities/additional-service/model/types';
import { useStore } from '@/shared/model/store';
import { EmailBottomSheet } from '@/entities/common/ui/email-bottom-sheet';
export const PayoutListPage = () => {
const { navigate } = useNavigate();
@@ -44,6 +45,7 @@ export const PayoutListPage = () => {
const [status, setStatus] = useState<PayoutDisbursementStatus>(PayoutDisbursementStatus.ALL);
const [minAmount, setMinAmount] = useState<number>(0);
const [maxAmount, setMaxAmount] = useState<number>(50000000);
const [emailBottomSheetOn, setEmailBottomSheetOn] = useState<boolean>(false);
const { mutateAsync: extensionPayoutList } = useExtensionPayoutListMutation();
const { mutateAsync: extensionPayoutExcel } = useExtensionPayoutExcelMutation();
@@ -92,23 +94,27 @@ export const PayoutListPage = () => {
});
};
const callDownloadExcel = () => {
let params: ExtensionPayoutExcelParams = {
mid: mid,
searchDateType: searchDateType,
fromDate: fromDate,
toDate: toDate,
status: status,
minAmount: minAmount,
maxAmount: maxAmount,
};
extensionPayoutExcel(params).then((rs: ExtensionPayoutExcelResponse) => {
});
const onClickToOpenEmailBottomSheet = () => {
setEmailBottomSheetOn(true);
};
const onClickToDownloadExcel = () => {
callDownloadExcel();
const onSendRequest = (selectedEmail?: string) => {
if (selectedEmail) {
const params: ExtensionPayoutExcelParams = {
mid: mid,
searchDateType: searchDateType,
fromDate: fromDate,
toDate: toDate,
status: status,
minAmount: minAmount,
maxAmount: maxAmount,
//email: selectedEmail
};
extensionPayoutExcel(params).then((rs: ExtensionPayoutExcelResponse) => {
console.log('Excel Download Status:', rs);
});
}
setEmailBottomSheetOn(false);
};
const onClickToOpenFilter = () => {
setFilterOn(!filterOn);
@@ -211,13 +217,13 @@ export const PayoutListPage = () => {
/>
</button>
</div>
<button
className="download-btn"
<button
className="download-btn"
aria-label="다운로드"
onClick={ () => onClickToDownloadExcel() }
onClick={ () => onClickToOpenEmailBottomSheet() }
>
<img
src={ IMAGE_ROOT + '/ico_download.svg' }
<img
src={ IMAGE_ROOT + '/ico_download.svg' }
alt="다운로드"
/>
</button>
@@ -283,6 +289,13 @@ export const PayoutListPage = () => {
setMinAmount={ setMinAmount }
setMaxAmount={ setMaxAmount }
></PayoutFilter>
<EmailBottomSheet
bottomSheetOn={emailBottomSheetOn}
setBottomSheetOn={setEmailBottomSheetOn}
imageSave={false}
sendEmail={true}
sendRequest={onSendRequest}
></EmailBottomSheet>
</>
);
};