Skip to content

Commit

Permalink
[KNOWAGE-7679]
Browse files Browse the repository at this point in the history
  • Loading branch information
BojanSovticEngIT authored Aug 23, 2024
1 parent 1365b54 commit 751ddd8
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 21 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { luxonFormatDate } from '@/helpers/commons/localeHelper';
import { luxonFormatDate } from '@/helpers/commons/localeHelper'
import { AxiosResponse } from 'axios'
import { iParameter } from './KnParameterSidebar'

Expand Down Expand Up @@ -29,7 +29,7 @@ export async function dataDependencyCheck(loadedParameters: { filterStatus: iPar
loading = true

resetParameterValueToEmptyValues(parameter)
if (resetValue) return
if (resetValue || !parameter.parameterValue?.[0]?.value) return

const postData = { label: document?.label, parameters: getFormattedParameters(loadedParameters, userDateFormat), paramId: parameter.urlName, role: sessionRole }
let url = '2.0/documentExeParameters/admissibleValues'
Expand Down Expand Up @@ -95,7 +95,7 @@ const getValueAndDescriptionIndex = (parameter: iParameter) => {
return { valueIndex: valueIndex ?? '', descriptionIndex: descriptionIndex ?? '' }
}

export function getFormattedParameters(loadedParameters: { filterStatus: iParameter[], isReadyForExecution: boolean }, userDateFormat: string) {
export function getFormattedParameters(loadedParameters: { filterStatus: iParameter[]; isReadyForExecution: boolean }, userDateFormat: string) {
let parameters = [] as any[]

Object.keys(loadedParameters.filterStatus).forEach((key: any) => {
Expand All @@ -104,8 +104,7 @@ export function getFormattedParameters(loadedParameters: { filterStatus: iParame
if (parameter.type === 'DATE') {
const dateValue = getFormattedDateParameterValue(parameter, userDateFormat)
parameters.push({ urlName: parameter.urlName, value: dateValue, description: dateValue })
}
else if (!parameter.multivalue) {
} else if (!parameter.multivalue) {
if (!parameter.parameterValue[0]) parameter.parameterValue[0] = { value: '', description: '' }
parameters.push({ urlName: parameter.urlName, value: parameter.parameterValue[0].value, description: parameter.parameterValue[0].description })
} else {
Expand Down Expand Up @@ -154,14 +153,16 @@ export function addDefaultValueForSelectionTypeParameters(parameter: iParameter)
}
}

function addSingleDriverDefaultValue(parameter: iParameter, valueAndDescriptionIndex: { valueIndex: string, descriptionIndex: string }) {
function addSingleDriverDefaultValue(parameter: iParameter, valueAndDescriptionIndex: { valueIndex: string; descriptionIndex: string }) {
if (!parameter.driverDefaultValue[0]) return
parameter.parameterValue = [{ value: parameter.driverDefaultValue[0][valueAndDescriptionIndex.valueIndex], description: parameter.driverDefaultValue[0][valueAndDescriptionIndex.descriptionIndex] }]
removeNonCompatibleParameterValues(parameter)
}

function addMultiDriverDefaultValue(parameter: iParameter, valueAndDescriptionIndex: { valueIndex: string, descriptionIndex: string }) {
parameter.parameterValue = parameter.driverDefaultValue.map((defaultValue: any) => { return { value: defaultValue[valueAndDescriptionIndex.valueIndex], description: defaultValue[valueAndDescriptionIndex.descriptionIndex] } })
function addMultiDriverDefaultValue(parameter: iParameter, valueAndDescriptionIndex: { valueIndex: string; descriptionIndex: string }) {
parameter.parameterValue = parameter.driverDefaultValue.map((defaultValue: any) => {
return { value: defaultValue[valueAndDescriptionIndex.valueIndex], description: defaultValue[valueAndDescriptionIndex.descriptionIndex] }
})
removeNonCompatibleParameterValues(parameter)
}

Expand All @@ -171,4 +172,4 @@ function removeNonCompatibleParameterValues(parameter: iParameter) {
if (index === undefined || index === -1) parameter.parameterValue.splice(i, 1)
}
if (!parameter.multivalue && parameter.parameterValue.length === 0) parameter.parameterValue = [{ value: '', description: '' }]
}
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import { AxiosResponse } from 'axios'
import { iParameter, } from './KnParameterSidebar'
import { iParameter } from './KnParameterSidebar'
import { formatParameterDataOptions, getFormattedParameters, addDefaultValueForSelectionTypeParameters, resetParameterValueToEmptyValues } from './KnParameterSidebarDataDependency'


export function setLovsDependency(loadedParameters: { filterStatus: iParameter[], isReadyForExecution: boolean }, parameter: iParameter) {
export function setLovsDependency(loadedParameters: { filterStatus: iParameter[]; isReadyForExecution: boolean }, parameter: iParameter) {
if (parameter.dependencies.lov.length !== 0) {
parameter.dependencies.lov.forEach((dependency: any) => {
const index = loadedParameters.filterStatus.findIndex((param: any) => {
Expand All @@ -18,19 +17,19 @@ export function setLovsDependency(loadedParameters: { filterStatus: iParameter[]
}
}

export async function updateLovDependency(loadedParameters: { filterStatus: iParameter[], isReadyForExecution: boolean }, parameter: iParameter, loading: boolean, document: any, sessionRole: string | null, $http: any, mode: string, resetValue: boolean, userDateFormat: string) {
export async function updateLovDependency(loadedParameters: { filterStatus: iParameter[]; isReadyForExecution: boolean }, parameter: iParameter, loading: boolean, document: any, sessionRole: string | null, $http: any, mode: string, resetValue: boolean, userDateFormat: string) {
if (parameter && parameter.lovDependentParameters) {
for (let i = 0; i < parameter.lovDependentParameters.length; i++) {
await lovDependencyCheck(loadedParameters, parameter.lovDependentParameters[i], loading, document, sessionRole, $http, mode, resetValue, userDateFormat)
}
}
}

export async function lovDependencyCheck(loadedParameters: { filterStatus: iParameter[], isReadyForExecution: boolean }, parameter: iParameter, loading: boolean, document: any, sessionRole: string | null, $http: any, mode: string, resetValue: boolean, userDateFormat: string) {
export async function lovDependencyCheck(loadedParameters: { filterStatus: iParameter[]; isReadyForExecution: boolean }, parameter: iParameter, loading: boolean, document: any, sessionRole: string | null, $http: any, mode: string, resetValue: boolean, userDateFormat: string) {
loading = true

resetParameterValueToEmptyValues(parameter)
if (resetValue) return
if (resetValue || !parameter.parameterValue?.[0]?.value) return

const postData = { label: document?.label, parameters: getFormattedParameters(loadedParameters, userDateFormat), paramId: parameter.urlName, role: sessionRole }
let url = '2.0/documentExeParameters/admissibleValues'
Expand All @@ -39,11 +38,14 @@ export async function lovDependencyCheck(loadedParameters: { filterStatus: iPara
url = document.type === 'businessModel' ? `1.0/businessmodel/${document.name}/admissibleValues` : `/3.0/datasets/${document.label}/admissibleValues`
}

await $http.post(process.env.VUE_APP_RESTFUL_SERVICES_PATH + url, postData).then((response: AxiosResponse<any>) => {
parameter.data = response.data.result.data
parameter.metadata = response.data.result.metadata
formatParameterAfterDataDependencyCheck(parameter)
}).catch(() => { })
await $http
.post(process.env.VUE_APP_RESTFUL_SERVICES_PATH + url, postData)
.then((response: AxiosResponse<any>) => {
parameter.data = response.data.result.data
parameter.metadata = response.data.result.metadata
formatParameterAfterDataDependencyCheck(parameter)
})
.catch(() => {})
loading = false
}

Expand All @@ -69,4 +71,4 @@ export function formatParameterAfterDataDependencyCheck(parameter: any) {
}

addDefaultValueForSelectionTypeParameters(parameter)
}
}

0 comments on commit 751ddd8

Please sign in to comment.