integrated etender biding detail

This commit is contained in:
Jaanu423
2026-01-07 17:59:56 +05:30
parent ce40aa388f
commit 860d70d86e
23 changed files with 1758 additions and 525 deletions
+12 -1
View File
@@ -34,7 +34,7 @@ const PURCHASE_OFFLINE_AUCTION = `${BASE_URL_Auction}api/auction/purchaseAuction
const PURCHASE_TENDER = `https://procurelinc.in/EProcurementSB/tenderPayment/purchaseTender`
const PURCHASE_TENDER_OFFLINE = `https://procurelinc.in/EProcurementSB/tenderPayment/purchaseTenderOffline`
const AUCTION_PURCHASE_STATUS = `https://api.godemo.in/Auction/api/auction/transactionStatus?orderNo=`
const GET_TENDER_DETAILS = `${BASE_URL}eTendering/getTenderById?tenderId=`
const GET_TENDER_DETAILS = `https://procurelinc.in/EProcurementSB/tenderBidding/getTenderDetail?tenderId=`
const GET_DOCID = `${BASE_URL}eTendering/download/docId?docId=`
// https://procurelinc.in/EProcurementSB/eTendering/download/docId?docId=158
// const DOWNLOAD_DOC = `${BASE_URL}eTende ring/download/docId?docId=`
@@ -66,6 +66,12 @@ const DASHBOARD_COUNT = `${BASE_URL_Auction}api/auction/home/dashboard/counts`
//tender
const TENDER_LOGIN = `${BASE_URL}eproc/loginWithoutDecryption`
const PROCEED_TO_BID = `${BASE_URL}tenderBidding/proceedToBid?tenderId=`
const SUBMIT_ENVELOPE_A = `${BASE_URL}tenderBidding/getSaveEnvelopeAData`
const SUBMIT_ENVELOPE_B = `${BASE_URL}tenderBidding/getSaveEnvelopeBData`
const SUBMIT_ENVELOPE_FILE_A = `${BASE_URL}tenderBidding/addDocumentsEnvelopeA?requestDto=`
const SUBMIT_ENVELOPE_FILE_B = `${BASE_URL}tenderBidding/addDocumentsEnvelopeB?requestDto=`
export {
@@ -127,5 +133,10 @@ export {
PURCHASE_OFFLINE_AUCTION,
TENDER_LOGIN,
PURCHASE_TENDER_OFFLINE,
PROCEED_TO_BID,
SUBMIT_ENVELOPE_A,
SUBMIT_ENVELOPE_B,
SUBMIT_ENVELOPE_FILE_A,
SUBMIT_ENVELOPE_FILE_B
};
+36 -27
View File
@@ -1,5 +1,5 @@
import { useInfiniteQuery, useMutation, useQuery } from '@tanstack/react-query';
import { fetchDashboard, fetchLiveAuction, fetchLiveTender, fetchPurchaseAuction, fetchPurchaseTender, offlineAuctionPurchase, userLogin, offlineTenderPurchase, fetchTenderById } from './apis';
import { fetchDashboard, fetchLiveAuction, fetchLiveTender, fetchPurchaseAuction, fetchPurchaseTender, offlineAuctionPurchase, userLogin, offlineTenderPurchase, fetchTenderById, proceedToBid } from './apis';
// User
@@ -19,11 +19,31 @@ export const useDashboard = () => {
// Auction & Tender
export const useFetchPurchaseTender = (size: number) => {
return useQuery({
queryKey: ['purchaseTender', size],
queryFn: () => fetchPurchaseTender({ page: 0, size }),
});
export const useFetchPurchaseTender = () => {
return useInfiniteQuery({
queryKey: ['fetchPurchaseTender'],
initialPageParam: 1,
queryFn: ({ pageParam }) =>
fetchPurchaseTender({
page: pageParam,
size: 10,
}),
getNextPageParam: (lastPage) => {
const { page, size, totalCount } = lastPage;
const totalPages = Math.ceil(totalCount / size);
return page < totalPages ? page + 1 : undefined;
},
select: (data) => ({
...data,
result: data.pages.flatMap(
(page: any) => page?.data ?? []
),
}),
});
};
@@ -37,27 +57,7 @@ export const useFetchLiveTender = () => {
export const useFetchPurchaseAuction = () => {
return useQuery({
queryKey: ['fetchPurchaseAuction',],
queryFn: ({ pageParam = 1 }) =>
fetchPurchaseAuction({
page: pageParam,
size: 10,
}),
getNextPageParam: (lastPage: any) => {
const { page, size, totalCount } = lastPage;
const totalPages = Math.ceil(totalCount / size);
const nextPage = page + 1;
return nextPage < totalPages ? nextPage : undefined;
},
select: (data) => {
const mergedResults = data.pages.flatMap((page: any) => page.data ?? []);
console.log("mergedResults for tender : ", mergedResults)
return {
...data,
result: mergedResults,
};
},
queryFn: () => fetchPurchaseAuction()
});
};
@@ -107,7 +107,16 @@ export const useFetchTenderById = (tenderId: string) => {
return useQuery({
queryKey: ['fetchTenderById', tenderId],
queryFn: () => fetchTenderById(tenderId)
});
}
export const useProceedToBid = (tenderId?: string) => {
return useQuery({
queryKey: ['proceedToBid', tenderId],
queryFn: () => proceedToBid(tenderId as string),
enabled: false, // 👈 manual trigger
});
};
+20 -26
View File
@@ -1,5 +1,5 @@
import axios from "axios";
import { DASHBOARD_COUNT, GET_MY_AUCTION, GET_MY_TENDER, GET_TENDER_DETAILS, LIVE_AUCTION, LIVE_TENDER, LOG_IN_URL, PROCEED_PURCHASE_AUCTION, PURCHASE_TENDER_OFFLINE, TENDER_LOGIN } from "./ApiUrls";
import { DASHBOARD_COUNT, GET_MY_AUCTION, GET_MY_TENDER, GET_TENDER_DETAILS, LIVE_AUCTION, LIVE_TENDER, LOG_IN_URL, PROCEED_PURCHASE_AUCTION, PROCEED_TO_BID, PURCHASE_TENDER_OFFLINE, TENDER_LOGIN } from "./ApiUrls";
import { apiCall } from "../../Axios/Axios";
// User
@@ -19,8 +19,8 @@ export const fetchDashboard = async (): Promise<any> => {
return data
}
export const fetchPurchaseAuction = async (payload: any): Promise<any> => {
const data = await apiCall<any>('get', `${GET_MY_AUCTION}`, {}, { payload });
export const fetchPurchaseAuction = async (): Promise<any> => {
const data = await apiCall<any>('get', `${GET_MY_AUCTION}`);
return data
}
export const fetchLiveAuction = async (payload: any): Promise<any> => {
@@ -49,43 +49,37 @@ export const offlineTenderPurchase = async (payload: any): Promise<any> => {
};
// tender
export const fetchPurchaseTender = async (payload: any): Promise<any> => {
const data = await apiCall<any>(
export const fetchPurchaseTender = async ({
page,
size,
}: {
page: number;
size: number;
}) => {
return apiCall<any>(
'get',
`${GET_MY_TENDER}`, {},
{ payload }
`${GET_MY_TENDER}?page=${page}&size=${size}`
);
return data;
};
// export const fetchPurchaseTender = async (
// page: number,
// size: number
// ): Promise<any> => {
// const data = await apiCall<any>(
// 'get',
// `${GET_MY_TENDER}?page=0&size=${size}`
// );
// console.log('Purchased Tenders Response:', data);
// return data;
// };
export const fetchLiveTender = async (): Promise<any> => {
const data = await apiCall<any>('get', `${LIVE_TENDER}`);
return data
}
export const fetchTenderById = async (tenderId: string): Promise<any> => {
console.log('Fetching tender with ID:', tenderId);
const data = await apiCall<any>(
'get',
`https://procurelinc.in/EProcurementSB/eTendering/getTenderById?tenderId=${tenderId}`
`${GET_TENDER_DETAILS}${tenderId}`
);
console.log('API response:', data);
return data;
};
export const proceedToBid = async (tenderId: string): Promise<any> => {
const data = await apiCall<any>(
'get',
`${PROCEED_TO_BID}${tenderId}`
);
return data;
}