Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
bill-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
bill-platform
Commits
9900e15d
Commit
9900e15d
authored
8 months ago
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新资源文件
parent
a7bc0777
Changes
14
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
3431 additions
and
1300 deletions
+3431
-1300
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/dao/MenuDao.java
...in/java/com/mortals/xhx/base/system/menu/dao/MenuDao.java
+5
-1
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/dao/ibatis/MenuDaoImpl.java
.../mortals/xhx/base/system/menu/dao/ibatis/MenuDaoImpl.java
+9
-0
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/service/MenuService.java
...com/mortals/xhx/base/system/menu/service/MenuService.java
+7
-0
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/service/impl/MenuServiceImpl.java
...ls/xhx/base/system/menu/service/impl/MenuServiceImpl.java
+60
-20
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleAuthEntity.java
...om/mortals/xhx/base/system/role/model/RoleAuthEntity.java
+59
-90
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleAuthQuery.java
...com/mortals/xhx/base/system/role/model/RoleAuthQuery.java
+1096
-207
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleEntity.java
...va/com/mortals/xhx/base/system/role/model/RoleEntity.java
+65
-221
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleQuery.java
...ava/com/mortals/xhx/base/system/role/model/RoleQuery.java
+1052
-448
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleUserEntity.java
...om/mortals/xhx/base/system/role/model/RoleUserEntity.java
+56
-92
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleUserQuery.java
...com/mortals/xhx/base/system/role/model/RoleUserQuery.java
+955
-216
bill-manager/src/main/java/com/mortals/xhx/base/system/role/service/RoleAuthService.java
...mortals/xhx/base/system/role/service/RoleAuthService.java
+7
-1
bill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java
...hx/base/system/role/service/impl/RoleAuthServiceImpl.java
+43
-3
bill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java
.../mortals/xhx/base/system/role/web/RoleAuthController.java
+1
-1
bill-manager/src/main/resources/sqlmap/base/system/MenuMapperExt.xml
...r/src/main/resources/sqlmap/base/system/MenuMapperExt.xml
+16
-0
No files found.
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/dao/MenuDao.java
View file @
9900e15d
...
...
@@ -11,6 +11,9 @@ package com.mortals.xhx.base.system.menu.dao;
import
com.mortals.framework.dao.ICRUDDao
;
import
com.mortals.xhx.base.system.menu.model.MenuEntity
;
import
com.mortals.xhx.base.system.resource.model.ResourceEntity
;
import
java.util.List
;
/**
* <p>Title: 菜单信息</p>
...
...
@@ -22,5 +25,6 @@ import com.mortals.xhx.base.system.menu.model.MenuEntity;
*/
public
interface
MenuDao
extends
ICRUDDao
<
MenuEntity
,
Long
>
{
List
<
MenuEntity
>
getListByUserId
(
Long
userId
);
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/dao/ibatis/MenuDaoImpl.java
View file @
9900e15d
...
...
@@ -9,11 +9,14 @@
package
com.mortals.xhx.base.system.menu.dao.ibatis
;
import
com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis
;
import
com.mortals.framework.model.ParamDto
;
import
com.mortals.xhx.base.system.menu.dao.MenuDao
;
import
com.mortals.xhx.base.system.menu.model.MenuEntity
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
/**
* <p>Title: 菜单信息</p>
* <p>Description: MenuDaoImpl DAO接口 </p>
...
...
@@ -25,4 +28,10 @@ import org.springframework.stereotype.Repository;
@Repository
(
"menuDao"
)
public
class
MenuDaoImpl
extends
BaseCRUDDaoMybatis
<
MenuEntity
,
Long
>
implements
MenuDao
{
@Override
public
List
<
MenuEntity
>
getListByUserId
(
Long
userId
)
{
ParamDto
param
=
new
ParamDto
();
param
.
getCondition
().
put
(
"userId"
,
userId
);
return
getSqlSession
().
selectList
(
getSqlId
(
"getListByUserId"
),
param
);
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/service/MenuService.java
View file @
9900e15d
...
...
@@ -70,6 +70,13 @@ public interface MenuService extends ICRUDService<MenuEntity,Long> {
*/
boolean
hasChildByMenuId
(
Long
menuId
);
/**
* 构建树
* @param menuList
* @return
*/
List
<
MenuEntity
>
buildMenuTree
(
List
<
MenuEntity
>
menuList
);
/**
* 构建前端所需要下拉树结构
...
...
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/menu/service/impl/MenuServiceImpl.java
View file @
9900e15d
...
...
@@ -21,7 +21,14 @@ import com.mortals.xhx.base.system.menu.model.MenuQuery;
import
com.mortals.xhx.base.system.menu.model.MenuTreeSelect
;
import
com.mortals.xhx.base.system.menu.service.MenuService
;
import
com.mortals.xhx.base.system.resource.model.ResourceEntity
;
import
com.mortals.xhx.base.system.resource.service.ResourceService
;
import
com.mortals.xhx.base.system.role.model.RoleAuthQuery
;
import
com.mortals.xhx.base.system.role.model.RoleUserQuery
;
import
com.mortals.xhx.base.system.role.service.RoleAuthService
;
import
com.mortals.xhx.base.system.role.service.RoleUserService
;
import
com.mortals.xhx.common.code.YesNoEnum
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
...
...
@@ -40,6 +47,12 @@ import java.util.stream.Collectors;
@Service
(
"menuService"
)
public
class
MenuServiceImpl
extends
AbstractCRUDServiceImpl
<
MenuDao
,
MenuEntity
,
Long
>
implements
MenuService
{
@Autowired
private
RoleUserService
roleUserService
;
@Autowired
private
RoleAuthService
roleAuthService
;
@Override
public
List
<
MenuEntity
>
findAllEnable
()
throws
AppException
{
MenuQuery
params
=
new
MenuQuery
();
...
...
@@ -97,29 +110,38 @@ public class MenuServiceImpl extends AbstractCRUDServiceImpl<MenuDao, MenuEntity
return
outlookBar
;
}
public
List
<
MenuEntity
>
findTreeMenu
()
throws
AppException
{
Map
<
Long
,
MenuEntity
>
menuMap
=
new
HashMap
<
Long
,
MenuEntity
>();
List
<
MenuEntity
>
userModuleList
=
this
.
findAllEnable
();
for
(
MenuEntity
sysModule
:
userModuleList
)
{
if
(
sysModule
==
null
)
{
continue
;
}
menuMap
.
put
(
sysModule
.
getId
(),
sysModule
);
}
List
<
MenuEntity
>
outlookBar
=
new
ArrayList
<
MenuEntity
>();
for
(
MenuEntity
sysModule
:
userModuleList
)
{
if
(
sysModule
.
getParentId
()
==
null
||
sysModule
.
getParentId
().
longValue
()
==
0
)
{
outlookBar
.
add
(
sysModule
);
continue
;
}
MenuEntity
sysModuleParent
=
menuMap
.
get
(
sysModule
.
getParentId
());
if
(
sysModuleParent
!=
null
)
{
sysModuleParent
.
getChildren
().
add
(
sysModule
);
}
@Override
public
List
<
MenuEntity
>
findTreeMenu
(
IUser
user
)
throws
AppException
{
//todo 重新写 菜单树 通过角色获取菜单
if
(
user
.
isAdmin
())
{
//全菜单列表获取
MenuQuery
menuQuery
=
new
MenuQuery
();
List
<
OrderCol
>
orderColList
=
new
ArrayList
<
OrderCol
>();
orderColList
.
add
(
new
OrderCol
(
"parentId"
));
orderColList
.
add
(
new
OrderCol
(
"orderId"
));
menuQuery
.
setOrderColList
(
orderColList
);
List
<
MenuEntity
>
list
=
this
.
find
(
menuQuery
);
List
<
MenuEntity
>
returnTreeList
=
this
.
buildMenuTree
(
list
);
return
returnTreeList
;
}
return
outlookBar
;
List
<
MenuEntity
>
menuEntities
=
this
.
getDao
().
getListByUserId
(
user
.
getId
()).
stream
().
distinct
().
collect
(
Collectors
.
toList
());
/* RoleUserQuery roleUserQuery = new RoleUserQuery();
roleUserQuery.setUserId(user.getId());
List<Long> roleIdList = roleUserService.find(roleUserQuery).stream().map(roleUser -> roleUser.getRoleId()).collect(Collectors.toList());
if(ObjectUtils.isEmpty(roleIdList)) return Collections.EMPTY_LIST;
RoleAuthQuery roleAuthQuery = new RoleAuthQuery();
roleAuthQuery.setRoleIdList(roleIdList);
List<Long> menuIdList = roleAuthService.find(roleAuthQuery).stream().map(roleAuth -> roleAuth.getMenuId()).filter(f -> f != null).collect(Collectors.toList());
if(ObjectUtils.isEmpty(menuIdList)) return Collections.EMPTY_LIST;
MenuQuery menuQuery = new MenuQuery();
menuQuery.setIdList(menuIdList);
List<MenuEntity> menuEntities = this.find(menuQuery);*/
List
<
MenuEntity
>
returnTreeList
=
this
.
buildMenuTree
(
menuEntities
);
return
returnTreeList
;
}
@Override
public
void
upOrDown
(
Long
id
,
Integer
type
)
{
MenuQuery
query
=
new
MenuQuery
();
...
...
@@ -190,6 +212,24 @@ public class MenuServiceImpl extends AbstractCRUDServiceImpl<MenuDao, MenuEntity
return
list
.
size
()
>
0
?
true
:
false
;
}
@Override
public
List
<
MenuEntity
>
buildMenuTree
(
List
<
MenuEntity
>
list
)
{
List
<
MenuEntity
>
returnList
=
new
ArrayList
<>();
List
<
Long
>
tempList
=
list
.
stream
().
map
(
MenuEntity:
:
getId
).
collect
(
Collectors
.
toList
());
for
(
Iterator
<
MenuEntity
>
iterator
=
list
.
iterator
();
iterator
.
hasNext
();
)
{
MenuEntity
menuEntity
=
iterator
.
next
();
if
(!
tempList
.
contains
(
menuEntity
.
getParentId
()))
{
recursionFn
(
list
,
menuEntity
);
returnList
.
add
(
menuEntity
);
}
}
if
(
returnList
.
isEmpty
())
{
returnList
=
list
;
}
return
returnList
;
}
@Override
public
List
<
MenuTreeSelect
>
buildMenuTreeSelect
(
List
<
MenuEntity
>
list
)
{
List
<
MenuEntity
>
returnList
=
new
ArrayList
<>();
...
...
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleAuthEntity.java
View file @
9900e15d
/**
* 文件:RoleAuthEntity.java
* 版本:1.0.0
* 日期:
* Copyright ®
* All right reserved.
*/
package
com.mortals.xhx.base.system.role.model
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.math.BigDecimal
;
import
cn.hutool.core.date.DateUtil
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mortals.framework.annotation.Excel
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.base.system.role.model.vo.RoleAuthVo
;
import
lombok.Data
;
/**
* <p>Title: 角色资源权限</p>
* <p>Description: RoleAuthEntity </p>
* <p>Copyright: Copyright ® </p>
* <p>Company: </p>
* @author
* @version 1.0.0
*/
public
class
RoleAuthEntity
extends
BaseEntityLong
{
private
static
final
long
serialVersionUID
=
1547777703348L
;
/** 角色ID */
private
Long
roleId
;
/** 资源ID */
private
Long
resourceId
;
public
RoleAuthEntity
(){
}
/**
* 获取 角色ID
* @return roleId
*/
public
Long
getRoleId
(){
return
this
.
roleId
;
}
/**
* 设置 角色ID
* @param roleId
*/
public
void
setRoleId
(
Long
roleId
){
this
.
roleId
=
roleId
;
}
/**
* 获取 资源ID
* @return resourceId
*/
public
Long
getResourceId
(){
return
this
.
resourceId
;
}
/**
* 设置 资源ID
* @param resourceId
*/
public
void
setResourceId
(
Long
resourceId
){
this
.
resourceId
=
resourceId
;
}
* 角色资源权限业务实体对象
*
* @author zxfei
* @date 2024-09-06
*/
@Data
public
class
RoleAuthEntity
extends
RoleAuthVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 角色ID
*/
private
Long
roleId
;
/**
* 菜单ID
*/
private
Long
menuId
;
/**
* 资源ID
*/
private
Long
resourceId
;
/**
* 创建用户名称
*/
private
String
createUserName
;
/**
* 创建用户名称
*/
private
String
updateUserName
;
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleAuthEntity
)
{
RoleAuthEntity
tmp
=
(
RoleAuthEntity
)
obj
;
if
(
this
.
getId
()
==
tmp
.
getId
())
{
return
true
;
}
}
return
false
;
}
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleAuthEntity
)
{
RoleAuthEntity
tmp
=
(
RoleAuthEntity
)
obj
;
if
(
this
.
getId
().
longValue
()
==
tmp
.
getId
().
longValue
())
{
return
true
;
}
}
return
false
;
}
public
String
toString
(){
StringBuilder
sb
=
new
StringBuilder
(
""
);
sb
.
append
(
"id:"
).
append
(
getId
())
.
append
(
",roleId:"
).
append
(
getRoleId
())
.
append
(
",resourceId:"
).
append
(
getResourceId
());
return
sb
.
toString
();
}
public
void
initAttrValue
(){
this
.
roleId
=
null
;
this
.
resourceId
=
null
;
}
public
void
initAttrValue
(){
this
.
roleId
=
null
;
this
.
menuId
=
null
;
this
.
resourceId
=
null
;
this
.
createUserName
=
""
;
this
.
updateUserName
=
""
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleAuthQuery.java
View file @
9900e15d
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleEntity.java
View file @
9900e15d
/**
* 文件:RoleEntity.java
* 版本:1.0.0
* 日期:
* Copyright ®
* All right reserved.
*/
package
com.mortals.xhx.base.system.role.model
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.math.BigDecimal
;
import
cn.hutool.core.date.DateUtil
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mortals.framework.annotation.Excel
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.base.system.role.model.vo.RoleVo
;
import
lombok.Data
;
/**
* <p>Title: 角色信息</p>
* <p>Description: RoleEntity </p>
* <p>Copyright: Copyright ® </p>
* <p>Company: </p>
* @author
* @version 1.0.0
*/
public
class
RoleEntity
extends
BaseEntityLong
{
private
static
final
long
serialVersionUID
=
1547777703344L
;
/** 用户ID */
private
Long
userId
;
/** 角色名称 */
private
String
name
;
/** 备注 */
private
String
remark
;
/** 角色类型,0:系统内置角色(不可删除),1:默认系统角色,2:普通角色,默认2 */
private
Integer
roleType
;
/** 归属客户ID */
private
Long
customerId
;
/** 创建时间 */
private
Date
createTime
;
/** 创建用户 */
private
Long
createUserId
;
/** 创建用户名称 */
private
String
createUserName
;
/** 用户类型,0:系统用户 1:代理商用户 2:品牌商用户 */
private
Integer
userType
;
public
RoleEntity
(){
}
/**
* 获取 角色名称
* @return name
*/
public
String
getName
(){
return
this
.
name
;
}
/**
* 设置 角色名称
* @param name
*/
public
void
setName
(
String
name
){
this
.
name
=
name
;
}
/**
* 获取 备注
* @return remark
*/
public
String
getRemark
(){
return
this
.
remark
;
}
/**
* 设置 备注
* @param remark
*/
public
void
setRemark
(
String
remark
){
this
.
remark
=
remark
;
}
/**
* 获取 角色类型,0:系统内置角色(不可删除),1:默认系统角色,2:普通角色,默认2
* @return roleType
*/
public
Integer
getRoleType
(){
return
this
.
roleType
;
}
/**
* 设置 角色类型,0:系统内置角色(不可删除),1:默认系统角色,2:普通角色,默认2
* @param roleType
*/
public
void
setRoleType
(
Integer
roleType
){
this
.
roleType
=
roleType
;
}
/**
* 获取 归属客户ID
* @return customerId
*/
public
Long
getCustomerId
(){
return
this
.
customerId
;
}
/**
* 设置 归属客户ID
* @param customerId
*/
public
void
setCustomerId
(
Long
customerId
){
this
.
customerId
=
customerId
;
}
/**
* 获取 创建时间
* @return createTime
*/
public
Date
getCreateTime
(){
return
this
.
createTime
;
}
/**
* 设置 创建时间
* @param createTime
*/
public
void
setCreateTime
(
Date
createTime
){
this
.
createTime
=
createTime
;
}
/**
* 获取 创建用户
* @return createUserId
*/
public
Long
getCreateUserId
(){
return
this
.
createUserId
;
}
/**
* 设置 创建用户
* @param createUserId
*/
public
void
setCreateUserId
(
Long
createUserId
){
this
.
createUserId
=
createUserId
;
}
/**
* 获取 创建用户名称
* @return createUserName
*/
public
String
getCreateUserName
(){
return
this
.
createUserName
;
}
/**
* 设置 创建用户名称
* @param createUserName
*/
public
void
setCreateUserName
(
String
createUserName
){
this
.
createUserName
=
createUserName
;
}
/**
* 获取 用户类型,0:系统用户 1:代理商用户 2:品牌商用户
* @return userType
*/
public
Integer
getUserType
(){
return
this
.
userType
;
}
/**
* 设置 用户类型,0:系统用户 1:代理商用户 2:品牌商用户
* @param userType
*/
public
void
setUserType
(
Integer
userType
){
this
.
userType
=
userType
;
}
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleEntity
)
{
RoleEntity
tmp
=
(
RoleEntity
)
obj
;
if
(
this
.
getId
().
longValue
()
==
tmp
.
getId
().
longValue
())
{
return
true
;
}
}
return
false
;
}
public
String
toString
(){
StringBuilder
sb
=
new
StringBuilder
(
""
);
sb
.
append
(
"id:"
).
append
(
getId
())
.
append
(
",name:"
).
append
(
getName
())
.
append
(
",remark:"
).
append
(
getRemark
())
.
append
(
",roleType:"
).
append
(
getRoleType
())
.
append
(
",customerId:"
).
append
(
getCustomerId
())
.
append
(
",createTime:"
).
append
(
getCreateTime
())
.
append
(
",createUserId:"
).
append
(
getCreateUserId
())
.
append
(
",createUserName:"
).
append
(
getCreateUserName
())
.
append
(
",userType:"
).
append
(
getUserType
());
return
sb
.
toString
();
}
public
void
initAttrValue
(){
this
.
name
=
null
;
this
.
remark
=
null
;
this
.
roleType
=
2
;
this
.
customerId
=
null
;
this
.
createTime
=
null
;
this
.
createUserId
=
null
;
this
.
createUserName
=
null
;
this
.
userType
=
null
;
}
* 角色信息业务实体对象
*
* @author zxfei
* @date 2024-09-06
*/
@Data
public
class
RoleEntity
extends
RoleVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 角色名称
*/
private
String
name
;
/**
* 备注
*/
private
String
remark
;
/**
* 角色类型 (0.系统内置角色,1.默认系统角色.2.普通角色)
*/
private
Integer
roleType
;
/**
* 归属客户ID
*/
private
Long
customerId
;
/**
* 创建用户名称
*/
private
String
createUserName
;
/**
* 创建用户名称
*/
private
String
updateUserName
;
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleEntity
)
{
RoleEntity
tmp
=
(
RoleEntity
)
obj
;
if
(
this
.
getId
()
==
tmp
.
getId
())
{
return
true
;
}
}
return
false
;
}
public
void
initAttrValue
(){
this
.
name
=
""
;
this
.
remark
=
""
;
this
.
roleType
=
2
;
this
.
customerId
=
null
;
this
.
createUserName
=
""
;
this
.
updateUserName
=
""
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleQuery.java
View file @
9900e15d
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleUserEntity.java
View file @
9900e15d
/**
* 文件:RoleUserEntity.java
* 版本:1.0.0
* 日期:
* Copyright ®
* All right reserved.
*/
package
com.mortals.xhx.base.system.role.model
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.math.BigDecimal
;
import
cn.hutool.core.date.DateUtil
;
import
java.util.Date
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mortals.framework.annotation.Excel
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.base.system.role.model.vo.RoleUserVo
;
import
lombok.Data
;
/**
* <p>Title: 角色用户</p>
* <p>Description: RoleUserEntity </p>
* <p>Copyright: Copyright ® </p>
* <p>Company: </p>
* @author
* @version 1.0.0
*/
public
class
RoleUserEntity
extends
BaseEntityLong
{
private
static
final
long
serialVersionUID
=
1547777703351L
;
/** 角色ID */
private
Long
roleId
;
/** 用户ID */
private
Long
userId
;
public
RoleUserEntity
(){
}
/**
* 获取 角色ID
* @return roleId
*/
public
Long
getRoleId
(){
return
this
.
roleId
;
}
/**
* 设置 角色ID
* @param roleId
*/
public
void
setRoleId
(
Long
roleId
){
this
.
roleId
=
roleId
;
}
/**
* 获取 用户ID
* @return userId
*/
public
Long
getUserId
(){
return
this
.
userId
;
}
/**
* 设置 用户ID
* @param userId
*/
public
void
setUserId
(
Long
userId
){
this
.
userId
=
userId
;
}
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleUserEntity
)
{
RoleUserEntity
tmp
=
(
RoleUserEntity
)
obj
;
if
(
this
.
getId
().
longValue
()
==
tmp
.
getId
().
longValue
())
{
return
true
;
}
}
return
false
;
}
public
String
toString
(){
StringBuilder
sb
=
new
StringBuilder
(
""
);
sb
.
append
(
"id:"
).
append
(
getId
())
.
append
(
",roleId:"
).
append
(
getRoleId
())
.
append
(
",userId:"
).
append
(
getUserId
());
return
sb
.
toString
();
}
public
void
initAttrValue
(){
this
.
roleId
=
null
;
this
.
userId
=
null
;
}
* 角色用户业务实体对象
*
* @author zxfei
* @date 2024-09-06
*/
@Data
public
class
RoleUserEntity
extends
RoleUserVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 角色ID
*/
private
Long
roleId
;
/**
* 用户ID
*/
private
Long
userId
;
/**
* 创建用户名称
*/
private
String
createUserName
;
/**
* 创建用户名称
*/
private
String
updateUserName
;
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
RoleUserEntity
)
{
RoleUserEntity
tmp
=
(
RoleUserEntity
)
obj
;
if
(
this
.
getId
()
==
tmp
.
getId
())
{
return
true
;
}
}
return
false
;
}
public
void
initAttrValue
(){
this
.
roleId
=
null
;
this
.
userId
=
null
;
this
.
createUserName
=
""
;
this
.
updateUserName
=
""
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/model/RoleUserQuery.java
View file @
9900e15d
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/service/RoleAuthService.java
View file @
9900e15d
...
...
@@ -9,10 +9,12 @@
package
com.mortals.xhx.base.system.role.service
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.base.system.role.model.RoleAuthEntity
;
import
com.mortals.xhx.base.system.role.model.RoleAuthQuery
;
/**
* <p>Title: 角色资源权限</p>
* <p>Description: RoleAuthService service接口 </p>
...
...
@@ -24,5 +26,9 @@ import com.mortals.xhx.base.system.role.model.RoleAuthQuery;
public
interface
RoleAuthService
extends
ICRUDService
<
RoleAuthEntity
,
Long
>
{
/** 角色分配资源 */
void
doDistributionSource
(
RoleAuthQuery
query
);
void
doDistributionSource
(
RoleAuthQuery
query
,
Context
context
);
/** 角色分配菜单 */
void
doDistributionMenu
(
RoleAuthQuery
query
,
Context
context
);
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/service/impl/RoleAuthServiceImpl.java
View file @
9900e15d
...
...
@@ -8,6 +8,7 @@
package
com.mortals.xhx.base.system.role.service.impl
;
import
com.mortals.framework.model.Context
;
import
com.mortals.framework.service.ICacheService
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.framework.util.DataUtil
;
...
...
@@ -20,6 +21,7 @@ import com.mortals.xhx.common.key.RedisKey;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.util.*
;
...
...
@@ -43,12 +45,21 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl<RoleAuthDao, Ro
private
ResourceService
resourceService
;
@Override
public
void
doDistributionSource
(
RoleAuthQuery
query
)
{
public
void
doDistributionSource
(
RoleAuthQuery
query
,
Context
context
)
{
// 删除角色资源老数据
Long
roleId
=
query
.
getRoleId
();
Map
<
String
,
Object
>
condition
=
new
HashMap
<>();
/*
Map<String, Object> condition = new HashMap<>();
condition.put("roleId", roleId);
this
.
dao
.
delete
(
condition
);
this.dao.delete(condition);*/
//todo
RoleAuthQuery
roleAuthQuery
=
new
RoleAuthQuery
();
roleAuthQuery
.
setRoleId
(
roleId
);
Long
[]
delIds
=
this
.
find
(
roleAuthQuery
).
stream
()
.
filter
(
f
->
f
.
getMenuId
()
==
null
)
.
map
(
f
->
f
.
getId
()).
toArray
(
Long
[]::
new
);
if
(!
ObjectUtils
.
isEmpty
(
delIds
)){
this
.
remove
(
delIds
,
context
);
}
List
<
RoleAuthEntity
>
list
=
new
ArrayList
<>();
for
(
Long
sourceId
:
query
.
getResourceIdList
())
{
...
...
@@ -62,6 +73,35 @@ public class RoleAuthServiceImpl extends AbstractCRUDServiceImpl<RoleAuthDao, Ro
this
.
updateUserMenuUrlCache
();
}
@Override
public
void
doDistributionMenu
(
RoleAuthQuery
query
,
Context
context
)
{
// 删除角色资源老数据
Long
roleId
=
query
.
getRoleId
();
/* Map<String, Object> condition = new HashMap<>();
condition.put("roleId", roleId);
this.dao.delete(condition);*/
//todo
RoleAuthQuery
roleAuthQuery
=
new
RoleAuthQuery
();
roleAuthQuery
.
setRoleId
(
roleId
);
Long
[]
delIds
=
this
.
find
(
roleAuthQuery
).
stream
()
.
filter
(
f
->
f
.
getMenuId
()
!=
null
)
.
map
(
f
->
f
.
getId
()).
toArray
(
Long
[]::
new
);
if
(!
ObjectUtils
.
isEmpty
(
delIds
)){
this
.
remove
(
delIds
,
context
);
}
List
<
RoleAuthEntity
>
list
=
new
ArrayList
<>();
for
(
Long
menuId
:
query
.
getMenuIdList
())
{
RoleAuthEntity
entity
=
new
RoleAuthEntity
();
entity
.
setRoleId
(
roleId
);
entity
.
setMenuId
(
menuId
);
list
.
add
(
entity
);
}
this
.
dao
.
insertBatch
(
list
);
this
.
updateUserMenuUrlCache
();
}
private
void
updateUserMenuUrlCache
()
{
//更新用户菜单
Set
<
String
>
hkeys
=
cacheService
.
hkeys
(
RedisKey
.
KEY_USER_MENU_CACHE
);
...
...
This diff is collapsed.
Click to expand it.
bill-manager/src/main/java/com/mortals/xhx/base/system/role/web/RoleAuthController.java
View file @
9900e15d
...
...
@@ -33,7 +33,7 @@ public class RoleAuthController extends BaseCRUDJsonBodyMappingController<RoleAu
@PostMapping
(
value
=
"distributionSource"
)
public
String
distributionUser
(
@RequestBody
RoleAuthQuery
query
)
{
try
{
service
.
doDistributionSource
(
query
);
service
.
doDistributionSource
(
query
,
this
.
getContext
()
);
JSONObject
ret
=
new
JSONObject
();
ret
.
put
(
KEY_RESULT_CODE
,
VALUE_RESULT_SUCCESS
);
return
ret
.
toJSONString
();
...
...
This diff is collapsed.
Click to expand it.
bill-manager/src/main/resources/sqlmap/base/system/MenuMapperExt.xml
0 → 100644
View file @
9900e15d
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mortals.xhx.base.system.menu.dao.ibatis.MenuDaoImpl"
>
<!-- 获取列表 -->
<select
id=
"getListByUserId"
parameterType=
"paramDto"
resultMap=
"MenuEntity-Map"
>
select
<include
refid=
"_columns"
/>
from mortals_xhx_resource as a
where a.authType in(0,1,2) or a.id IN
(select menuId
from mortals_xhx_role_auth as b
left join mortals_xhx_role_user as c
on b.roleId=c.roleId
where c.userId=#{condition.userId})
</select>
</mapper>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
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 comment