refactor(FE-212): rename PurchaseApi to PurchaseRequisitionsApi and update related references in forms and tables

This commit is contained in:
rstubryan
2025-11-10 14:33:01 +07:00
parent 5e64d37c61
commit efcc14f3ab
5 changed files with 22 additions and 15 deletions
+2 -2
View File
@@ -3,7 +3,7 @@
import { useRouter, useSearchParams } from 'next/navigation'; import { useRouter, useSearchParams } from 'next/navigation';
import useSWR from 'swr'; import useSWR from 'swr';
import PurchaseRequisitionsForm from '@/components/pages/purchase/form/request/PurchaseRequisitionsForm'; import PurchaseRequisitionsForm from '@/components/pages/purchase/form/request/PurchaseRequisitionsForm';
import { PurchaseApi } from '@/services/api/purchase'; import { PurchaseRequisitionsApi } from '@/services/api/purchase';
import { isResponseSuccess, isResponseError } from '@/lib/api-helper'; import { isResponseSuccess, isResponseError } from '@/lib/api-helper';
const PurchaseEdit = () => { const PurchaseEdit = () => {
@@ -14,7 +14,7 @@ const PurchaseEdit = () => {
const { data: purchase, isLoading: isLoadingPurchase } = useSWR( const { data: purchase, isLoading: isLoadingPurchase } = useSWR(
purchaseId, purchaseId,
(id: number) => PurchaseApi.getSingle(id) (id: number) => PurchaseRequisitionsApi.getSingle(id)
); );
if (!purchaseId) { if (!purchaseId) {
+2 -2
View File
@@ -3,7 +3,7 @@
import { useRouter, useSearchParams } from 'next/navigation'; import { useRouter, useSearchParams } from 'next/navigation';
import useSWR from 'swr'; import useSWR from 'swr';
import PurchaseRequisitionsForm from '@/components/pages/purchase/form/request/PurchaseRequisitionsForm'; import PurchaseRequisitionsForm from '@/components/pages/purchase/form/request/PurchaseRequisitionsForm';
import { PurchaseApi } from '@/services/api/purchase'; import { PurchaseRequisitionsApi } from '@/services/api/purchase';
import { isResponseSuccess, isResponseError } from '@/lib/api-helper'; import { isResponseSuccess, isResponseError } from '@/lib/api-helper';
const PurchaseDetail = () => { const PurchaseDetail = () => {
@@ -14,7 +14,7 @@ const PurchaseDetail = () => {
const { data: purchase, isLoading: isLoadingPurchase } = useSWR( const { data: purchase, isLoading: isLoadingPurchase } = useSWR(
purchaseId, purchaseId,
(id: number) => PurchaseApi.getSingle(id) (id: number) => PurchaseRequisitionsApi.getSingle(id)
); );
if (!purchaseId) { if (!purchaseId) {
@@ -25,7 +25,7 @@ import { isResponseSuccess } from '@/lib/api-helper';
import { useTableFilter } from '@/services/hooks/useTableFilter'; import { useTableFilter } from '@/services/hooks/useTableFilter';
import { ROWS_OPTIONS } from '@/config/constant'; import { ROWS_OPTIONS } from '@/config/constant';
import { Purchase } from '@/types/api/purchase/purchase'; import { Purchase } from '@/types/api/purchase/purchase';
import { PurchaseApi } from '@/services/api/purchase'; import { PurchaseRequisitionsApi } from '@/services/api/purchase';
const RowOptionsMenu = ({ const RowOptionsMenu = ({
type = 'dropdown', type = 'dropdown',
@@ -102,8 +102,8 @@ const PurchaseTable = () => {
isLoading, isLoading,
mutate: refreshPurchaseRequests, mutate: refreshPurchaseRequests,
} = useSWR( } = useSWR(
`${PurchaseApi.basePath}${getTableFilterQueryString()}`, `${PurchaseRequisitionsApi.basePath}${getTableFilterQueryString()}`,
PurchaseApi.getAllFetcher PurchaseRequisitionsApi.getAllFetcher
); );
// Modal hooks // Modal hooks
@@ -236,7 +236,7 @@ const PurchaseTable = () => {
setIsDeleteLoading(true); setIsDeleteLoading(true);
try { try {
await PurchaseApi.delete(selectedPurchase?.id as number); await PurchaseRequisitionsApi.delete(selectedPurchase?.id as number);
refreshPurchaseRequests(); refreshPurchaseRequests();
deleteModal.closeModal(); deleteModal.closeModal();
toast.success('Berhasil menghapus data permintaan pembelian!'); toast.success('Berhasil menghapus data permintaan pembelian!');
@@ -33,7 +33,7 @@ import { Supplier } from '@/types/api/master-data/supplier';
import { Product } from '@/types/api/master-data/product'; import { Product } from '@/types/api/master-data/product';
import { ProductWarehouseApi } from '@/services/api/inventory'; import { ProductWarehouseApi } from '@/services/api/inventory';
import { isResponseSuccess, isResponseError } from '@/lib/api-helper'; import { isResponseSuccess, isResponseError } from '@/lib/api-helper';
import { PurchaseApi } from '@/services/api/purchase'; import { PurchaseRequisitionsApi } from '@/services/api/purchase';
import Card from '@/components/Card'; import Card from '@/components/Card';
import { import {
@@ -105,7 +105,7 @@ const PurchaseRequisitionsForm = ({
// ===== SUBMISSION HANDLERS ===== // ===== SUBMISSION HANDLERS =====
const createPurchaseRequestHandler = useCallback( const createPurchaseRequestHandler = useCallback(
async (payload: CreatePurchaseRequisitionsPayload) => { async (payload: CreatePurchaseRequisitionsPayload) => {
const res = await PurchaseApi.create(payload); const res = await PurchaseRequisitionsApi.create(payload);
if (isResponseError(res)) { if (isResponseError(res)) {
setPurchaseRequestFormErrorMessage(res.message); setPurchaseRequestFormErrorMessage(res.message);
return; return;
@@ -121,7 +121,10 @@ const PurchaseRequisitionsForm = ({
purchaseRequestId: number, purchaseRequestId: number,
payload: CreatePurchaseRequisitionsPayload payload: CreatePurchaseRequisitionsPayload
) => { ) => {
const res = await PurchaseApi.update(purchaseRequestId, payload); const res = await PurchaseRequisitionsApi.update(
purchaseRequestId,
payload
);
if (isResponseError(res)) { if (isResponseError(res)) {
setPurchaseRequestFormErrorMessage(res.message); setPurchaseRequestFormErrorMessage(res.message);
return; return;
@@ -141,7 +144,7 @@ const PurchaseRequisitionsForm = ({
if (!initialValues?.id) return; if (!initialValues?.id) return;
setIsDeleteLoading(true); setIsDeleteLoading(true);
await PurchaseApi.delete(initialValues.id); await PurchaseRequisitionsApi.delete(initialValues.id);
deleteModal.closeModal(); deleteModal.closeModal();
toast.success('Successfully delete Purchase Request!'); toast.success('Successfully delete Purchase Request!');
setIsDeleteLoading(false); setIsDeleteLoading(false);
+5 -1
View File
@@ -5,8 +5,12 @@ import {
} from '@/types/api/purchase/purchase'; } from '@/types/api/purchase/purchase';
import { BaseApiService } from '@/services/api/base'; import { BaseApiService } from '@/services/api/base';
export const PurchaseApi = new BaseApiService< export const PurchaseRequisitionsApi = new BaseApiService<
Purchase, Purchase,
CreatePurchaseRequisitionsPayload, CreatePurchaseRequisitionsPayload,
UpdatePurchaseRequisitionsPayload UpdatePurchaseRequisitionsPayload
>('/purchases/requisitions'); >('/purchases/requisitions');
export const PurchaseOrderApi = new BaseApiService<Purchase, unknown, unknown>(
'/purchases/orders'
);