2525 :tableColumnsIndexes =" tableColumnsIndexes"
2626 :selected =" selected"
2727 :isAiResponseReceived =" isAiResponseReceived"
28+ :primaryKey =" primaryKey"
2829 />
2930 <Button
3031 class =" w-64"
@@ -67,6 +68,7 @@ const tableColumnsIndexes = ref([]);
6768const customFieldNames = ref ([]);
6869const selected = ref <any []>([]);
6970const isAiResponseReceived = ref ([]);
71+ const primaryKey = props .meta .primaryKey ;
7072
7173const openDialog = async () => {
7274 confirmDialog .value .open ();
@@ -82,9 +84,9 @@ const openDialog = async () => {
8284 analyzeFields ();
8385}
8486
85- // watch(selected, (val) => {
86- // console.log('Selected changed:', val);
87- // }, { deep: true });
87+ watch (selected , (val ) => {
88+ console .log (' Selected changed:' , val );
89+ }, { deep: true });
8890
8991const closeDialog = () => {
9092 confirmDialog .value .close ();
@@ -105,14 +107,11 @@ function generateTableHeaders(outputFields) {
105107 headers .push ({ label: ' Field name' , fieldName: ' label' });
106108 headers .push ({ label: ' Source Images' , fieldName: ' images' });
107109
108- if (outputFields .length > 0 ) {
109- const sampleField = outputFields [0 ];
110- for (const key in sampleField ) {
111- headers .push ({
112- label: formatLabel (key ),
113- fieldName: key ,
114- });
115- }
110+ for (const key in outputFields ) {
111+ headers .push ({
112+ label: formatLabel (key ),
113+ fieldName: key ,
114+ });
116115 }
117116 return headers ;
118117}
@@ -144,22 +143,19 @@ function generateTableColumns() {
144143
145144function setSelected() {
146145 selected .value = records .value .map (() => ({}));
147-
148146 records .value .forEach ((record , index ) => {
149- props .meta .outputFields .forEach ((fieldObj , i ) => {
150- for (const key in fieldObj ) {
151- if (isInColumnEnum (key )){
152- const colEnum = props .meta .columnEnums .find (c => c .name === key );
153- const object = colEnum .enum .find (item => item .value === record [key ]);
154- selected .value [index ][key ] = object ? record [key ] : null ;
155- } else {
156- selected .value [index ][key ] = record [key ];
157- }
147+ for (const key in props .meta .outputFields ) {
148+ if (isInColumnEnum (key )){
149+ const colEnum = props .meta .columnEnums .find (c => c .name === key );
150+ const object = colEnum .enum .find (item => item .value === record [key ]);
151+ selected .value [index ][key ] = object ? record [key ] : null ;
152+ } else {
153+ selected .value [index ][key ] = record [key ];
158154 }
159- selected . value [ index ]. isChecked = true ;
160- selected .value [index ].id = record . id ;
161- isAiResponseReceived .value [index ] = true ;
162- }) ;
155+ }
156+ selected .value [index ].isChecked = true ;
157+ selected .value [index ][ primaryKey ] = record [ primaryKey ] ;
158+ isAiResponseReceived . value [ index ] = true ;
163159 });
164160}
165161
0 commit comments