- 添加rbac用户表
This commit is contained in:
yulinling 2025-06-10 22:48:56 +08:00
parent 84c77b0b50
commit a50ab7a503
5 changed files with 149 additions and 24 deletions

View File

@ -28,6 +28,7 @@
</scm>
<properties>
<java.version>17</java.version>
<jjwt.veersion>0.9.1</jjwt.veersion>
</properties>
<dependencies>
<dependency>

View File

@ -13,7 +13,7 @@ import java.util.Date;
/**
* <p>
* 用户实体类
* 用户实体类
* </p>
*
* @author yulinling
@ -23,7 +23,7 @@ import java.util.Date;
@NoArgsConstructor
@AllArgsConstructor
@Builder
@TableName("`orm_user`")
@TableName("`wk_user`")
public class User {
/**
* 主键id
@ -34,7 +34,12 @@ public class User {
/**
* 用户名
*/
private String name;
private String username;
/**
* 昵称
*/
private String nickname;
/**
* 加密后的密码
@ -51,6 +56,16 @@ public class User {
*/
private String email;
/**
* 生日
*/
private String birthday;
/**
* 性别,-1,-2
*/
private Integer sex;
/**
* 手机号
*/
@ -67,15 +82,16 @@ public class User {
@TableField("create_time")
private Date createTime;
/**
* 上次更新时间
*/
@TableField("update_time")
private Date updateTime;
/**
* 上次登录时间
*/
@TableField("last_login_time")
private Date lastLoginTime;
/**
* 上次更新时间
*/
@TableField("last_update_time")
private Date lastUpdateTime;
}

View File

@ -42,7 +42,7 @@ public class UserServiceImpl implements UserService {
if (ArrayUtil.isNotEmpty(users)) {
for (User user : users) {
UserVO userVO = new UserVO();
userVO.setName(user.getName());
userVO.setName(user.getUsername());
userVO.setEmail(user.getEmail());
userVO.setPhone(user.getPhone());
userVO.setStatus(user.getStatus());

View File

@ -1,2 +1,62 @@
INSERT INTO `orm_user`(`id`,`name`,`password`,`salt`,`email`,`phone`) VALUES (1, 'user_1', 'ff342e862e7c3285cdc07e56d6b8973b', '412365a109674b2dbb1981ed561a4c70', 'user1@xkcoding.com', '17300000001');
INSERT INTO `orm_user`(`id`,`name`,`password`,`salt`,`email`,`phone`) VALUES (2, 'user_2', '6c6bf02c8d5d3d128f34b1700cb1e32c', 'fcbdd0e8a9404a5585ea4e01d0e4d7a0', 'user2@xkcoding.com', '17300000002');
BEGIN;
INSERT INTO `wk_permission`
VALUES (1072806379288399872, '测试页面', '/test', 1, 'page:test', NULL, 1, 0);
INSERT INTO `wk_permission`
VALUES (1072806379313565696, '测试页面-查询', '/**/test', 2, 'btn:test:query', 'GET', 1, 1072806379288399872);
INSERT INTO `wk_permission`
VALUES (1072806379330342912, '测试页面-添加', '/**/test', 2, 'btn:test:insert', 'POST', 2, 1072806379288399872);
INSERT INTO `wk_permission`
VALUES (1072806379342925824, '监控在线用户页面', '/monitor', 1, 'page:monitor:online', NULL, 2, 0);
INSERT INTO `wk_permission`
VALUES (1072806379363897344, '在线用户页面-查询', '/**/api/monitor/online/user', 2, 'btn:monitor:online:query', 'GET',
1,
1072806379342925824);
INSERT INTO `wk_permission`
VALUES (1072806379384868864, '在线用户页面-踢出', '/**/api/monitor/online/user/kickout', 2,
'btn:monitor:online:kickout',
'DELETE', 2, 1072806379342925824);
COMMIT;
BEGIN;
INSERT INTO `wk_role`
VALUES (1072806379208708096, '管理员', '超级管理员', 1544611947239, 1544611947239);
INSERT INTO `wk_role`
VALUES (1072806379238068224, '普通用户', '普通用户', 1544611947246, 1544611947246);
COMMIT;
BEGIN;
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379288399872);
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379313565696);
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379330342912);
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379342925824);
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379363897344);
INSERT INTO `wk_role_permission`
VALUES (1072806379208708096, 1072806379384868864);
INSERT INTO `wk_role_permission`
VALUES (1072806379238068224, 1072806379288399872);
INSERT INTO `wk_role_permission`
VALUES (1072806379238068224, 1072806379313565696);
COMMIT;
BEGIN;
INSERT INTO `wk_user`
VALUES (1072806377661009920, 'admin', '管理员', 'ff342e862e7c3285cdc07e56d6b8973b',
'412365a109674b2dbb1981ed561a4c70', 'admin@xkcoding.com', 785433600000, 1, '17300000000', 1, 1544611947032,
1544611947032, 1544611947032);
INSERT INTO `wk_user`
VALUES (1072806378780889088, 'user', '普通用户', '6c6bf02c8d5d3d128f34b1700cb1e32c',
'fcbdd0e8a9404a5585ea4e01d0e4d7a0', 'user@xkcoding.com', 785433600000, 1, '17300001111', 1, 1544611947234,
1544611947234, 1544611947234);
COMMIT;
BEGIN;
INSERT INTO `wk_role_user`
VALUES (1072806379208708096, 1072806377661009920);
INSERT INTO `wk_role_user`
VALUES (1072806379238068224, 1072806378780889088);
COMMIT;

