Skip to content

Commit

Permalink
Possible bugfix KNOWAGE-8571
Browse files Browse the repository at this point in the history
  • Loading branch information
BojanSovticEngIT committed Jul 19, 2024
1 parent 2f440a7 commit c11097b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ export const loadFilters = async (
}

filtersData = await getFilters(document, userRole, $http)
formatDrivers(filtersData)
formatDrivers(filtersData, dateFormat)

if (document.navigationParams || document.formattedCrossNavigationParameters) {
if (document.navigationFromDashboard) loadNavigationInitialValuesFromDashboard(document, filtersData, dateFormat)
Expand Down Expand Up @@ -124,9 +124,9 @@ const getFilters = async (document: any, userRole: string | null, $http: any) =>
return filtersData
}

const formatDrivers = (filtersData: { filterStatus: iParameter[]; isReadyForExecution: boolean } | null) => {
const formatDrivers = (filtersData: { filterStatus: iParameter[]; isReadyForExecution: boolean } | null, dateFormat: string) => {
filtersData?.filterStatus?.forEach((el: iParameter) => {
if (el.type === 'DATE') formatDateDriver(el)
if (el.type === 'DATE') formatDateDriver(el, dateFormat)
else el.parameterValue = !el.multivalue || (el.valueSelection === 'man_in' && !el.selectionType) ? [{ value: '', description: '' }] : []

if (el.driverDefaultValue?.length > 0) {
Expand All @@ -144,7 +144,7 @@ const formatDrivers = (filtersData: { filterStatus: iParameter[]; isReadyForExec
}
})

formatDateDriver(el)
formatDateDriver(el, dateFormat)
}

if (el.data) {
Expand All @@ -170,14 +170,14 @@ const addDefaultEmptyParameterValuesIfNoValuesPresent = (el: iParameter) => {
if (el.parameterValue[0] && !el.parameterValue[0].description) el.parameterValue[0].description = el.parameterDescription ? el.parameterDescription[0] : ''
}

const formatDateDriver = (el: any) => {
const formatDateDriver = (el: any, dateFormat: string) => {
if (!el.parameterValue || !el.parameterValue[0]) {
el.parameterValue = [{ value: null, description: '' }]
return
}

if (el.type === 'DATE' && !el.selectionType && el.valueSelection === 'man_in' && el.showOnPanel === 'true' && el.visible) {
el.parameterValue[0].value = getValidDate('' + el.parameterValue[0].value)
el.parameterValue[0].value = getValidDate('' + el.parameterValue[0].value, dateFormat)
}
}

Expand Down
17 changes: 13 additions & 4 deletions src/modules/documentExecution/main/DocumentExecutionHelpers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,12 +123,21 @@ const removeEmptyToolbarItems = (toolbarMenuItems: any[]) => {
}
}

export function getValidDate(value: string, serverDateFormat: string) {
let momentDate = moment(deepcopy(value))
const validFormats = [serverDateFormat, 'DD/MM/YYYY', 'DD/MM/YYYY HH:mm:ss.SSS']
export const getValidDate = (value: string, serverDateFormat: string) => {
const extractedDateValue = extractDatePart(value)
let momentDate = moment(deepcopy(extractedDateValue))
const tempServerDateFormat = serverDateFormat === 'yyyy-MM-dd' ? 'YYYY-MM-DD' : serverDateFormat
const validFormats = [tempServerDateFormat, 'DD/MM/YYYY', 'DD/MM/YYYY HH:mm:ss.SSS']
for (let i = 0; i < validFormats.length; i++) {
momentDate = moment(deepcopy(value), validFormats[i])
momentDate = moment(deepcopy(extractedDateValue), validFormats[i])
if (momentDate.isValid()) return momentDate.toDate()
}
return ''
}

const extractDatePart = (dateString: string) => {
if (dateString.includes('#')) {
return dateString.split('#')[0]
}
return dateString
}

0 comments on commit c11097b

Please sign in to comment.