From f0e24117982159ee9ed2a8dc352d8945dab492cd Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Thu, 22 Feb 2024 16:17:59 +0000 Subject: [PATCH] fix(nc-gui): new added field reorder issue in form view --- packages/nc-gui/components/smartsheet/Form.vue | 12 +++--------- packages/nc-gui/composables/useViewData.ts | 16 ++++++++-------- 2 files changed, 11 insertions(+), 17 deletions(-) diff --git a/packages/nc-gui/components/smartsheet/Form.vue b/packages/nc-gui/components/smartsheet/Form.vue index ef54604a35..6ef918d18c 100644 --- a/packages/nc-gui/components/smartsheet/Form.vue +++ b/packages/nc-gui/components/smartsheet/Form.vue @@ -100,8 +100,6 @@ const columns = computed(() => meta?.value?.columns || []) const localColumns = ref[]>([]) -const hiddenColumns = ref[]>([]) - const draggableRef = ref() const systemFieldsIds = ref[]>([]) @@ -238,7 +236,7 @@ function onMove(event: any, isVisibleFormFields = false) { $e('a:form-view:reorder') } -function showOrHideColumn(column: Record, show: boolean, isSidePannel = false) { +async function showOrHideColumn(column: Record, show: boolean, isSidePannel = false) { if (shouldSkipColumn(column)) { // Required field can't be moved !isSidePannel && message.info(t('msg.info.requriedFieldsCantBeMoved')) @@ -248,7 +246,7 @@ function showOrHideColumn(column: Record, show: boolean, isSidePann const fieldIndex = fields.value?.findIndex((f) => f?.fk_column_id === column.fk_column_id) if (fieldIndex !== -1 && fieldIndex !== undefined) { - saveOrUpdate( + await saveOrUpdate( { ...column, show, @@ -333,9 +331,6 @@ function setFormData() { .sort((a, b) => a.order - b.order) .map((c) => ({ ...c, required: !!c.required })) - hiddenColumns.value = col.filter( - (f) => !f.show && !systemFieldsIds.value.includes(f.fk_column_id) && !hiddenColTypes.includes(f.uidt), - ) } function isRequired(_columnObj: Record, required = false) { @@ -1147,8 +1142,7 @@ useEventListener(
- Display Message - + {{ $t('msg.info.formDisplayMessage') }}
, f: Record) => ({ + let order = 1 + const fieldById = (columns || []).reduce((o: Record, f: Record) => { + if (order < f.order) { + order = f.order + } + return { ...o, [f.fk_column_id]: f, - }), - {} as Record, - ) - - let order = 1 + } + }, {} as Record) formViewData.value = view