View File

@ -1,13 +1,61 @@
DROP TABLE IF EXISTS `orm_user`;
CREATE TABLE `orm_user` (
`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
`name` VARCHAR(32) NOT NULL UNIQUE COMMENT '用户名',
`password` VARCHAR(32) NOT NULL COMMENT '加密后的密码',
`salt` VARCHAR(32) NOT NULL COMMENT '加密使用的盐',
`email` VARCHAR(32) NOT NULL UNIQUE COMMENT '邮箱',
`phone` VARCHAR(15) NOT NULL UNIQUE COMMENT '手机号码',
`status` INT(2) NOT NULL DEFAULT 1 COMMENT '状态,-1逻辑删除0禁用1启用',
`create_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '创建时间',
`last_login_time` DATETIME DEFAULT NULL COMMENT '上次登录时间',
`last_update_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '上次更新时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Spring Boot Demo Orm 系列示例表';
DROP TABLE IF EXISTS `wk_user`;
CREATE TABLE `wk_user`
(
`id` bigint(64) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
`username` VARCHAR(32) NOT NULL UNIQUE COMMENT '用户名',
`nickname` VARCHAR(32) NOT NULL UNIQUE COMMENT '昵称',
`password` VARCHAR(32) NOT NULL COMMENT '加密后的密码',
`salt` VARCHAR(32) NOT NULL COMMENT '加密使用的盐',
`email` VARCHAR(32) NOT NULL UNIQUE COMMENT '邮箱',
`birthday` BIGINT(13) DEFAULT NULL COMMENT '生日',
`sex` INT(2) DEFAULT NULL COMMENT '性别,男-1,女-2',
`phone` VARCHAR(15) DEFAULT NULL UNIQUE COMMENT '手机号',
`status` INT(2) NOT NULL DEFAULT 1 COMMENT '状态 -1删除 0警用 1启用',
`create_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '上次更新时间',
`last_login_time` DATETIME DEFAULT NULL COMMENT '上次登录时间'
) ENGINE = INNODB
DEFAULT CHARSET = UTF8 COMMENT '用户表';
DROP TABLE IF EXISTS `wk_role`;
CREATE TABLE `wk_role`
(
`id` bigint(64) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
`name` VARCHAR(32) NOT NULL UNIQUE COMMENT '角色名',
`description` VARCHAR(100) DEFAULT NULL COMMENT '描述',
`create_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '创建时间',
`update_time` DATETIME NOT NULL DEFAULT NOW() COMMENT '更新时间'
) ENGINE = INNODB
DEFAULT CHARSET = UTF8 COMMENT '角色表';
DROP TABLE IF EXISTS `wk_permission`;
CREATE TABLE `wk_permission`
(
`id` bigint(64) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
`name` VARCHAR(32) NOT NULL UNIQUE COMMENT '权限名',
`url` VARCHAR(1000) DEFAULT NULL COMMENT '类型为页面时,代表前端路由地址,类型为按钮时,代表后端接口地址',
`type` INT(2) NOT NULL COMMENT '权限类型,页面-1,按钮-2',
`permission` VARCHAR(50) DEFAULT NULL COMMENT '权限表达式',
`method` VARCHAR(50) DEFAULT NULL COMMENT '后端接口访问方式',
`sort` INT(11) NOT NULL COMMENT '排序',
`parent_id` BIGINT(64) NOT NULL COMMENT '父级ID'
) ENGINE = INNODB
DEFAULT CHARSET = UTF8 COMMENT '权限表';
DROP TABLE IF EXISTS `wk_role_permission`;
CREATE TABLE `wk_role_permission`
(
`role_id` BIGINT(64) NOT NULL COMMENT '',
`permission_id` BIGINT(64) NOT NULL COMMENT '',
PRIMARY KEY (`role_id`, `permission_id`)
) ENGINE = INNODB
DEFAULT CHARSET = UTF8 COMMENT '角色权限表';
DROP TABLE IF EXISTS `wk_role_user`;
CREATE TABLE `wk_role_user`
(
`role_id` BIGINT(64) NOT NULL COMMENT '',
`user_id` BIGINT(64) NOT NULL COMMENT '',
PRIMARY KEY (`role_id`, `user_id`)
) ENGINE = INNODB
DEFAULT CHARSET = UTF8 COMMENT '角色用户表';