From bfa3ef70cf7944f0a73b5192107303558e18a0cf Mon Sep 17 00:00:00 2001 From: "Captain.B" Date: Tue, 25 Feb 2020 11:48:39 +0800 Subject: [PATCH] table use changed --- .../java/io/metersphere/base/domain/User.java | 30 ++- .../metersphere/base/domain/UserExample.java | 182 ++++++++++++------ .../io/metersphere/base/mapper/UserMapper.xml | 60 +++--- .../main/java/io/metersphere/dto/UserDTO.java | 28 ++- .../io/metersphere/service/UserService.java | 3 +- .../java/io/metersphere/user/SessionUser.java | 26 --- 6 files changed, 205 insertions(+), 124 deletions(-) diff --git a/backend/src/main/java/io/metersphere/base/domain/User.java b/backend/src/main/java/io/metersphere/base/domain/User.java index f15c0f928..edb2c8a78 100644 --- a/backend/src/main/java/io/metersphere/base/domain/User.java +++ b/backend/src/main/java/io/metersphere/base/domain/User.java @@ -17,10 +17,12 @@ public class User implements Serializable { private Long updateTime; - private String lastSourceId; - private String language; + private String lastWorkspaceId; + + private String lastOrganizationId; + private static final long serialVersionUID = 1L; public String getId() { @@ -79,14 +81,6 @@ public class User implements Serializable { this.updateTime = updateTime; } - public String getLastSourceId() { - return lastSourceId; - } - - public void setLastSourceId(String lastSourceId) { - this.lastSourceId = lastSourceId == null ? null : lastSourceId.trim(); - } - public String getLanguage() { return language; } @@ -94,4 +88,20 @@ public class User implements Serializable { public void setLanguage(String language) { this.language = language == null ? null : language.trim(); } + + public String getLastWorkspaceId() { + return lastWorkspaceId; + } + + public void setLastWorkspaceId(String lastWorkspaceId) { + this.lastWorkspaceId = lastWorkspaceId == null ? null : lastWorkspaceId.trim(); + } + + public String getLastOrganizationId() { + return lastOrganizationId; + } + + public void setLastOrganizationId(String lastOrganizationId) { + this.lastOrganizationId = lastOrganizationId == null ? null : lastOrganizationId.trim(); + } } \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/base/domain/UserExample.java b/backend/src/main/java/io/metersphere/base/domain/UserExample.java index 59fd2bb8f..2b5419d18 100644 --- a/backend/src/main/java/io/metersphere/base/domain/UserExample.java +++ b/backend/src/main/java/io/metersphere/base/domain/UserExample.java @@ -574,143 +574,213 @@ public class UserExample { return (Criteria) this; } - public Criteria andLastSourceIdIsNull() { - addCriterion("last_source_id is null"); + public Criteria andLanguageIsNull() { + addCriterion("language is null"); return (Criteria) this; } - public Criteria andLastSourceIdIsNotNull() { - addCriterion("last_source_id is not null"); + public Criteria andLanguageIsNotNull() { + addCriterion("language is not null"); return (Criteria) this; } - public Criteria andLastSourceIdEqualTo(String value) { - addCriterion("last_source_id =", value, "lastSourceId"); + public Criteria andLanguageEqualTo(String value) { + addCriterion("language =", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdNotEqualTo(String value) { - addCriterion("last_source_id <>", value, "lastSourceId"); + public Criteria andLanguageNotEqualTo(String value) { + addCriterion("language <>", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdGreaterThan(String value) { - addCriterion("last_source_id >", value, "lastSourceId"); + public Criteria andLanguageGreaterThan(String value) { + addCriterion("language >", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdGreaterThanOrEqualTo(String value) { - addCriterion("last_source_id >=", value, "lastSourceId"); + public Criteria andLanguageGreaterThanOrEqualTo(String value) { + addCriterion("language >=", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdLessThan(String value) { - addCriterion("last_source_id <", value, "lastSourceId"); + public Criteria andLanguageLessThan(String value) { + addCriterion("language <", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdLessThanOrEqualTo(String value) { - addCriterion("last_source_id <=", value, "lastSourceId"); + public Criteria andLanguageLessThanOrEqualTo(String value) { + addCriterion("language <=", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdLike(String value) { - addCriterion("last_source_id like", value, "lastSourceId"); + public Criteria andLanguageLike(String value) { + addCriterion("language like", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdNotLike(String value) { - addCriterion("last_source_id not like", value, "lastSourceId"); + public Criteria andLanguageNotLike(String value) { + addCriterion("language not like", value, "language"); return (Criteria) this; } - public Criteria andLastSourceIdIn(List values) { - addCriterion("last_source_id in", values, "lastSourceId"); + public Criteria andLanguageIn(List values) { + addCriterion("language in", values, "language"); return (Criteria) this; } - public Criteria andLastSourceIdNotIn(List values) { - addCriterion("last_source_id not in", values, "lastSourceId"); + public Criteria andLanguageNotIn(List values) { + addCriterion("language not in", values, "language"); return (Criteria) this; } - public Criteria andLastSourceIdBetween(String value1, String value2) { - addCriterion("last_source_id between", value1, value2, "lastSourceId"); + public Criteria andLanguageBetween(String value1, String value2) { + addCriterion("language between", value1, value2, "language"); return (Criteria) this; } - public Criteria andLastSourceIdNotBetween(String value1, String value2) { - addCriterion("last_source_id not between", value1, value2, "lastSourceId"); + public Criteria andLanguageNotBetween(String value1, String value2) { + addCriterion("language not between", value1, value2, "language"); return (Criteria) this; } - public Criteria andLanguageIsNull() { - addCriterion("language is null"); + public Criteria andLastWorkspaceIdIsNull() { + addCriterion("last_workspace_id is null"); return (Criteria) this; } - public Criteria andLanguageIsNotNull() { - addCriterion("language is not null"); + public Criteria andLastWorkspaceIdIsNotNull() { + addCriterion("last_workspace_id is not null"); return (Criteria) this; } - public Criteria andLanguageEqualTo(String value) { - addCriterion("language =", value, "language"); + public Criteria andLastWorkspaceIdEqualTo(String value) { + addCriterion("last_workspace_id =", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageNotEqualTo(String value) { - addCriterion("language <>", value, "language"); + public Criteria andLastWorkspaceIdNotEqualTo(String value) { + addCriterion("last_workspace_id <>", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageGreaterThan(String value) { - addCriterion("language >", value, "language"); + public Criteria andLastWorkspaceIdGreaterThan(String value) { + addCriterion("last_workspace_id >", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageGreaterThanOrEqualTo(String value) { - addCriterion("language >=", value, "language"); + public Criteria andLastWorkspaceIdGreaterThanOrEqualTo(String value) { + addCriterion("last_workspace_id >=", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageLessThan(String value) { - addCriterion("language <", value, "language"); + public Criteria andLastWorkspaceIdLessThan(String value) { + addCriterion("last_workspace_id <", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageLessThanOrEqualTo(String value) { - addCriterion("language <=", value, "language"); + public Criteria andLastWorkspaceIdLessThanOrEqualTo(String value) { + addCriterion("last_workspace_id <=", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageLike(String value) { - addCriterion("language like", value, "language"); + public Criteria andLastWorkspaceIdLike(String value) { + addCriterion("last_workspace_id like", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageNotLike(String value) { - addCriterion("language not like", value, "language"); + public Criteria andLastWorkspaceIdNotLike(String value) { + addCriterion("last_workspace_id not like", value, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageIn(List values) { - addCriterion("language in", values, "language"); + public Criteria andLastWorkspaceIdIn(List values) { + addCriterion("last_workspace_id in", values, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageNotIn(List values) { - addCriterion("language not in", values, "language"); + public Criteria andLastWorkspaceIdNotIn(List values) { + addCriterion("last_workspace_id not in", values, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageBetween(String value1, String value2) { - addCriterion("language between", value1, value2, "language"); + public Criteria andLastWorkspaceIdBetween(String value1, String value2) { + addCriterion("last_workspace_id between", value1, value2, "lastWorkspaceId"); return (Criteria) this; } - public Criteria andLanguageNotBetween(String value1, String value2) { - addCriterion("language not between", value1, value2, "language"); + public Criteria andLastWorkspaceIdNotBetween(String value1, String value2) { + addCriterion("last_workspace_id not between", value1, value2, "lastWorkspaceId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdIsNull() { + addCriterion("last_organization_id is null"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdIsNotNull() { + addCriterion("last_organization_id is not null"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdEqualTo(String value) { + addCriterion("last_organization_id =", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdNotEqualTo(String value) { + addCriterion("last_organization_id <>", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdGreaterThan(String value) { + addCriterion("last_organization_id >", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdGreaterThanOrEqualTo(String value) { + addCriterion("last_organization_id >=", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdLessThan(String value) { + addCriterion("last_organization_id <", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdLessThanOrEqualTo(String value) { + addCriterion("last_organization_id <=", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdLike(String value) { + addCriterion("last_organization_id like", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdNotLike(String value) { + addCriterion("last_organization_id not like", value, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdIn(List values) { + addCriterion("last_organization_id in", values, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdNotIn(List values) { + addCriterion("last_organization_id not in", values, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdBetween(String value1, String value2) { + addCriterion("last_organization_id between", value1, value2, "lastOrganizationId"); + return (Criteria) this; + } + + public Criteria andLastOrganizationIdNotBetween(String value1, String value2) { + addCriterion("last_organization_id not between", value1, value2, "lastOrganizationId"); return (Criteria) this; } } diff --git a/backend/src/main/java/io/metersphere/base/mapper/UserMapper.xml b/backend/src/main/java/io/metersphere/base/mapper/UserMapper.xml index 160644741..99e2ae112 100644 --- a/backend/src/main/java/io/metersphere/base/mapper/UserMapper.xml +++ b/backend/src/main/java/io/metersphere/base/mapper/UserMapper.xml @@ -9,8 +9,9 @@ - + + @@ -71,7 +72,8 @@ - id, name, email, phone, status, create_time, update_time, last_source_id, language + id, name, email, phone, status, create_time, update_time, language, last_workspace_id, + last_organization_id @@ -204,12 +212,15 @@ update_time = #{record.updateTime,jdbcType=BIGINT}, - - last_source_id = #{record.lastSourceId,jdbcType=VARCHAR}, - language = #{record.language,jdbcType=VARCHAR}, + + last_workspace_id = #{record.lastWorkspaceId,jdbcType=VARCHAR}, + + + last_organization_id = #{record.lastOrganizationId,jdbcType=VARCHAR}, + @@ -224,8 +235,9 @@ status = #{record.status,jdbcType=VARCHAR}, create_time = #{record.createTime,jdbcType=BIGINT}, update_time = #{record.updateTime,jdbcType=BIGINT}, - last_source_id = #{record.lastSourceId,jdbcType=VARCHAR}, - language = #{record.language,jdbcType=VARCHAR} + language = #{record.language,jdbcType=VARCHAR}, + last_workspace_id = #{record.lastWorkspaceId,jdbcType=VARCHAR}, + last_organization_id = #{record.lastOrganizationId,jdbcType=VARCHAR} @@ -251,12 +263,15 @@ update_time = #{updateTime,jdbcType=BIGINT}, - - last_source_id = #{lastSourceId,jdbcType=VARCHAR}, - language = #{language,jdbcType=VARCHAR}, + + last_workspace_id = #{lastWorkspaceId,jdbcType=VARCHAR}, + + + last_organization_id = #{lastOrganizationId,jdbcType=VARCHAR}, + where id = #{id,jdbcType=VARCHAR} @@ -268,8 +283,9 @@ status = #{status,jdbcType=VARCHAR}, create_time = #{createTime,jdbcType=BIGINT}, update_time = #{updateTime,jdbcType=BIGINT}, - last_source_id = #{lastSourceId,jdbcType=VARCHAR}, - language = #{language,jdbcType=VARCHAR} + language = #{language,jdbcType=VARCHAR}, + last_workspace_id = #{lastWorkspaceId,jdbcType=VARCHAR}, + last_organization_id = #{lastOrganizationId,jdbcType=VARCHAR} where id = #{id,jdbcType=VARCHAR} \ No newline at end of file diff --git a/backend/src/main/java/io/metersphere/dto/UserDTO.java b/backend/src/main/java/io/metersphere/dto/UserDTO.java index 555e1feff..ff41fe65e 100644 --- a/backend/src/main/java/io/metersphere/dto/UserDTO.java +++ b/backend/src/main/java/io/metersphere/dto/UserDTO.java @@ -21,20 +21,14 @@ public class UserDTO { private Long updateTime; - private String lastSourceId; + private String workspaceId; + + private String organizationId; private List roles = new ArrayList<>(); private List userRoles = new ArrayList<>(); - public String getLastSourceId() { - return lastSourceId; - } - - public void setLastSourceId(String lastSourceId) { - this.lastSourceId = lastSourceId; - } - public List getRoles() { return roles; } @@ -108,4 +102,20 @@ public class UserDTO { public void setUserRoles(List userRoles) { this.userRoles = userRoles; } + + public String getWorkspaceId() { + return workspaceId; + } + + public void setWorkspaceId(String workspaceId) { + this.workspaceId = workspaceId; + } + + public String getOrganizationId() { + return organizationId; + } + + public void setOrganizationId(String organizationId) { + this.organizationId = organizationId; + } } diff --git a/backend/src/main/java/io/metersphere/service/UserService.java b/backend/src/main/java/io/metersphere/service/UserService.java index 843892ffc..8e282f8a8 100644 --- a/backend/src/main/java/io/metersphere/service/UserService.java +++ b/backend/src/main/java/io/metersphere/service/UserService.java @@ -223,7 +223,8 @@ public class UserService { public void switchUserRole(UserDTO user, String sourceId) { User newUser = new User(); - user.setLastSourceId(sourceId); + // todo 切换处理 +// user.setLastSourceId(sourceId); BeanUtils.copyProperties(user, newUser); // 切换工作空间或组织之后更新 session 里的 user SessionUtils.putUser(SessionUser.fromUser(user)); diff --git a/backend/src/main/java/io/metersphere/user/SessionUser.java b/backend/src/main/java/io/metersphere/user/SessionUser.java index a9066df24..ad32d432b 100644 --- a/backend/src/main/java/io/metersphere/user/SessionUser.java +++ b/backend/src/main/java/io/metersphere/user/SessionUser.java @@ -1,43 +1,17 @@ package io.metersphere.user; import io.metersphere.dto.UserDTO; -import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import java.io.Serializable; -import static io.metersphere.commons.constants.RoleConstants.*; - public class SessionUser extends UserDTO implements Serializable { private static final long serialVersionUID = -7149638440406959033L; - private String workspaceId; - private String organizationId; - - public String getWorkspaceId() { - return workspaceId; - } - - public String getOrganizationId() { - return organizationId; - } - public static SessionUser fromUser(UserDTO user) { SessionUser sessionUser = new SessionUser(); BeanUtils.copyProperties(user, sessionUser); - String lastSourceId = sessionUser.getLastSourceId(); - user.getUserRoles().forEach(ur -> { - if (StringUtils.equals(ur.getSourceId(), lastSourceId)) { - if (StringUtils.equals(ur.getRoleId(), ORG_ADMIN)) { - sessionUser.organizationId = lastSourceId; - return; - } - if (StringUtils.equalsAny(ur.getRoleId(), TEST_MANAGER, TEST_USER, TEST_VIEWER)) { - sessionUser.workspaceId = lastSourceId; - } - } - }); return sessionUser; } -- GitLab