refactor(FE-435,436): Exclude null kandang_id from expense payload

This commit is contained in:
rstubryan
2025-12-30 19:03:26 +07:00
parent d2e88c2061
commit a81a61135f
2 changed files with 30 additions and 20 deletions
@@ -112,15 +112,20 @@ const ExpenseRequestForm = ({
transaction_date: values?.transaction_date as string,
supplier_id: values.supplier?.value as number,
documents: values.documents as File[],
expense_nonstocks: values.expense_nonstocks.map((expenseNonstock) => ({
kandang_id: expenseNonstock.kandang_id ?? null,
cost_items: expenseNonstock.cost_items.map((costItem) => ({
nonstock_id: costItem.nonstock?.value as number,
quantity: parseFloat(String(costItem.quantity)) as number,
price: parseFloat(String(costItem.price)) as number,
notes: costItem.notes ?? '',
})),
})),
expense_nonstocks: values.expense_nonstocks.map((expenseNonstock) => {
const basePayload = {
cost_items: expenseNonstock.cost_items.map((costItem) => ({
nonstock_id: costItem.nonstock?.value as number,
quantity: parseFloat(String(costItem.quantity)) as number,
price: parseFloat(String(costItem.price)) as number,
notes: costItem.notes ?? '',
})),
};
return expenseNonstock.kandang_id !== null
? { ...basePayload, kandang_id: expenseNonstock.kandang_id }
: basePayload;
}),
};
switch (type) {
@@ -136,15 +141,20 @@ const ExpenseRequestForm = ({
supplier_id: values.supplier?.value as number,
documents: values.documents as File[],
expense_nonstocks: values.expense_nonstocks.map(
(expenseNonstock) => ({
kandang_id: expenseNonstock.kandang_id ?? null,
cost_items: expenseNonstock.cost_items.map((costItem) => ({
nonstock_id: costItem.nonstock?.value as number,
quantity: parseFloat(String(costItem.quantity)) as number,
price: parseFloat(String(costItem.price)) as number,
notes: costItem.notes ?? '',
})),
})
(expenseNonstock) => {
const basePayload = {
cost_items: expenseNonstock.cost_items.map((costItem) => ({
nonstock_id: costItem.nonstock?.value as number,
quantity: parseFloat(String(costItem.quantity)) as number,
price: parseFloat(String(costItem.price)) as number,
notes: costItem.notes ?? '',
})),
};
return expenseNonstock.kandang_id !== null
? { ...basePayload, kandang_id: expenseNonstock.kandang_id }
: basePayload;
}
),
};
+2 -2
View File
@@ -62,7 +62,7 @@ export type CreateExpensePayload = {
supplier_id: number;
documents: File[];
expense_nonstocks: {
kandang_id: number | null;
kandang_id?: number;
cost_items: {
nonstock_id: number;
quantity: number;
@@ -79,7 +79,7 @@ export type UpdateExpensePayload = {
supplier_id: number;
documents: File[];
expense_nonstocks: {
kandang_id: number | null;
kandang_id?: number;
cost_items: {
nonstock_id: number;
quantity: number;