fix(查询组件): 时间范围组件可以支持绑定开始时间和结束时间两个参数

This commit is contained in:
dataeaseShu 2024-10-14 09:53:20 +08:00
parent 0efaddd552
commit b2ff13ad84

View File

@ -213,6 +213,19 @@ const getOperator = (
return [1, 7].includes(+displayType) ? 'between' : multiple ? 'in' : 'eq'
}
const duplicateRemoval = arr => {
const objList = []
let idList = arr.map(ele => ele.id)
for (let index = 0; index < arr.length; index++) {
const element = arr[index]
if (idList.includes(element.id)) {
objList.push(element)
idList = idList.filter(ele => ele !== element.id)
}
}
return objList
}
export const searchQuery = (queryComponentList, filter, curComponentId, firstLoad) => {
queryComponentList.forEach(ele => {
if (!!ele.propValue?.length) {
@ -357,12 +370,14 @@ export const searchQuery = (queryComponentList, filter, curComponentId, firstLoa
const fieldId = isTree
? getFieldId(treeFieldList, result)
: item.checkedFieldsMap[curComponentId]
let parametersFilter = parameters.reduce((pre, next) => {
if (next.id === fieldId && !pre.length) {
pre.push(next)
}
return pre
}, [])
let parametersFilter = duplicateRemoval(
parameters.reduce((pre, next) => {
if (next.id === fieldId && !pre.length) {
pre.push(next)
}
return pre
}, [])
)
if (item.checkedFieldsMapArr?.[curComponentId]?.length) {
const endTimeFieldId = item.checkedFieldsMapArr?.[curComponentId].find(
@ -378,17 +393,19 @@ export const searchQuery = (queryComponentList, filter, curComponentId, firstLoa
? result[0]
: result[1]
)
parametersFilter = item.parametersArr[curComponentId].filter(
e => e.id === fieldId
parametersFilter = duplicateRemoval(
item.parametersArr[curComponentId].filter(e => e.id === fieldId)
)
const parametersFilterEnd = duplicateRemoval(
item.parametersArr[curComponentId].filter(e => e.id === endTimeFieldId)
)
filter.push({
componentId: ele.id,
fieldId: endTimeFieldId,
operator,
value: resultEnd,
parameters: item.parametersArr[curComponentId].filter(
e => e.id === endTimeFieldId
),
parameters: parametersFilterEnd,
isTree
})
}