|
@@ -4,14 +4,14 @@ import cn.hutool.core.collection.CollUtil;
|
|
|
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
|
|
|
import com.citu.framework.common.pojo.PageResult;
|
|
|
import com.citu.framework.common.util.object.BeanUtils;
|
|
|
-import com.citu.module.menduner.system.controller.base.position.PositionListReqVO;
|
|
|
-import com.citu.module.menduner.system.controller.base.position.PositionPageReqVO;
|
|
|
-import com.citu.module.menduner.system.controller.base.position.PositionSaveReqVO;
|
|
|
-import com.citu.module.menduner.system.controller.base.visits.MdeVisitsListReqVO;
|
|
|
import com.citu.module.menduner.system.controller.app.position.vo.AppPositionChildrenRespVO;
|
|
|
import com.citu.module.menduner.system.controller.app.position.vo.AppPositionClickReqVO;
|
|
|
import com.citu.module.menduner.system.controller.app.position.vo.AppPositionListReqVO;
|
|
|
import com.citu.module.menduner.system.controller.app.position.vo.AppPositionSimpleRespVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.position.PositionListReqVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.position.PositionPageReqVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.position.PositionSaveReqVO;
|
|
|
+import com.citu.module.menduner.system.controller.base.visits.MdeVisitsListReqVO;
|
|
|
import com.citu.module.menduner.system.convert.PositionConvert;
|
|
|
import com.citu.module.menduner.system.dal.dataobject.position.PositionDO;
|
|
|
import com.citu.module.menduner.system.dal.mysql.position.PositionMapper;
|
|
@@ -178,14 +178,20 @@ public class PositionServiceImpl implements PositionService {
|
|
|
return null;
|
|
|
}
|
|
|
List<AppPositionChildrenRespVO> convertList = PositionConvert.INSTANCE.convertList(areaList);
|
|
|
- //获取父节点
|
|
|
- List<AppPositionChildrenRespVO> collect = convertList.stream().filter(m -> m.getParentId() == 0).map(
|
|
|
- (m) -> {
|
|
|
- m.setChildren(getChildren(m, convertList));
|
|
|
- return m;
|
|
|
- }
|
|
|
- ).collect(Collectors.toList());
|
|
|
- return collect;
|
|
|
+
|
|
|
+ List<AppPositionChildrenRespVO> convertListSort = convertList.stream()
|
|
|
+ .sorted(Comparator.comparing(AppPositionChildrenRespVO::getLevel))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ // 获取父节点并设置path
|
|
|
+ List<AppPositionChildrenRespVO> result = convertListSort.stream()
|
|
|
+ .filter(root -> root.getParentId() == 0)
|
|
|
+ .map(root -> {
|
|
|
+ root.setPath(String.valueOf(root.getId()));
|
|
|
+ root.setChildren(getChildren(root, convertListSort));
|
|
|
+ return root;
|
|
|
+ })
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -216,15 +222,14 @@ public class PositionServiceImpl implements PositionService {
|
|
|
* @return 根节点信息
|
|
|
*/
|
|
|
private List<AppPositionChildrenRespVO> getChildren(AppPositionChildrenRespVO root, List<AppPositionChildrenRespVO> all) {
|
|
|
- List<AppPositionChildrenRespVO> children = all.stream().filter(m -> {
|
|
|
- return Objects.equals(m.getParentId(), root.getId());
|
|
|
- }).map(
|
|
|
- (m) -> {
|
|
|
- m.setChildren(getChildren(m, all));
|
|
|
- return m;
|
|
|
- }
|
|
|
- ).collect(Collectors.toList());
|
|
|
- return children;
|
|
|
+ return all.stream()
|
|
|
+ .filter(child -> Objects.equals(child.getParentId(), root.getId()))
|
|
|
+ .map(child -> {
|
|
|
+ child.setPath(root.getPath() + "," + child.getId());
|
|
|
+ child.setChildren(getChildren(child, all));
|
|
|
+ return child;
|
|
|
+ })
|
|
|
+ .collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
@Override
|