fuweng11 commented on code in PR #8040:
URL: https://github.com/apache/inlong/pull/8040#discussion_r1197256501
##########
inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/transform/StreamTransformServiceImpl.java:
##########
@@ -139,16 +142,37 @@ public Integer save(TransformRequest request, UserInfo
opInfo) {
}
@Override
- public List<TransformResponse> listTransform(String groupId, String
streamId) {
+ public PageResult<TransformResponse> listByCondition(TransformPageRequest
request, UserInfo opInfo) {
+ String groupId = request.getInlongGroupId();
+ String streamId = request.getInlongStreamId();
LOGGER.debug("begin to fetch transform info by groupId={} and
streamId={} ", groupId, streamId);
- Preconditions.expectNotBlank(groupId, ErrorCodeEnum.GROUP_ID_IS_EMPTY);
- List<StreamTransformEntity> entityList =
transformMapper.selectByRelatedId(groupId, streamId, null);
+ PageHelper.startPage(request.getPageNum(), request.getPageSize());
+ PageResult<TransformResponse> pageResponse = new PageResult<>();
+
+ checkUser(groupId, opInfo);
+
+ // query result
+ List<StreamTransformEntity> entityList =
transformMapper.selectByCondition(request);
if (CollectionUtils.isEmpty(entityList)) {
- return Collections.emptyList();
+ pageResponse.setList(Collections.emptyList());
+ return pageResponse;
}
- List<Integer> transformIds =
entityList.stream().map(StreamTransformEntity::getId).collect(Collectors.toList());
- List<StreamTransformFieldEntity> fieldEntities =
transformFieldMapper.selectByTransformIds(transformIds);
+ pageResponse.setList(getTransformResponse(entityList));
+ return pageResponse;
+ }
+
+ @Override
+ public TransformResponse get(Integer id, UserInfo opInfo) {
+ StreamTransformEntity entity = transformMapper.selectById(id);
+ List<StreamTransformFieldEntity> fieldEntities =
transformFieldMapper.selectByTransformId(id);
+ if (entity == null) {
+ throw new BusinessException(ErrorCodeEnum.TRANSFORM_NOT_FOUND,
+ String.format("source not found by id=%s", id));
Review Comment:
transform not found
##########
inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/transform/StreamTransformServiceImpl.java:
##########
@@ -357,6 +352,45 @@ public Boolean delete(DeleteTransformRequest request,
UserInfo opInfo) {
return true;
}
+ private List<TransformResponse>
getTransformResponse(List<StreamTransformEntity> entityList) {
+ List<Integer> transformIds =
entityList.stream().map(StreamTransformEntity::getId).collect(Collectors.toList());
+ List<StreamTransformFieldEntity> fieldEntities =
transformFieldMapper.selectByTransformIds(transformIds);
+ Map<Integer, List<StreamField>> fieldInfoMap = fieldEntities.stream()
+ .map(transformFieldEntity -> {
+ StreamField fieldInfo =
CommonBeanUtils.copyProperties(transformFieldEntity, StreamField::new);
+
fieldInfo.setFieldType(transformFieldEntity.getFieldType());
+ fieldInfo.setId(transformFieldEntity.getRankNum());
+ return Pair.of(transformFieldEntity.getTransformId(),
fieldInfo);
+ }).collect(Collectors.groupingBy(Pair::getLeft,
+ Collectors.mapping(Pair::getRight,
Collectors.toList())));
+ List<TransformResponse> transformResponses = entityList.stream()
+ .map(entity -> CommonBeanUtils.copyProperties(entity,
TransformResponse::new))
+ .collect(Collectors.toList());
+ transformResponses.forEach(transformResponse -> {
+ int transformId = transformResponse.getId();
+ List<StreamField> fieldInfos = fieldInfoMap.get(transformId);
+ if (CollectionUtils.isNotEmpty(fieldInfos)) {
+ transformResponse.setFieldList(fieldInfos);
+ }
+ });
+ return transformResponses;
+ }
+
+ private void checkUser(String groupId, UserInfo userInfo) {
Review Comment:
please use userService.checkUser
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]