枚举定义
package com.youlai.system.common.enums; /** * 菜单类型枚举 * * @author haoxr * @since 2022/4/23 9:36 */ public enum MenuTypeEnum implements IBaseEnum<Integer> { NULL(0, null), MENU(1, "菜单"), CATALOG(2, "目录"), EXTLINK(3, "外链"), BUTTON(4, "按钮"); @Getter @EnumValue // Mybatis-Plus 提供注解表示插入数据库时插入该值 private Integer value; @Getter // @JsonValue // 表示对枚举序列化时返回此字段 private String label; MenuTypeEnum(Integer value, String label) { this.value = value; this.label = label; } }
mapper.xml
在查询条件中使用定义的枚举作为条件
<!-- 获取权限和拥有权限的角色列表 --> <select id="getRolePermsList" resultMap="PremRolesMap"> SELECT t2.`code` role_code, t3.perm FROM `sys_role_menu` t1 INNER JOIN sys_role t2 ON t1.role_id = t2.id INNER JOIN sys_menu t3 ON t1.menu_id = t3.id WHERE type = '${@com.youlai.system.common.enums.MenuTypeEnum@BUTTON.getValue()}' <if test="roleCode!=null and roleCode.trim() neq ''"> AND t2.`code` = #{roleCode} </if> </select>
开源项目
- SpringCloud + Vue3 微服务商城
Github | Gitee | |
后端 | youlai-mall🍃 | youlai-mall🍃 |
前端 | mall-admin🌺 | mall-admin🌺 |
移动端 | mall-app🍌 | mall-app🍌 |
SpringBoot 3+ Vue3 单体权限管理系统
Github | Gitee | |
后端 | youlai-boot🍃 | youlai-boot🍃 |
前端 | vue3-element-admin🌺 | vue3-element-admin🌺 |