From ec8259f0f455b7f8fe1fec1996109552bd078c37 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 15 Jan 2021 17:42:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=E5=A2=9E=E5=8A=A0CU?= =?UTF-8?q?STOMER=5FID=E7=9A=84=E5=A1=AB=E5=85=85=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mybatis/handler/FieldMetaObjectHandler.java | 8 ++++++++ .../tools/security/dto/BaseTokenDto.java | 5 +++++ .../commons/tools/security/dto/GovTokenDto.java | 5 ----- .../commons/tools/security/dto/TokenDto.java | 5 ----- .../tools/security/user/LoginUserUtil.java | 17 +++++++++++++++++ .../com/epmet/auth/InternalAuthProcessor.java | 3 ++- .../src/main/resources/logback-spring.xml | 2 +- 7 files changed, 33 insertions(+), 12 deletions(-) diff --git a/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java b/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java index b1f8dc53fc..f0afe84833 100644 --- a/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java +++ b/epmet-commons/epmet-commons-mybatis/src/main/java/com/epmet/commons/mybatis/handler/FieldMetaObjectHandler.java @@ -51,6 +51,7 @@ public class FieldMetaObjectHandler implements MetaObjectHandler { Date date = new Date(); if (metaObject.getOriginalObject() instanceof BaseEpmetEntity) { // epmet项目新增的 + setFieldValByName(FieldConstant.CUSTOMER_ID_HUMP, getCustomerIdByFieldValue(metaObject), metaObject); setFieldValByName(FieldConstant.CREATED_TIME_HUMP, getCreatedTimeByFieldValue(metaObject), metaObject); setFieldValByName(FieldConstant.CREATED_BY_HUMP, getCreatedByFieldValue(metaObject), metaObject); setFieldValByName(FieldConstant.UPDATED_TIME_HUMP, getUpdatedTimeByFieldValue(metaObject), metaObject); @@ -95,6 +96,13 @@ public class FieldMetaObjectHandler implements MetaObjectHandler { return value; } + public Object getCustomerIdByFieldValue(MetaObject metaObject) { + if (metaObject.hasSetter(FieldConstant.CUSTOMER_ID_HUMP)) { + return loginUserUtil.getLoginUserCustomerId(); + } + return null; + } + public Object getCreatedTimeByFieldValue(MetaObject metaObject) { Object createdTime = null; if (metaObject.hasGetter(FieldConstant.CREATED_TIME_HUMP)) { diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/BaseTokenDto.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/BaseTokenDto.java index c3065c7200..c5dba7e16b 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/BaseTokenDto.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/BaseTokenDto.java @@ -24,6 +24,11 @@ public class BaseTokenDto { */ private String token; + /** + * 客户id + */ + private String customerId; + public BaseTokenDto() { } diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/GovTokenDto.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/GovTokenDto.java index c0fe871d08..b664acab2a 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/GovTokenDto.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/GovTokenDto.java @@ -31,11 +31,6 @@ public class GovTokenDto extends BaseTokenDto implements Serializable { */ private String unionId; - /** - * 当前工作人员进入的客户id - */ - private String customerId; - /** * 过期时间戳 */ diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/TokenDto.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/TokenDto.java index 6db5a629cd..642bad2941 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/TokenDto.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/dto/TokenDto.java @@ -40,11 +40,6 @@ public class TokenDto extends BaseTokenDto implements Serializable { */ private long updateTime; - /** - * 当前工作人员进入的客户id - */ - private String customerId; - @Override public String toString() { return JSON.toJSONString(this); diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/user/LoginUserUtil.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/user/LoginUserUtil.java index 088a26eb73..70307f6551 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/user/LoginUserUtil.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/security/user/LoginUserUtil.java @@ -68,6 +68,23 @@ public class LoginUserUtil { return client; } + /** + * 获取用户customerId + * @return + */ + public String getLoginUserCustomerId() { + HttpServletRequest request = HttpContextUtils.getHttpServletRequest(); + if (request == null) { + return null; + } + + String client = request.getHeader(AppClientConstant.CUSTOMER_ID); + if (StringUtils.isBlank(client)) { + return null; + } + return client; + } + /** * 获取用户的部门ID列表 * @return diff --git a/epmet-gateway/src/main/java/com/epmet/auth/InternalAuthProcessor.java b/epmet-gateway/src/main/java/com/epmet/auth/InternalAuthProcessor.java index 2ee22426f6..ec38fe805c 100644 --- a/epmet-gateway/src/main/java/com/epmet/auth/InternalAuthProcessor.java +++ b/epmet-gateway/src/main/java/com/epmet/auth/InternalAuthProcessor.java @@ -109,7 +109,8 @@ public class InternalAuthProcessor extends AuthProcessor { .header(Constant.APP_USER_KEY, redisKey) .header(AppClientConstant.APP,baseTokenDto.getApp()) .header(AppClientConstant.CLIENT,baseTokenDto.getClient()) - .header(AppClientConstant.USER_ID,baseTokenDto.getUserId()); + .header(AppClientConstant.USER_ID,baseTokenDto.getUserId()) + .header(AppClientConstant.CUSTOMER_ID,baseTokenDto.getCustomerId()); if (StringUtils.equals(baseTokenDto.getApp(), "gov")) {//工作端 if(StringUtils.isNotBlank(customerId)){ diff --git a/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml b/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml index 0c531843f6..2b2af13d83 100644 --- a/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml +++ b/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml @@ -139,7 +139,7 @@ - +