From 992908ad72f58f1df2b5162e1080976a446d1a27 Mon Sep 17 00:00:00 2001 From: EdwinBetanc0urt Date: Tue, 10 Dec 2019 09:40:07 -0400 Subject: [PATCH] redefine API to provide dictionary metadata. (#197) * Migrate Smart Browser, Process, and Field. * Migrate Window and Tabs. --- src/api/ADempiere/dictionary.js | 31 +- .../ADempiere/ContextMenu/contextMenuMixin.js | 2 +- src/components/ADempiere/DataTable/index.vue | 4 +- src/components/ADempiere/Field/index.vue | 2 + src/components/ADempiere/Tab/tabMixin.js | 2 +- src/store/modules/ADempiere/browser.js | 93 +-- src/store/modules/ADempiere/context.js | 2 +- src/store/modules/ADempiere/data.js | 14 +- src/store/modules/ADempiere/panel.js | 5 +- src/store/modules/ADempiere/process.js | 194 +---- src/store/modules/ADempiere/window.js | 185 ++--- src/utils/ADempiere/contextUtils.js | 124 +++ src/utils/ADempiere/dictionaryUtils.js | 494 +++++++++++ src/utils/ADempiere/globalMethods.js | 5 +- src/utils/ADempiere/index.js | 778 +----------------- .../ADempiere/{valueUtil.js => valueUtils.js} | 81 ++ 16 files changed, 906 insertions(+), 1110 deletions(-) create mode 100644 src/utils/ADempiere/contextUtils.js create mode 100644 src/utils/ADempiere/dictionaryUtils.js rename src/utils/ADempiere/{valueUtil.js => valueUtils.js} (75%) diff --git a/src/api/ADempiere/dictionary.js b/src/api/ADempiere/dictionary.js index 10376e87..08b75bb7 100644 --- a/src/api/ADempiere/dictionary.js +++ b/src/api/ADempiere/dictionary.js @@ -13,19 +13,36 @@ function Instance() { } export function getWindow(uuid, childrenTabs = true) { - return Instance.call(this).requestWindow(uuid, childrenTabs) + return Instance.call(this).requestWindow({ + uuid: uuid, + isWithTabs: childrenTabs, + isConvertedMetadata: true + }) } -export function getProcess(uuid) { - return Instance.call(this).requestProcess(uuid) +export function getProcess(uuid, isConvert = true) { + return Instance.call(this).requestProcess({ + uuid: uuid, + isConvertedMetadata: isConvert, + isConvertedFields: true + }) } -export function getBrowser(uuid) { - return Instance.call(this).requestBrowser(uuid) +export function getBrowser(uuid, isConvert = true) { + return Instance.call(this).requestBrowser({ + uuid: uuid, + isConvertedMetadata: isConvert, + isConvertedFields: true + }) } -export function getTab(uuid, childrenFields = true) { - return Instance.call(this).requestTab(uuid, childrenFields) +export function getTab(uuid, childrenFields = true, isConvert = true) { + return Instance.call(this).requestTab({ + uuid: uuid, + isWithFields: childrenFields, + isConvertedMetadata: isConvert, + isConvertedFields: true + }) } export function getField(uuid) { diff --git a/src/components/ADempiere/ContextMenu/contextMenuMixin.js b/src/components/ADempiere/ContextMenu/contextMenuMixin.js index e29badee..c2c5859e 100644 --- a/src/components/ADempiere/ContextMenu/contextMenuMixin.js +++ b/src/components/ADempiere/ContextMenu/contextMenuMixin.js @@ -1,6 +1,6 @@ import { showNotification } from '@/utils/ADempiere/notification' import Item from './items' -import { convertFieldListToShareLink } from '@/utils/ADempiere/valueUtil' +import { convertFieldListToShareLink } from '@/utils/ADempiere/valueUtils' import { supportedTypes, exportFileFromJson } from '@/utils/ADempiere/exportUtil' import ROUTES from '@/utils/ADempiere/zoomWindow' diff --git a/src/components/ADempiere/DataTable/index.vue b/src/components/ADempiere/DataTable/index.vue index 0ea3d824..0204c9f0 100644 --- a/src/components/ADempiere/DataTable/index.vue +++ b/src/components/ADempiere/DataTable/index.vue @@ -1079,8 +1079,8 @@ export default { }, getFieldDefinition(fieldDefinition, row) { var styleSheet = '' - if (fieldDefinition && (fieldDefinition.id !== null || fieldDefinition.conditions.length)) { - fieldDefinition.conditions.forEach(condition => { + if (fieldDefinition && (fieldDefinition.id !== null || fieldDefinition.conditionsList.length)) { + fieldDefinition.conditionsList.forEach(condition => { var columns = evaluator.parseDepends(condition.condition) var conditionLogic = condition.condition columns.forEach(column => { diff --git a/src/components/ADempiere/Field/index.vue b/src/components/ADempiere/Field/index.vue index a7fb0d76..61104d62 100644 --- a/src/components/ADempiere/Field/index.vue +++ b/src/components/ADempiere/Field/index.vue @@ -7,6 +7,7 @@