summaryrefslogtreecommitdiff
path: root/components/form-data
diff options
context:
space:
mode:
Diffstat (limited to 'components/form-data')
-rw-r--r--components/form-data/form-data-table.tsx13
-rw-r--r--components/form-data/spreadJS-dialog.tsx49
2 files changed, 61 insertions, 1 deletions
diff --git a/components/form-data/form-data-table.tsx b/components/form-data/form-data-table.tsx
index 09745bb0..d5d79735 100644
--- a/components/form-data/form-data-table.tsx
+++ b/components/form-data/form-data-table.tsx
@@ -304,6 +304,19 @@ export default function DynamicTable({
const templateResult = await fetchTemplateFromSEDP(projectCode, formCode);
+ // ๐Ÿ” ์ „๋‹ฌ๋˜๋Š” ํ…œํ”Œ๋ฆฟ ๋ฐ์ดํ„ฐ ๋กœ๊น…
+ console.log('๐Ÿ“Š Template data received from SEDP:', {
+ count: Array.isArray(templateResult) ? templateResult.length : 'not array',
+ isArray: Array.isArray(templateResult),
+ data: templateResult
+ });
+
+ if (Array.isArray(templateResult)) {
+ templateResult.forEach((tmpl, idx) => {
+ console.log(` [${idx}] TMPL_ID: ${tmpl?.TMPL_ID || 'MISSING'}, NAME: ${tmpl?.NAME || 'N/A'}, TYPE: ${tmpl?.TMPL_TYPE || 'N/A'}`);
+ });
+ }
+
setTemplateData(templateResult);
setTemplateDialogOpen(true);
diff --git a/components/form-data/spreadJS-dialog.tsx b/components/form-data/spreadJS-dialog.tsx
index 272d99be..8243566a 100644
--- a/components/form-data/spreadJS-dialog.tsx
+++ b/components/form-data/spreadJS-dialog.tsx
@@ -202,6 +202,15 @@ export function TemplateViewDialog({
}, []);
React.useEffect(() => {
+ // ๐Ÿ” ๋ฐ›์€ templateData ๋กœ๊น… (๋””๋ฒ„๊น…์šฉ)
+ console.log('๐ŸŽจ TemplateViewDialog received templateData:', {
+ isNull: templateData === null,
+ isUndefined: templateData === undefined,
+ isArray: Array.isArray(templateData),
+ length: Array.isArray(templateData) ? templateData.length : 'N/A',
+ data: templateData
+ });
+
// ํ…œํ”Œ๋ฆฟ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†๊ฑฐ๋‚˜ ๋นˆ ๋ฐฐ์—ด์ธ ๊ฒฝ์šฐ ๊ธฐ๋ณธ GRD_LIST ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ
if (!templateData || (Array.isArray(templateData) && templateData.length === 0)) {
// columnsJSON์ด ์žˆ์œผ๋ฉด ๊ธฐ๋ณธ GRD_LIST ํ…œํ”Œ๋ฆฟ ์ƒ์„ฑ
@@ -242,7 +251,17 @@ export function TemplateViewDialog({
templates = [templateData as TemplateItem];
}
+ // ๐Ÿ” ๊ฐ ํ…œํ”Œ๋ฆฟ์˜ TMPL_ID ํ™•์ธ
+ console.log('๐Ÿ” Processing templates:', templates.length);
+ templates.forEach((tmpl, idx) => {
+ console.log(` [${idx}] TMPL_ID: ${tmpl?.TMPL_ID || 'โŒ MISSING'}, NAME: ${tmpl?.NAME || 'N/A'}, TYPE: ${tmpl?.TMPL_TYPE || 'N/A'}`);
+ if (!tmpl?.TMPL_ID) {
+ console.error(`โŒ Template at index ${idx} is missing TMPL_ID:`, tmpl);
+ }
+ });
+
const validTemplates = templates.filter(isValidTemplate);
+ console.log(`โœ… Valid templates after filtering: ${validTemplates.length}`);
// ์œ ํšจํ•œ ํ…œํ”Œ๋ฆฟ์ด ์—†์ง€๋งŒ columnsJSON์ด ์žˆ์œผ๋ฉด ๊ธฐ๋ณธ GRD_LIST ์ถ”๊ฐ€
if (validTemplates.length === 0 && columnsJSON && columnsJSON.length > 0) {
@@ -272,17 +291,27 @@ export function TemplateViewDialog({
}
setAvailableTemplates(validTemplates);
+
+ // ๐Ÿ” ์ตœ์ข… availableTemplates ๋กœ๊น…
+ console.log('๐Ÿ“‹ availableTemplates set:', validTemplates.map(t => ({
+ TMPL_ID: t.TMPL_ID,
+ NAME: t.NAME,
+ TYPE: t.TMPL_TYPE
+ })));
if (validTemplates.length > 0 && !selectedTemplateId) {
const firstTemplate = validTemplates[0];
// ๐Ÿ” TMPL_ID ๊ฒ€์ฆ (isValidTemplate๋กœ ํ•„ํ„ฐ๋งํ–ˆ์œผ๋ฏ€๋กœ ์กด์žฌํ•ด์•ผ ํ•˜์ง€๋งŒ ์•ˆ์ „์žฅ์น˜)
if (firstTemplate?.TMPL_ID) {
const templateTypeToSet = determineTemplateType(firstTemplate);
+ console.log(`๐ŸŽฏ Auto-selecting first template: ${firstTemplate.TMPL_ID} (${templateTypeToSet})`);
setSelectedTemplateId(firstTemplate.TMPL_ID);
setTemplateType(templateTypeToSet);
} else {
console.error('โŒ First valid template has no TMPL_ID:', firstTemplate);
}
+ } else if (selectedTemplateId) {
+ console.log(`โ„น๏ธ Template already selected: ${selectedTemplateId}`);
}
}, [templateData, selectedTemplateId, isValidTemplate, determineTemplateType, columnsJSON]);
@@ -307,10 +336,28 @@ export function TemplateViewDialog({
};
const selectedTemplate = React.useMemo(() => {
+ console.log('๐Ÿ” Finding template:', {
+ selectedTemplateId,
+ availableCount: availableTemplates.length,
+ availableIds: availableTemplates.map(t => t?.TMPL_ID)
+ });
+
const found = availableTemplates.find(t => t?.TMPL_ID === selectedTemplateId);
+
if (!found && selectedTemplateId) {
- console.warn('โš ๏ธ Selected template not found:', selectedTemplateId);
+ console.warn('โš ๏ธ Selected template not found:', {
+ searching: selectedTemplateId,
+ available: availableTemplates.map(t => t?.TMPL_ID),
+ availableTemplates: availableTemplates
+ });
+ } else if (found) {
+ console.log('โœ… Template found:', {
+ TMPL_ID: found.TMPL_ID,
+ NAME: found.NAME,
+ TYPE: found.TMPL_TYPE
+ });
}
+
return found;
}, [availableTemplates, selectedTemplateId]);