diff --git a/src/components/PaymentRequest/PaymentRequestList.jsx b/src/components/PaymentRequest/PaymentRequestList.jsx index e533634f..0c9edfd5 100644 --- a/src/components/PaymentRequest/PaymentRequestList.jsx +++ b/src/components/PaymentRequest/PaymentRequestList.jsx @@ -85,7 +85,7 @@ const PaymentRequestList = ({ filters, filterData, removeFilterChip, clearFilter key: "paymentRequestUID", label: "Request ID", align: "text-start mx-2", - getValue: (e) => e.paymentRequestUID || "N/A", + getValue: (e) =>
{e.paymentRequestUID || "N/A"} {e.isAdvancePayment && Adv}
, }, { key: "title", diff --git a/src/components/PaymentRequest/ViewPaymentRequest.jsx b/src/components/PaymentRequest/ViewPaymentRequest.jsx index d8e936fe..7bf122db 100644 --- a/src/components/PaymentRequest/ViewPaymentRequest.jsx +++ b/src/components/PaymentRequest/ViewPaymentRequest.jsx @@ -148,7 +148,7 @@ const ViewPaymentRequest = ({ requestId }) => {
-
PR No : {data?.paymentRequestUID}
+
PR No : {data?.paymentRequestUID} {data.isAdvancePayment && Advance}
{ ); return resp.data; }, - enabled:!!jobId, + enabled: !!jobId, initialPageParam: pageNumber, @@ -282,3 +282,105 @@ export const useUpdateServiceProjectJob = (onSuccessCallback) => { }; //#endregion + +//#region Branch +export const useBranches = ( + projectId, + isActive, + pageSize, + pageNumber, + searchString +) => { + return useQuery({ + queryKey: [ + "branches", + projectId, + isActive, + pageSize, + pageNumber, + searchString, + ], + queryFn: async () => { + const resp = await ServiceProjectRepository.GetBranchList( + projectId, + isActive, + pageSize, + pageNumber, + searchString + ); + return resp.data; + }, + enabled: !!projectId, + }); +}; + +export const useBranch = (id)=>{ + return useQuery({ + queryKey:["branch",id], + queryFn:()=>{ + const resp = await ServiceProjectRepository.GetBranchDetail(id); + return resp.data ?? resp; + }, + enabled:!!id + }) +} + +export const useCreateBranche =()=>{ + return useMutation({ + mutationFn:(payload)=> await ServiceProjectRepository.CreateBranch(payload), + onSuccess: (data, variables) => { + queryClient.invalidateQueries({ + queryKey: ["branches"], + }); + if (onSuccessCallback) onSuccessCallback(); + showToast("Branch created successfully", "success"); + }, + onError: (error) => { + showToast( + error?.response?.data?.message || + error.message || + "Failed to create branch", + "error" + ); + }, + }) +} + +export const useUpdateBranch=()=>{ + return useMutation({ + mutationFn:async({id,payload})=> await ServiceProjectRepository.UpdateBranch(id,payload), + onSuccess: (_,variables) => { + queryClient.invalidateQueries({ queryKey: ["branches"] }); + queryClient.invalidateQueries({ queryKey: ["branch",variables.id] }); + if (onSuccessCallback) onSuccessCallback(); + showToast("Branch Updated successfully", "success"); + }, + onError: (error) => { + showToast( + error?.response?.data?.message || + error.message || + "Failed to update branch", + "error" + ); + }, + }) +} + +export const useDeleteBranch=()=>{ + return useMutation({ + mutationFn:async(id)=> await ServiceProjectRepository.DeleteBranch(id), + onSuccess: (_,variables) => { + queryClient.invalidateQueries({ queryKey: ["branches"] }); + if (onSuccessCallback) onSuccessCallback(); + showToast("Branch Deleted successfully", "success"); + }, + onError: (error) => { + showToast( + error?.response?.data?.message || + error.message || + "Failed to delete branch", + "error" + ); + }, + }) +} \ No newline at end of file diff --git a/src/repositories/ServiceProjectRepository.jsx b/src/repositories/ServiceProjectRepository.jsx index 1da42fd2..b61505cd 100644 --- a/src/repositories/ServiceProjectRepository.jsx +++ b/src/repositories/ServiceProjectRepository.jsx @@ -1,6 +1,7 @@ import { api } from "../utils/axiosClient"; export const ServiceProjectRepository = { + //#region Service Project CreateServiceProject: (data) => api.post("/api/ServiceProject/create", data), GetServiceProjects: (pageSize, pageNumber) => api.get( @@ -17,6 +18,8 @@ export const ServiceProjectRepository = { api.get( `/api/ServiceProject/get/allocation/list?projectId=${projectId}&isActive=${isActive} ` ), + //#endregion + //#region Job CreateJob: (data) => api.post(`/api/ServiceProject/job/create`, data), @@ -35,13 +38,19 @@ export const ServiceProjectRepository = { api.patch(`/api/ServiceProject/job/edit/${id}`, patchData, { "Content-Type": "application/json-patch+json", }), + //#endregion - //Branch API - getServiceBranch: (jobTicketId, pageSize, pageNumber) => + //#region Project Branch + CreateBranch: (data) => api.post(`/api/ServiceProject/create`, data), + UpdateBranch: (id, data) => + api.put("/api/ServiceProject/branch/edit/${id}", data), + GetBranchList: (projectId, isActive, pageSize, pageNumber, searchString) => { api.get( - `/api/serviceproject/branch/list?jobTicketId=${jobTicketId}&pageSize=${pageSize}&pageNumber=${pageNumber}` - ), - + `/api/ServiceProject/branch/list/${projectId}&isActive=${isActive}&pageSize=${pageSize}&pageNumber=${pageNumber}&searchString=${searchString}` + ); + }, + GetBranchDetail: (id) => api.get(`/api/ServiceProject/branch/details/${id}`), + DeleteBranch: (id) => api.delete(`/api/ServiceProject/branch/delete/${id}`), };