Преглед изворни кода

Merge remote-tracking branch 'origin/main'

пре 1 месец
родитељ
комит
87bf86857f

+ 86 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/SysMenu.java

@@ -0,0 +1,86 @@
+package edu.travel.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import edu.travel.annotation.LinkConst;
+import edu.travel.entity.dict.EnableDict;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Map;
+
+/**
+ * 菜单表
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "sys_menu")
+public class SysMenu extends BaseEntity implements Serializable {
+    /**
+     * 主键id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 父菜单id,目录菜单的父菜单为null
+     */
+    @TableField(value = "parent_id")
+    private Long parentId;
+
+    /**
+     * 前端表单路由名称,仅用于menu_type为1的菜单类型
+     */
+    @TableField(value = "title")
+    private String title;
+
+    /**
+     * (0: 目录 1: 菜单 2: 按钮 )
+     */
+    @TableField(value = "`type`")
+    private Integer type;
+
+    /**
+     * 组件路径
+     */
+    @TableField(value = "component")
+    private String component;
+
+    /**
+     * 页面路由
+     */
+    @TableField(value = "`path`")
+    private String path;
+
+    /**
+     * 组件名称
+     */
+    @TableField(value = "`name`")
+    private String name;
+
+    /**
+     * 菜单状态 0禁用1启用
+     */
+    @TableField(value = "`status`")
+    private Byte status;
+
+    /**
+     * 菜单是否启用
+     */
+    @TableField(exist = false)
+    @LinkConst(fieldName = "status",clazz = EnableDict.class)
+    private Map codeEnableDict;
+
+    /**
+     * 是否缓存字典
+     */
+    @TableField(exist = false)
+    @LinkConst(fieldName = "type",clazz = EnableDict.class)
+    private Map codeMenuTypeDict;
+
+}

+ 61 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/SysMenuExtraData.java

@@ -0,0 +1,61 @@
+package edu.travel.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import edu.travel.annotation.LinkConst;
+import edu.travel.entity.dict.IsCacheDict;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Map;
+
+/**
+ * 菜单附加信息表
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "sys_menu_extra_data")
+public class SysMenuExtraData extends BaseEntity implements Serializable {
+    /**
+     * 主键id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 菜单id
+     */
+    @TableField(value = "menu_id")
+    private Long menuId;
+
+    /**
+     * 菜单图标名称
+     */
+    @TableField(value = "icon")
+    private String icon;
+
+    /**
+     * 菜单显示名称
+     */
+    @TableField(value = "title")
+    private String title;
+
+    /**
+     * 是否缓存 0不缓存 1缓存
+     */
+    @TableField(value = "no_cache")
+    private Boolean noCache;
+
+    /**
+     * 是否缓存字典
+     */
+    @TableField(exist = false)
+    @LinkConst(fieldName = "noCache",clazz = IsCacheDict.class)
+    private Map codeIsCacheDict;
+
+}

+ 43 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/SysRoleMenu.java

@@ -0,0 +1,43 @@
+package edu.travel.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * 角色与菜单关联表
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName(value = "sys_role_menu")
+public class SysRoleMenu implements Serializable {
+    /**
+     * 主键id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+    /**
+     * 角色id
+     */
+    @TableField(value = "role_id")
+    private Long roleId;
+
+    /**
+     * 菜单id
+     */
+    @TableField(value = "menu_id")
+    private Long menuId;
+
+    /**
+     * 项目code
+     */
+    @TableField(value = "project")
+    private String project;
+}

+ 17 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/dict/EnableDict.java

@@ -0,0 +1,17 @@
+package edu.travel.entity.dict;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class EnableDict {
+
+    private final  Map<Integer,String> EnableDict = new HashMap<Integer,String>();
+
+    public EnableDict(){
+        EnableDict.put(0,"禁用");
+        EnableDict.put(1,"启用");
+    }
+    public String getValue(Integer key){
+        return EnableDict.containsKey(key) ?  EnableDict.get(key) : null;
+    }
+}

+ 29 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/dict/IsCacheDict.java

@@ -0,0 +1,29 @@
+package edu.travel.entity.dict;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * IsCacheDict 类。
+ * <p>
+ * 描述:是否缓存 (0: 不缓存  1:缓存)
+ *
+ * @author huangwenwen
+ * @date 2025/2/14
+ */
+
+
+public class IsCacheDict {
+
+    private final Map<Integer,String> IsCacheDict = new HashMap<>();
+
+    public IsCacheDict(){
+        IsCacheDict.put(0,"不缓存");
+        IsCacheDict.put(1,"缓存");
+    }
+
+    public String getValue(Integer key){
+        return IsCacheDict.containsKey(key) ? IsCacheDict.get(key):null;
+    }
+
+}

