diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/Accounts.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Accounts.java index b67580d1b..576ca62f9 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/Accounts.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Accounts.java @@ -32,15 +32,6 @@ import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.Table; -/* - ID varchar(40) not null, - UID varchar(40) null, - APPID varchar(40) null, - USERNAME varchar(60) null, - PASSWORD varchar(60) null, - STATUS char(1) null - constraint PK_ROLES primary key clustered (ID) - */ @Entity @Table(name = "MXK_ACCOUNTS") public class Accounts extends JpaEntity implements Serializable { diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/EmailSenders.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/EmailSenders.java index 5c5ea01ea..288b370f5 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/EmailSenders.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/EmailSenders.java @@ -19,6 +19,8 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -29,7 +31,7 @@ import jakarta.persistence.Table; @Entity @Table(name = "MXK_EMAIL_SENDERS") -public class EmailSenders extends JpaEntity{ +public class EmailSenders extends JpaEntity implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/ExtraAttrs.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/ExtraAttrs.java index e87b7451e..caf73986a 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/ExtraAttrs.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/ExtraAttrs.java @@ -26,7 +26,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class ExtraAttrs { - final static Logger _logger = LoggerFactory.getLogger(ExtraAttrs.class); + static final Logger _logger = LoggerFactory.getLogger(ExtraAttrs.class); ArrayList extraAttrs ; @@ -43,7 +43,7 @@ public class ExtraAttrs { */ public ExtraAttrs(String arrayJsonString) { String extraAttrsJsonString= "{\"extraAttrs\":"+arrayJsonString+"}"; - _logger.debug("Extra Attrs Json String " +extraAttrsJsonString); + _logger.debug("Extra Attrs Json String {}" ,extraAttrsJsonString); ExtraAttrs extraAttrs=JsonUtils.gsonStringToObject(extraAttrsJsonString, ExtraAttrs.class); this.extraAttrs=extraAttrs.getExtraAttrs(); } @@ -52,21 +52,21 @@ public class ExtraAttrs { public void put(String attr,String value) { if(extraAttrs==null){ - extraAttrs=new ArrayList(); + extraAttrs=new ArrayList<>(); } this.extraAttrs.add(new ExtraAttr(attr,value)); } public void put(String attr,String type,String value) { if(extraAttrs==null){ - extraAttrs=new ArrayList(); + extraAttrs=new ArrayList<>(); } this.extraAttrs.add(new ExtraAttr(attr,type,value)); } public String get(String attr) { String value=null; - if(extraAttrs!=null&& extraAttrs.size()!=0){ + if(extraAttrs!=null&& !extraAttrs.isEmpty()){ for(ExtraAttr extraAttr :extraAttrs){ if(extraAttr.getAttr().equals(attr)){ value=extraAttr.getValue(); @@ -78,7 +78,7 @@ public class ExtraAttrs { public String toJsonString(){ String jsonString =JsonUtils.gsonToString(extraAttrs); - _logger.debug("jsonString " +jsonString); + _logger.debug("jsonString {}" ,jsonString); return jsonString; } @@ -87,7 +87,7 @@ public class ExtraAttrs { for(ExtraAttr extraAttr :extraAttrs){ extraAttrsHashMap.put(extraAttr.getAttr(), extraAttr.getValue()); } - _logger.debug("extraAttrs HashMap " +extraAttrsHashMap); + _logger.debug("extraAttrs HashMap {}" , extraAttrsHashMap); return extraAttrsHashMap; } @@ -96,7 +96,7 @@ public class ExtraAttrs { for(ExtraAttr extraAttr :extraAttrs){ properties.put(extraAttr.getAttr(), extraAttr.getValue()); } - _logger.debug("extraAttrs HashMap " +properties); + _logger.debug("extraAttrs HashMap {}" , properties); return properties; } diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupMember.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupMember.java new file mode 100644 index 000000000..2f96a5794 --- /dev/null +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupMember.java @@ -0,0 +1,211 @@ +/* + * Copyright [2020] [MaxKey of copyright http://www.maxkey.top] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +package org.dromara.maxkey.entity; + +import java.io.Serializable; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Table; + +@Entity +@Table(name = "MXK_ROLE_MEMBER") +public class GroupMember extends UserInfo implements Serializable{ + + /** + * + */ + private static final long serialVersionUID = -8059639972590554760L; + @Id + @Column + @GeneratedValue + String id; + @Column + private String groupId; + private String groupName; + private String category; + @Column + private String memberId; + private String memberName; + @Column + private String type;//User or Group + + @Column + private String instId; + + private String instName; + + public GroupMember(){ + super(); + } + + + /** + * @param groupId + * @param memberId + * @param type + */ + public GroupMember(String groupId, String memberId, String type , String instId) { + super(); + this.groupId = groupId; + this.memberId = memberId; + this.type = type; + this.instId = instId; + } + + + public GroupMember(String groupId, String groupName, String memberId, + String memberName, String type , String instId) { + super(); + this.groupId = groupId; + this.groupName = groupName; + this.memberId = memberId; + this.memberName = memberName; + this.type = type; + this.instId = instId; + } + + + public String getId() { + return id; + } + + + public void setId(String id) { + this.id = id; + } + + + public String getGroupId() { + return groupId; + } + + + public void setGroupId(String groupId) { + this.groupId = groupId; + } + + + public String getGroupName() { + return groupName; + } + + + public void setGroupName(String groupName) { + this.groupName = groupName; + } + + + /** + * @return the memberId + */ + public String getMemberId() { + return memberId; + } + + /** + * @param memberId the memberId to set + */ + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + /** + * @return the type + */ + public String getType() { + return type; + } + + /** + * @param type the type to set + */ + public void setType(String type) { + this.type = type; + } + + + + public String getMemberName() { + return memberName; + } + + public void setMemberName(String memberName) { + this.memberName = memberName; + } + + + public String getCategory() { + return category; + } + + + public void setCategory(String category) { + this.category = category; + } + + + public String getInstId() { + return instId; + } + + + public void setInstId(String instId) { + this.instId = instId; + } + + + public String getInstName() { + return instName; + } + + + public void setInstName(String instName) { + this.instName = instName; + } + + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("GroupMember [id="); + builder.append(id); + builder.append(", groupId="); + builder.append(groupId); + builder.append(", groupName="); + builder.append(groupName); + builder.append(", category="); + builder.append(category); + builder.append(", memberId="); + builder.append(memberId); + builder.append(", memberName="); + builder.append(memberName); + builder.append(", type="); + builder.append(type); + builder.append(", instId="); + builder.append(instId); + builder.append(", instName="); + builder.append(instName); + builder.append("]"); + return builder.toString(); + } + + +} diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePermissions.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPermissions.java similarity index 74% rename from maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePermissions.java rename to maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPermissions.java index 54638bb94..15459c0ab 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePermissions.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPermissions.java @@ -29,16 +29,9 @@ import jakarta.persistence.Table; import org.dromara.maxkey.entity.apps.Apps; - -/* - ID varchar(40) not null, - ROLEID varchar(40) null, - MENUID varchar(40) null - constraint PK_ROLES primary key clustered (ID) - */ @Entity @Table(name = "MXK_ROLE_PERMISSIONS") -public class RolePermissions extends Apps implements Serializable{ +public class GroupPermissions extends Apps implements Serializable{ /** * @@ -49,9 +42,9 @@ public class RolePermissions extends Apps implements Serializable{ @GeneratedValue String id; @Column - private String roleId; + private String groupId; - private String roleName; + private String groupName; @Column private String appId; @@ -63,7 +56,7 @@ public class RolePermissions extends Apps implements Serializable{ private String instName; - public RolePermissions(){ + public GroupPermissions(){ super(); } @@ -72,31 +65,32 @@ public class RolePermissions extends Apps implements Serializable{ * @param groupId * @param appId */ - public RolePermissions(String roleId, String appId, String instId) { + public GroupPermissions(String groupId, String appId, String instId) { super(); - this.roleId = roleId; + this.groupId = groupId; this.appId = appId; this.instId = instId; } - public String getRoleId() { - return roleId; + + public String getGroupId() { + return groupId; } - public void setRoleId(String roleId) { - this.roleId = roleId; + public void setGroupId(String groupId) { + this.groupId = groupId; } - public String getRoleName() { - return roleName; + public String getGroupName() { + return groupName; } - public void setRoleName(String roleName) { - this.roleName = roleName; + public void setGroupName(String groupName) { + this.groupName = groupName; } @@ -158,12 +152,12 @@ public class RolePermissions extends Apps implements Serializable{ @Override public String toString() { StringBuilder builder = new StringBuilder(); - builder.append("RolePermissions [id="); + builder.append("GroupPermissions [id="); builder.append(id); - builder.append(", roleId="); - builder.append(roleId); - builder.append(", roleName="); - builder.append(roleName); + builder.append(", groupId="); + builder.append(groupId); + builder.append(", groupName="); + builder.append(groupName); builder.append(", appId="); builder.append(appId); builder.append(", appName="); diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePrivileges.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPrivileges.java similarity index 80% rename from maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePrivileges.java rename to maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPrivileges.java index 20db3915f..24f920a65 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RolePrivileges.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/GroupPrivileges.java @@ -29,8 +29,8 @@ import org.dromara.maxkey.constants.ConstsStatus; import org.dromara.maxkey.web.WebContext; @Entity -@Table(name = "MXK_ROLE_PRIVILEGES") -public class RolePrivileges extends JpaEntity implements Serializable { +@Table(name = "MXK_GROUP_PRIVILEGES") +public class GroupPrivileges extends JpaEntity implements Serializable { private static final long serialVersionUID = -8783585691243853899L; @Id @@ -40,7 +40,7 @@ public class RolePrivileges extends JpaEntity implements Serializable { @Column String appId; @Column - String roleId; + String groupId; @Column String resourceId; @@ -50,25 +50,25 @@ public class RolePrivileges extends JpaEntity implements Serializable { private String instName; - public RolePrivileges() { + public GroupPrivileges() { } - public RolePrivileges(String appId, String roleId, String instId) { + public GroupPrivileges(String appId, String groupId, String instId) { this.appId = appId; - this.roleId = roleId; + this.groupId = groupId; this.instId = instId; } /** * . * @param appId String - * @param roleId String + * @param groupId String * @param resourceId String */ - public RolePrivileges(String appId, String roleId, String resourceId , String instId) { + public GroupPrivileges(String appId, String groupId, String resourceId , String instId) { this.id = WebContext.genId(); this.appId = appId; - this.roleId = roleId; + this.groupId = groupId; this.resourceId = resourceId; this.instId = instId; } @@ -89,15 +89,15 @@ public class RolePrivileges extends JpaEntity implements Serializable { this.appId = appId; } - public String getRoleId() { - return roleId; - } + public String getGroupId() { + return groupId; + } - public void setRoleId(String roleId) { - this.roleId = roleId; - } + public void setGroupId(String groupId) { + this.groupId = groupId; + } - public String getResourceId() { + public String getResourceId() { return resourceId; } @@ -114,7 +114,7 @@ public class RolePrivileges extends JpaEntity implements Serializable { } public String getUniqueId() { - return appId + "_" + roleId + "_" + resourceId; + return appId + "_" + groupId + "_" + resourceId; } public String getInstId() { @@ -140,8 +140,8 @@ public class RolePrivileges extends JpaEntity implements Serializable { builder.append(id); builder.append(", appId="); builder.append(appId); - builder.append(", roleId="); - builder.append(roleId); + builder.append(", groupId="); + builder.append(groupId); builder.append(", resourceId="); builder.append(resourceId); builder.append(", status="); diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/Groups.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Groups.java new file mode 100644 index 000000000..2670911dc --- /dev/null +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Groups.java @@ -0,0 +1,302 @@ +/* + * Copyright [2022] [MaxKey of copyright http://www.maxkey.top] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +package org.dromara.maxkey.entity; + +import java.io.Serializable; +import org.dromara.mybatis.jpa.entity.JpaEntity; + +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import org.hibernate.validator.constraints.Length; + +@Entity +@Table(name = "MXK_GROUPS") +public class Groups extends JpaEntity implements Serializable { + + private static final long serialVersionUID = 4660258495864814777L; + + public class Category{ + public static final String DYNAMIC = "dynamic"; + + public static final String STATIC = "static"; + + public static final String APP = "app"; + } + + + @Id + @Column + @GeneratedValue + String id; + + @Length(max = 60) + @Column + String groupCode; + + @Length(max = 60) + @Column + String groupName; + + @Column + String category; + + @Column + String filters ; + + @Column + String orgIdsList; + @Column + String resumeTime; + @Column + String suspendTime; + + @Column + int isdefault; + @Column + String description; + @Column + String createdBy; + @Column + String createdDate; + @Column + String modifiedBy; + @Column + String modifiedDate; + @Column + int status; + + @Column + private String instId; + + private String instName; + + public Groups() { + } + + public Groups(String id) { + this.id = id; + } + + /** + * Groups. + * @param id String + * @param name String + * @param isdefault int + */ + public Groups(String id,String groupCode, String groupName, int isdefault) { + super(); + this.id = id; + this.groupCode = groupCode; + this.groupName = groupName; + this.isdefault = isdefault; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + + public String getGroupCode() { + return groupCode; + } + + public void setGroupCode(String groupCode) { + this.groupCode = groupCode; + } + + public String getGroupName() { + return groupName; + } + + public void setGroupName(String groupName) { + this.groupName = groupName; + } + + public int getIsdefault() { + return isdefault; + } + + public void setIsdefault(int isdefault) { + this.isdefault = isdefault; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public String getCreatedBy() { + return createdBy; + } + + public void setCreatedBy(String createdBy) { + this.createdBy = createdBy; + } + + public String getCreatedDate() { + return createdDate; + } + + public void setCreatedDate(String createdDate) { + this.createdDate = createdDate; + } + + public String getModifiedBy() { + return modifiedBy; + } + + public void setModifiedBy(String modifiedBy) { + this.modifiedBy = modifiedBy; + } + + public String getModifiedDate() { + return modifiedDate; + } + + public void setModifiedDate(String modifiedDate) { + this.modifiedDate = modifiedDate; + } + + public int getStatus() { + return status; + } + + public void setStatus(int status) { + this.status = status; + } + + /** + * ROLE_ALL_USER must be + * 1, dynamic + * 2, all orgIdsList + * 3, not filters + */ + public void setDefaultAllUser() { + this.category = "dynamic"; + this.orgIdsList =""; + this.filters =""; + } + + public String getCategory() { + return category; + } + + public void setCategory(String category) { + this.category = category; + } + + public String getFilters() { + return filters; + } + + public void setFilters(String filters) { + this.filters = filters; + } + + public String getOrgIdsList() { + return orgIdsList; + } + + public void setOrgIdsList(String orgIdsList) { + this.orgIdsList = orgIdsList; + } + + public String getResumeTime() { + return resumeTime; + } + + public void setResumeTime(String resumeTime) { + this.resumeTime = resumeTime; + } + + public String getSuspendTime() { + return suspendTime; + } + + public void setSuspendTime(String suspendTime) { + this.suspendTime = suspendTime; + } + + public String getInstId() { + return instId; + } + + public void setInstId(String instId) { + this.instId = instId; + } + + public String getInstName() { + return instName; + } + + public void setInstName(String instName) { + this.instName = instName; + } + + @Override + public String toString() { + StringBuilder builder = new StringBuilder(); + builder.append("Groups [id="); + builder.append(id); + builder.append(", groupCode="); + builder.append(groupCode); + builder.append(", groupName="); + builder.append(groupName); + builder.append(", category="); + builder.append(category); + builder.append(", filters="); + builder.append(filters); + builder.append(", orgIdsList="); + builder.append(orgIdsList); + builder.append(", resumeTime="); + builder.append(resumeTime); + builder.append(", suspendTime="); + builder.append(suspendTime); + builder.append(", isdefault="); + builder.append(isdefault); + builder.append(", description="); + builder.append(description); + builder.append(", createdBy="); + builder.append(createdBy); + builder.append(", createdDate="); + builder.append(createdDate); + builder.append(", modifiedBy="); + builder.append(modifiedBy); + builder.append(", modifiedDate="); + builder.append(modifiedDate); + builder.append(", status="); + builder.append(status); + builder.append(", instId="); + builder.append(instId); + builder.append(", instName="); + builder.append(instName); + builder.append("]"); + return builder.toString(); + } + +} diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/HistoryLoginApps.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/HistoryLoginApps.java index 0a0314b62..c9d39d750 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/HistoryLoginApps.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/HistoryLoginApps.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -31,7 +33,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_HISTORY_LOGIN_APPS") -public class HistoryLoginApps extends JpaEntity { +public class HistoryLoginApps extends JpaEntity implements Serializable { private static final long serialVersionUID = 5085201575292304749L; @Id diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/Register.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Register.java index 7a205be3f..7e6529bf6 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/Register.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/Register.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -27,7 +29,7 @@ import jakarta.persistence.Table; @Entity @Table(name = "MXK_REGISTER") -public class Register extends JpaEntity{ +public class Register extends JpaEntity implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RoleMember.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/RoleMember.java index e6d765ab6..dfedf46da 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/RoleMember.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/RoleMember.java @@ -27,13 +27,6 @@ import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.Table; - -/* - ID varchar(40) not null, - APPROLEID varchar(40) null, - USERID varchar(40) null - constraint PK_ROLES primary key clustered (ID) - */ @Entity @Table(name = "MXK_ROLE_MEMBER") public class RoleMember extends UserInfo implements Serializable{ diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/SocialsAssociate.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/SocialsAssociate.java index ce75fe147..f6d180a05 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/SocialsAssociate.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/SocialsAssociate.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -31,7 +33,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_SOCIALS_ASSOCIATE") -public class SocialsAssociate extends JpaEntity { +public class SocialsAssociate extends JpaEntity implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/SynchroRelated.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/SynchroRelated.java index ec345975f..5a676cef1 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/SynchroRelated.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/SynchroRelated.java @@ -17,6 +17,7 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; import java.util.Date; import org.dromara.mybatis.jpa.entity.JpaEntity; @@ -36,7 +37,7 @@ import org.dromara.maxkey.util.DateUtils; @Entity @Table(name = "MXK_SYNCHRO_RELATED") -public class SynchroRelated extends JpaEntity { +public class SynchroRelated extends JpaEntity implements Serializable { private static final long serialVersionUID = 6993697309055585706L; @Id diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfo.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfo.java index f48aea4c4..f54c7eb07 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfo.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfo.java @@ -18,6 +18,8 @@ package org.dromara.maxkey.entity; import com.fasterxml.jackson.annotation.JsonIgnore; + +import java.io.Serializable; import java.util.HashMap; import java.util.List; @@ -39,7 +41,7 @@ import org.dromara.maxkey.util.StringUtils; @Entity @Table(name = "MXK_USERINFO") -public class UserInfo extends JpaEntity { +public class UserInfo extends JpaEntity implements Serializable { private static final long serialVersionUID = 6402443942083382236L; public static final String CLASS_TYPE = "UserInfo"; diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfoAdjoint.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfoAdjoint.java index 08c3277e1..2bd0ad092 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfoAdjoint.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/UserInfoAdjoint.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -27,7 +29,7 @@ import jakarta.persistence.Table; @Entity @Table(name = "MXK_USERINFO_ADJUNCT") -public class UserInfoAdjoint extends JpaEntity { +public class UserInfoAdjoint extends JpaEntity implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsCasDetails.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsCasDetails.java index 500ba6c3c..b910c5fe0 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsCasDetails.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsCasDetails.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -27,7 +29,7 @@ import jakarta.persistence.Table; @Entity @Table(name = "MXK_APPS_CAS_DETAILS") -public class AppsCasDetails extends Apps { +public class AppsCasDetails extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsExtendApiDetails.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsExtendApiDetails.java index 25cbf6353..8633826f6 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsExtendApiDetails.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsExtendApiDetails.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -27,7 +29,7 @@ import jakarta.persistence.Table; @Entity @Table(name = "MXK_APPS_EXTENDAPI_DETAILS") -public class AppsExtendApiDetails extends Apps { +public class AppsExtendApiDetails extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsFormBasedDetails.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsFormBasedDetails.java index f2ec09eb7..fe5296666 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsFormBasedDetails.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsFormBasedDetails.java @@ -17,6 +17,8 @@ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -31,7 +33,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_APPS_FORM_BASED_DETAILS") -public class AppsFormBasedDetails extends Apps { +public class AppsFormBasedDetails extends Apps implements Serializable { /** * */ diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsJwtDetails.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsJwtDetails.java index 2d39c2852..65d76fec6 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsJwtDetails.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsJwtDetails.java @@ -20,6 +20,8 @@ */ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -34,7 +36,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_APPS_JWT_DETAILS") -public class AppsJwtDetails extends Apps { +public class AppsJwtDetails extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsOAuth20Details.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsOAuth20Details.java index cc2fc9609..693e75ed7 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsOAuth20Details.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsOAuth20Details.java @@ -25,12 +25,14 @@ import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.Table; +import java.io.Serializable; + import org.dromara.maxkey.entity.apps.oauth2.provider.client.BaseClientDetails; import org.springframework.util.StringUtils; @Entity @Table(name = "MXK_APPS_OAUTH_CLIENT_DETAILS") -public class AppsOAuth20Details extends Apps { +public class AppsOAuth20Details extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsSAML20Details.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsSAML20Details.java index 0235b42ce..b52b0d50b 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsSAML20Details.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsSAML20Details.java @@ -17,6 +17,7 @@ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; import java.security.cert.X509Certificate; import org.dromara.mybatis.jpa.entity.JpaEntity; @@ -33,7 +34,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_APPS_SAML_V20_DETAILS") -public class AppsSAML20Details extends Apps { +public class AppsSAML20Details extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsTokenBasedDetails.java b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsTokenBasedDetails.java index 3ee031ee9..cbfbaff1c 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsTokenBasedDetails.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/entity/apps/AppsTokenBasedDetails.java @@ -20,6 +20,8 @@ */ package org.dromara.maxkey.entity.apps; +import java.io.Serializable; + import org.dromara.mybatis.jpa.entity.JpaEntity; import jakarta.persistence.Column; @@ -34,7 +36,7 @@ import jakarta.persistence.Table; */ @Entity @Table(name = "MXK_APPS_TOKEN_BASED_DETAILS") -public class AppsTokenBasedDetails extends Apps { +public class AppsTokenBasedDetails extends Apps implements Serializable { /** * diff --git a/maxkey-core/src/main/java/org/dromara/maxkey/persistence/repository/LoginRepository.java b/maxkey-core/src/main/java/org/dromara/maxkey/persistence/repository/LoginRepository.java index 21b5cf325..2f1dfc71c 100644 --- a/maxkey-core/src/main/java/org/dromara/maxkey/persistence/repository/LoginRepository.java +++ b/maxkey-core/src/main/java/org/dromara/maxkey/persistence/repository/LoginRepository.java @@ -52,7 +52,7 @@ public class LoginRepository { - private static final String ROLES_SELECT_STATEMENT = "select distinct r.id,r.rolecode,r.rolename from mxk_userinfo u,mxk_roles r,mxk_role_member rm where u.id = ? and u.id=rm.memberid and rm.roleid=r.id "; + private static final String ROLES_SELECT_STATEMENT = "select distinct g.id,g.groupcode,g.groupname from mxk_userinfo u,mxk_groups g,mxk_group_member gm where u.id = ? and u.id=gm.memberid and gm.groupid=g.id "; private static final String DEFAULT_USERINFO_SELECT_STATEMENT = "select * from mxk_userinfo where username = ? "; @@ -60,7 +60,7 @@ public class LoginRepository { private static final String DEFAULT_USERINFO_SELECT_STATEMENT_USERNAME_MOBILE_EMAIL = "select * from mxk_userinfo where (username = ? or mobile = ? or email = ?) "; - private static final String DEFAULT_MYAPPS_SELECT_STATEMENT = "select distinct app.id,app.appname from mxk_apps app,mxk_role_permissions pm,mxk_roles r where app.id=pm.appid and app.status = 1 and pm.roleid=r.id and r.id in(%s)"; + private static final String DEFAULT_MYAPPS_SELECT_STATEMENT = "select distinct app.id,app.appname from mxk_apps app,mxk_group_permissions gp,mxk_groups g where app.id=gp.appid and app.status = 1 and gp.groupid=g.id and g.id in(%s)"; protected JdbcTemplate jdbcTemplate; @@ -215,7 +215,7 @@ public class LoginRepository { public List queryRoles(UserInfo userInfo) { List listRoles = jdbcTemplate.query(ROLES_SELECT_STATEMENT, new RowMapper() { public Roles mapRow(ResultSet rs, int rowNum) throws SQLException { - Roles role = new Roles(rs.getString("id"), rs.getString("rolecode"),rs.getString("rolename"), 0); + Roles role = new Roles(rs.getString("id"), rs.getString("groupcode"),rs.getString("groupname"), 0); return role; } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RoleMemberMapper.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupMemberMapper.java similarity index 64% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RoleMemberMapper.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupMemberMapper.java index d511f9ec2..d6d0058c9 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RoleMemberMapper.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupMemberMapper.java @@ -22,6 +22,8 @@ package org.dromara.maxkey.persistence.mapper; import java.util.List; +import org.dromara.maxkey.entity.GroupMember; +import org.dromara.maxkey.entity.Groups; import org.dromara.maxkey.entity.RoleMember; import org.dromara.maxkey.entity.Roles; import org.dromara.maxkey.entity.UserInfo; @@ -32,20 +34,20 @@ import org.dromara.mybatis.jpa.IJpaMapper; * */ -public interface RoleMemberMapper extends IJpaMapper { +public interface GroupMemberMapper extends IJpaMapper { - public List memberInRole(RoleMember entity); - public List memberNotInRole(RoleMember entity); + public List memberIn(GroupMember entity); + public List memberNotIn(GroupMember entity); - public List rolesNoMember(RoleMember entity); + public List noMember(GroupMember entity); - public int addDynamicRoleMember(Roles dynamicRole); + public int addDynamicMember(Groups dynamicRole); - public int deleteDynamicRoleMember(Roles dynamicRole); + public int deleteDynamicMember(Groups dynamicRole); - public int deleteByRoleId(String roleId); + public int deleteByGroupId(String groupId); - public List queryMemberByRoleId(String roleId); + public List queryMemberByGroupId(String groupId); diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePermissionsMapper.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPermissionsMapper.java similarity index 74% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePermissionsMapper.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPermissionsMapper.java index 967036859..1e098ad57 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePermissionsMapper.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPermissionsMapper.java @@ -22,7 +22,7 @@ package org.dromara.maxkey.persistence.mapper; import java.util.List; -import org.dromara.maxkey.entity.RolePermissions; +import org.dromara.maxkey.entity.GroupPermissions; import org.dromara.mybatis.jpa.IJpaMapper; /** @@ -30,12 +30,12 @@ import org.dromara.mybatis.jpa.IJpaMapper; * */ -public interface RolePermissionsMapper extends IJpaMapper { +public interface GroupPermissionsMapper extends IJpaMapper { - public ListappsInRole(RolePermissions entity); + public ListappsInGroup(GroupPermissions entity); - public List appsNotInRole(RolePermissions entity); + public List appsNotInGroup(GroupPermissions entity); } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePrivilegesMapper.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPrivilegesMapper.java similarity index 68% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePrivilegesMapper.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPrivilegesMapper.java index ad272e2b5..4ca1e2820 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolePrivilegesMapper.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupPrivilegesMapper.java @@ -22,7 +22,7 @@ package org.dromara.maxkey.persistence.mapper; import java.util.List; -import org.dromara.maxkey.entity.RolePrivileges; +import org.dromara.maxkey.entity.GroupPrivileges; import org.dromara.mybatis.jpa.IJpaMapper; /** @@ -30,12 +30,12 @@ import org.dromara.mybatis.jpa.IJpaMapper; * */ -public interface RolePrivilegesMapper extends IJpaMapper { +public interface GroupPrivilegesMapper extends IJpaMapper { - public int insertRolePrivileges(List rolePermissionsList); + public int insertGroupPrivileges(List groupPrivilegesList); - public int deleteRolePrivileges(List rolePermissionsList); + public int deleteGroupPrivileges(List groupPrivilegesList); - public List queryRolePrivileges(RolePrivileges rolePermissions); + public List queryGroupPrivileges(GroupPrivileges groupPrivileges); } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolesMapper.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupsMapper.java similarity index 79% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolesMapper.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupsMapper.java index 74a2cc193..5813e84d8 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/RolesMapper.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/mapper/GroupsMapper.java @@ -22,7 +22,7 @@ package org.dromara.maxkey.persistence.mapper; import java.util.List; -import org.dromara.maxkey.entity.Roles; +import org.dromara.maxkey.entity.Groups; import org.dromara.mybatis.jpa.IJpaMapper; /** @@ -30,9 +30,9 @@ import org.dromara.mybatis.jpa.IJpaMapper; * */ -public interface RolesMapper extends IJpaMapper { +public interface GroupsMapper extends IJpaMapper { - public List queryDynamicRoles(Roles groups); + public List queryDynamic(Groups groups); - public List queryRolesByUserId(String userId); + public List queryByUserId(String userId); } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RoleMemberService.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupMemberService.java similarity index 58% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RoleMemberService.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupMemberService.java index 171558fcd..b6755cea6 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RoleMemberService.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupMemberService.java @@ -19,10 +19,10 @@ package org.dromara.maxkey.persistence.service; import java.util.List; -import org.dromara.maxkey.entity.RoleMember; -import org.dromara.maxkey.entity.Roles; +import org.dromara.maxkey.entity.GroupMember; +import org.dromara.maxkey.entity.Groups; import org.dromara.maxkey.entity.UserInfo; -import org.dromara.maxkey.persistence.mapper.RoleMemberMapper; +import org.dromara.maxkey.persistence.mapper.GroupMemberMapper; import org.dromara.mybatis.jpa.JpaService; import org.dromara.mybatis.jpa.entity.JpaPageResults; import org.slf4j.Logger; @@ -30,46 +30,46 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Repository; @Repository -public class RoleMemberService extends JpaService{ - final static Logger _logger = LoggerFactory.getLogger(RoleMemberService.class); +public class GroupMemberService extends JpaService{ + final static Logger _logger = LoggerFactory.getLogger(GroupMemberService.class); - public RoleMemberService() { - super(RoleMemberMapper.class); + public GroupMemberService() { + super(GroupMemberMapper.class); } /* (non-Javadoc) * @see com.connsec.db.service.BaseService#getMapper() */ @Override - public RoleMemberMapper getMapper() { - return (RoleMemberMapper)super.getMapper(); + public GroupMemberMapper getMapper() { + return (GroupMemberMapper)super.getMapper(); } - public int addDynamicRoleMember(Roles dynamicGroup) { - return getMapper().addDynamicRoleMember(dynamicGroup); + public int addDynamicMember(Groups dynamicGroup) { + return getMapper().addDynamicMember(dynamicGroup); } - public int deleteDynamicRoleMember(Roles dynamicGroup) { - return getMapper().deleteDynamicRoleMember(dynamicGroup); + public int deleteDynamicMember(Groups dynamicGroup) { + return getMapper().deleteDynamicMember(dynamicGroup); } - public int deleteByRoleId(String groupId) { - return getMapper().deleteByRoleId(groupId); + public int deleteByGroupId(String groupId) { + return getMapper().deleteByGroupId(groupId); } - public List queryMemberByRoleId(String groupId){ - return getMapper().queryMemberByRoleId(groupId); + public List queryMemberByGroupId(String groupId){ + return getMapper().queryMemberByGroupId(groupId); } - public JpaPageResults rolesNoMember(RoleMember entity) { + public JpaPageResults noMember(GroupMember entity) { entity.setPageResultSelectUUID(entity.generateId()); entity.setStartRow(calculateStartRow(entity.getPageNumber() ,entity.getPageSize())); entity.setPageable(true); - List resultslist = null; + List resultslist = null; try { - resultslist = getMapper().rolesNoMember(entity); + resultslist = getMapper().noMember(entity); } catch (Exception e) { _logger.error("queryPageResults Exception " , e); } @@ -83,7 +83,7 @@ public class RoleMemberService extends JpaService{ totalCount = parseCount(getMapper().fetchPageResults(entity)); } - return new JpaPageResults(entity.getPageNumber(),entity.getPageSize(),totalPage,totalCount,resultslist); + return new JpaPageResults(entity.getPageNumber(),entity.getPageSize(),totalPage,totalCount,resultslist); } } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePermissionssService.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPermissionssService.java similarity index 70% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePermissionssService.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPermissionssService.java index be61dcfb4..41aeef7dc 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePermissionssService.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPermissionssService.java @@ -17,16 +17,16 @@ package org.dromara.maxkey.persistence.service; -import org.dromara.maxkey.entity.RolePermissions; -import org.dromara.maxkey.persistence.mapper.RolePermissionsMapper; +import org.dromara.maxkey.entity.GroupPermissions; +import org.dromara.maxkey.persistence.mapper.GroupPermissionsMapper; import org.dromara.mybatis.jpa.JpaService; import org.springframework.stereotype.Repository; @Repository -public class RolePermissionssService extends JpaService{ +public class GroupPermissionssService extends JpaService{ - public RolePermissionssService() { - super(RolePermissionsMapper.class); + public GroupPermissionssService() { + super(GroupPermissionsMapper.class); } @@ -35,8 +35,8 @@ public class RolePermissionssService extends JpaService{ * @see com.connsec.db.service.BaseService#getMapper() */ @Override - public RolePermissionsMapper getMapper() { - return (RolePermissionsMapper)super.getMapper(); + public GroupPermissionsMapper getMapper() { + return (GroupPermissionsMapper)super.getMapper(); } } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePrivilegesService.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPrivilegesService.java similarity index 52% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePrivilegesService.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPrivilegesService.java index a55cf4c0d..8d7eb6e16 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolePrivilegesService.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupPrivilegesService.java @@ -19,40 +19,40 @@ package org.dromara.maxkey.persistence.service; import java.util.List; -import org.dromara.maxkey.entity.RolePrivileges; -import org.dromara.maxkey.persistence.mapper.RolePrivilegesMapper; +import org.dromara.maxkey.entity.GroupPrivileges; +import org.dromara.maxkey.persistence.mapper.GroupPrivilegesMapper; import org.dromara.mybatis.jpa.JpaService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Repository; @Repository -public class RolePrivilegesService extends JpaService{ - final static Logger _logger = LoggerFactory.getLogger(RolePrivilegesService.class); +public class GroupPrivilegesService extends JpaService{ + final static Logger _logger = LoggerFactory.getLogger(GroupPrivilegesService.class); - public RolePrivilegesService() { - super(RolePrivilegesMapper.class); + public GroupPrivilegesService() { + super(GroupPrivilegesMapper.class); } /* (non-Javadoc) * @see com.connsec.db.service.BaseService#getMapper() */ @Override - public RolePrivilegesMapper getMapper() { - return (RolePrivilegesMapper)super.getMapper(); + public GroupPrivilegesMapper getMapper() { + return (GroupPrivilegesMapper)super.getMapper(); } - public boolean insertRolePrivileges(List rolePermissionsList) { - return getMapper().insertRolePrivileges(rolePermissionsList)>0; + public boolean insertGroupPrivileges(List rolePermissionsList) { + return getMapper().insertGroupPrivileges(rolePermissionsList)>0; }; - public boolean deleteRolePrivileges(List rolePermissionsList) { - return getMapper().deleteRolePrivileges(rolePermissionsList)>=0; + public boolean deleteGroupPrivileges(List rolePermissionsList) { + return getMapper().deleteGroupPrivileges(rolePermissionsList)>=0; } - public List queryRolePrivileges(RolePrivileges rolePermissions){ - return getMapper().queryRolePrivileges(rolePermissions); + public List queryGroupPrivileges(GroupPrivileges rolePermissions){ + return getMapper().queryGroupPrivileges(rolePermissions); } } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolesService.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupsService.java similarity index 63% rename from maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolesService.java rename to maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupsService.java index f5c199afe..dd0e47d42 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/RolesService.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/GroupsService.java @@ -24,9 +24,10 @@ import java.time.LocalTime; import java.util.List; import org.dromara.maxkey.constants.ConstsStatus; +import org.dromara.maxkey.entity.Groups; import org.dromara.maxkey.entity.Institutions; import org.dromara.maxkey.entity.Roles; -import org.dromara.maxkey.persistence.mapper.RolesMapper; +import org.dromara.maxkey.persistence.mapper.GroupsMapper; import org.dromara.maxkey.util.StringUtils; import org.dromara.mybatis.jpa.JpaService; import org.slf4j.Logger; @@ -37,57 +38,57 @@ import org.springframework.stereotype.Repository; import com.fasterxml.jackson.annotation.JsonIgnore; @Repository -public class RolesService extends JpaService implements Serializable { +public class GroupsService extends JpaService implements Serializable { /** * */ private static final long serialVersionUID = -4156671926199393550L; - final static Logger _logger = LoggerFactory.getLogger(RolesService.class); + final static Logger _logger = LoggerFactory.getLogger(GroupsService.class); @JsonIgnore @Autowired - RoleMemberService roleMemberService; + GroupMemberService service; @Autowired InstitutionsService institutionsService; - public RolesService() { - super(RolesMapper.class); + public GroupsService() { + super(GroupsMapper.class); } /* (non-Javadoc) * @see com.connsec.db.service.BaseService#getMapper() */ @Override - public RolesMapper getMapper() { - return (RolesMapper)super.getMapper(); + public GroupsMapper getMapper() { + return (GroupsMapper)super.getMapper(); } - public List queryDynamicRoles(Roles groups){ - return this.getMapper().queryDynamicRoles(groups); + public List queryDynamicRoles(Groups groups){ + return this.getMapper().queryDynamic(groups); } public boolean deleteById(String groupId) { this.remove(groupId); - roleMemberService.deleteByRoleId(groupId); + service.deleteByGroupId(groupId); return true; } - public List queryRolesByUserId(String userId){ - return this.getMapper().queryRolesByUserId(userId); + public List queryByUserId(String userId){ + return this.getMapper().queryByUserId(userId); } - public void refreshDynamicRoles(Roles dynamicRole){ - if(dynamicRole.getCategory().equals(Roles.Category.DYNAMIC)) { + public void refreshDynamicRoles(Groups dynamicGroup){ + if(dynamicGroup.getCategory().equals(Roles.Category.DYNAMIC)) { boolean isDynamicTimeSupport = false; boolean isBetweenEffectiveTime = false; - if(StringUtils.isNotBlank(dynamicRole.getResumeTime()) - &&StringUtils.isNotBlank(dynamicRole.getSuspendTime()) - &&!dynamicRole.getSuspendTime().equals("00:00")) { + if(StringUtils.isNotBlank(dynamicGroup.getResumeTime()) + &&StringUtils.isNotBlank(dynamicGroup.getSuspendTime()) + &&!dynamicGroup.getSuspendTime().equals("00:00")) { LocalTime currentTime = LocalDateTime.now().toLocalTime(); - LocalTime resumeTime = LocalTime.parse(dynamicRole.getResumeTime()); - LocalTime suspendTime = LocalTime.parse(dynamicRole.getSuspendTime()); + LocalTime resumeTime = LocalTime.parse(dynamicGroup.getResumeTime()); + LocalTime suspendTime = LocalTime.parse(dynamicGroup.getSuspendTime()); _logger.info("currentTime: " + currentTime + " , resumeTime : " + resumeTime @@ -100,8 +101,8 @@ public class RolesService extends JpaService implements Serializable { } - if(StringUtils.isNotBlank(dynamicRole.getOrgIdsList())) { - String []orgIds = dynamicRole.getOrgIdsList().split(","); + if(StringUtils.isNotBlank(dynamicGroup.getOrgIdsList())) { + String []orgIds = dynamicGroup.getOrgIdsList().split(","); StringBuffer orgIdFilters = new StringBuffer(); for(String orgId : orgIds) { if(StringUtils.isNotBlank(orgId)) { @@ -112,11 +113,11 @@ public class RolesService extends JpaService implements Serializable { } } if(orgIdFilters.length() > 0) { - dynamicRole.setOrgIdsList(orgIdFilters.toString()); + dynamicGroup.setOrgIdsList(orgIdFilters.toString()); } } - String filters = dynamicRole.getFilters(); + String filters = dynamicGroup.getFilters(); if(StringUtils.isNotBlank(filters)) { if(StringUtils.filtersSQLInjection(filters.toLowerCase())) { _logger.info("filters include SQL Injection Attack Risk."); @@ -125,19 +126,19 @@ public class RolesService extends JpaService implements Serializable { filters = filters.replace("&", " AND "); filters = filters.replace("|", " OR "); - dynamicRole.setFilters(filters); + dynamicGroup.setFilters(filters); } if(isDynamicTimeSupport) { if(isBetweenEffectiveTime) { - roleMemberService.deleteDynamicRoleMember(dynamicRole); - roleMemberService.addDynamicRoleMember(dynamicRole); + service.deleteDynamicMember(dynamicGroup); + service.addDynamicMember(dynamicGroup); }else { - roleMemberService.deleteDynamicRoleMember(dynamicRole); + service.deleteDynamicMember(dynamicGroup); } }else{ - roleMemberService.deleteDynamicRoleMember(dynamicRole); - roleMemberService.addDynamicRoleMember(dynamicRole); + service.deleteDynamicMember(dynamicGroup); + service.addDynamicMember(dynamicGroup); } } } @@ -146,12 +147,12 @@ public class RolesService extends JpaService implements Serializable { List instList = institutionsService.find("where status = ? ", new Object[]{ConstsStatus.ACTIVE}, new int[]{Types.INTEGER}); for(Institutions inst : instList) { - Roles role = new Roles(); - role.setInstId(inst.getId()); - List rolesList = queryDynamicRoles(role); - for(Roles r : rolesList) { - _logger.debug("role " + rolesList); - refreshDynamicRoles(r); + Groups group = new Groups(); + group.setInstId(inst.getId()); + List groupsList = queryDynamicRoles(group); + for(Groups g : groupsList) { + _logger.debug("role {}" , g); + refreshDynamicRoles(g); } } } diff --git a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/HistorySystemLogsService.java b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/HistorySystemLogsService.java index 3667f612e..fd38e9b3d 100644 --- a/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/HistorySystemLogsService.java +++ b/maxkey-persistence/src/main/java/org/dromara/maxkey/persistence/service/HistorySystemLogsService.java @@ -23,8 +23,8 @@ import org.dromara.maxkey.entity.HistorySystemLogs; import org.dromara.maxkey.entity.Organizations; import org.dromara.maxkey.entity.Resources; import org.dromara.maxkey.entity.RoleMember; -import org.dromara.maxkey.entity.RolePermissions; -import org.dromara.maxkey.entity.RolePrivileges; +import org.dromara.maxkey.entity.GroupPermissions; +import org.dromara.maxkey.entity.GroupPrivileges; import org.dromara.maxkey.entity.Roles; import org.dromara.maxkey.entity.SocialsProvider; import org.dromara.maxkey.entity.Synchronizers; @@ -68,16 +68,16 @@ public class HistorySystemLogsService extends JpaService{ message = buildMsg((Roles)entity); }else if(entity instanceof RoleMember) { message = buildMsg((RoleMember)entity); - }else if(entity instanceof RolePermissions) { - message = buildMsg((RolePermissions)entity); + }else if(entity instanceof GroupPermissions) { + message = buildMsg((GroupPermissions)entity); }else if(entity instanceof Resources) { message = buildMsg((Resources)entity); }else if(entity instanceof Synchronizers) { message = buildMsg((Synchronizers)entity); }else if(entity instanceof SocialsProvider) { message = buildMsg((SocialsProvider)entity); - }else if(entity instanceof RolePrivileges) { - message = buildMsg((RolePrivileges)entity); + }else if(entity instanceof GroupPrivileges) { + message = buildMsg((GroupPrivileges)entity); }else if(entity instanceof String) { message = entity.toString(); } @@ -157,18 +157,18 @@ public class HistorySystemLogsService extends JpaService{ .toString(); } - public String buildMsg(RolePermissions permission) { + public String buildMsg(GroupPermissions permission) { return new StringBuilder() - .append(permission.getRoleName()) + .append(permission.getGroupName()) .append("[") .append(permission.getAppName()) .append("]") .toString(); } - public String buildMsg(RolePrivileges privilege) { + public String buildMsg(GroupPrivileges privilege) { return new StringBuilder() - .append(privilege.getRoleId()) + .append(privilege.getGroupId()) .append("[") .append(privilege.getResourceId()) .append("]") diff --git a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RoleMemberMapper.xml b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupMemberMapper.xml similarity index 59% rename from maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RoleMemberMapper.xml rename to maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupMemberMapper.xml index d9e3fff48..9ac70644a 100644 --- a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RoleMemberMapper.xml +++ b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupMemberMapper.xml @@ -1,6 +1,6 @@ - + @@ -11,12 +11,12 @@ - select distinct - rm.id as id, - r.id as roleid, - r.rolename, - r.category category, + gm.id as id, + g.id as groupid, + g.groupname, + g.category category, u.username, u.usertype, u.windowsaccount, @@ -46,22 +46,22 @@ u.jobtitle, u.joblevel, - rm.createddate, + gm.createddate, u.status from mxk_userinfo u, - mxk_roles r, - mxk_role_member rm + mxk_groups g, + mxk_group_member gm where u.instid = #{instId} - and r.instid = #{instId} - and rm.instid = #{instId} - - and rm.roleid = #{roleId} - and r.id = #{roleId} + and g.instid = #{instId} + and gm.instid = #{instId} + + and gm.groupid = #{groupId} + and g.id = #{groupId} - - and r.rolename = #{roleName} + + and g.groupname = #{groupName} and u.username = #{username} @@ -69,13 +69,13 @@ and u.displayname like '%${displayName}%' - and rm.type in( 'USER','USER-DYNAMIC') - and rm.roleid = r.id - and rm.memberid = u.id + and gm.type in( 'USER','USER-DYNAMIC') + and gm.groupid = g.id + and gm.memberid = u.id - select distinct u.id, u.username, @@ -119,17 +119,17 @@ where u.id not in( select rm.memberid - from mxk_roles r,mxk_role_member rm + from mxk_groups g,mxk_group_member gm where 1 = 1 - - and rm.roleid = #{roleId} - and r.id = #{roleId} + + and gm.groupid = #{groupId} + and g.id = #{groupId} - - and r.rolename = #{roleName} + + and g.groupname = #{groupName} - and rm.type in( 'USER','USER-DYNAMIC') - and rm.roleid = r.id + and gm.type in( 'USER','USER-DYNAMIC') + and gm.groupid = g.id ) and u.username = #{username} @@ -139,71 +139,71 @@ - select distinct - r.* + g.* from - mxk_roles r + mxk_groups g where - r.id not in( + g.id not in( select - rm.roleid - from mxk_role_member rm,mxk_userinfo u - where rm.memberid = u.id + gm.groupid + from mxk_group_member gm,mxk_userinfo u + where gm.memberid = u.id and u.username = #{username} - and rm.memberid = #{memberid} + and gm.memberid = #{memberid} ) - - and r.rolename = #{roleName} + + and g.groupname = #{groupName} - select distinct ig.* from - mxk_roles ir, - mxk_roles r, - mxk_role_member rm + mxk_groups ig, + mxk_groups g, + mxk_group_member gm where 1 = 1 - and rm.roleid = g.id - and rm.memberid = ig.id - and rm.type = 'ROLE' - - and rm.roleid = #{roleId} - and r.id = #{roleId} + and gm.groupid = g.id + and gm.memberid = ig.id + and gm.type = 'ROLE' + + and gm.groupid = #{groupId} + and g.id = #{groupId} - - and r.rolename = #{roleName} + + and g.groupname = #{groupName} - - insert into mxk_role_member( + + insert into mxk_group_member( id, - roleid, + groupid, memberid, type, instid ) select concat('${id}_',u.id) id, - '${id}' roleid, + '${id}' groupid, u.id memberid, 'USER-DYNAMIC' type, '${instId}' instid from mxk_userinfo u where not exists( - select 1 from mxk_role_member rm - where rm.roleid=#{id} - and rm.memberid=u.id - and rm.type='USER-DYNAMIC' + select 1 from mxk_group_member gm + where gm.groupid=#{id} + and gm.memberid=u.id + and gm.type='USER-DYNAMIC' ) and (${filters}) @@ -213,15 +213,15 @@ - - delete from mxk_role_member rm + + delete from mxk_group_member gm where type = 'user-dynamic' - and rm.roleid=#{id} + and gm.groupid=#{id} and not exists( select 1 from mxk_userinfo u where 1 = 1 - and u.id=rm.memberid + and u.id=gm.memberid and (${filters}) @@ -231,10 +231,10 @@ ) - select distinct - r.roleId, - r.roleName, + g.groupId, + g.groupName, u.id, u.username, u.usertype, @@ -264,24 +264,24 @@ u.department, u.jobtitle, u.joblevel, - rm.createddate, + gm.createddate, u.status from mxk_userinfo u, - mxk_roles r, - mxk_role_member rm + mxk_groups g, + mxk_group_member gm where 1 = 1 - and rm.roleid = #{value} + and gm.groupid = #{value} and g.id = #{value} - and rm.type in( 'USER','USER-DYNAMIC') - and rm.roleid = r.id - and rm.memberid = u.id + and gm.type in( 'USER','USER-DYNAMIC') + and gm.groupid = g.id + and gm.memberid = u.id - - delete from mxk_role_member rm - where rm.roleid = #{value} and roleId != 'ROLE_ALL_USER' + + delete from mxk_group_member gm + where gm.groupid = #{value} and groupId != 'ROLE_ALL_USER' \ No newline at end of file diff --git a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePermissionsMapper.xml b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPermissionsMapper.xml similarity index 68% rename from maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePermissionsMapper.xml rename to maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPermissionsMapper.xml index ff707d7f2..b3a7b436b 100644 --- a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePermissionsMapper.xml +++ b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPermissionsMapper.xml @@ -1,6 +1,6 @@ - + @@ -18,11 +18,11 @@ - select p.id, - p.roleid, - r.rolename, + p.groupid, + r.groupname, apps.id appid, apps.appname, apps.icon, @@ -34,22 +34,22 @@ apps.vendorurl from mxk_apps apps, - mxk_role_permissions p, - mxk_roles r + mxk_group_permissions p, + mxk_groups r where apps.instid = #{instId} and p.instid = #{instId} and r.instid = #{instId} and p.appid = apps.id - and p.roleid = r.id - - and p.roleid = #{roleId} - and r.id = #{roleId} + and p.groupid = r.id + + and p.groupid = #{groupId} + and r.id = #{groupId} - select * from @@ -60,9 +60,9 @@ select appid from - mxk_role_permissions + mxk_group_permissions where - roleid = #{roleId} + groupid = #{groupId} ) diff --git a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePrivilegesMapper.xml b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPrivilegesMapper.xml similarity index 61% rename from maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePrivilegesMapper.xml rename to maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPrivilegesMapper.xml index 4f69a5627..858498679 100644 --- a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolePrivilegesMapper.xml +++ b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupPrivilegesMapper.xml @@ -1,6 +1,6 @@ - + @@ -11,18 +11,18 @@ - select * from - mxk_role_privileges + mxk_group_privileges where instid = #{instId} and status = 1 and id = #{id} - - and roleid = #{roleId} + + and groupid = #{groupId} and appid = #{appId} @@ -30,8 +30,8 @@ - - update mxk_role_privileges + + update mxk_group_privileges set status = 9 where 1 = 1 and @@ -39,11 +39,11 @@ - - insert into mxk_role_privileges ( id,appid,roleid,resourceid,status,instid) + + insert into mxk_role_privileges ( id,appid,groupid,resourceid,status,instid) values - (#{item.id},#{item.appId},#{item.roleId},#{item.resourceId},#{item.status},#{item.instId}) + (#{item.id},#{item.appId},#{item.groupId},#{item.resourceId},#{item.status},#{item.instId}) diff --git a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolesMapper.xml b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupsMapper.xml similarity index 57% rename from maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolesMapper.xml rename to maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupsMapper.xml index e84d56a55..2d6bb606c 100644 --- a/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/RolesMapper.xml +++ b/maxkey-persistence/src/main/resources/org/dromara/maxkey/persistence/mapper/xml/mysql/GroupsMapper.xml @@ -1,53 +1,53 @@ - + and id = #{id} - - and rolename like '%${roleName}%' + + and groupname like '%${groupName}%' - select * from - mxk_roles + mxk_groups where instid = #{instId} - select * from - mxk_roles + mxk_groups where instid = #{instId} and category = 'dynamic' - - update mxk_roles set + + update mxk_groups set status = '2' where instid = #{instId} and id = #{id} - - and rolename = #{roleName} + + and groupname = #{groupName} - update mxk_roles + update mxk_groups set status='2' where instid = #{instId} and id in @@ -59,19 +59,19 @@ diff --git a/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimGroupController.java b/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimGroupController.java index 321f6cd59..2a92a080b 100644 --- a/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimGroupController.java +++ b/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimGroupController.java @@ -23,10 +23,10 @@ import java.util.HashSet; import java.util.List; import java.util.Set; -import org.dromara.maxkey.entity.Roles; +import org.dromara.maxkey.entity.Groups; import org.dromara.maxkey.entity.UserInfo; -import org.dromara.maxkey.persistence.service.RoleMemberService; -import org.dromara.maxkey.persistence.service.RolesService; +import org.dromara.maxkey.persistence.service.GroupMemberService; +import org.dromara.maxkey.persistence.service.GroupsService; import org.dromara.maxkey.util.DateUtils; import org.dromara.maxkey.util.StringUtils; import org.dromara.maxkey.web.apis.identity.scim.resources.ScimGroup; @@ -56,18 +56,18 @@ public class ScimGroupController { final static Logger _logger = LoggerFactory.getLogger(ScimGroupController.class); @Autowired - RolesService rolesService; + GroupsService groupsService; @Autowired - RoleMemberService roleMemberService; + GroupMemberService groupMemberService; @RequestMapping(value = "/{id}", method = RequestMethod.GET) public MappingJacksonValue get(@PathVariable String id, @RequestParam(required = false) String attributes) { _logger.debug("ScimGroup id {} , attributes {}", id , attributes); - Roles role = rolesService.get(id); - ScimGroup scimGroup = role2ScimGroup(role); - List userList = roleMemberService.queryMemberByRoleId(id); + Groups group = groupsService.get(id); + ScimGroup scimGroup = group2ScimGroup(group); + List userList = groupMemberService.queryMemberByGroupId(id); if(userList != null && userList.size() > 0) { Set members = new HashSet(); for (UserInfo user : userList) { @@ -83,9 +83,9 @@ public class ScimGroupController { @RequestParam(required = false) String attributes, UriComponentsBuilder builder) throws IOException { _logger.debug("ScimGroup content {} , attributes {}", scimGroup , attributes); - Roles role =scimGroup2Role(scimGroup); - rolesService.insert(role); - return get(role.getId(),attributes); + Groups group =scimGroup2Role(scimGroup); + groupsService.insert(group); + return get(group.getId(),attributes); } @RequestMapping(value = "/{id}", method = RequestMethod.PUT) @@ -94,16 +94,16 @@ public class ScimGroupController { @RequestParam(required = false) String attributes) throws IOException { _logger.debug("ScimGroup content {} , attributes {}", scimGroup , attributes); - Roles role =scimGroup2Role(scimGroup); - rolesService.update(role); - return get(role.getId(),attributes); + Groups group =scimGroup2Role(scimGroup); + groupsService.update(group); + return get(group.getId(),attributes); } @RequestMapping(value = "/{id}", method = RequestMethod.DELETE) @ResponseStatus(HttpStatus.OK) public void delete(@PathVariable final String id) { _logger.debug("ScimGroup id {} " , id); - rolesService.remove(id); + groupsService.remove(id); } @RequestMapping(method = RequestMethod.GET) @@ -115,14 +115,14 @@ public class ScimGroupController { public MappingJacksonValue searchWithPost(@ModelAttribute ScimParameters requestParameters) { requestParameters.parse(); _logger.debug("requestParameters {} ",requestParameters); - Roles queryModel = new Roles(); + Groups queryModel = new Groups(); queryModel.setPageSize(requestParameters.getCount()); queryModel.calculate(requestParameters.getStartIndex()); - JpaPageResults orgResults = rolesService.fetchPageResults(queryModel); + JpaPageResults orgResults = groupsService.fetchPageResults(queryModel); List resultList = new ArrayList(); - for(Roles group : orgResults.getRows()) { - resultList.add(role2ScimGroup(group)); + for(Groups group : orgResults.getRows()) { + resultList.add(group2ScimGroup(group)); } ScimSearchResult scimSearchResult = new ScimSearchResult( @@ -133,11 +133,11 @@ public class ScimGroupController { return new MappingJacksonValue(scimSearchResult); } - public ScimGroup role2ScimGroup(Roles group) { + public ScimGroup group2ScimGroup(Groups group) { ScimGroup scimGroup = new ScimGroup(); scimGroup.setId(group.getId()); scimGroup.setExternalId(group.getId()); - scimGroup.setDisplayName(group.getRoleName()); + scimGroup.setDisplayName(group.getGroupName()); ScimMeta meta = new ScimMeta("Group"); if(StringUtils.isNotBlank(group.getCreatedDate())){ @@ -153,10 +153,10 @@ public class ScimGroupController { return scimGroup; } - public Roles scimGroup2Role(ScimGroup scimGroup) { - Roles role = new Roles(); - role.setId(scimGroup.getId()); - role.setRoleName(scimGroup.getDisplayName()); - return role; + public Groups scimGroup2Role(ScimGroup scimGroup) { + Groups group = new Groups(); + group.setId(scimGroup.getId()); + group.setGroupName(scimGroup.getDisplayName()); + return group; } } diff --git a/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimUserController.java b/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimUserController.java index 1761eeab2..ee4e9f8e1 100644 --- a/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimUserController.java +++ b/maxkey-web-apis/maxkey-web-api-scim/src/main/java/org/dromara/maxkey/web/apis/identity/scim/ScimUserController.java @@ -21,9 +21,9 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.dromara.maxkey.constants.ConstsStatus; -import org.dromara.maxkey.entity.Roles; +import org.dromara.maxkey.entity.Groups; import org.dromara.maxkey.entity.UserInfo; -import org.dromara.maxkey.persistence.service.RolesService; +import org.dromara.maxkey.persistence.service.GroupsService; import org.dromara.maxkey.persistence.service.UserInfoService; import org.dromara.maxkey.util.DateUtils; import org.dromara.maxkey.util.StringUtils; @@ -72,7 +72,7 @@ public class ScimUserController { private UserInfoService userInfoService; @Autowired - RolesService rolesService; + GroupsService groupsService; @RequestMapping(value = "/{id}", method = RequestMethod.GET) public MappingJacksonValue get(@PathVariable String id, @@ -172,9 +172,9 @@ public class ScimUserController { List groupsList=new ArrayList(); List groups = new ArrayList(); - for(Roles role : rolesService.queryRolesByUserId(userInfo.getId())){ - groupsList.add(role.getId()); - groups.add(new ScimGroupRef(role.getId(),role.getRoleName())); + for(Groups group : groupsService.queryByUserId(userInfo.getId())){ + groupsList.add(group.getId()); + groups.add(new ScimGroupRef(group.getId(),group.getGroupName())); } scimUser.setGroup(groupsList); diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/RoleMembers.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/GroupMembers.ts similarity index 93% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/RoleMembers.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/GroupMembers.ts index b9321b18a..05ff6e0c0 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/RoleMembers.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/GroupMembers.ts @@ -16,4 +16,4 @@ import { BaseEntity } from './BaseEntity'; -export class RoleMembers extends BaseEntity {} +export class GroupMembers extends BaseEntity {} diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Roles.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Groups.ts similarity index 97% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Roles.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Groups.ts index 1903d4393..19241cf8d 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Roles.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/entity/Groups.ts @@ -18,7 +18,7 @@ import format from 'date-fns/format'; import { BaseEntity } from './BaseEntity'; -export class Roles extends BaseEntity { +export class Groups extends BaseEntity { roleCode!: String; roleName!: String; category!: String; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/access.module.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/access.module.ts index 2c9fe0872..c546692db 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/access.module.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/access.module.ts @@ -22,12 +22,6 @@ import { NzIconModule } from 'ng-zorro-antd/icon'; import { PermissionsEditerComponent } from './permissions/permissions-editer/permissions-editer.component'; import { PermissionsComponent } from './permissions/permissions.component'; -import { MemberRolesEditerComponent } from './role-members/member-roles-editer/member-roles-editer.component'; -import { RoleMembersEditerComponent } from './role-members/role-members-editer/role-members-editer.component'; -import { RoleMembersComponent } from './role-members/role-members.component'; -import { RoleEditerComponent } from './roles/role-editer/role-editer.component'; -import { RolesComponent } from './roles/roles.component'; -import { SelectRolesComponent } from './roles/select-roles/select-roles.component'; import { SessionsComponent } from './sessions/sessions.component'; const routes: Routes = [ @@ -35,31 +29,13 @@ const routes: Routes = [ path: 'sessions', component: SessionsComponent }, - { - path: 'roles', - component: RolesComponent - }, - { - path: 'rolemembers', - component: RoleMembersComponent - }, { path: 'permissions', component: PermissionsComponent } ]; -const COMPONENTS = [ - RolesComponent, - RoleMembersComponent, - PermissionsComponent, - RoleEditerComponent, - SessionsComponent, - SelectRolesComponent, - RoleMembersEditerComponent, - PermissionsEditerComponent, - MemberRolesEditerComponent -]; +const COMPONENTS = [PermissionsComponent, SessionsComponent, PermissionsEditerComponent]; @NgModule({ declarations: [...COMPONENTS], diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions-editer/permissions-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions-editer/permissions-editer.component.ts index 857a27d85..efddd4ab0 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions-editer/permissions-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions-editer/permissions-editer.component.ts @@ -24,14 +24,14 @@ import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; -import { RolePermissionsService } from '../../../../service/role-permissions.service'; +import { GroupPermissionsService } from '../../../../service/group-permissions.service'; @Component({ selector: 'app-permissions-editer', templateUrl: './permissions-editer.component.html', styleUrls: ['./permissions-editer.component.less'] }) export class PermissionsEditerComponent implements OnInit { - @Input() roleId?: String; + @Input() groupId?: String; @Input() isEdit?: boolean; query: { @@ -39,7 +39,7 @@ export class PermissionsEditerComponent implements OnInit { appName: String; displayName: String; username: String; - roleId: String; + groupId: String; startDate: String; endDate: String; startDatePicker: Date; @@ -63,7 +63,7 @@ export class PermissionsEditerComponent implements OnInit { appName: '', displayName: '', username: '', - roleId: '', + groupId: '', startDate: '', endDate: '', startDatePicker: addDays(new Date(), -30), @@ -86,7 +86,7 @@ export class PermissionsEditerComponent implements OnInit { constructor( private modalRef: NzModalRef, - private rolePermissionsService: RolePermissionsService, + private groupPermissionsService: GroupPermissionsService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -95,8 +95,8 @@ export class PermissionsEditerComponent implements OnInit { ) {} ngOnInit(): void { - if (this.roleId) { - this.query.params.roleId = this.roleId; + if (this.groupId) { + this.query.params.groupId = this.groupId; this.fetch(); } } @@ -126,7 +126,7 @@ export class PermissionsEditerComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.rolePermissionsService.memberOut(this.query.params).subscribe(res => { + this.groupPermissionsService.memberOut(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; @@ -171,7 +171,7 @@ export class PermissionsEditerComponent implements OnInit { memberIds = `${memberIds},${selectedData[i].id}`; memberNames = `${memberNames},${selectedData[i].username}`; } - this.rolePermissionsService.add({ roleId: this.roleId, appId: memberIds, appName: memberNames }).subscribe(res => { + this.groupPermissionsService.add({ groupId: this.groupId, appId: memberIds, appName: memberNames }).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.html index 78a94fa58..7ef16bb33 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.html @@ -9,7 +9,7 @@ + name="roleName" readonly placeholder="" id="roleName" /> - - - + {{ data.groupName }} + + {{ data.appName }} + +
{{ 'mxk.apps.category.none' | i18n }}
+
{{ 'mxk.apps.category.1011' | i18n }}
+
{{ 'mxk.apps.category.1012' | i18n }}
+
{{ 'mxk.apps.category.1013' | i18n }}
+
{{ 'mxk.apps.category.1014' | i18n }}
+
{{ 'mxk.apps.category.1015' | i18n }}
+
{{ 'mxk.apps.category.1016' | i18n }}
+
{{ 'mxk.apps.category.1017' | i18n }}
+
{{ 'mxk.apps.category.1111' | i18n }}
+
{{ 'mxk.apps.category.1112' | i18n }}
+
{{ 'mxk.apps.category.1113' | i18n }}
+
{{ 'mxk.apps.category.1114' | i18n }}
+
{{ 'mxk.apps.category.1211' | i18n }}
+
{{ 'mxk.apps.category.1212' | i18n }}
+
{{ 'mxk.apps.category.1213' | i18n }}
+
{{ 'mxk.apps.category.1214' | i18n }}
+
{{ 'mxk.apps.category.1215' | i18n }}
+
{{ 'mxk.apps.category.1311' | i18n }}
+
{{ 'mxk.apps.category.1411' | i18n }}
+
{{ 'mxk.apps.category.1511' | i18n }}
+
{{ 'mxk.apps.category.1512' | i18n }}
+
{{ 'mxk.apps.category.1611' | i18n }}
+
{{ 'mxk.apps.category.1711' | i18n }}
+
{{ 'mxk.apps.category.1712' | i18n }}
+
{{ 'mxk.apps.category.1811' | i18n }}
+
{{ 'mxk.apps.category.1812' | i18n }}
+
{{ 'mxk.apps.category.1911' | i18n }}
+
{{ 'mxk.apps.category.1912' | i18n }}
+ + +
+ +
+ + - + \ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.ts index 7dcb80c3e..29cc41f2f 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/permissions/permissions.component.ts @@ -27,9 +27,9 @@ import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; -import { RolePermissionsService } from '../../../service/role-permissions.service'; +import { GroupPermissionsService } from '../../../service/group-permissions.service'; import { set2String } from '../../../shared/index'; -import { SelectRolesComponent } from '../roles/select-roles/select-roles.component'; +import { SelectGroupsComponent } from '../../idm/groups/select-groups/select-groups.component'; import { PermissionsEditerComponent } from './permissions-editer/permissions-editer.component'; @Component({ @@ -42,8 +42,8 @@ export class PermissionsComponent implements OnInit { params: { displayName: String; username: String; - roleId: String; - roleName: String; + groupId: String; + groupName: String; appName: String; appId: String; startDate: String; @@ -69,8 +69,8 @@ export class PermissionsComponent implements OnInit { params: { displayName: '', username: '', - roleId: '', - roleName: '', + groupId: '', + groupName: '', appName: '', appId: '', startDate: '', @@ -96,7 +96,7 @@ export class PermissionsComponent implements OnInit { constructor( private modalService: NzModalService, - private rolePermissionsService: RolePermissionsService, + private groupPermissionsService: GroupPermissionsService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -107,9 +107,9 @@ export class PermissionsComponent implements OnInit { ) {} ngOnInit(): void { - if (this.route.snapshot.queryParams['roleId']) { - this.query.params.roleId = this.route.snapshot.queryParams['roleId']; - this.query.params.roleName = this.route.snapshot.queryParams['roleName']; + if (this.route.snapshot.queryParams['groupId']) { + this.query.params.groupId = this.route.snapshot.queryParams['groupId']; + this.query.params.groupName = this.route.snapshot.queryParams['groupName']; } this.query.tableInitialize = false; } @@ -130,7 +130,7 @@ export class PermissionsComponent implements OnInit { onBatchDelete(e: MouseEvent): void { e.preventDefault(); - this.rolePermissionsService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { + this.groupPermissionsService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -148,7 +148,7 @@ export class PermissionsComponent implements OnInit { nzViewContainerRef: this.viewContainerRef, nzComponentParams: { isEdit: false, - roleId: this.query.params.roleId + groupId: this.query.params.groupId }, nzWidth: 700, nzOnOk: () => new Promise(resolve => setTimeout(resolve, 1000)) @@ -164,7 +164,7 @@ export class PermissionsComponent implements OnInit { onSelect(e: MouseEvent): void { e.preventDefault(); const modal = this.modalService.create({ - nzContent: SelectRolesComponent, + nzContent: SelectGroupsComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: {}, nzWidth: 700, @@ -173,8 +173,8 @@ export class PermissionsComponent implements OnInit { // Return a result when closed modal.afterClose.subscribe(result => { if (result.refresh) { - this.query.params.roleName = result.data.roleName; - this.query.params.roleId = result.data.id; + this.query.params.groupName = result.data.groupName; + this.query.params.groupId = result.data.id; console.log(result); this.fetch(); } @@ -183,7 +183,7 @@ export class PermissionsComponent implements OnInit { onDelete(e: MouseEvent, deleteId: String): void { e.preventDefault(); - this.rolePermissionsService.delete(deleteId).subscribe(res => { + this.groupPermissionsService.delete(deleteId).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -207,7 +207,7 @@ export class PermissionsComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.rolePermissionsService.member(this.query.params).subscribe(res => { + this.groupPermissionsService.member(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.html deleted file mode 100644 index c143bc45d..000000000 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.html +++ /dev/null @@ -1,106 +0,0 @@ - - - -
-
-
- - {{ 'mxk.roles.name' | i18n }} - - - - -
- -
- - - -
-
-
-
- -
- - -
- - - - - Id - {{ 'mxk.roles.name' | i18n }} - {{ 'mxk.roles.category' | i18n }} - {{ 'mxk.text.description' | i18n }} - {{ 'mxk.text.action' | i18n }} - - - - - - - {{ data.id }} - - {{ data.roleName }} - {{ 'mxk.roles.category.dynamic' | i18n }} - {{ 'mxk.roles.category.static' | i18n }} - {{ 'mxk.roles.category.app' | i18n }} - {{ data.description }} - -
- - - - -
    -
  • {{ 'mxk.roles.member' | i18n }}
  • -
  • {{ 'mxk.roles.permissions' | i18n }}
  • -
  • {{ 'mxk.text.delete' | i18n }}
  • -
-
-
- - - -
-
diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.spec.ts similarity index 94% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.spec.ts index 1afb19b8d..40dc4eb18 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.spec.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.spec.ts @@ -16,7 +16,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { RoleMembersEditerComponent } from './role-members-editer.component'; +import { RoleMembersEditerComponent } from './group-members-editer.component'; describe('GroupMembersEditerComponent', () => { let component: GroupMembersEditerComponent; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.ts similarity index 87% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.ts index b4737fa03..5964931e6 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members-editer/group-members-editer.component.ts @@ -24,15 +24,15 @@ import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; -import { Roles } from '../../../../entity/Roles'; -import { RoleMembersService } from '../../../../service/role-members.service'; +import { Groups } from '../../../../entity/Groups'; +import { GroupMembersService } from '../../../../service/group-members.service'; @Component({ - selector: 'app-role-members-editer', - templateUrl: './role-members-editer.component.html', - styleUrls: ['./role-members-editer.component.less'] + selector: 'app-group-members-editer', + templateUrl: './group-members-editer.component.html', + styleUrls: ['./group-members-editer.component.less'] }) -export class RoleMembersEditerComponent implements OnInit { - @Input() roleId?: String; +export class GroupMembersEditerComponent implements OnInit { + @Input() groupId?: String; @Input() isEdit?: boolean; query: { @@ -40,7 +40,7 @@ export class RoleMembersEditerComponent implements OnInit { name: String; displayName: String; username: String; - roleId: String; + groupId: String; startDate: String; endDate: String; startDatePicker: Date; @@ -64,7 +64,7 @@ export class RoleMembersEditerComponent implements OnInit { name: '', displayName: '', username: '', - roleId: '', + groupId: '', startDate: '', endDate: '', startDatePicker: addDays(new Date(), -30), @@ -87,7 +87,7 @@ export class RoleMembersEditerComponent implements OnInit { constructor( private modalRef: NzModalRef, - private roleMembersService: RoleMembersService, + private groupMembersService: GroupMembersService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -96,8 +96,8 @@ export class RoleMembersEditerComponent implements OnInit { ) {} ngOnInit(): void { - if (this.roleId) { - this.query.params.roleId = this.roleId; + if (this.groupId) { + this.query.params.groupId = this.groupId; this.fetch(); } } @@ -127,7 +127,7 @@ export class RoleMembersEditerComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.roleMembersService.memberOut(this.query.params).subscribe(res => { + this.groupMembersService.memberOut(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; @@ -172,7 +172,7 @@ export class RoleMembersEditerComponent implements OnInit { memberIds = `${memberIds},${selectedData[i].id}`; memberNames = `${memberNames},${selectedData[i].username}`; } - this.roleMembersService.add({ type: 'USER', roleId: this.roleId, memberId: memberIds, memberName: memberNames }).subscribe(res => { + this.groupMembersService.add({ type: 'USER', groupId: this.groupId, memberId: memberIds, memberName: memberNames }).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.html similarity index 52% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.html index 88de23500..dd8a2f7ed 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.html @@ -5,11 +5,11 @@
- {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.name' | i18n }} - +
@@ -47,45 +47,46 @@
- + - - + - {{ 'mxk.roles.name' | i18n }} - {{ 'mxk.users.username' | i18n }} - {{ 'mxk.users.displayName' | i18n }} - {{ 'mxk.users.department' | i18n }} - {{ 'mxk.users.jobTitle' | i18n }} - {{ 'mxk.users.gender' | i18n }} - {{ 'mxk.text.action' | i18n }} - + {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.users.username' | i18n }} + {{ 'mxk.users.displayName' | i18n }} + {{ 'mxk.users.department' | i18n }} + {{ 'mxk.users.jobTitle' | i18n }} + {{ 'mxk.users.gender' | i18n }} + {{ 'mxk.text.action' | i18n }} + - - + - {{ data.roleName }} - {{ data.username }} - {{ data.displayName }} - {{ data.department }} - {{ data.jobTitle }} - {{ data.gender == 1 ? ('mxk.users.gender.female' | i18n) : ('mxk.users.gender.male' | - i18n) }} - -
- -
- - + {{ data.groupName }} + {{ data.username }} + {{ data.displayName }} + {{ data.department }} + {{ data.jobTitle }} + {{ data.gender == 1 ? ('mxk.users.gender.female' | i18n) : ('mxk.users.gender.male' | + i18n) }} + +
+ +
+ +
- + \ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members-editer/role-members-editer.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.ts similarity index 82% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.ts index 727401758..9516af0cb 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/group-members.component.ts @@ -27,24 +27,24 @@ import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; -import { RoleMembersService } from '../../../service/role-members.service'; +import { GroupMembersService } from '../../../service/group-members.service'; import { set2String } from '../../../shared/index'; -import { SelectRolesComponent } from '../roles/select-roles/select-roles.component'; -import { MemberRolesEditerComponent } from './member-roles-editer/member-roles-editer.component'; -import { RoleMembersEditerComponent } from './role-members-editer/role-members-editer.component'; +import { SelectGroupsComponent } from '../groups/select-groups/select-groups.component'; +import { GroupMembersEditerComponent } from './group-members-editer/group-members-editer.component'; +import { MemberGroupsEditerComponent } from './member-groups-editer/member-groups-editer.component'; @Component({ - selector: 'app-role-members', - templateUrl: './role-members.component.html', - styleUrls: ['./role-members.component.less'] + selector: 'app-group-members', + templateUrl: './group-members.component.html', + styleUrls: ['./group-members.component.less'] }) -export class RoleMembersComponent implements OnInit { +export class GroupMembersComponent implements OnInit { query: { params: { - roleName: String; + groupName: String; displayName: String; username: String; - roleId: String; + groupId: String; appName: String; appId: String; startDate: String; @@ -68,10 +68,10 @@ export class RoleMembersComponent implements OnInit { checked: boolean; } = { params: { - roleName: '', + groupName: '', displayName: '', username: '', - roleId: '', + groupId: '', appName: '', appId: '', startDate: '', @@ -97,7 +97,7 @@ export class RoleMembersComponent implements OnInit { constructor( private modalService: NzModalService, - private roleMembersService: RoleMembersService, + private groupMembersService: GroupMembersService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -110,9 +110,9 @@ export class RoleMembersComponent implements OnInit { if (this.route.snapshot.queryParams['username']) { this.query.params.username = this.route.snapshot.queryParams['username']; } - if (this.route.snapshot.queryParams['roleId']) { - this.query.params.roleId = this.route.snapshot.queryParams['roleId']; - this.query.params.roleName = this.route.snapshot.queryParams['roleName']; + if (this.route.snapshot.queryParams['groupId']) { + this.query.params.groupId = this.route.snapshot.queryParams['groupId']; + this.query.params.groupName = this.route.snapshot.queryParams['groupName']; } this.query.tableInitialize = false; } @@ -131,14 +131,14 @@ export class RoleMembersComponent implements OnInit { onReset(): void { this.query.params.username = ''; - this.query.params.roleId = ''; - this.query.params.roleName = ''; + this.query.params.groupId = ''; + this.query.params.groupName = ''; this.fetch(); } onBatchDelete(e: MouseEvent): void { e.preventDefault(); - this.roleMembersService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { + this.groupMembersService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -153,7 +153,7 @@ export class RoleMembersComponent implements OnInit { e.preventDefault(); if (this.query.params.username != '') { const modal = this.modalService.create({ - nzContent: MemberRolesEditerComponent, + nzContent: MemberGroupsEditerComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: { username: this.query.params.username @@ -167,13 +167,13 @@ export class RoleMembersComponent implements OnInit { this.fetch(); } }); - } else if (this.query.params.roleId != '') { + } else if (this.query.params.groupId != '') { const modal = this.modalService.create({ - nzContent: RoleMembersEditerComponent, + nzContent: GroupMembersEditerComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: { isEdit: false, - roleId: this.query.params.roleId + groupId: this.query.params.groupId }, nzWidth: 700, nzOnOk: () => new Promise(resolve => setTimeout(resolve, 1000)) @@ -191,7 +191,7 @@ export class RoleMembersComponent implements OnInit { e.preventDefault(); const modal = this.modalService.create({ - nzContent: SelectRolesComponent, + nzContent: SelectGroupsComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: {}, nzWidth: 700, @@ -200,8 +200,8 @@ export class RoleMembersComponent implements OnInit { // Return a result when closed modal.afterClose.subscribe(result => { if (result.refresh) { - this.query.params.roleName = result.data.roleName; - this.query.params.roleId = result.data.id; + this.query.params.groupName = result.data.groupName; + this.query.params.groupId = result.data.id; console.log(result); this.fetch(); } @@ -210,7 +210,7 @@ export class RoleMembersComponent implements OnInit { onDelete(e: MouseEvent, deleteId: String): void { e.preventDefault(); - this.roleMembersService.delete(deleteId).subscribe(res => { + this.groupMembersService.delete(deleteId).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -234,7 +234,7 @@ export class RoleMembersComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.roleMembersService.member(this.query.params).subscribe(res => { + this.groupMembersService.member(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.html similarity index 51% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.html index 9659b8871..8192da87c 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.html @@ -5,17 +5,17 @@ {{ 'mxk.roles.name' | i18n }} - +
- - + + @@ -23,32 +23,32 @@
+ [nzFrontPagination]="false" [nzTotal]="query.results.records" [nzPageSizeOptions]="query.params.pageSizeOptions" + [nzPageSize]="query.params.pageSize" [nzPageIndex]="query.params.pageNumber" [nzLoading]="this.query.tableLoading" + (nzQueryParams)="onQueryParamsChange($event)" nzWidth="100%"> - - - Id - {{ 'mxk.roles.name' | i18n }} - {{ 'mxk.roles.category' | i18n }} - + + + Id + {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.category' | i18n }} + - - + - - {{ data.id }} - - {{ data.roleName }} - {{ 'mxk.roles.category.dynamic' | i18n }} - {{ 'mxk.roles.category.static' | i18n }} - {{ 'mxk.roles.category.app' | i18n }} - + + {{ data.id }} + + {{ data.roleName }} + {{ 'mxk.roles.category.dynamic' | i18n }} + {{ 'mxk.roles.category.static' | i18n }} + {{ 'mxk.roles.category.app' | i18n }} +
-
+ \ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/role-members.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.ts similarity index 90% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.ts index f737c8f5d..abec8aa1d 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/role-members/member-roles-editer/member-roles-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/group-members/member-groups-editer/member-groups-editer.component.ts @@ -24,18 +24,18 @@ import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; -import { RoleMembersService } from '../../../../service/role-members.service'; +import { GroupMembersService } from '../../../../service/group-members.service'; @Component({ - selector: 'app-member-roles-editer', - templateUrl: './member-roles-editer.component.html', - styleUrls: ['./member-roles-editer.component.less'] + selector: 'app-member-groups-editer', + templateUrl: './member-groups-editer.component.html', + styleUrls: ['./member-groups-editer.component.less'] }) -export class MemberRolesEditerComponent implements OnInit { +export class MemberGroupsEditerComponent implements OnInit { @Input() username?: String; query: { params: { - roleName: String; + groupName: String; username: String; protocol: String; startDate: String; @@ -58,7 +58,7 @@ export class MemberRolesEditerComponent implements OnInit { checked: boolean; } = { params: { - roleName: '', + groupName: '', username: '', protocol: '', startDate: '', @@ -83,7 +83,7 @@ export class MemberRolesEditerComponent implements OnInit { constructor( private modalRef: NzModalRef, - private roleMembersService: RoleMembersService, + private groupMembersService: GroupMembersService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -123,7 +123,7 @@ export class MemberRolesEditerComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.roleMembersService.rolesNoMember(this.query.params).subscribe(res => { + this.groupMembersService.noMember(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; @@ -168,7 +168,7 @@ export class MemberRolesEditerComponent implements OnInit { roleIds = `${roleIds},${selectedData[i].id}`; roleNames = `${roleNames},${selectedData[i].name}`; } - this.roleMembersService.addMember2Roles({ username: this.username, roleId: roleIds, roleName: roleNames }).subscribe(res => { + this.groupMembersService.addMember2Roles({ username: this.username, roleId: roleIds, roleName: roleNames }).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.ts similarity index 84% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.ts index 2973ed774..26c975c2d 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/role-editer/role-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/group-editer/group-editer.component.ts @@ -22,14 +22,14 @@ import format from 'date-fns/format'; import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; -import { Roles } from '../../../../entity/Roles'; +import { Groups } from '../../../../entity/Groups'; import { TreeNodes } from '../../../../entity/TreeNodes'; +import { GroupsService } from '../../../../service/Groups.service'; import { OrganizationsService } from '../../../../service/organizations.service'; -import { RolesService } from '../../../../service/roles.service'; @Component({ - selector: 'app-role-editer', - templateUrl: './role-editer.component.html', + selector: 'app-group-editer', + templateUrl: './group-editer.component.html', styles: [ ` nz-form-item { @@ -37,18 +37,18 @@ import { RolesService } from '../../../../service/roles.service'; } ` ], - styleUrls: ['./role-editer.component.less'] + styleUrls: ['./group-editer.component.less'] }) -export class RoleEditerComponent implements OnInit { +export class GroupEditerComponent implements OnInit { @Input() id?: String; @Input() isEdit?: boolean; form: { submitting: boolean; - model: Roles; + model: Groups; } = { submitting: false, - model: new Roles() + model: new Groups() }; // TreeNodes @@ -60,7 +60,7 @@ export class RoleEditerComponent implements OnInit { constructor( private modalRef: NzModalRef, - private rolesService: RolesService, + private groupsService: GroupsService, private orgsService: OrganizationsService, private fb: FormBuilder, private msg: NzMessageService, @@ -71,7 +71,7 @@ export class RoleEditerComponent implements OnInit { ngOnInit(): void { this.tree(); if (this.isEdit) { - this.rolesService.get(`${this.id}`).subscribe(res => { + this.groupsService.get(`${this.id}`).subscribe(res => { this.form.model.init(res.data); this.selectValues = this.form.model.orgIdsList.split(','); this.cdr.detectChanges(); @@ -103,7 +103,7 @@ export class RoleEditerComponent implements OnInit { this.form.model.orgIdsList = `${this.form.model.orgIdsList + value},`; }); - (this.isEdit ? this.rolesService.update(this.form.model) : this.rolesService.add(this.form.model)).subscribe(res => { + (this.isEdit ? this.groupsService.update(this.form.model) : this.groupsService.add(this.form.model)).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi(this.isEdit ? 'mxk.alert.update.success' : 'mxk.alert.add.success')); } else { diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.html new file mode 100644 index 000000000..4b0544b0a --- /dev/null +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.html @@ -0,0 +1,85 @@ + + + +
+
+
+ + {{ 'mxk.roles.name' | i18n }} + + + + +
+ +
+ + + +
+
+
+
+ +
+ + +
+ + + + + Id + {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.category' | i18n }} + {{ 'mxk.text.description' | i18n }} + {{ 'mxk.text.action' | i18n }} + + + + + + + {{ data.id }} + + {{ data.groupName }} + {{ 'mxk.roles.category.dynamic' | i18n }} + {{ 'mxk.roles.category.static' | i18n }} + {{ 'mxk.roles.category.app' | i18n }} + {{ data.description }} + +
+ + + + +
    +
  • {{ 'mxk.roles.member' | i18n }} +
  • +
  • {{ 'mxk.roles.permissions' | + i18n }}
  • +
  • {{ 'mxk.text.delete' | i18n }}
  • +
+
+
+ + + +
+
\ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.ts similarity index 90% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.ts index f126f1b16..b5f9213a7 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/roles.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/groups.component.ts @@ -25,19 +25,19 @@ import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; -import { RolesService } from '../../../service/roles.service'; +import { GroupsService } from '../../../service/Groups.service'; import { set2String } from '../../../shared/index'; -import { RoleEditerComponent } from './role-editer/role-editer.component'; +import { GroupEditerComponent } from './group-editer/group-editer.component'; @Component({ - selector: 'app-roles', - templateUrl: './roles.component.html', - styleUrls: ['./roles.component.less'] + selector: 'app-groups', + templateUrl: './groups.component.html', + styleUrls: ['./groups.component.less'] }) -export class RolesComponent implements OnInit { +export class GroupsComponent implements OnInit { query: { params: { - roleName: String; + groupName: String; displayName: String; employeeNumber: String; startDate: String; @@ -60,7 +60,7 @@ export class RolesComponent implements OnInit { checked: boolean; } = { params: { - roleName: '', + groupName: '', displayName: '', employeeNumber: '', startDate: '', @@ -86,7 +86,7 @@ export class RolesComponent implements OnInit { constructor( private modalService: NzModalService, private viewContainerRef: ViewContainerRef, - private rolesService: RolesService, + private groupsService: GroupsService, private fb: FormBuilder, private msg: NzMessageService, private router: Router, @@ -112,7 +112,7 @@ export class RolesComponent implements OnInit { onBatchDelete(e: MouseEvent): void { e.preventDefault(); - this.rolesService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { + this.groupsService.delete(set2String(this.query.tableCheckedId)).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -126,7 +126,7 @@ export class RolesComponent implements OnInit { onAdd(e: MouseEvent): void { e.preventDefault(); const modal = this.modalService.create({ - nzContent: RoleEditerComponent, + nzContent: GroupEditerComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: { isEdit: false, @@ -146,7 +146,7 @@ export class RolesComponent implements OnInit { e.preventDefault(); const modal = this.modalService.create({ - nzContent: RoleEditerComponent, + nzContent: GroupEditerComponent, nzViewContainerRef: this.viewContainerRef, nzComponentParams: { isEdit: true, @@ -164,7 +164,7 @@ export class RolesComponent implements OnInit { onDelete(e: MouseEvent, deleteId: String): void { e.preventDefault(); - this.rolesService.delete(deleteId).subscribe(res => { + this.groupsService.delete(deleteId).subscribe(res => { if (res.code == 0) { this.msg.success(this.i18n.fanyi('mxk.alert.delete.success')); this.fetch(); @@ -196,7 +196,7 @@ export class RolesComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.rolesService.fetch(this.query.params).subscribe(res => { + this.groupsService.fetch(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.html similarity index 50% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.html index bf96b46a0..d7a0c51b1 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.html @@ -4,19 +4,19 @@
- {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.name' | i18n }} - +
- - + + @@ -25,31 +25,31 @@ + [nzFrontPagination]="false" [nzTotal]="query.results.records" [nzPageSizeOptions]="query.params.pageSizeOptions" + [nzPageSize]="query.params.pageSize" [nzPageIndex]="query.params.pageNumber" [nzLoading]="this.query.tableLoading" + (nzQueryParams)="onQueryParamsChange($event)" nzWidth="100%"> - - - Id - {{ 'mxk.roles.name' | i18n }} - {{ 'mxk.roles.category' | i18n }} - + + + Id + {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.category' | i18n }} + - - + - - {{ data.id }} - - {{ data.roleName }} - {{ 'mxk.roles.category.dynamic' | i18n }} - {{ 'mxk.roles.category.static' | i18n }} - + + {{ data.id }} + + {{ data.groupName }} + {{ 'mxk.roles.category.dynamic' | i18n }} + {{ 'mxk.roles.category.static' | i18n }} +
-
+
\ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.ts similarity index 92% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.ts index ecaf5e6ec..949db6ecc 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/access/roles/select-roles/select-roles.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/groups/select-groups/select-groups.component.ts @@ -23,17 +23,17 @@ import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; -import { RolesService } from '../../../../service/roles.service'; +import { GroupsService } from '../../../../service/Groups.service'; @Component({ - selector: 'app-select-roles', - templateUrl: './select-roles.component.html', - styleUrls: ['./select-roles.component.less'] + selector: 'app-select-groups', + templateUrl: './select-groups.component.html', + styleUrls: ['./select-groups.component.less'] }) -export class SelectRolesComponent implements OnInit { +export class SelectGroupsComponent implements OnInit { query: { params: { - roleName: String; + groupName: String; displayName: String; protocol: String; startDate: String; @@ -56,7 +56,7 @@ export class SelectRolesComponent implements OnInit { checked: boolean; } = { params: { - roleName: '', + groupName: '', displayName: '', protocol: '', startDate: '', @@ -81,7 +81,7 @@ export class SelectRolesComponent implements OnInit { constructor( private modalRef: NzModalRef, - private rolesService: RolesService, + private groupsService: GroupsService, private viewContainerRef: ViewContainerRef, private fb: FormBuilder, private msg: NzMessageService, @@ -117,7 +117,7 @@ export class SelectRolesComponent implements OnInit { this.query.params.endDate = ''; this.query.params.startDate = ''; } - this.rolesService.fetch(this.query.params).subscribe(res => { + this.groupsService.fetch(this.query.params).subscribe(res => { this.query.results = res.data; this.query.submitLoading = false; this.query.tableLoading = false; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/idm.module.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/idm.module.ts new file mode 100644 index 000000000..74ef28743 --- /dev/null +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/idm.module.ts @@ -0,0 +1,56 @@ +/* + * Copyright [2022] [MaxKey of copyright http://www.maxkey.top] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { CommonModule } from '@angular/common'; +import { NgModule } from '@angular/core'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { RouterModule, Routes } from '@angular/router'; +import { SharedModule } from '@shared'; +import { NzIconModule } from 'ng-zorro-antd/icon'; + +import { GroupMembersEditerComponent } from './group-members/group-members-editer/group-members-editer.component'; +import { GroupMembersComponent } from './group-members/group-members.component'; +import { MemberGroupsEditerComponent } from './group-members/member-groups-editer/member-groups-editer.component'; +import { GroupEditerComponent } from './groups/group-editer/group-editer.component'; +import { GroupsComponent } from './groups/groups.component'; +import { SelectGroupsComponent } from './groups/select-groups/select-groups.component'; +import { OrganizationsComponent } from './organizations/organizations.component'; +import { UsersComponent } from './users/users.component'; + +const routes: Routes = [ + { path: 'organizations', component: OrganizationsComponent }, + { path: 'users', component: UsersComponent }, + { path: 'groups', component: GroupsComponent }, + { path: 'groupmembers', component: GroupMembersComponent } +]; + +const COMPONENTS = [ + //UsersComponent, + OrganizationsComponent, + GroupsComponent, + GroupMembersComponent, + SelectGroupsComponent, + GroupMembersEditerComponent, + MemberGroupsEditerComponent, + GroupEditerComponent +]; + +@NgModule({ + declarations: [...COMPONENTS], + imports: [FormsModule, NzIconModule, SharedModule, CommonModule, RouterModule.forChild(routes)], + exports: [RouterModule] +}) +export class IdmModule {} diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.ts similarity index 96% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.ts index 11109d53d..c188ec2fe 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organization-editer/organization-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organization-editer/organization-editer.component.ts @@ -26,8 +26,8 @@ import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; import { NzTreeSelectComponent } from 'ng-zorro-antd/tree-select'; -import { Organizations } from '../../../entity/Organizations'; -import { OrganizationsService } from '../../../service/organizations.service'; +import { Organizations } from '../../../../entity/Organizations'; +import { OrganizationsService } from '../../../../service/organizations.service'; @Component({ selector: 'app-organization-editer', diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.ts similarity index 97% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.ts index e9861edf3..0a8b38fbe 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/organizations/organizations.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/organizations/organizations.component.ts @@ -26,10 +26,10 @@ import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; -import { PageResults } from '../../entity/PageResults'; -import { TreeNodes } from '../../entity/TreeNodes'; -import { OrganizationsService } from '../../service/organizations.service'; -import { set2String } from '../../shared/index'; +import { PageResults } from '../../../entity/PageResults'; +import { TreeNodes } from '../../../entity/TreeNodes'; +import { OrganizationsService } from '../../../service/organizations.service'; +import { set2String } from '../../../shared/index'; import { OrganizationEditerComponent } from './organization-editer/organization-editer.component'; @Component({ diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.ts similarity index 93% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.ts index ce8094239..89dd57a13 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/password/password.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/password/password.component.ts @@ -21,9 +21,9 @@ import { ALAIN_I18N_TOKEN, SettingsService } from '@delon/theme'; import { NzMessageService } from 'ng-zorro-antd/message'; import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; -import { ChangePassword } from '../../../entity/ChangePassword'; -import { PasswordService } from '../../../service/password.service'; -import { UsersService } from '../../../service/users.service'; +import { ChangePassword } from '../../../../entity/ChangePassword'; +import { PasswordService } from '../../../../service/password.service'; +import { UsersService } from '../../../../service/users.service'; @Component({ selector: 'app-password', diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.html similarity index 56% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.html index 17d8c8655..3d71d351b 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.html @@ -7,15 +7,15 @@ {{ 'mxk.users.username' | i18n }} + placeholder="" id="username" />
- - + + @@ -25,7 +25,7 @@
+ (nzClick)="activeNode($event)" (nzDblClick)="openFolder($event)" [nzTreeTemplate]="nzTreeTemplate"> @@ -41,38 +41,38 @@
+ [nzData]="query.results.rows" [nzFrontPagination]="false" [nzTotal]="query.results.records" + [nzPageSizeOptions]="query.params.pageSizeOptions" [nzPageSize]="query.params.pageSize" + [nzPageIndex]="query.params.pageNumber" [nzLoading]="this.query.tableLoading" + (nzQueryParams)="onQueryParamsChange($event)" nzWidth="100%"> - - + - {{ 'mxk.text.id' | i18n }} - {{ 'mxk.users.username' | i18n }} - {{ 'mxk.users.displayName' | i18n }} - {{ 'mxk.users.employeeNumber' | i18n }} - {{ 'mxk.users.department' | i18n }} - {{ 'mxk.users.jobTitle' | i18n }} - {{ 'mxk.users.gender' | i18n }} - + {{ 'mxk.text.id' | i18n }} + {{ 'mxk.users.username' | i18n }} + {{ 'mxk.users.displayName' | i18n }} + {{ 'mxk.users.employeeNumber' | i18n }} + {{ 'mxk.users.department' | i18n }} + {{ 'mxk.users.jobTitle' | i18n }} + {{ 'mxk.users.gender' | i18n }} + - - + - - {{ data.id }} - - {{ data.username }} - {{ data.displayName }} - {{ data.employeeNumber }} - {{ data.department }} - {{ data.jobTitle }} - {{ data.gender == 1 ? ('mxk.users.gender.female' | i18n) : ('mxk.users.gender.male' | - i18n) }} - + + {{ data.id }} + + {{ data.username }} + {{ data.displayName }} + {{ data.employeeNumber }} + {{ data.department }} + {{ data.jobTitle }} + {{ data.gender == 1 ? ('mxk.users.gender.female' | i18n) : ('mxk.users.gender.male' | + i18n) }} +
@@ -80,4 +80,4 @@
-
+ \ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.ts similarity index 95% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.ts index b8ebc17c8..dfa4dd7e5 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/select-user/select-user.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/select-user/select-user.component.ts @@ -24,10 +24,10 @@ import { NzModalRef, NzModalService } from 'ng-zorro-antd/modal'; import { NzTableQueryParams } from 'ng-zorro-antd/table'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; -import { TreeNodes } from '../../../entity/TreeNodes'; -import { OrganizationsService } from '../../../service/organizations.service'; -import { UsersService } from '../../../service/users.service'; -import { set2String } from '../../../shared/index'; +import { TreeNodes } from '../../../../entity/TreeNodes'; +import { OrganizationsService } from '../../../../service/organizations.service'; +import { UsersService } from '../../../../service/users.service'; +import { set2String } from '../../../../shared/index'; @Component({ selector: 'app-select-user', diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.html similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.html rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.html diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.ts similarity index 97% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.ts index 32218924c..bfc964fed 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/user-editer/user-editer.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/user-editer/user-editer.component.ts @@ -26,8 +26,8 @@ import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/ import { NzTreeSelectComponent } from 'ng-zorro-antd/tree-select'; import { NzUploadFile, NzUploadChangeParam } from 'ng-zorro-antd/upload'; -import { Users } from '../../../entity/Users'; -import { UsersService } from '../../../service/users.service'; +import { Users } from '../../../../entity/Users'; +import { UsersService } from '../../../../service/users.service'; const getBase64 = (file: File): Promise => new Promise((resolve, reject) => { diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.html new file mode 100644 index 000000000..f130bda4f --- /dev/null +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.html @@ -0,0 +1,159 @@ + + + +
+
+
+ + {{ 'mxk.users.username' | i18n }} + + + + +
+
+ + + +
+
+
+
+ +
+
+ + + +
+
+ + + + + + {{ node.title + (origin.type == 'virtual' ? '_v' : '') }} + + + + {{ node.title + (origin.type == 'virtual' ? '_v' : '') }} + + + + +
    +
  • Action 1
  • +
  • Action 2
  • +
+
+
+
+ + + + + {{ 'mxk.text.id' | i18n }} + {{ 'mxk.users.username' | i18n }} + {{ 'mxk.users.displayName' | i18n }} + {{ 'mxk.users.employeeNumber' | i18n }} + {{ 'mxk.users.department' | i18n }} + {{ 'mxk.users.jobTitle' | i18n }} + {{ 'mxk.users.gender' | i18n }} + {{ 'mxk.text.status' | i18n }} + {{ 'mxk.text.action' | i18n }} + + + + + + + {{ data.id }} + + {{ data.username }} + {{ data.displayName }} + {{ data.employeeNumber }} + {{ data.department }} + {{ data.jobTitle }} + {{ data.gender == 1 ? ('mxk.users.gender.female' | i18n) : ('mxk.users.gender.male' | + i18n) }} + + + + + + + + + + + + + + + + + + +
+ + + + +
    +
  • {{ + 'mxk.text.roles' | i18n + }}
  • +
  • {{ + 'mxk.text.changepassword' | i18n + }}
  • +
  • {{ + 'mxk.text.lock' | i18n }}
  • +
  • {{ + 'mxk.text.disable' | i18n + }}
  • +
  • {{ + 'mxk.text.enable' | i18n + }}
  • +
  • {{ + 'mxk.text.enable' | i18n + }}
  • +
  • {{ + 'mxk.text.unlock' | i18n + }}
  • +
  • {{ 'mxk.text.delete' | i18n }}
  • +
+
+
+ + + +
+
+
+
\ No newline at end of file diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.less b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.less similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.less rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.less diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.spec.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.spec.ts similarity index 100% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.spec.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.spec.ts diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.ts similarity index 97% rename from maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.ts rename to maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.ts index 1be4d94f5..44b471ac8 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/users/users.component.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/idm/users/users.component.ts @@ -28,11 +28,11 @@ import { NzTableQueryParams } from 'ng-zorro-antd/table'; import { NzFormatEmitEvent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree'; import { Users } from 'src/app/entity/Users'; -import { PageResults } from '../../entity/PageResults'; -import { TreeNodes } from '../../entity/TreeNodes'; -import { OrganizationsService } from '../../service/organizations.service'; -import { UsersService } from '../../service/users.service'; -import { set2String } from '../../shared/index'; +import { PageResults } from '../../../entity/PageResults'; +import { TreeNodes } from '../../../entity/TreeNodes'; +import { OrganizationsService } from '../../../service/organizations.service'; +import { UsersService } from '../../../service/users.service'; +import { set2String } from '../../../shared/index'; import { PasswordComponent } from './password/password.component'; import { UserEditerComponent } from './user-editer/user-editer.component'; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/permissions.module.ts b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/permissions.module.ts index 47bd2419b..05dd9676e 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/permissions.module.ts +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/permissions.module.ts @@ -20,8 +20,6 @@ import { RouterModule, Routes } from '@angular/router'; import { SharedModule } from '@shared'; import { NzIconModule } from 'ng-zorro-antd/icon'; -import { RolesComponent } from '../access/roles/roles.component'; -import { SelectRolesComponent } from '../access/roles/select-roles/select-roles.component'; import { PrivilegesComponent } from './privileges/privileges.component'; import { ResourceEditerComponent } from './resources/resource-editer/resource-editer.component'; import { ResourcesComponent } from './resources/resources.component'; diff --git a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/privileges/privileges.component.html b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/privileges/privileges.component.html index 18d43049d..10b817d05 100644 --- a/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/privileges/privileges.component.html +++ b/maxkey-web-frontend/maxkey-web-mgt-app/src/app/routes/permissions/privileges/privileges.component.html @@ -5,16 +5,10 @@
- {{ 'mxk.roles.name' | i18n }} + {{ 'mxk.roles.name' | i18n }} - +
@@ -23,28 +17,23 @@ {{ 'mxk.resources.appName' | i18n }} - + - +
- - + + + {{ query.expandForm ? ('mxk.text.collapse' | i18n) : ('mxk.text.expand' | i18n) }}
@@ -55,21 +44,11 @@
- +