refactor(FE-208): rename PurchaseRequisitions to PurchaseRequest and update related API references

This commit is contained in:
rstubryan
2025-11-17 09:21:18 +07:00
parent 64605b168e
commit c951f09667
12 changed files with 118 additions and 135 deletions
@@ -1,7 +1,7 @@
import * as Yup from 'yup';
import { Purchase } from '@/types/api/purchase/purchase';
type PurchaseRequisitionsFormSchemaType = {
type PurchaseRequestFormSchemaType = {
supplier?: {
value: number;
label: string;
@@ -85,7 +85,7 @@ const PurchaseItemObjectSchema: Yup.ObjectSchema<PurchaseItemSchema> =
),
});
export const PurchaseRequisitionsFormSchema: Yup.ObjectSchema<PurchaseRequisitionsFormSchemaType> =
export const PurchaseRequestFormSchema: Yup.ObjectSchema<PurchaseRequestFormSchemaType> =
Yup.object({
supplier: Yup.object({
value: Yup.number().min(1).required(),
@@ -127,16 +127,15 @@ export const PurchaseRequisitionsFormSchema: Yup.ObjectSchema<PurchaseRequisitio
.typeError('Item pembelian wajib diisi!'),
});
export const UpdatePurchaseRequisitionsFormSchema =
PurchaseRequisitionsFormSchema;
export const UpdatePurchaseRequestFormSchema = PurchaseRequestFormSchema;
export type PurchaseRequisitionsFormValues = Yup.InferType<
typeof PurchaseRequisitionsFormSchema
export type PurchaseRequestFormValues = Yup.InferType<
typeof PurchaseRequestFormSchema
>;
export const getPurchaseRequisitionsFormInitialValues = (
export const getPurchaseRequestFormInitialValues = (
initialValues?: Purchase
): PurchaseRequisitionsFormValues => ({
): PurchaseRequestFormValues => ({
supplier: initialValues?.supplier
? {
value: initialValues.supplier.id,
@@ -18,10 +18,10 @@ import ConfirmationModal from '@/components/modal/ConfirmationModal';
import { useModal } from '@/components/Modal';
import {
PurchaseRequisitionsFormSchema,
PurchaseRequisitionsFormValues,
getPurchaseRequisitionsFormInitialValues,
UpdatePurchaseRequisitionsFormSchema,
PurchaseRequestFormSchema,
PurchaseRequestFormValues,
getPurchaseRequestFormInitialValues,
UpdatePurchaseRequestFormSchema,
} from './PurchaseRequisitionsForm.schema';
import {
SupplierApi,
@@ -34,11 +34,11 @@ import { Supplier } from '@/types/api/master-data/supplier';
import { Product } from '@/types/api/master-data/product';
import { ProductWarehouseApi } from '@/services/api/inventory';
import { isResponseSuccess, isResponseError } from '@/lib/api-helper';
import { PurchaseRequisitionsApi } from '@/services/api/purchase';
import { PurchaseRequestApi } from '@/services/api/purchase';
import Card from '@/components/Card';
import {
CreatePurchaseRequisitionsPayload,
CreatePurchaseRequestPayload,
Purchase,
} from '@/types/api/purchase/purchase';
@@ -47,7 +47,7 @@ interface PurchaseRequestFormProps {
initialValues?: Purchase;
}
const PurchaseRequisitionsForm = ({
const PurchaseRequestForm = ({
type = 'add',
initialValues,
}: PurchaseRequestFormProps) => {
@@ -105,8 +105,8 @@ const PurchaseRequisitionsForm = ({
// ===== SUBMISSION HANDLERS =====
const createPurchaseRequestHandler = useCallback(
async (payload: CreatePurchaseRequisitionsPayload) => {
const res = await PurchaseRequisitionsApi.create(payload);
async (payload: CreatePurchaseRequestPayload) => {
const res = await PurchaseRequestApi.create(payload);
if (isResponseError(res)) {
setPurchaseRequestFormErrorMessage(res.message);
return;
@@ -120,12 +120,9 @@ const PurchaseRequisitionsForm = ({
const updatePurchaseRequestHandler = useCallback(
async (
purchaseRequestId: number,
payload: CreatePurchaseRequisitionsPayload
payload: CreatePurchaseRequestPayload
) => {
const res = await PurchaseRequisitionsApi.update(
purchaseRequestId,
payload
);
const res = await PurchaseRequestApi.update(purchaseRequestId, payload);
if (isResponseError(res)) {
setPurchaseRequestFormErrorMessage(res.message);
return;
@@ -145,7 +142,7 @@ const PurchaseRequisitionsForm = ({
if (!initialValues?.id) return;
setIsDeleteLoading(true);
await PurchaseRequisitionsApi.delete(initialValues.id);
await PurchaseRequestApi.delete(initialValues.id);
deleteModal.closeModal();
toast.success('Successfully delete Purchase Request!');
setIsDeleteLoading(false);
@@ -175,21 +172,21 @@ const PurchaseRequisitionsForm = ({
} = useSelect(WarehouseApi.basePath, 'id', 'name', 'search');
// ===== FORM CONFIGURATION =====
const formikInitialValues = useMemo<PurchaseRequisitionsFormValues>(
() => getPurchaseRequisitionsFormInitialValues(initialValues),
const formikInitialValues = useMemo<PurchaseRequestFormValues>(
() => getPurchaseRequestFormInitialValues(initialValues),
[initialValues]
);
const formik = useFormik<PurchaseRequisitionsFormValues>({
const formik = useFormik<PurchaseRequestFormValues>({
initialValues: formikInitialValues,
validationSchema:
type === 'edit'
? UpdatePurchaseRequisitionsFormSchema
: PurchaseRequisitionsFormSchema,
? UpdatePurchaseRequestFormSchema
: PurchaseRequestFormSchema,
validateOnChange: true,
validateOnBlur: true,
onSubmit: async (values) => {
const payload: CreatePurchaseRequisitionsPayload = {
const payload: CreatePurchaseRequestPayload = {
supplier_id:
typeof values.supplier_id === 'string'
? parseInt(values.supplier_id) || 0
@@ -486,9 +483,9 @@ const PurchaseRequisitionsForm = ({
Kembali
</Button>
<h1 className='text-2xl font-bold text-center'>
{type === 'add' && 'Tambah Purchase Requisitions'}
{type === 'edit' && 'Edit Purchase Requisitions'}
{type === 'detail' && 'Detail Purchase Requisitions'}
{type === 'add' && 'Tambah Purchase Request'}
{type === 'edit' && 'Edit Purchase Request'}
{type === 'detail' && 'Detail Purchase Request'}
</h1>
</header>
<form
@@ -1118,4 +1115,4 @@ const PurchaseRequisitionsForm = ({
);
};
export default PurchaseRequisitionsForm;
export default PurchaseRequestForm;