fix: Fix the display column of the lookup when it has a default value. (#216)
parent
d7745092f9
commit
1ecd55d1e0
|
@ -99,13 +99,6 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
isLoading(value) {
|
|
||||||
if (value) {
|
|
||||||
this.value = ''
|
|
||||||
} else {
|
|
||||||
this.value = this.metadata.displayColumn
|
|
||||||
}
|
|
||||||
},
|
|
||||||
valueModel(value) {
|
valueModel(value) {
|
||||||
if (this.metadata.inTable) {
|
if (this.metadata.inTable) {
|
||||||
this.value = value
|
this.value = value
|
||||||
|
@ -192,10 +185,10 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
* @param {boolean} show triggers when the pull-down menu appears or disappears
|
* @param {boolean} isShowList triggers when the pull-down menu appears or disappears
|
||||||
*/
|
*/
|
||||||
getDataLookupList(showList) {
|
getDataLookupList(isShowList) {
|
||||||
if (showList) {
|
if (isShowList) {
|
||||||
// TODO: Evaluate if length = 1 and this element key = blanckOption
|
// TODO: Evaluate if length = 1 and this element key = blanckOption
|
||||||
if (this.getterLookupList.length === 0) {
|
if (this.getterLookupList.length === 0) {
|
||||||
this.remoteMethod()
|
this.remoteMethod()
|
||||||
|
|
|
@ -102,10 +102,10 @@ const context = {
|
||||||
state.context
|
state.context
|
||||||
},
|
},
|
||||||
getContextClientId: (state) => {
|
getContextClientId: (state) => {
|
||||||
return state.context['#AD_Client_ID']
|
return parseInt(state.context['#AD_Client_ID'], 10)
|
||||||
},
|
},
|
||||||
getContextOrgId: (state) => {
|
getContextOrgId: (state) => {
|
||||||
return state.context['#AD_Org_ID']
|
return parseInt(state.context['#AD_Org_ID'], 10)
|
||||||
},
|
},
|
||||||
// Using to read only in data tables
|
// Using to read only in data tables
|
||||||
getContextIsActive: (state) => (parentUuid) => {
|
getContextIsActive: (state) => (parentUuid) => {
|
||||||
|
|
|
@ -19,8 +19,13 @@ const lookup = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
actions: {
|
actions: {
|
||||||
getLookupItemFromServer({ commit, rootGetters }, parameters) {
|
getLookupItemFromServer({ commit, rootGetters }, {
|
||||||
const { parentUuid, containerUuid, value, tableName, directQuery } = parameters
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
directQuery,
|
||||||
|
value
|
||||||
|
}) {
|
||||||
if (isEmptyValue(directQuery)) {
|
if (isEmptyValue(directQuery)) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -54,7 +59,7 @@ const lookup = {
|
||||||
parsedDirectQuery: directQuery,
|
parsedDirectQuery: directQuery,
|
||||||
tableName: tableName,
|
tableName: tableName,
|
||||||
roleUuid: getCurrentRole(),
|
roleUuid: getCurrentRole(),
|
||||||
clientId: parseInt(rootGetters.getContextClientId)
|
clientId: rootGetters.getContextClientId
|
||||||
})
|
})
|
||||||
return option
|
return option
|
||||||
})
|
})
|
||||||
|
@ -66,8 +71,12 @@ const lookup = {
|
||||||
* tableName,
|
* tableName,
|
||||||
* query
|
* query
|
||||||
*/
|
*/
|
||||||
getLookupListFromServer({ commit, rootGetters }, parameters) {
|
getLookupListFromServer({ commit, rootGetters }, {
|
||||||
const { parentUuid, containerUuid, tableName, query } = parameters
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
query
|
||||||
|
}) {
|
||||||
if (isEmptyValue(query)) {
|
if (isEmptyValue(query)) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -102,7 +111,7 @@ const lookup = {
|
||||||
tableName: tableName,
|
tableName: tableName,
|
||||||
parsedQuery: parsedQuery,
|
parsedQuery: parsedQuery,
|
||||||
roleUuid: getCurrentRole(),
|
roleUuid: getCurrentRole(),
|
||||||
clientId: parseInt(rootGetters.getContextClientId)
|
clientId: rootGetters.getContextClientId
|
||||||
})
|
})
|
||||||
return options
|
return options
|
||||||
})
|
})
|
||||||
|
@ -110,19 +119,24 @@ const lookup = {
|
||||||
console.warn('Get Lookup List, Select Base - Error ' + error.code + ': ' + error.message)
|
console.warn('Get Lookup List, Select Base - Error ' + error.code + ': ' + error.message)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
deleteLookupList({ commit, state }, params) {
|
deleteLookupList({ commit, state }, {
|
||||||
const { parentUuid, containerUuid, tableName, query, directQuery, value } = params
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
query,
|
||||||
|
directQuery,
|
||||||
|
value
|
||||||
|
}) {
|
||||||
let parsedDirectQuery = directQuery
|
let parsedDirectQuery = directQuery
|
||||||
if (directQuery && parsedDirectQuery.includes('@')) {
|
if (directQuery && parsedDirectQuery.includes('@')) {
|
||||||
parsedDirectQuery = parseContext({
|
parsedDirectQuery = parseContext({
|
||||||
parentUuid: parentUuid,
|
parentUuid,
|
||||||
containerUuid: containerUuid,
|
containerUuid,
|
||||||
value: parsedDirectQuery
|
value: parsedDirectQuery
|
||||||
}, true)
|
}, true)
|
||||||
}
|
}
|
||||||
const lookupItem = state.lookupItem.filter(itemLookup => {
|
const lookupItem = state.lookupItem.filter(itemLookup => {
|
||||||
return itemLookup.parsedDirectQuery !== params.parsedDirectQuery &&
|
return itemLookup.parsedDirectQuery !== parsedDirectQuery &&
|
||||||
itemLookup.tableName !== tableName &&
|
itemLookup.tableName !== tableName &&
|
||||||
itemLookup.value !== value &&
|
itemLookup.value !== value &&
|
||||||
itemLookup.roleUuid !== getCurrentRole()
|
itemLookup.roleUuid !== getCurrentRole()
|
||||||
|
@ -148,41 +162,52 @@ const lookup = {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getters: {
|
getters: {
|
||||||
getLookupItem: (state, getters, rootState, rootGetters) => (params) => {
|
getLookupItem: (state, getters, rootState, rootGetters) => ({
|
||||||
let parsedDirectQuery = params.directQuery
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
directQuery,
|
||||||
|
value
|
||||||
|
}) => {
|
||||||
|
let parsedDirectQuery = directQuery
|
||||||
if (parsedDirectQuery && parsedDirectQuery.includes('@')) {
|
if (parsedDirectQuery && parsedDirectQuery.includes('@')) {
|
||||||
parsedDirectQuery = parseContext({
|
parsedDirectQuery = parseContext({
|
||||||
parentUuid: params.parentUuid,
|
parentUuid,
|
||||||
containerUuid: params.containerUuid,
|
containerUuid,
|
||||||
value: parsedDirectQuery
|
value: parsedDirectQuery
|
||||||
}, true)
|
}, true)
|
||||||
}
|
}
|
||||||
const lookupItem = state.lookupItem.find(itemLookup => {
|
const lookupItem = state.lookupItem.find(itemLookup => {
|
||||||
return itemLookup.parsedDirectQuery === parsedDirectQuery &&
|
return itemLookup.parsedDirectQuery === parsedDirectQuery &&
|
||||||
itemLookup.tableName === params.tableName &&
|
itemLookup.tableName === tableName &&
|
||||||
itemLookup.roleUuid === getCurrentRole() &&
|
itemLookup.roleUuid === getCurrentRole() &&
|
||||||
itemLookup.clientId === parseInt(rootGetters.getContextClientId) &&
|
itemLookup.clientId === rootGetters.getContextClientId &&
|
||||||
itemLookup.value === params.value
|
itemLookup.value === value
|
||||||
})
|
})
|
||||||
if (lookupItem) {
|
if (lookupItem) {
|
||||||
return lookupItem.option
|
return lookupItem.option
|
||||||
}
|
}
|
||||||
return undefined
|
return undefined
|
||||||
},
|
},
|
||||||
getLookupList: (state, getters, rootState, rootGetters) => (params) => {
|
getLookupList: (state, getters, rootState, rootGetters) => ({
|
||||||
let parsedQuery = params.query
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
query
|
||||||
|
}) => {
|
||||||
|
let parsedQuery = query
|
||||||
if (parsedQuery && parsedQuery.includes('@')) {
|
if (parsedQuery && parsedQuery.includes('@')) {
|
||||||
parsedQuery = parseContext({
|
parsedQuery = parseContext({
|
||||||
parentUuid: params.parentUuid,
|
parentUuid,
|
||||||
containerUuid: params.containerUuid,
|
containerUuid,
|
||||||
value: parsedQuery
|
value: parsedQuery
|
||||||
}, true)
|
}, true)
|
||||||
}
|
}
|
||||||
const lookupList = state.lookupList.find(itemLookup => {
|
const lookupList = state.lookupList.find(itemLookup => {
|
||||||
return itemLookup.parsedQuery === parsedQuery &&
|
return itemLookup.parsedQuery === parsedQuery &&
|
||||||
itemLookup.tableName === params.tableName &&
|
itemLookup.tableName === tableName &&
|
||||||
itemLookup.roleUuid === getCurrentRole() &&
|
itemLookup.roleUuid === getCurrentRole() &&
|
||||||
itemLookup.clientId === parseInt(rootGetters.getContextClientId)
|
itemLookup.clientId === rootGetters.getContextClientId
|
||||||
})
|
})
|
||||||
if (lookupList) {
|
if (lookupList) {
|
||||||
const resultLookup = lookupList.list.filter(lookup => {
|
const resultLookup = lookupList.list.filter(lookup => {
|
||||||
|
@ -195,15 +220,34 @@ const lookup = {
|
||||||
return []
|
return []
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
*
|
* Get all lookups, item and list joined
|
||||||
*/
|
*/
|
||||||
getLookupAll: (state, getters, rootState, rootGetters) => (parameters) => {
|
getLookupAll: (state, getters) => ({
|
||||||
const item = getters.getLookupItem(parameters)
|
parentUuid,
|
||||||
const list = getters.getLookupList(parameters)
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
query,
|
||||||
|
directQuery,
|
||||||
|
value
|
||||||
|
}) => {
|
||||||
|
const item = getters.getLookupItem({
|
||||||
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
directQuery,
|
||||||
|
value
|
||||||
|
})
|
||||||
|
const list = getters.getLookupList({
|
||||||
|
parentUuid,
|
||||||
|
containerUuid,
|
||||||
|
tableName,
|
||||||
|
query
|
||||||
|
})
|
||||||
|
const allList = list
|
||||||
if (item && !list.find(itemLookup => itemLookup.key === item.key)) {
|
if (item && !list.find(itemLookup => itemLookup.key === item.key)) {
|
||||||
list.push(item)
|
allList.push(item)
|
||||||
}
|
}
|
||||||
return list
|
return allList
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue