From 7c6e079f56733d7d1417028d7ceacb6401f5ea81 Mon Sep 17 00:00:00 2001 From: rstubryan Date: Tue, 21 Oct 2025 09:33:31 +0700 Subject: [PATCH] refactor(FE-114): improve data handling in RecordingForm for numeric fields --- .../pages/flock/recording/form/RecordingForm.tsx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/components/pages/flock/recording/form/RecordingForm.tsx b/src/components/pages/flock/recording/form/RecordingForm.tsx index b75a49d7..40247d3a 100644 --- a/src/components/pages/flock/recording/form/RecordingForm.tsx +++ b/src/components/pages/flock/recording/form/RecordingForm.tsx @@ -77,22 +77,22 @@ const RecordingForm = ({ type = 'add', initialValues }: RecordingFormProps) => { : '', feed_data: (values.feed_data ?? []).map((p) => ({ feed_id: p.feed_id, - feed_qty: typeof p.feed_qty === 'number' ? p.feed_qty : 0, - feed_stock: p.feed_stock, + feed_qty: typeof p.feed_qty === 'number' ? p.feed_qty : parseFloat(String(p.feed_qty)) || 0, + feed_stock: typeof p.feed_stock === 'number' ? p.feed_stock : parseFloat(String(p.feed_stock)) || 0, })), body_weight: (values.body_weight ?? []).map((b) => ({ - chicken_weight: b.chicken_weight, - chicken_count: b.chicken_count, - average_chicken_weight: b.average_chicken_weight, + chicken_weight: typeof b.chicken_weight === 'number' ? b.chicken_weight : parseFloat(String(b.chicken_weight)) || 0, + chicken_count: typeof b.chicken_count === 'number' ? b.chicken_count : parseFloat(String(b.chicken_count)) || 0, + average_chicken_weight: typeof b.average_chicken_weight === 'number' ? b.average_chicken_weight : parseFloat(String(b.average_chicken_weight)) || 0, })), vaccination: (values.vaccination ?? []).map((v) => ({ vaccine_id: v.vaccine_id, - total_stock: typeof v.total_stock === 'number' ? v.total_stock : 0, - used_stock: v.used_stock, + total_stock: typeof v.total_stock === 'number' ? v.total_stock : parseFloat(String(v.total_stock)) || 0, + used_stock: typeof v.used_stock === 'number' ? v.used_stock : parseFloat(String(v.used_stock)) || 0, })), mortality: (values.mortality ?? []).map((m) => ({ condition: m.condition, - count: m.count, + count: typeof m.count === 'number' ? m.count : parseFloat(String(m.count)) || 0, })), };