前言
本系列博客基于B站谷粒商城,只作为本人学习总结使用。这里我会比较注重业务逻辑的编写和相关配置的流程。有问题可以评论或者联系我互相交流。原视频地址谷粒商城雷丰阳版。本人git仓库地址Draknessssw的谷粒商城
查询所有菜单项功能
在商品服务下新增方法
实现类方法首先查询所有的分类,然后通过streamAPI的Filter来筛选出一级分类(父类id为0的分类)
这里直接使用baseMapper而不是使用CategoryDao.baseMapper是因为实现类的父类中已经有CategoryDao的泛型
但是,要查询二级分类,可以在一级分类起步,将子分类信息通过streamAPI的map方法重新映射一下。这里设置当前菜单项的子菜单项,然后返回进行排序,之后收集成List
接着写这个方法
要查询二级以上分类,首先去Category实体类添加children字段
方法来专门递归获取子菜单项,需要传参是当前菜单项和所有的菜单项(起坐标作用)
在这个方法里面,筛选条件是当前菜单项的父id等于指定菜单项的id,然后递归查询和通过sort属性排序所有的菜单项
启动人人开源前端项目和后台管理系统
跨域问题的解决
在网关模块添加配置,允许请求头、请求方法、请求源、请求的cookie信息等
配置商品服务的路由
注掉它原本的跨域配置
删除菜单项功能
功能逻辑
MybatisPlus的相关配置
配置文件
mybatis-plus:
mapper-locations: classpath:/mapper/**/*.xml
#设置实体类的自增主键
global-config:
db-config:
id-type: auto
#逻辑删除
logic-delete-value: 1
logic-not-delete-value: 0
自定义显示字段的属性表达