[fix](headless)Time format of a dimension should be updated to modelDetail.

This commit is contained in:
jerryjzhang
2026-02-14 15:21:05 +08:00
parent d658e437fb
commit 29c1119ee2

View File

@@ -39,6 +39,8 @@ import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors;
import static com.tencent.supersonic.common.pojo.DimensionConstants.DIMENSION_TIME_FORMAT;
@Service
@Slf4j
public class ModelServiceImpl implements ModelService {
@@ -530,17 +532,23 @@ public class ModelServiceImpl implements ModelService {
Optional<Dimension> dimOptional = modelDetail.getDimensions().stream().filter(
dimension -> dimension.getBizName().equals(dimensionReq.getBizName()))
.findFirst();
String dateFormat = null;
if (dimensionReq.getExt().containsKey(DIMENSION_TIME_FORMAT)) {
dateFormat = (String) dimensionReq.getExt().get(DIMENSION_TIME_FORMAT);
}
if (dimOptional.isPresent()) {
Dimension dimension = dimOptional.get();
dimension.setExpr(dimensionReq.getExpr());
dimension.setName(dimensionReq.getName());
dimension.setType(DimensionType.valueOf(dimensionReq.getType()));
dimension.setDescription(dimensionReq.getDescription());
dimension.setDateFormat(dateFormat);
} else {
Dimension dimension = Dimension.builder().name(dimensionReq.getName())
.bizName(dimensionReq.getBizName()).expr(dimensionReq.getExpr())
.type(DimensionType.valueOf(dimensionReq.getType()))
.description(dimensionReq.getDescription()).build();
.dateFormat(dateFormat).description(dimensionReq.getDescription())
.build();
modelDetail.getDimensions().add(dimension);
}
});