diff --git a/src/main/kotlin/top/fatweb/api/config/InitConfig.kt b/src/main/kotlin/top/fatweb/api/config/InitConfig.kt index 14b6858..abb56fc 100644 --- a/src/main/kotlin/top/fatweb/api/config/InitConfig.kt +++ b/src/main/kotlin/top/fatweb/api/config/InitConfig.kt @@ -7,7 +7,7 @@ import org.slf4j.LoggerFactory import org.springframework.security.crypto.password.PasswordEncoder import org.springframework.stereotype.Component import top.fatweb.api.entity.permission.User -import top.fatweb.api.service.IUserService +import top.fatweb.api.service.permission.IUserService import kotlin.random.Random @Component diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/Element.kt b/src/main/kotlin/top/fatweb/api/entity/permission/Element.kt new file mode 100644 index 0000000..a285141 --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/Element.kt @@ -0,0 +1,43 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.TableField +import com.baomidou.mybatisplus.annotation.TableId +import com.baomidou.mybatisplus.annotation.TableName +import java.io.Serializable + +/** + *
+ * 页面元素 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_element") +class Element : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 元素名 + */ + @TableField("name") + var name: String? = null + + /** + * 权限ID + */ + @TableField("power_id") + var powerId: Long? = null + + /** + * 菜单ID + */ + @TableField("menu_id") + var menuId: Long? = null + + override fun toString(): String { + return "Element(id=$id, name=$name, powerId=$powerId, menuId=$menuId)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/Group.kt b/src/main/kotlin/top/fatweb/api/entity/permission/Group.kt new file mode 100644 index 0000000..3a1fc11 --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/Group.kt @@ -0,0 +1,46 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.* +import java.io.Serializable + +/** + *+ * 用户组 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_group") +class Group : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 用户组名 + */ + @TableField("name") + var name: String? = null + + /** + * 启用 + */ + @TableField("enable") + var enable: Int? = null + + @TableField("deleted") + @TableLogic + var deleted: Long? = null + + @TableField("version") + @Version + var version: Int? = null + + @TableField(exist = false) + var roles: List+ * 菜单 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_menu") +class Menu : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 菜单名 + */ + @TableField("name") + var name: String? = null + + /** + * URL + */ + @TableField("url") + var url: String? = null + + /** + * 权限ID + */ + @TableField("power_id") + var powerId: Long? = null + + /** + * 父ID + */ + @TableField("parent_id") + var parentId: Long? = null + + override fun toString(): String { + return "Menu(id=$id, name=$name, url=$url, powerId=$powerId, parentId=$parentId)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/Operation.kt b/src/main/kotlin/top/fatweb/api/entity/permission/Operation.kt new file mode 100644 index 0000000..f9a713a --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/Operation.kt @@ -0,0 +1,55 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.TableField +import com.baomidou.mybatisplus.annotation.TableId +import com.baomidou.mybatisplus.annotation.TableName +import java.io.Serializable + +/** + *+ * 功能 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_operation") +class Operation : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 功能名 + */ + @TableField("name") + var name: String? = null + + /** + * 功能编码 + */ + @TableField("code") + var code: String? = null + + /** + * 权限ID + */ + @TableField("power_id") + var powerId: Long? = null + + /** + * 父ID + */ + @TableField("parent_id") + var parentId: Long? = null + + /** + * 页面元素ID + */ + @TableField("element_id") + var elementId: Long? = null + + override fun toString(): String { + return "Operation(id=$id, name=$name, code=$code, powerId=$powerId, parentId=$parentId, elementId=$elementId)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/Power.kt b/src/main/kotlin/top/fatweb/api/entity/permission/Power.kt new file mode 100644 index 0000000..4e52fdd --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/Power.kt @@ -0,0 +1,31 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.TableField +import com.baomidou.mybatisplus.annotation.TableId +import com.baomidou.mybatisplus.annotation.TableName +import java.io.Serializable + +/** + *+ * 权限 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_power") +class Power : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 权限类型 + */ + @TableField("type_id") + var typeId: Long? = null + + override fun toString(): String { + return "Power(id=$id, typeId=$typeId)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/PowerRole.kt b/src/main/kotlin/top/fatweb/api/entity/permission/PowerRole.kt new file mode 100644 index 0000000..43c87af --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/PowerRole.kt @@ -0,0 +1,43 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.* +import java.io.Serializable + +/** + *+ * 中间表-权限-角色 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_power_role") +class PowerRole : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 权限 + */ + @TableField("power_id") + var powerId: Long? = null + + /** + * 角色 + */ + @TableField("role_id") + var roleId: Long? = null + + @TableField("deleted") + @TableLogic + var deleted: Long? = null + + @TableField("version") + @Version + var version: Int? = null + + override fun toString(): String { + return "PowerRole(id=$id, powerId=$powerId, roleId=$roleId, deleted=$deleted, version=$version)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/PowerType.kt b/src/main/kotlin/top/fatweb/api/entity/permission/PowerType.kt new file mode 100644 index 0000000..1f69a83 --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/PowerType.kt @@ -0,0 +1,31 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.TableField +import com.baomidou.mybatisplus.annotation.TableId +import com.baomidou.mybatisplus.annotation.TableName +import java.io.Serializable + +/** + *+ * 权限类型 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_power_type") +class PowerType : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 权限类型名 + */ + @TableField("name") + var name: String? = null + + override fun toString(): String { + return "PowerType(id=$id, name=$name)" + } +} diff --git a/src/main/kotlin/top/fatweb/api/entity/permission/Role.kt b/src/main/kotlin/top/fatweb/api/entity/permission/Role.kt new file mode 100644 index 0000000..c55a604 --- /dev/null +++ b/src/main/kotlin/top/fatweb/api/entity/permission/Role.kt @@ -0,0 +1,55 @@ +package top.fatweb.api.entity.permission + +import com.baomidou.mybatisplus.annotation.* +import java.io.Serializable + +/** + *+ * 角色 + *
+ * + * @author FatttSnake + * @since 2023-10-25 + */ +@TableName("t_role") +class Role : Serializable { + + @TableId("id") + var id: Long? = null + + /** + * 角色名 + */ + @TableField("name") + var name: String? = null + + /** + * 启用 + */ + @TableField("enable") + var enable: Int? = null + + @TableField("deleted") + @TableLogic + var deleted: Long? = null + + @TableField("version") + @Version + var version: Int? = null + + @TableField(exist = false) + var menus: List