fix(查询组件): 时间范围组件可以支持绑定开始时间和结束时间两个参数
This commit is contained in:
parent
0efaddd552
commit
b2ff13ad84
@ -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
|
||||
})
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user