+ 30 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/dict/MenuTypeDict.java

@@ -0,0 +1,30 @@
+package edu.travel.entity.dict;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * MenuTypeDict 类。
+ * <p>
+ * 描述:后台管理菜单类型 (0: 目录 1: 菜单 2: 按钮 )
+ *
+ * @author huangwenwen
+ * @date 2025/2/14
+ */
+
+
+public class MenuTypeDict {
+
+    private final Map<Integer,String> menuTypeDict = new HashMap<>();
+
+    public MenuTypeDict(){
+        menuTypeDict.put(0,"目录");
+        menuTypeDict.put(1,"菜单");
+        menuTypeDict.put(2,"按钮");
+    }
+
+    public String getValue(Integer key){
+        return menuTypeDict.containsKey(key) ? menuTypeDict.get(key):null;
+    }
+
+}

+ 29 - 0
edu-travel-oauth/src/main/java/edu/travel/entity/dict/UserStatusDict.java

@@ -0,0 +1,29 @@
+package edu.travel.entity.dict;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * UserStatusDict 类。
+ * <p>
+ * 描述:用户状态常量字典
+ *
+ * @author huangwenwen
+ * @date 2025/2/14
+ */
+
+
+public class UserStatusDict {
+
+    private final Map<Integer,String> userStatusMap = new HashMap<>();
+
+    public UserStatusDict(){
+        userStatusMap.put(0,"禁用");
+        userStatusMap.put(1,"启用");
+    }
+
+    public String getValue(Integer key){
+        return userStatusMap.containsKey(key)?userStatusMap.get(key):null;
+    }
+
+}

+ 7 - 0
edu-travel-oauth/src/main/java/edu/travel/mapper/SysMenuMapper.java

@@ -0,0 +1,7 @@
+package edu.travel.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import edu.travel.entity.SysMenu;
+
+public interface SysMenuMapper extends BaseMapper<SysMenu> {
+}

+ 27 - 0
edu-travel-oauth/src/main/resources/mapper/SysMenuMapper.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="edu.travel.mapper.SysMenuMapper">
+  <resultMap id="BaseResultMap" type="edu.travel.entity.SysMenu">
+    <!--@mbg.generated-->
+    <!--@Table sys_menu-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="parent_id" jdbcType="BIGINT" property="parentId" />
+    <result column="title" jdbcType="VARCHAR" property="title" />
+    <result column="type" jdbcType="INTEGER" property="type" />
+    <result column="component" jdbcType="VARCHAR" property="component" />
+    <result column="path" jdbcType="VARCHAR" property="path" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="status" jdbcType="TINYINT" property="status" />
+    <result column="deleted_flag" jdbcType="TINYINT" property="deleteFlag" />
+    <result column="project" jdbcType="VARCHAR" property="project" />
+    <result column="create_user_id" jdbcType="BIGINT" property="createUserId" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_user_id" jdbcType="BIGINT" property="updateUserId" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, parent_id, title, `type`, component, `path`, `name`, `status`, deleted_flag, 
+    project, create_user_id, create_time, update_user_id, update_time
+  </sql>
+</mapper>

+ 22 - 0
edu-travel-oauth/src/main/resources/mapper/SysRoleMapper.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="edu.travel.mapper.SysRoleMapper">
+  <resultMap id="BaseResultMap" type="edu.travel.entity.SysRole">
+    <!--@mbg.generated-->
+    <!--@Table sys_role-->
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="remark" jdbcType="VARCHAR" property="remark" />
+    <result column="deleted_flag" jdbcType="TINYINT" property="deleteFlag" />
+    <result column="project" jdbcType="VARCHAR" property="project" />
+    <result column="create_user_id" jdbcType="BIGINT" property="createUserId" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="update_user_id" jdbcType="BIGINT" property="updateUserId" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+  </resultMap>
+  <sql id="Base_Column_List">
+    <!--@mbg.generated-->
+    id, `name`, remark, deleted_flag, project, create_user_id, create_time, update_user_id, 
+    update_time
+  </sql>
+</mapper>