本文共 1833 字,大约阅读时间需要 6 分钟。
可以看到打开规格参数界面时,与进入界面后点击某分类时,分别有两个几乎同样的请求,不同的只是两个参数不同,
刚进界面的是0点击分类时是该分类的ID,下面就要完成查询功能
2. 查询功能实现
创建AttrResponseVo,查看接口文档可以看到返回vo相比较与原生PO多了俩属性
@Datapublic class AttrResponseVo extends AttrEntity { private String catelogName; private String groupName;}
service层代码
@Override public PageUtils baseAttrList(Mapparams, Long catelogId) { QueryWrapper queryWrapper = new QueryWrapper (); if(catelogId != 0){ queryWrapper.eq("catelog_id", catelogId); } String key = (String) params.get("key"); if(StringUtils.isNotEmpty(key)){ queryWrapper.and((obj) ->{ obj.eq("attr_id",key).or().like("attr_name",key); }); } IPage page = this.page( new Query ().getPage(params), queryWrapper ); PageUtils pageUtils = new PageUtils(page); List records = page.getRecords(); List attrResponseVos = records.stream().map((attrEntity) -> { AttrResponseVo attrResponseVo = new AttrResponseVo(); BeanUtils.copyProperties(attrEntity, attrResponseVo); CategoryEntity categoryEntity = categoryService.getById(attrEntity.getCatelogId()); if (categoryEntity != null) { attrResponseVo.setCatelogName(categoryEntity.getName()); } AttrAttrgroupRelationEntity attrAttrgroupRelationEntity = attrAttrgroupRelationService. getOne(new QueryWrapper ().eq("attr_id", attrEntity.getAttrId())); if (attrAttrgroupRelationEntity != null) { AttrGroupEntity attrGroupEntity = attrGroupService.getById(attrAttrgroupRelationEntity.getAttrGroupId()); attrResponseVo.setGroupName(attrGroupEntity.getAttrGroupName()); } return attrResponseVo; }).collect(Collectors.toList()); pageUtils.setList(attrResponseVos); return pageUtils; }
测试查询效果
转载地址:http://pfezk.baihongyu.com/