Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
yangxiujun
/
paidan_demo
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 21e01e9f
authored
Jul 12, 2023
by
chamberone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 用户添加权限资源模块
1 parent
8713b158
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
70 additions
and
74 deletions
project-interface/src/main/java/com/dituhui/pea/pojo/ResourceInfo.java
project-interface/src/main/java/com/dituhui/pea/pojo/RoleInfo.java
project-interface/src/main/java/com/dituhui/pea/pojo/UserLoginDTO.java
project-user/src/main/java/com/dituhui/pea/user/dao/ResourceDao.java
project-user/src/main/java/com/dituhui/pea/user/dao/RoleResourceDao.java
project-user/src/main/java/com/dituhui/pea/user/entity/ResourceEntity.java
project-user/src/main/java/com/dituhui/pea/user/service/UserService.java
project-interface/src/main/java/com/dituhui/pea/pojo/ResourceInfo.java
View file @
21e01e9
package
com
.
dituhui
.
pea
.
pojo
;
package
com
.
dituhui
.
pea
.
pojo
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
import
lombok.Data
;
/**
/**
* 资源信息
* 资源信息
* @author zl
*/
*/
@Data
@Data
public
class
ResourceInfo
{
public
class
ResourceInfo
{
...
@@ -30,20 +28,8 @@ public class ResourceInfo {
...
@@ -30,20 +28,8 @@ public class ResourceInfo {
*/
*/
private
String
description
;
private
String
description
;
/**
/**
* 创建人
* 资源类型1菜单2功能点3所属组织
*/
private
String
createdBy
;
/**
* 创建时间
*/
private
Date
createdTime
;
/**
* 更新人
*/
private
String
updatedBy
;
/**
* 更新时间
*/
*/
private
Date
updatedTim
e
;
private
Integer
typ
e
;
}
}
project-interface/src/main/java/com/dituhui/pea/pojo/RoleInfo.java
View file @
21e01e9
package
com
.
dituhui
.
pea
.
pojo
;
package
com
.
dituhui
.
pea
.
pojo
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotBlank
;
import
java.util.Date
;
import
lombok.Data
;
/**
/**
* 角色信息
* 角色信息
* @author zl
*/
*/
@Data
@Data
public
class
RoleInfo
{
public
class
RoleInfo
{
...
@@ -30,22 +28,5 @@ public class RoleInfo {
...
@@ -30,22 +28,5 @@ public class RoleInfo {
*/
*/
@NotBlank
(
message
=
"角色条件不能为空!"
)
@NotBlank
(
message
=
"角色条件不能为空!"
)
private
String
extra
;
private
String
extra
;
/**
* 创建人
*/
private
String
createdBy
;
/**
* 创建时间
*/
private
Date
createdTime
;
/**
* 更新人
*/
private
String
updatedBy
;
/**
* 更新时间
*/
private
Date
updatedTime
;
}
}
project-interface/src/main/java/com/dituhui/pea/pojo/UserLoginDTO.java
View file @
21e01e9
...
@@ -23,6 +23,6 @@ public class UserLoginDTO {
...
@@ -23,6 +23,6 @@ public class UserLoginDTO {
private
String
token
;
private
String
token
;
private
List
<
RoleInfo
>
roles
;
private
List
<
RoleInfo
>
roles
;
private
List
<
ResourceInfo
>
resource
;
private
List
<
ResourceInfo
>
resource
s
;
}
}
project-user/src/main/java/com/dituhui/pea/user/dao/ResourceDao.java
View file @
21e01e9
...
@@ -11,8 +11,6 @@ import java.util.List;
...
@@ -11,8 +11,6 @@ import java.util.List;
/**
/**
* 资源表 用户对某种具体权限或者功能的描述(Resource)表数据库访问层
* 资源表 用户对某种具体权限或者功能的描述(Resource)表数据库访问层
*
*
* @author makejava
* @since 2020-12-09 15:33:27
*/
*/
public
interface
ResourceDao
extends
JpaRepository
<
ResourceEntity
,
String
>,
public
interface
ResourceDao
extends
JpaRepository
<
ResourceEntity
,
String
>,
JpaSpecificationExecutor
<
ResourceEntity
>,
CrudRepository
<
ResourceEntity
,
String
>
{
JpaSpecificationExecutor
<
ResourceEntity
>,
CrudRepository
<
ResourceEntity
,
String
>
{
...
...
project-user/src/main/java/com/dituhui/pea/user/dao/RoleResourceDao.java
View file @
21e01e9
package
com
.
dituhui
.
pea
.
user
.
dao
;
package
com
.
dituhui
.
pea
.
user
.
dao
;
import
com.dituhui.pea.user.entity.RoleResourceEntity
;
import
com.dituhui.pea.user.entity.RoleResourceEntity
;
import
java.util.List
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.data.repository.CrudRepository
;
import
org.springframework.data.repository.CrudRepository
;
...
@@ -9,33 +11,40 @@ import org.springframework.data.repository.CrudRepository;
...
@@ -9,33 +11,40 @@ import org.springframework.data.repository.CrudRepository;
/**
/**
* 角色资源表(RoleResource)表数据库访问层
* 角色资源表(RoleResource)表数据库访问层
*
*
* @author zl
* @since 2020-12-09 15:33:55
*/
*/
public
interface
RoleResourceDao
extends
JpaRepository
<
RoleResourceEntity
,
String
>,
public
interface
RoleResourceDao
extends
JpaRepository
<
RoleResourceEntity
,
String
>,
JpaSpecificationExecutor
<
RoleResourceEntity
>,
CrudRepository
<
RoleResourceEntity
,
String
>
{
JpaSpecificationExecutor
<
RoleResourceEntity
>,
CrudRepository
<
RoleResourceEntity
,
String
>
{
/**
/**
* 根据角色ID和资源ID查询
* 根据角色ID和资源ID查询
* @param roleId 角色ID
*
* @param resourceId 资源ID
* @param roleId 角色ID
* @return
* @param resourceId 资源ID
*/
* @return
RoleResourceEntity
findByRoleIdAndResourceId
(
String
roleId
,
String
resourceId
);
*/
RoleResourceEntity
findByRoleIdAndResourceId
(
String
roleId
,
String
resourceId
);
/**
/**
* 根据角色ID删除对应的资源关系
* 根据角色ID查询
* @param roleId 角色ID
*
*/
* @param roleIds 角色ID
void
deleteByRoleId
(
String
roleId
);
* @return
*/
/**
List
<
RoleResourceEntity
>
findByRoleIdIn
(
List
<
String
>
roleIds
);
* 根据角色ID和资源ID删除
* @param roleId 角色ID
/**
* @param resourceId 资源ID
* 根据角色ID删除对应的资源关系
*/
*
void
deleteByRoleIdAndResourceId
(
String
roleId
,
String
resourceId
);
* @param roleId 角色ID
*/
void
deleteByRoleId
(
String
roleId
);
/**
* 根据角色ID和资源ID删除
*
* @param roleId 角色ID
* @param resourceId 资源ID
*/
void
deleteByRoleIdAndResourceId
(
String
roleId
,
String
resourceId
);
}
}
project-user/src/main/java/com/dituhui/pea/user/entity/ResourceEntity.java
View file @
21e01e9
...
@@ -56,6 +56,11 @@ public class ResourceEntity implements Serializable {
...
@@ -56,6 +56,11 @@ public class ResourceEntity implements Serializable {
@Column
(
name
=
"CREATED_BY"
)
@Column
(
name
=
"CREATED_BY"
)
private
String
createdBy
;
private
String
createdBy
;
/**
/**
* 名称
*/
@Column
(
name
=
"parent_id"
)
private
String
parentId
;
/**
* 创建时间
* 创建时间
*/
*/
@Column
(
name
=
"CREATED_TIME"
)
@Column
(
name
=
"CREATED_TIME"
)
...
...
project-user/src/main/java/com/dituhui/pea/user/service/UserService.java
View file @
21e01e9
...
@@ -19,16 +19,20 @@ import com.dituhui.pea.enums.RedisKeyGroup;
...
@@ -19,16 +19,20 @@ import com.dituhui.pea.enums.RedisKeyGroup;
import
com.dituhui.pea.enums.StatusCodeEnum
;
import
com.dituhui.pea.enums.StatusCodeEnum
;
import
com.dituhui.pea.enums.ThirdPartyEnum
;
import
com.dituhui.pea.enums.ThirdPartyEnum
;
import
com.dituhui.pea.exception.BusinessException
;
import
com.dituhui.pea.exception.BusinessException
;
import
com.dituhui.pea.pojo.ResourceInfo
;
import
com.dituhui.pea.pojo.RoleInfo
;
import
com.dituhui.pea.pojo.RoleInfo
;
import
com.dituhui.pea.pojo.ThirdUserInfo
;
import
com.dituhui.pea.pojo.ThirdUserInfo
;
import
com.dituhui.pea.pojo.UserInfo
;
import
com.dituhui.pea.pojo.UserInfo
;
import
com.dituhui.pea.pojo.UserLoginDTO
;
import
com.dituhui.pea.pojo.UserLoginDTO
;
import
com.dituhui.pea.user.commom.RedisService
;
import
com.dituhui.pea.user.commom.RedisService
;
import
com.dituhui.pea.user.constant.TextConstant
;
import
com.dituhui.pea.user.constant.TextConstant
;
import
com.dituhui.pea.user.dao.ResourceDao
;
import
com.dituhui.pea.user.dao.RoleDao
;
import
com.dituhui.pea.user.dao.RoleDao
;
import
com.dituhui.pea.user.dao.RoleResourceDao
;
import
com.dituhui.pea.user.dao.UserDao
;
import
com.dituhui.pea.user.dao.UserDao
;
import
com.dituhui.pea.user.dao.UserRoleDao
;
import
com.dituhui.pea.user.dao.UserRoleDao
;
import
com.dituhui.pea.user.entity.RoleEntity
;
import
com.dituhui.pea.user.entity.RoleEntity
;
import
com.dituhui.pea.user.entity.RoleResourceEntity
;
import
com.dituhui.pea.user.entity.UserEntity
;
import
com.dituhui.pea.user.entity.UserEntity
;
import
com.dituhui.pea.user.entity.UserRoleEntity
;
import
com.dituhui.pea.user.entity.UserRoleEntity
;
import
com.dituhui.pea.user.factory.ThirdStrategy
;
import
com.dituhui.pea.user.factory.ThirdStrategy
;
...
@@ -71,6 +75,12 @@ public class UserService {
...
@@ -71,6 +75,12 @@ public class UserService {
@Autowired
@Autowired
RoleDao
roleDao
;
RoleDao
roleDao
;
@Autowired
RoleResourceDao
roleResourceDao
;
@Autowired
ResourceDao
resourceDao
;
public
Result
<?>
userLogin
(
String
account
,
String
password
)
{
public
Result
<?>
userLogin
(
String
account
,
String
password
)
{
UserEntity
user
=
userDao
.
findByAccountAndPassword
(
account
,
SecureUtil
.
md5
(
password
));
UserEntity
user
=
userDao
.
findByAccountAndPassword
(
account
,
SecureUtil
.
md5
(
password
));
log
.
info
(
"{}/{} login"
,
account
,
password
);
log
.
info
(
"{}/{} login"
,
account
,
password
);
...
@@ -84,16 +94,23 @@ public class UserService {
...
@@ -84,16 +94,23 @@ public class UserService {
// 获取角色
// 获取角色
List
<
UserRoleEntity
>
userRoles
=
userRoleDao
.
findByUserId
(
user
.
getId
());
List
<
UserRoleEntity
>
userRoles
=
userRoleDao
.
findByUserId
(
user
.
getId
());
if
(
CollectionUtils
.
isNotEmpty
(
userRoles
))
{
if
(
CollectionUtils
.
isNotEmpty
(
userRoles
))
{
List
<
RoleEntity
>
roles
=
roleDao
List
<
String
>
ids
=
userRoles
.
stream
().
map
(
r
->
r
.
getRoleId
()).
collect
(
Collectors
.
toList
());
.
findAllById
(
userRoles
.
stream
().
map
(
r
->
r
.
getRoleId
()).
collect
(
Collectors
.
toList
())
);
List
<
RoleEntity
>
roles
=
roleDao
.
findAllById
(
ids
);
if
(
CollectionUtils
.
isNotEmpty
(
roles
))
{
if
(
CollectionUtils
.
isNotEmpty
(
roles
))
{
userDTO
.
setRoles
(
roles
.
stream
().
map
(
r
->
BeanUtil
.
copyProperties
(
r
,
RoleInfo
.
class
))
userDTO
.
setRoles
(
roles
.
stream
().
map
(
r
->
BeanUtil
.
copyProperties
(
r
,
RoleInfo
.
class
))
.
collect
(
Collectors
.
toList
()));
.
collect
(
Collectors
.
toList
()));
// 获取资源
List
<
RoleResourceEntity
>
roleResources
=
roleResourceDao
.
findByRoleIdIn
(
ids
);
if
(
CollectionUtils
.
isNotEmpty
(
roleResources
))
{
List
<
String
>
resourceIds
=
roleResources
.
stream
().
map
(
r
->
r
.
getResourceId
())
.
collect
(
Collectors
.
toList
());
userDTO
.
setResources
(
resourceDao
.
findAllById
(
resourceIds
).
stream
()
.
map
(
r
->
BeanUtil
.
copyProperties
(
r
,
ResourceInfo
.
class
)).
collect
(
Collectors
.
toList
()));
}
}
}
}
}
// 获取资源
userDTO
.
setToken
(
uuid
);
userDTO
.
setToken
(
uuid
);
return
Result
.
success
(
userDTO
);
return
Result
.
success
(
userDTO
);
}
else
{
}
else
{
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment