mirror of
https://gitee.com/dromara/MaxKey.git
synced 2025-12-08 09:58:56 +08:00
modify
This commit is contained in:
parent
0586a2a559
commit
0dd0dba14f
@ -29,8 +29,8 @@ import org.maxkey.constants.ConstsStatus;
|
|||||||
import org.maxkey.web.WebContext;
|
import org.maxkey.web.WebContext;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "MXK_ROLE_PERMISSIONS")
|
@Table(name = "MXK_ROLE_PRIVILEGES")
|
||||||
public class RolePermissions extends JpaBaseEntity implements Serializable {
|
public class RolePrivileges extends JpaBaseEntity implements Serializable {
|
||||||
private static final long serialVersionUID = -8783585691243853899L;
|
private static final long serialVersionUID = -8783585691243853899L;
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
@ -50,10 +50,10 @@ public class RolePermissions extends JpaBaseEntity implements Serializable {
|
|||||||
|
|
||||||
private String instName;
|
private String instName;
|
||||||
|
|
||||||
public RolePermissions() {
|
public RolePrivileges() {
|
||||||
}
|
}
|
||||||
|
|
||||||
public RolePermissions(String appId, String roleId, String instId) {
|
public RolePrivileges(String appId, String roleId, String instId) {
|
||||||
this.appId = appId;
|
this.appId = appId;
|
||||||
this.roleId = roleId;
|
this.roleId = roleId;
|
||||||
this.instId = instId;
|
this.instId = instId;
|
||||||
@ -65,7 +65,7 @@ public class RolePermissions extends JpaBaseEntity implements Serializable {
|
|||||||
* @param roleId String
|
* @param roleId String
|
||||||
* @param resourceId String
|
* @param resourceId String
|
||||||
*/
|
*/
|
||||||
public RolePermissions(String appId, String roleId, String resourceId , String instId) {
|
public RolePrivileges(String appId, String roleId, String resourceId , String instId) {
|
||||||
this.id = WebContext.genId();
|
this.id = WebContext.genId();
|
||||||
this.appId = appId;
|
this.appId = appId;
|
||||||
this.roleId = roleId;
|
this.roleId = roleId;
|
||||||
@ -136,7 +136,7 @@ public class RolePermissions extends JpaBaseEntity implements Serializable {
|
|||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
builder.append("RolePermissions [id=");
|
builder.append("RolePrivileges [id=");
|
||||||
builder.append(id);
|
builder.append(id);
|
||||||
builder.append(", appId=");
|
builder.append(", appId=");
|
||||||
builder.append(appId);
|
builder.append(appId);
|
||||||
@ -23,7 +23,7 @@ package org.maxkey.persistence.mapper;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
import org.apache.mybatis.jpa.persistence.IJpaBaseMapper;
|
||||||
import org.maxkey.entity.RolePermissions;
|
import org.maxkey.entity.RolePrivileges;
|
||||||
import org.maxkey.entity.Roles;
|
import org.maxkey.entity.Roles;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -33,11 +33,11 @@ import org.maxkey.entity.Roles;
|
|||||||
|
|
||||||
public interface RolesMapper extends IJpaBaseMapper<Roles> {
|
public interface RolesMapper extends IJpaBaseMapper<Roles> {
|
||||||
|
|
||||||
public int insertRolePermissions(List<RolePermissions> rolePermissionsList);
|
public int insertRolePrivileges(List<RolePrivileges> rolePermissionsList);
|
||||||
|
|
||||||
public int logisticDeleteRolePermissions(List<RolePermissions> rolePermissionsList);
|
public int deleteRolePrivileges(List<RolePrivileges> rolePermissionsList);
|
||||||
|
|
||||||
public List<RolePermissions> queryRolePermissions(RolePermissions rolePermissions);
|
public List<RolePrivileges> queryRolePrivileges(RolePrivileges rolePermissions);
|
||||||
|
|
||||||
public List<Roles> queryDynamicRoles(Roles role);
|
public List<Roles> queryDynamicRoles(Roles role);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,7 +20,7 @@ package org.maxkey.persistence.service;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
import org.apache.mybatis.jpa.persistence.JpaBaseService;
|
||||||
import org.maxkey.entity.RolePermissions;
|
import org.maxkey.entity.RolePrivileges;
|
||||||
import org.maxkey.entity.Roles;
|
import org.maxkey.entity.Roles;
|
||||||
import org.maxkey.persistence.mapper.RolesMapper;
|
import org.maxkey.persistence.mapper.RolesMapper;
|
||||||
import org.maxkey.util.StringUtils;
|
import org.maxkey.util.StringUtils;
|
||||||
@ -50,16 +50,16 @@ public class RolesService extends JpaBaseService<Roles>{
|
|||||||
return (RolesMapper)super.getMapper();
|
return (RolesMapper)super.getMapper();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean insertRolePermissions(List<RolePermissions> rolePermissionsList) {
|
public boolean insertRolePrivileges(List<RolePrivileges> rolePermissionsList) {
|
||||||
return getMapper().insertRolePermissions(rolePermissionsList)>0;
|
return getMapper().insertRolePrivileges(rolePermissionsList)>0;
|
||||||
};
|
};
|
||||||
|
|
||||||
public boolean logisticDeleteRolePermissions(List<RolePermissions> rolePermissionsList) {
|
public boolean deleteRolePrivileges(List<RolePrivileges> rolePermissionsList) {
|
||||||
return getMapper().logisticDeleteRolePermissions(rolePermissionsList)>=0;
|
return getMapper().deleteRolePrivileges(rolePermissionsList)>=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<RolePermissions> queryRolePermissions(RolePermissions rolePermissions){
|
public List<RolePrivileges> queryRolePrivileges(RolePrivileges rolePermissions){
|
||||||
return getMapper().queryRolePermissions(rolePermissions);
|
return getMapper().queryRolePrivileges(rolePermissions);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Roles> queryDynamicRoles(Roles dynamicRole){
|
public List<Roles> queryDynamicRoles(Roles dynamicRole){
|
||||||
|
|||||||
@ -56,11 +56,11 @@
|
|||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
||||||
<select id="queryRolePermissions" parameterType="RolePermissions" resultType="RolePermissions">
|
<select id="queryRolePrivileges" parameterType="RolePrivileges" resultType="RolePrivileges">
|
||||||
select
|
select
|
||||||
*
|
*
|
||||||
from
|
from
|
||||||
mxk_role_permissions
|
mxk_role_privileges
|
||||||
where instid = #{instId}
|
where instid = #{instId}
|
||||||
and status = 1
|
and status = 1
|
||||||
<if test="id != null and id != ''">
|
<if test="id != null and id != ''">
|
||||||
@ -75,8 +75,8 @@
|
|||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<update id="logisticDeleteRolePermissions" parameterType="java.util.List">
|
<update id="deleteRolePrivileges" parameterType="java.util.List">
|
||||||
update mxk_role_permissions
|
update mxk_role_privileges
|
||||||
set status = 9
|
set status = 9
|
||||||
where 1 = 1 and
|
where 1 = 1 and
|
||||||
<foreach item="item" collection="list" open="(" separator="or" close=")">
|
<foreach item="item" collection="list" open="(" separator="or" close=")">
|
||||||
@ -84,8 +84,8 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<insert id="insertRolePermissions" parameterType="java.util.List">
|
<insert id="insertRolePrivileges" parameterType="java.util.List">
|
||||||
insert into mxk_role_permissions ( id,appid,roleid,resourceid,status,instid)
|
insert into mxk_role_privileges ( id,appid,roleid,resourceid,status,instid)
|
||||||
values
|
values
|
||||||
<foreach collection="list" item="item" index="index" separator=",">
|
<foreach collection="list" item="item" index="index" separator=",">
|
||||||
(#{item.id},#{item.appId},#{item.roleId},#{item.resourceId},#{item.status},#{item.instId})
|
(#{item.id},#{item.appId},#{item.roleId},#{item.resourceId},#{item.status},#{item.instId})
|
||||||
|
|||||||
@ -63,9 +63,9 @@ public class RoleMemberController {
|
|||||||
|
|
||||||
@RequestMapping(value = { "/memberInRole" })
|
@RequestMapping(value = { "/memberInRole" })
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public ResponseEntity<?> memberInRole(@ModelAttribute RoleMember roleMember) {
|
public ResponseEntity<?> memberInRole(@ModelAttribute RoleMember roleMember,@CurrentUser UserInfo currentUser) {
|
||||||
_logger.debug("roleMember : "+roleMember);
|
_logger.debug("roleMember : "+roleMember);
|
||||||
roleMember.setInstId(WebContext.getUserInfo().getInstId());
|
roleMember.setInstId(currentUser.getInstId());
|
||||||
if(roleMember.getRoleId()==null||roleMember.getRoleId().equals("")||roleMember.getRoleId().equals("ALL_USER_ROLE")){
|
if(roleMember.getRoleId()==null||roleMember.getRoleId().equals("")||roleMember.getRoleId().equals("ALL_USER_ROLE")){
|
||||||
return new Message<JpaPageResults<RoleMember>>(
|
return new Message<JpaPageResults<RoleMember>>(
|
||||||
roleMemberService.queryPageResults("allMemberInRole",roleMember)).buildResponse();
|
roleMemberService.queryPageResults("allMemberInRole",roleMember)).buildResponse();
|
||||||
@ -77,15 +77,15 @@ public class RoleMemberController {
|
|||||||
|
|
||||||
@RequestMapping(value = { "/memberNotInRole" })
|
@RequestMapping(value = { "/memberNotInRole" })
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public ResponseEntity<?> memberNotInRole(@ModelAttribute RoleMember roleMember) {
|
public ResponseEntity<?> memberNotInRole(@ModelAttribute RoleMember roleMember,@CurrentUser UserInfo currentUser) {
|
||||||
roleMember.setInstId(WebContext.getUserInfo().getInstId());
|
roleMember.setInstId(currentUser.getInstId());
|
||||||
return new Message<JpaPageResults<RoleMember>>(
|
return new Message<JpaPageResults<RoleMember>>(
|
||||||
roleMemberService.queryPageResults("memberNotInGroup",roleMember)).buildResponse();
|
roleMemberService.queryPageResults("memberNotInRole",roleMember)).buildResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping(value = {"/add"})
|
@RequestMapping(value = {"/add"})
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public ResponseEntity<?> add(@ModelAttribute RoleMember roleMember) {
|
public ResponseEntity<?> add(@ModelAttribute RoleMember roleMember,@CurrentUser UserInfo currentUser) {
|
||||||
if (roleMember == null || roleMember.getRoleId() == null) {
|
if (roleMember == null || roleMember.getRoleId() == null) {
|
||||||
return new Message<RoleMember>(Message.FAIL).buildResponse();
|
return new Message<RoleMember>(Message.FAIL).buildResponse();
|
||||||
}
|
}
|
||||||
@ -106,7 +106,7 @@ public class RoleMemberController {
|
|||||||
arrMemberIds[i],
|
arrMemberIds[i],
|
||||||
arrMemberNames[i],
|
arrMemberNames[i],
|
||||||
"USER",
|
"USER",
|
||||||
WebContext.getUserInfo().getInstId());
|
currentUser.getInstId());
|
||||||
newRoleMember.setId(WebContext.genId());
|
newRoleMember.setId(WebContext.genId());
|
||||||
result = roleMemberService.insert(newRoleMember);
|
result = roleMemberService.insert(newRoleMember);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -21,22 +21,22 @@ import java.util.ArrayList;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.maxkey.constants.ConstsOperateMessage;
|
import org.maxkey.authn.annotation.CurrentUser;
|
||||||
import org.maxkey.entity.RolePermissions;
|
import org.maxkey.entity.Message;
|
||||||
|
import org.maxkey.entity.RolePrivileges;
|
||||||
|
import org.maxkey.entity.UserInfo;
|
||||||
import org.maxkey.persistence.service.RolesService;
|
import org.maxkey.persistence.service.RolesService;
|
||||||
import org.maxkey.util.StringUtils;
|
import org.maxkey.util.StringUtils;
|
||||||
import org.maxkey.web.WebContext;
|
|
||||||
import org.maxkey.web.message.Message;
|
|
||||||
import org.maxkey.web.message.MessageType;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
|
||||||
|
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
@ -47,85 +47,83 @@ public class RolePrivilegesController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
@Qualifier("rolesService")
|
@Qualifier("rolesService")
|
||||||
RolesService rolesService;
|
RolesService rolesService;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@RequestMapping(value={"/list"})
|
|
||||||
public ModelAndView resourcesList(){
|
|
||||||
return new ModelAndView("permissions/permissionsList");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@RequestMapping(value={"/savepermissions"})
|
@RequestMapping(value={"/update"}, produces = {MediaType.APPLICATION_JSON_VALUE})
|
||||||
public Message insert(@ModelAttribute("rolePermissions") RolePermissions rolePermissions) {
|
public ResponseEntity<?> update(
|
||||||
_logger.debug("-save :" + rolePermissions);
|
@ModelAttribute RolePrivileges rolePrivileges,
|
||||||
|
@CurrentUser UserInfo currentUser) {
|
||||||
|
_logger.debug("-update : " + rolePrivileges);
|
||||||
//have
|
//have
|
||||||
String instId = WebContext.getUserInfo().getInstId();
|
RolePrivileges queryRolePrivileges =
|
||||||
RolePermissions queryRolePermissions =
|
new RolePrivileges(
|
||||||
new RolePermissions(
|
rolePrivileges.getAppId(),
|
||||||
rolePermissions.getAppId(),
|
rolePrivileges.getRoleId(),
|
||||||
rolePermissions.getRoleId(),
|
currentUser.getInstId());
|
||||||
instId);
|
List<RolePrivileges> roleRolePrivilegesList = rolesService.queryRolePrivileges(queryRolePrivileges);
|
||||||
List<RolePermissions> rolePermissionsedList = rolesService.queryRolePermissions(queryRolePermissions);
|
|
||||||
|
|
||||||
HashMap<String,String >permedMap =new HashMap<String,String >();
|
HashMap<String,String >privilegeMap =new HashMap<String,String >();
|
||||||
for(RolePermissions rolePerms : rolePermissionsedList) {
|
for(RolePrivileges rolePrivilege : roleRolePrivilegesList) {
|
||||||
permedMap.put(rolePerms.getUniqueId(),rolePerms.getId());
|
privilegeMap.put(rolePrivilege.getUniqueId(),rolePrivilege.getId());
|
||||||
}
|
}
|
||||||
//Maybe insert
|
//Maybe insert
|
||||||
ArrayList<RolePermissions> rolePermissionsList =new ArrayList<RolePermissions>();
|
ArrayList<RolePrivileges> newRolePrivilegesList =new ArrayList<RolePrivileges>();
|
||||||
List<String>resourceIds = StringUtils.string2List(rolePermissions.getResourceId(), ",");
|
List<String>resourceIds = StringUtils.string2List(rolePrivileges.getResourceId(), ",");
|
||||||
HashMap<String,String >newPermsMap =new HashMap<String,String >();
|
HashMap<String,String >newPrivilegesMap =new HashMap<String,String >();
|
||||||
for(String resourceId : resourceIds) {
|
for(String resourceId : resourceIds) {
|
||||||
|
RolePrivileges newRolePrivilege=new RolePrivileges(
|
||||||
RolePermissions newRolePermissions=new RolePermissions(
|
rolePrivileges.getAppId(),
|
||||||
rolePermissions.getAppId(),
|
rolePrivileges.getRoleId(),
|
||||||
rolePermissions.getRoleId(),
|
|
||||||
resourceId,
|
resourceId,
|
||||||
instId);
|
currentUser.getInstId());
|
||||||
newRolePermissions.setId(newRolePermissions.generateId());
|
newRolePrivilege.setId(newRolePrivilege.generateId());
|
||||||
newPermsMap.put(newRolePermissions.getUniqueId(), rolePermissions.getAppId());
|
newPrivilegesMap.put(newRolePrivilege.getUniqueId(), rolePrivileges.getAppId());
|
||||||
|
|
||||||
if(!rolePermissions.getAppId().equalsIgnoreCase(resourceId) &&
|
if(!rolePrivileges.getAppId().equalsIgnoreCase(resourceId) &&
|
||||||
!permedMap.containsKey(newRolePermissions.getUniqueId())) {
|
!privilegeMap.containsKey(newRolePrivilege.getUniqueId())) {
|
||||||
rolePermissionsList.add(newRolePermissions);
|
newRolePrivilegesList.add(newRolePrivilege);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//delete
|
//delete
|
||||||
ArrayList<RolePermissions> deleteRolePermissionsList =new ArrayList<RolePermissions>();
|
ArrayList<RolePrivileges> deleteRolePrivilegesList =new ArrayList<RolePrivileges>();
|
||||||
for(RolePermissions rolePerms : rolePermissionsedList) {
|
for(RolePrivileges rolePrivilege : roleRolePrivilegesList) {
|
||||||
if(!newPermsMap.containsKey(rolePerms.getUniqueId())) {
|
if(!newPrivilegesMap.containsKey(rolePrivilege.getUniqueId())) {
|
||||||
rolePerms.setInstId(instId);
|
rolePrivilege.setInstId(currentUser.getInstId());
|
||||||
deleteRolePermissionsList.add(rolePerms);
|
deleteRolePrivilegesList.add(rolePrivilege);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!deleteRolePermissionsList.isEmpty()) {
|
if (!deleteRolePrivilegesList.isEmpty()) {
|
||||||
rolesService.logisticDeleteRolePermissions(deleteRolePermissionsList);
|
_logger.debug("-remove : " + deleteRolePrivilegesList);
|
||||||
|
rolesService.deleteRolePrivileges(deleteRolePrivilegesList);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!rolePermissionsList.isEmpty() && rolesService.insertRolePermissions(rolePermissionsList)) {
|
if (!newRolePrivilegesList.isEmpty() && rolesService.insertRolePrivileges(newRolePrivilegesList)) {
|
||||||
return new Message(WebContext.getI18nValue(ConstsOperateMessage.INSERT_SUCCESS),MessageType.success);
|
_logger.debug("-insert : " + newRolePrivilegesList);
|
||||||
|
return new Message<RolePrivileges>(Message.SUCCESS).buildResponse();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
return new Message(WebContext.getI18nValue(ConstsOperateMessage.INSERT_SUCCESS),MessageType.error);
|
return new Message<RolePrivileges>(Message.SUCCESS).buildResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
@RequestMapping(value={"/querypermissions"})
|
@RequestMapping(value={"/get"}, produces = {MediaType.APPLICATION_JSON_VALUE})
|
||||||
public List<RolePermissions> querypermissions(@ModelAttribute("rolePermissions") RolePermissions rolePermissions) {
|
public ResponseEntity<?> get(
|
||||||
_logger.debug("-querypermissions :" + rolePermissions);
|
@ModelAttribute RolePrivileges rolePrivileges,
|
||||||
|
@CurrentUser UserInfo currentUser) {
|
||||||
|
_logger.debug("-get :" + rolePrivileges);
|
||||||
//have
|
//have
|
||||||
RolePermissions queryRolePermissions =
|
RolePrivileges queryRolePrivilege =
|
||||||
new RolePermissions(
|
new RolePrivileges(
|
||||||
rolePermissions.getAppId(),
|
rolePrivileges.getAppId(),
|
||||||
rolePermissions.getRoleId(),
|
rolePrivileges.getRoleId(),
|
||||||
WebContext.getUserInfo().getInstId());
|
currentUser.getInstId());
|
||||||
List<RolePermissions> rolePermissionsedList = rolesService.queryRolePermissions(queryRolePermissions);
|
List<RolePrivileges> rolePrivilegeList = rolesService.queryRolePrivileges(queryRolePrivilege);
|
||||||
return rolePermissionsedList;
|
|
||||||
|
return new Message<List<RolePrivileges>>(
|
||||||
|
rolePrivilegeList).buildResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user