修改offsetDate脚本函数

This commit is contained in:
谷成伟 2024-12-06 10:54:10 +08:00
parent 2b01ac09a2
commit 1eb1e39c81

View File

@ -30,27 +30,27 @@ public class FunctionOffsetDate extends AbstractFunction {
public AviatorObject call(Map<String, Object> env, AviatorObject dateData, AviatorObject dimData, AviatorObject offsetData) {
Date date = (Date) dateData.getValue(env);
String dim = (String) dimData.getValue(env);
Integer offset = (Integer) offsetData.getValue(env);
Long offset = (Long) offsetData.getValue(env);
Date result = null;
switch (dim) {
case "day":
result = DateUtil.offset(date, DateField.DAY_OF_MONTH, offset);
result = DateUtil.offset(date, DateField.DAY_OF_MONTH, offset.intValue());
break;
case "month":
result = DateUtil.offset(date, DateField.MONTH, offset);
result = DateUtil.offset(date, DateField.MONTH, offset.intValue());
break;
case "year":
result = DateUtil.offset(date, DateField.YEAR, offset);
result = DateUtil.offset(date, DateField.YEAR, offset.intValue());
break;
case "hour":
result = DateUtil.offset(date, DateField.HOUR, offset);
result = DateUtil.offset(date, DateField.HOUR, offset.intValue());
break;
case "minute":
result = DateUtil.offset(date, DateField.MINUTE, offset);
result = DateUtil.offset(date, DateField.MINUTE, offset.intValue());
break;
case "second":
result = DateUtil.offset(date, DateField.SECOND, offset);
result = DateUtil.offset(date, DateField.SECOND, offset.intValue());
break;
default:
log.error("不支持的维度: {}", dim);