From d809b915b86b50d0c856a8cac3dfdc4964e22ce8 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Tue, 18 Feb 2020 22:19:33 +0000 Subject: [PATCH] --- ayanova/src/components/gz-data-table.vue | 2 +- ayanova/src/views/ay-data-list-view.vue | 56 +++++++++++++++++++----- 2 files changed, 46 insertions(+), 12 deletions(-) diff --git a/ayanova/src/components/gz-data-table.vue b/ayanova/src/components/gz-data-table.vue index 8bf2a9ca..c664d475 100644 --- a/ayanova/src/components/gz-data-table.vue +++ b/ayanova/src/components/gz-data-table.vue @@ -781,7 +781,7 @@ function loadFormSettings(vm) { //0=no list view, -1=unsaved list view so any number greater than zero means there sb a cached local copy of a saved list view if ( formSettings.temp.dataTable && - formSettings.temp.dataTable.cachedListView != undefined + formSettings.temp.dataTable.cachedListView != null ) { vm.listView = formSettings.temp.dataTable.cachedListView; } else { diff --git a/ayanova/src/views/ay-data-list-view.vue b/ayanova/src/views/ay-data-list-view.vue index 8526215b..3348aec4 100644 --- a/ayanova/src/views/ay-data-list-view.vue +++ b/ayanova/src/views/ay-data-list-view.vue @@ -12,17 +12,26 @@ READONLY: {{ formState.readOnly }}
--> - + effectiveListView: {{ effectiveListView }} + +
+ obj: {{ obj }} + - --> - key:{{ dataListKey }}, id: {{ listViewId }} + @@ -307,7 +316,9 @@ function generateMenu(vm) { // function initForm(vm) { //return Promise.resolve(); - return populateFieldDefinitions(vm).then(fetchLocalizedFieldNames(vm)); + return populateFieldDefinitions(vm) + .then(fetchLocalizedFieldNames(vm)) + .then(setEffectiveListView(vm)); } //////////////////// @@ -367,9 +378,32 @@ function setEffectiveListView(vm) { } } else if (vm.listViewId == 0) { //get default list view - + //http://localhost:7575/api/v8/DataListView/default/TestWidgetDataList + window.$gz.api.get("DataListView/default/" + vm.dataListKey).then(res => { + if (res.error != undefined) { + throw res.error; + } else { + vm.effectiveListView = res.data; + } + }); } else { + //listview has an id value //check if cached, if not then fetch, cache and set + if ( + formSettings.temp.dataTable && + formSettings.temp.dataTable.cachedListView != null + ) { + vm.effectiveListView = formSettings.temp.dataTable.cachedListView; + } else { + //fetch it and cache it + window.$gz.api.get("DataListView/" + vm.listViewId).then(res => { + if (res.error != undefined) { + throw res.error; + } else { + vm.effectiveListView = res.data.listView; + } + }); + } } }