fix: issue with time field as condition in linkage rules (#6738)

This commit is contained in:
Katherine 2025-04-22 11:13:29 +08:00 committed by GitHub
parent b979e8b71a
commit 3049f35490
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -145,15 +145,7 @@ const processCondition = async (
const processAdvancedCondition = async (condition, variables, localVariables, jsonLogic) => {
const operator = condition.op;
const rightValue = await parseVariableValue(condition.rightVar, variables, localVariables);
let leftValue = await parseVariableValue(condition.leftVar, variables, localVariables);
const leftCollectionField = await variables.getCollectionField(condition.leftVar, localVariables);
if (
leftValue &&
['datetime', 'date', 'datetimeNoTz', 'dateOnly', 'unixTimestamp'].includes(leftCollectionField.type)
) {
const format = getFormatFromDateStr(rightValue);
leftValue = dayjs.utc(leftValue).local().format(format);
}
const leftValue = await parseVariableValue(condition.leftVar, variables, localVariables);
if (operator) {
return jsonLogic.apply({ [operator]: [leftValue, rightValue] });
}