페이징 처리 조건 수정

This commit is contained in:
focp212@naver.com
2025-10-26 11:08:53 +09:00
parent 00aec7656e
commit 35edb19062
17 changed files with 174 additions and 66 deletions

View File

@@ -100,12 +100,13 @@ export const FundAccountResultListWrap = () => {
else{
setListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -113,6 +114,10 @@ export const FundAccountResultListWrap = () => {
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
};

View File

@@ -100,12 +100,13 @@ export const FundAccountTransferListWrap = () => {
else{
setListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -113,6 +114,10 @@ export const FundAccountTransferListWrap = () => {
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
callBalance();
};

View File

@@ -101,12 +101,13 @@ export const LinkPaymentHistoryWrap = () => {
else{
setListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -114,6 +115,10 @@ export const LinkPaymentHistoryWrap = () => {
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
};

View File

@@ -95,12 +95,13 @@ export const LinkPaymentWaitSendWrap = () => {
else{
setListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -108,6 +109,10 @@ export const LinkPaymentWaitSendWrap = () => {
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
};

View File

@@ -8,6 +8,7 @@ import { useTranslation } from 'react-i18next';
import { useNavigate } from '@/shared/lib/hooks';
import useIntersectionObserver from '@/widgets/intersection-observer';
import { useStore } from '@/shared/model/store';
import { DefaultRequestPagination } from '@/entities/common/model/types';
export interface AlarmListProps {
category: string;
@@ -21,8 +22,7 @@ export const AlarmList = ({
const userInfo = useStore.getState().UserStore.userInfo;
const [onActionIntersect, setOnActionIntersect] = useState<boolean>(false);
const [pageParam, setPageParam] = useState(DEFAULT_PAGE_PARAM);
const [nextCursor, setNextCursor] = useState<string | null>(null);
const [pageParam, setPageParam] = useState<DefaultRequestPagination>(DEFAULT_PAGE_PARAM);
const [appCl, setAppCl] = useState<MERCHANT_ADMIN_APP>(MERCHANT_ADMIN_APP.MERCHANT_ADMIN_APP)
const [appNotificationCategory, setAppNotificationCategory] = useState<string>('');
const [resultList, setResultList] = useState<Array<AlarmListContent>>([]);
@@ -50,7 +50,7 @@ export const AlarmList = ({
entries.forEach((entry: IntersectionObserverEntry) => {
if(entry.isIntersecting){
console.log('Element is now intersecting with the root. [' + onActionIntersect + ']');
if(onActionIntersect && !!nextCursor){
if(onActionIntersect && !!pageParam.cursor){
callList('page');
}
}
@@ -71,21 +71,11 @@ export const AlarmList = ({
usrid: userInfo.usrid,
appCl: appCl,
appNotificationCategory: appNotificationCategory,
...{
page: pageParam
}
page: pageParam
}
if(type === 'page'){
if(params.page){
params.page.cursor = nextCursor;
}
}
else{
setNextCursor(null);
if(params.page){
params.page.cursor = null;
}
if(type !== 'page' && params.page){
params.page.cursor = null;
}
appAlarmList(params).then((rs: AppAlarmListResponse) => {
@@ -99,13 +89,24 @@ export const AlarmList = ({
else{
setResultList(rs.content);
}
if(rs.hasNext){
setNextCursor(rs.nextCursor);
setOnActionIntersect(true);
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
}
else{
setNextCursor(null);
setPageParam({
...pageParam,
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
}
});
}

View File

@@ -147,12 +147,13 @@ export const ListWrap = ({
else{
setSettlementDateListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -160,6 +161,10 @@ export const ListWrap = ({
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
settlementsHistorySummary(listSummaryParams).then((rs: SettlementsHistorySummaryResponse) => {
setSettlementAmount(rs.settlementAmount || 0);
@@ -206,12 +211,13 @@ export const ListWrap = ({
else{
setTransactionDateListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -219,7 +225,10 @@ export const ListWrap = ({
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
settlementsTransactionSummary(listSummaryParams).then((rs) => {
setSettlementAmount(rs.settlementAmount);

View File

@@ -78,12 +78,13 @@ export const ListWrap = () => {
else{
setListItems(rs.content);
}
if(rs.hasNext){
if(rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
){
setPageParam({
...pageParam,
...{ cursor: rs.nextCursor }
});
setOnActionIntersect(true);
}
else{
setPageParam({
@@ -91,6 +92,10 @@ export const ListWrap = () => {
...{ cursor: null }
});
}
setOnActionIntersect(
!!rs.hasNext
&& rs.content.length === DEFAULT_PAGE_PARAM.size
);
});
};