fix bug testdefgrp payload when empty

This commit is contained in:
faiztyanirh 2026-04-02 13:56:19 +07:00
parent 09c2fc5b33
commit 23c3f88f4d
5 changed files with 13 additions and 15 deletions

View File

@ -1068,26 +1068,23 @@ export function buildTestPayload({
const state = activeFormStates[key];
if (key === 'refNum' && refNumData?.length > 0) {
// payload[key] = refNumData;
payload.refnum = refNumData.map((row) => ({
...row,
AgeStart: toDays(row.AgeStart),
AgeEnd: toDays(row.AgeEnd)
}));
} else if (key === 'refTxt' && refTxtData?.length > 0) {
// payload[key] = refTxtData;
payload.reftxt = refTxtData.map((row) => ({
...row,
AgeStart: toDays(row.AgeStart),
AgeEnd: toDays(row.AgeEnd)
}));
} else if (key === 'group' && state.form?.Members?.length > 0) {
} else if (key === 'group') {
payload.testdefgrp = {
...state.form,
Members: state.form?.Members?.filter((m) => m.value).map((m) => ({
members: (state.form?.Members ?? []).filter((m) => m.value).map((m) => ({
TestSiteID: Number(m.value)
}))
};
}
} else if (key === 'map' && mapData?.length > 0) {
payload.testmap = mapData;
} else if (key === 'cal') {

View File

@ -149,10 +149,10 @@
});
console.log(payload);
// const result = await formState.save(masterDetail.mode, payload);
const result = await formState.save(masterDetail.mode, payload);
// toast('Test Created!');
// masterDetail?.exitForm(true);
toast('Test Created!');
masterDetail?.exitForm(true);
}
const primaryAction = $derived({

View File

@ -323,6 +323,7 @@
});
let activeTab = $state('definition');
let groupInitialized = $state(false);
$effect(() => {
const mainForm = formState.form;
@ -342,11 +343,13 @@
AgeEnd: typeof row.AgeEnd === 'number' ? buildAgeText(daysToAge(row.AgeEnd)) : row.AgeEnd,
}));
}
if (mainForm.testdefgrp && Array.isArray(mainForm.testdefgrp)) {
groupFormState.form.Members = mainForm.testdefgrp.map((m, index) => ({
// groupFormState.form.Members = [];
if (!groupInitialized && mainForm.testdefgrp?.members && Array.isArray(mainForm.testdefgrp.members)) {
groupFormState.form.Members = mainForm.testdefgrp.members.map((m, index) => ({
id: m.id ?? index + 1,
value: String(m.TestSiteID)
}));
groupInitialized = true;
}
// if (mainForm.testmap && Array.isArray(mainForm.testmap)) {
// mapData = mainForm.testmap.map((row, index) => ({

View File

@ -9,7 +9,7 @@
import DictionaryFormRenderer from '$lib/components/reusable/form/dictionary-form-renderer.svelte';
let props = $props();
$inspect(props.calFormState.errors)
const mathop = ['+', '-', '*', '/', '%','**', '(', ')'];
const comparisonop = ['=', '!=', '<', '>', '<=', '>='];
const logicalop = ['AND', 'OR', 'NOT'];
@ -133,7 +133,7 @@ $inspect(props.calFormState.errors)
props.calFormState.validateField?.(key, [], false);
props.calFormState.errors.FormulaCode = null;
}
$inspect(props.calFormState.selectOptions)
</script>
<div class="flex flex-col gap-4 w-full">

View File

@ -37,8 +37,6 @@
}
});
});
$inspect(props.groupFormState.selectOptions)
</script>
<div class="flex flex-col gap-4 w-full">