From 6cc6fcfef521d799682470c55ce362d6c8dd7b1c Mon Sep 17 00:00:00 2001 From: wangshaoping Date: Wed, 7 Jan 2026 16:45:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=A1=86=E6=9E=B6=E5=8F=91?= =?UTF-8?q?=E5=B8=83:=208.2.46=20=20=201)=20=E7=B3=BB=E7=BB=9F=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=B8=AD=E7=94=A8=E6=88=B7=E7=AE=A1=E7=90=86=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E5=A2=9E=E5=8A=A0=E6=8C=89=E6=9C=BA=E6=9E=84=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=EF=BC=8C=E4=B8=94=E5=B1=95=E7=A4=BA=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E5=8C=85=E5=90=AB=E6=9C=BA=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 前端核心框架发布: 8.2.140 --- .../sc/platform/system/api/user/UserVo.java | 26 ++++++++++++++----- .../src/views/user/User.vue | 21 ++++++++++++--- .../system/user/jpa/entity/UserEntity.java | 11 ++++++++ 3 files changed, 49 insertions(+), 9 deletions(-) diff --git a/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/user/UserVo.java b/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/user/UserVo.java index b23ae17f..abd89f0e 100644 --- a/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/user/UserVo.java +++ b/io.sc.platform.system.api/src/main/java/io/sc/platform/system/api/user/UserVo.java @@ -4,7 +4,9 @@ import com.fasterxml.jackson.annotation.JsonProperty; import io.sc.platform.orm.api.types.DesensitizeStringWrapper; import io.sc.platform.orm.api.vo.CorporationAuditorVo; +import java.util.ArrayList; import java.util.Date; +import java.util.List; public class UserVo extends CorporationAuditorVo { //主键 @@ -47,28 +49,32 @@ public class UserVo extends CorporationAuditorVo { @JsonProperty(index = 10) private String defaultOrgId; - //email + //所属机构名称列表 @JsonProperty(index = 11) + private List orgNames =new ArrayList<>(); + + //email + @JsonProperty(index = 12) private String email; //电话 - @JsonProperty(index = 12) + @JsonProperty(index = 13) private String phone; //手机号 - @JsonProperty(index = 13) + @JsonProperty(index = 14) private String mobile; //微信号 - @JsonProperty(index = 14) + @JsonProperty(index = 15) private String weixin; //QQ号 - @JsonProperty(index = 15) + @JsonProperty(index = 16) private String qq; //最后读取公告的时间 - @JsonProperty(index = 16) + @JsonProperty(index = 17) private Date lastReadAnnouncementDate; public String getId() { @@ -151,6 +157,14 @@ public class UserVo extends CorporationAuditorVo { this.defaultOrgId = defaultOrgId; } + public List getOrgNames() { + return orgNames; + } + + public void setOrgNames(List orgNames) { + this.orgNames = orgNames; + } + public String getEmail() { return email; } diff --git a/io.sc.platform.system.frontend/src/views/user/User.vue b/io.sc.platform.system.frontend/src/views/user/User.vue index e369d48a..2749d5b6 100644 --- a/io.sc.platform.system.frontend/src/views/user/User.vue +++ b/io.sc.platform.system.frontend/src/views/user/User.vue @@ -16,6 +16,7 @@ :query-form-fields="[ { name: 'loginName', label: $t('loginName'), type: 'w-text' }, { name: 'userName', label: $t('userName'), type: 'w-text' }, + { name: 'orgs', label: $t('org'), type: 'w-org-select', multiple: true, autogrow: false, queryOperator: 'inSet' }, { name: 'enable', label: $t('isEnable'), type: 'w-select', options: Options.yesNo(), queryOperator: 'equals' }, ]" :toolbar-configure="{ noIcon: false }" @@ -83,12 +84,26 @@ 'export', ]" :columns="[ - { width: 200, name: 'loginName', label: $t('loginName') }, - { width: '100%', name: 'userName', label: $t('userName') }, + { width: 150, name: 'loginName', label: $t('loginName') }, + { width: 150, name: 'userName', label: $t('userName') }, { - width: 250, + width: '100%', + name: 'orgNames', + label: $t('org'), + html: true, + format: (value, row) => { + let names = ''; + value.forEach((item) => { + names += item + '
'; + }); + return names; + }, + }, + { + width: 80, name: 'enable', label: $t('status'), + align: 'center', format: (value, row) => { return { componentType: UserStatusTag, diff --git a/io.sc.platform.system/src/main/java/io/sc/platform/system/user/jpa/entity/UserEntity.java b/io.sc.platform.system/src/main/java/io/sc/platform/system/user/jpa/entity/UserEntity.java index 20829bed..06b3f914 100644 --- a/io.sc.platform.system/src/main/java/io/sc/platform/system/user/jpa/entity/UserEntity.java +++ b/io.sc.platform.system/src/main/java/io/sc/platform/system/user/jpa/entity/UserEntity.java @@ -6,12 +6,15 @@ import io.sc.platform.orm.converter.NumericBooleanConverter; import io.sc.platform.orm.entity.CorporationAuditorEntity; import io.sc.platform.orm.entity.DesensitizedEntity; import io.sc.platform.orm.service.support.Desensitizer; +import io.sc.platform.security.service.support.Org; import io.sc.platform.system.api.user.UserVo; import io.sc.platform.system.department.jpa.entity.DepartmentEntity; import io.sc.platform.system.org.jpa.entity.OrgEntity; import io.sc.platform.system.role.jpa.entity.RoleEntity; import io.sc.platform.system.user.convert.*; import io.sc.platform.system.user.jpa.support.UserEntityJsonSerializer; +import io.sc.platform.util.ObjectMapperUtil; +import io.sc.platform.util.StringUtil; import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.Parameter; import org.hibernate.annotations.Type; @@ -189,12 +192,20 @@ public class UserEntity extends CorporationAuditorEntity implements Dese vo.setCredentialsExpired(this.getCredentialsExpired()); vo.setDefaultRoleId(this.getDefaultRoleId()); vo.setDefaultOrgId(this.getDefaultOrgId()); + if(this.getOrgs()!=null && !this.getOrgs().isEmpty()){ + List orgNames =new ArrayList<>(); + for(OrgEntity org : this.getOrgs()){ + orgNames.add(org.getName()); + } + vo.setOrgNames(orgNames); + } vo.setEmail(this.getEmail()); vo.setPhone(this.getPhone()); vo.setMobile(this.getMobile()); vo.setWeixin(this.getWeixin()); vo.setQq(this.getQq()); vo.setLastReadAnnouncementDate(this.getLastReadAnnouncementDate()); + return vo; }