查询的表:
tb_item_cat
查询的列:
id、name、is_parent
查询条件:
parentId
Dao层只需要查询商品分类表tb_item_cat即可,属于单表查询,单表查询我们没有必要自己写Mapper了,使用Mybatis逆向工程生成的Mapper即可。
1.2.2、Service层参数:
Long parentId
业务逻辑:
1、根据parentId查询节点列表。
2、转换成EasyUITreeNode列表。
3、返回。
返回值:
List<EasyUITreeNode>
先写接口,在taotao-manager-interface工程中:
package com.taotao.service;import java.util.List;
import com.taotao.common.pojo.EasyUITreeNode;
/**
* 商品类目管理接口
* @author chenmingjun
* @date 2018年11月12日下午8:15:24
* @version 1.0
*/
public interface ItemCatService {
/**
* 根据商品类目的父节点id,查询该节点的子类目列表
* @param parentId
* @return
*/
List<EasyUITreeNode> getItemCatList(Long parentId);
}
再写实现类,在taotao-manager-service工程中:
/*** 商品类目管理Service
* @author chenmingjun
* @date 2018年11月12日下午8:15:58
* @version 1.0
*/
@Service
public class ItemCatServiceImpl implements ItemCatService {
@Autowired
private TbItemCatMapper itemCatMapper;
@Override
public List<EasyUITreeNode> getItemCatList(Long parentId) {
TbItemCatExample example = new TbItemCatExample();
// 设置查询条件
Criteria criteria = example.createCriteria();
criteria.andParentIdEqualTo(parentId);
List<TbItemCat> list = itemCatMapper.selectByExample(example);
// 将list转换成EasyUITreeNode列表
List<EasyUITreeNode> resultList = new ArrayList<>();
for (TbItemCat tbItemCat : list) {
EasyUITreeNode node = new EasyUITreeNode();
node.setId(tbItemCat.getId());
node.setText(tbItemCat.getName());
// 如果节点下有子节点则state的值为"closed",如果节点下没有子节点则state的值为"open"
node.setState(tbItemCat.getIsParent() ? "closed" : "open");
// 将节点添加到list集合(列表)
resultList.add(node);
}
return resultList;
}
}
1.2.3、发布服务