public List<ProductTypeDto> getTreeProductTypeList(Long orgId,Long sourceId,Short sourceType) { //根据机构获取产品类型 List<ProductTypeDto> productTypeDtos = productRuleMapper.selectByProductTypeByOrg(orgId); for (ProductTypeDto productTypeDto : productTypeDtos) { productTypeDto.setIdType(1+"?"+productTypeDto.getId()); if(productTypeDto.getIdType().equals(sourceType+"?"+sourceId)){ productTypeDto.setSelected(true); }else{ productTypeDto.setSelected(false); } } //根据机构获取产品 List<ProductTypeDto> productDtos = productRuleMapper.selectByProductByOrg(orgId); for (ProductTypeDto productDto : productDtos) { productDto.setIdType(2+"?"+productDto.getId()); if(productDto.getIdType().equals(sourceType+"?"+sourceId)){ productDto.setSelected(true); }else{ productDto.setSelected(false); } } //组合list List<ProductTypeDto> list = new ArrayList<>(); HashMap<Long, ProductTypeDto> map = new HashMap<>(); //添加类型到map for (ProductTypeDto productTypeDto : productTypeDtos) { map.put(productTypeDto.getId(),productTypeDto); } //遍历类型 for (ProductTypeDto productTypeDto : productTypeDtos) { if(productTypeDto.getPid().toString().equals("0")){ list.add(productTypeDto); }else { ProductTypeDto productTypeDto1 = map.get(productTypeDto.getPid()); productTypeDto1.getChildren().add(productTypeDto); } } //遍历产品 for (ProductTypeDto productDto : productDtos) { ProductTypeDto productTypeDto1 = map.get(productDto.getPid()); productTypeDto1.getChildren().add(productDto); } return list; }
组装树形数据接口(类型+产品)
最新推荐文章于 2023-06-27 15:16:38 发布