From 74439f778fdb855070a86cbd3ef947790ca94327 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Mon, 17 Feb 2020 23:08:36 +0000 Subject: [PATCH] --- ayanova/src/components/gz-data-table.vue | 70 +++++++++++++++++++++--- 1 file changed, 61 insertions(+), 9 deletions(-) diff --git a/ayanova/src/components/gz-data-table.vue b/ayanova/src/components/gz-data-table.vue index ee82e795..9b72f75e 100644 --- a/ayanova/src/components/gz-data-table.vue +++ b/ayanova/src/components/gz-data-table.vue @@ -454,15 +454,37 @@ export default { } }, created() { - //rehydrate last form settings - var formSettings = window.$gz.form.getFormSettings(this.formKey); - if (formSettings.saved && formSettings.saved.itemsPerPage) { - this.dataTablePagingOptions.itemsPerPage = - formSettings.saved.itemsPerPage; - } - if (formSettings.temp && formSettings.temp.page) { - this.dataTablePagingOptions.page = formSettings.temp.page; - } + //get pick lists + var vm = this; + + initForm(vm) + .then(() => { + // path: "/ay-data-list-view/:listViewId/:dataListKey", + + //rehydrate last form settings + var formSettings = window.$gz.form.getFormSettings(this.formKey); + if (formSettings.saved && formSettings.saved.itemsPerPage) { + this.dataTablePagingOptions.itemsPerPage = + formSettings.saved.itemsPerPage; + } + if (formSettings.temp && formSettings.temp.page) { + this.dataTablePagingOptions.page = formSettings.temp.page; + } + + vm.formState.ready = true; + vm.dataListKey = this.$route.params.dataListKey; + vm.listViewId = this.$route.params.listViewId; + window.$gz.eventBus.$on("menu-click", clickHandler); + //NOTE: this would normally be in getDataFromAPI but this form doesn't really need that function so doing it here + //modify the menu as necessary + generateMenu(this, false); //default is never read only and passing in this vm + //init disable save button so it can be enabled only on edit to show dirty form + window.$gz.eventBus.$emit("menu-disable-item", FORM_KEY + ":save"); + }) + .catch(err => { + vm.formState.ready = true; + window.$gz.errorHandler.handleFormError(err); + }); } }; @@ -621,4 +643,34 @@ async function fetchEnums(columnData) { } } } + + +///////////////////////////////// +// +// +function initForm(vm) { + return populatePickLists(vm); + //If need to call more then...: + // .then(() => { + // //Must use return here + // return initDataObject(vm); + // }); +} + +//////////////////// +// +function populatePickLists(vm) { + //http://localhost:7575/api/v8/DataListView/PickList?ListKey=TestWidgetDataList + return window.$gz.api + .get("DataListView/PickList?ListKey=" + vm.dataListKey) + .then(res => { + if (res.error != undefined) { + window.$gz.errorHandler.handleFormError(res.error, vm); + } else { + vm.pickLists.listViews = res.data; + window.$gz.form.addNoSelectionItem(vm.pickLists.listViews); + //vm.pickLists.availableDataListViews.unshift({ name: "-", id: 0 }); + } + }); +}