mirror of
https://github.com/faiztyanirh/clqms-shadcn-v1.git
synced 2026-04-26 10:56:32 +07:00
fix bug testdefgrp payload when empty
This commit is contained in:
parent
09c2fc5b33
commit
23c3f88f4d
@ -1068,26 +1068,23 @@ export function buildTestPayload({
|
|||||||
const state = activeFormStates[key];
|
const state = activeFormStates[key];
|
||||||
|
|
||||||
if (key === 'refNum' && refNumData?.length > 0) {
|
if (key === 'refNum' && refNumData?.length > 0) {
|
||||||
// payload[key] = refNumData;
|
|
||||||
payload.refnum = refNumData.map((row) => ({
|
payload.refnum = refNumData.map((row) => ({
|
||||||
...row,
|
...row,
|
||||||
AgeStart: toDays(row.AgeStart),
|
AgeStart: toDays(row.AgeStart),
|
||||||
AgeEnd: toDays(row.AgeEnd)
|
AgeEnd: toDays(row.AgeEnd)
|
||||||
}));
|
}));
|
||||||
} else if (key === 'refTxt' && refTxtData?.length > 0) {
|
} else if (key === 'refTxt' && refTxtData?.length > 0) {
|
||||||
// payload[key] = refTxtData;
|
|
||||||
payload.reftxt = refTxtData.map((row) => ({
|
payload.reftxt = refTxtData.map((row) => ({
|
||||||
...row,
|
...row,
|
||||||
AgeStart: toDays(row.AgeStart),
|
AgeStart: toDays(row.AgeStart),
|
||||||
AgeEnd: toDays(row.AgeEnd)
|
AgeEnd: toDays(row.AgeEnd)
|
||||||
}));
|
}));
|
||||||
} else if (key === 'group' && state.form?.Members?.length > 0) {
|
} else if (key === 'group') {
|
||||||
payload.testdefgrp = {
|
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)
|
TestSiteID: Number(m.value)
|
||||||
}))
|
}))
|
||||||
};
|
}
|
||||||
} else if (key === 'map' && mapData?.length > 0) {
|
} else if (key === 'map' && mapData?.length > 0) {
|
||||||
payload.testmap = mapData;
|
payload.testmap = mapData;
|
||||||
} else if (key === 'cal') {
|
} else if (key === 'cal') {
|
||||||
|
|||||||
@ -149,10 +149,10 @@
|
|||||||
});
|
});
|
||||||
console.log(payload);
|
console.log(payload);
|
||||||
|
|
||||||
// const result = await formState.save(masterDetail.mode, payload);
|
const result = await formState.save(masterDetail.mode, payload);
|
||||||
|
|
||||||
// toast('Test Created!');
|
toast('Test Created!');
|
||||||
// masterDetail?.exitForm(true);
|
masterDetail?.exitForm(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
const primaryAction = $derived({
|
const primaryAction = $derived({
|
||||||
|
|||||||
@ -323,6 +323,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
let activeTab = $state('definition');
|
let activeTab = $state('definition');
|
||||||
|
let groupInitialized = $state(false);
|
||||||
|
|
||||||
$effect(() => {
|
$effect(() => {
|
||||||
const mainForm = formState.form;
|
const mainForm = formState.form;
|
||||||
@ -342,11 +343,13 @@
|
|||||||
AgeEnd: typeof row.AgeEnd === 'number' ? buildAgeText(daysToAge(row.AgeEnd)) : row.AgeEnd,
|
AgeEnd: typeof row.AgeEnd === 'number' ? buildAgeText(daysToAge(row.AgeEnd)) : row.AgeEnd,
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
if (mainForm.testdefgrp && Array.isArray(mainForm.testdefgrp)) {
|
// groupFormState.form.Members = [];
|
||||||
groupFormState.form.Members = mainForm.testdefgrp.map((m, index) => ({
|
if (!groupInitialized && mainForm.testdefgrp?.members && Array.isArray(mainForm.testdefgrp.members)) {
|
||||||
|
groupFormState.form.Members = mainForm.testdefgrp.members.map((m, index) => ({
|
||||||
id: m.id ?? index + 1,
|
id: m.id ?? index + 1,
|
||||||
value: String(m.TestSiteID)
|
value: String(m.TestSiteID)
|
||||||
}));
|
}));
|
||||||
|
groupInitialized = true;
|
||||||
}
|
}
|
||||||
// if (mainForm.testmap && Array.isArray(mainForm.testmap)) {
|
// if (mainForm.testmap && Array.isArray(mainForm.testmap)) {
|
||||||
// mapData = mainForm.testmap.map((row, index) => ({
|
// mapData = mainForm.testmap.map((row, index) => ({
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
import DictionaryFormRenderer from '$lib/components/reusable/form/dictionary-form-renderer.svelte';
|
import DictionaryFormRenderer from '$lib/components/reusable/form/dictionary-form-renderer.svelte';
|
||||||
|
|
||||||
let props = $props();
|
let props = $props();
|
||||||
$inspect(props.calFormState.errors)
|
|
||||||
const mathop = ['+', '-', '*', '/', '%','**', '(', ')'];
|
const mathop = ['+', '-', '*', '/', '%','**', '(', ')'];
|
||||||
const comparisonop = ['=', '!=', '<', '>', '<=', '>='];
|
const comparisonop = ['=', '!=', '<', '>', '<=', '>='];
|
||||||
const logicalop = ['AND', 'OR', 'NOT'];
|
const logicalop = ['AND', 'OR', 'NOT'];
|
||||||
@ -133,7 +133,7 @@ $inspect(props.calFormState.errors)
|
|||||||
props.calFormState.validateField?.(key, [], false);
|
props.calFormState.validateField?.(key, [], false);
|
||||||
props.calFormState.errors.FormulaCode = null;
|
props.calFormState.errors.FormulaCode = null;
|
||||||
}
|
}
|
||||||
$inspect(props.calFormState.selectOptions)
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="flex flex-col gap-4 w-full">
|
<div class="flex flex-col gap-4 w-full">
|
||||||
|
|||||||
@ -37,8 +37,6 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$inspect(props.groupFormState.selectOptions)
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="flex flex-col gap-4 w-full">
|
<div class="flex flex-col gap-4 w-full">
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user