12 changed files with 259 additions and 130 deletions
@ -1,83 +1,85 @@ |
|||||
package com.epmet.filter; |
//package com.epmet.filter;
|
||||
|
//
|
||||
import com.epmet.commons.tools.constant.AppClientConstant; |
//import com.epmet.commons.tools.constant.AppClientConstant;
|
||||
import com.epmet.commons.tools.constant.Constant; |
//import com.epmet.commons.tools.constant.Constant;
|
||||
import com.epmet.commons.tools.security.dto.BaseTokenDto; |
//import com.epmet.commons.tools.security.dto.BaseTokenDto;
|
||||
import com.epmet.commons.tools.utils.CpUserDetailRedis; |
//import com.epmet.commons.tools.utils.CpUserDetailRedis;
|
||||
import com.epmet.jwt.JwtTokenUtils; |
//import com.epmet.jwt.JwtTokenUtils;
|
||||
import org.apache.commons.lang3.StringUtils; |
//import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger; |
//import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory; |
//import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired; |
//import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.cloud.gateway.filter.GatewayFilterChain; |
//import org.springframework.cloud.gateway.filter.GatewayFilterChain;
|
||||
import org.springframework.cloud.gateway.filter.GlobalFilter; |
//import org.springframework.cloud.gateway.filter.GlobalFilter;
|
||||
import org.springframework.http.HttpHeaders; |
//import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.server.reactive.ServerHttpRequest; |
//import org.springframework.http.server.reactive.ServerHttpRequest;
|
||||
import org.springframework.stereotype.Component; |
//import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.server.ServerWebExchange; |
//import org.springframework.web.server.ServerWebExchange;
|
||||
import reactor.core.publisher.Mono; |
//import reactor.core.publisher.Mono;
|
||||
|
//
|
||||
/** |
///**
|
||||
* Feign调用发送请求的Filter |
// * Feign调用发送请求的Filter
|
||||
* 目前用于封装用户相关信息到request,供上游微服务使用 |
// * 目前用于封装用户相关信息到request,供上游微服务使用
|
||||
*/ |
// * 已过时,功能移入CpAuthGatewayFilterFacotry
|
||||
@Component |
// */
|
||||
public class FeignRequestFilter implements GlobalFilter, UserTokenFilter { |
//@Component
|
||||
|
//@Deprecated
|
||||
private Logger logger = LoggerFactory.getLogger(getClass()); |
//public class FeignRequestFilter implements GlobalFilter, UserTokenFilter {
|
||||
|
//
|
||||
@Autowired |
// private Logger logger = LoggerFactory.getLogger(getClass());
|
||||
private JwtTokenUtils jwtTokenUtils; |
//
|
||||
@Autowired |
// @Autowired
|
||||
private CpUserDetailRedis cpUserDetailRedis; |
// private JwtTokenUtils jwtTokenUtils;
|
||||
|
// @Autowired
|
||||
@Override |
// private CpUserDetailRedis cpUserDetailRedis;
|
||||
public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) { |
//
|
||||
ServerHttpRequest request = exchange.getRequest(); |
// @Override
|
||||
HttpHeaders headers = request.getHeaders(); |
// public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
|
||||
String token = headers.getFirst(Constant.AUTHORIZATION_HEADER); |
// ServerHttpRequest request = exchange.getRequest();
|
||||
if (StringUtils.isBlank(token)) { |
// HttpHeaders headers = request.getHeaders();
|
||||
token = headers.getFirst(Constant.TOKEN_HEADER); |
// String token = headers.getFirst(Constant.AUTHORIZATION_HEADER);
|
||||
logger.info("token=" + token); |
// if (StringUtils.isBlank(token)) {
|
||||
} else { |
// token = headers.getFirst(Constant.TOKEN_HEADER);
|
||||
logger.info("authorization=" + token); |
// logger.info("token=" + token);
|
||||
} |
// } else {
|
||||
if (StringUtils.isBlank(token)) { |
// logger.info("authorization=" + token);
|
||||
token = request.getQueryParams().getFirst(Constant.AUTHORIZATION_HEADER); |
// }
|
||||
logger.info("params token:" + token); |
// if (StringUtils.isBlank(token)) {
|
||||
} |
// token = request.getQueryParams().getFirst(Constant.AUTHORIZATION_HEADER);
|
||||
|
// logger.info("params token:" + token);
|
||||
if (StringUtils.isBlank(token)) { |
// }
|
||||
return chain.filter(exchange); |
//
|
||||
} |
// if (StringUtils.isBlank(token)) {
|
||||
|
// return chain.filter(exchange);
|
||||
BaseTokenDto baseTokenDto = getBaseTokenDto(token, jwtTokenUtils); |
// }
|
||||
|
//
|
||||
if (baseTokenDto != null) { |
// BaseTokenDto baseTokenDto = getBaseTokenDto(token, jwtTokenUtils);
|
||||
ServerHttpRequest build = exchange.getRequest().mutate() |
//
|
||||
.header(AppClientConstant.USER_ID, new String[]{baseTokenDto.getUserId()}) |
// if (baseTokenDto != null) {
|
||||
.header(AppClientConstant.TRANSACTION_SERIAL_KEY, new String[]{getTransactionSerial()}) |
// ServerHttpRequest build = exchange.getRequest().mutate()
|
||||
.build(); |
// .header(AppClientConstant.USER_ID, new String[]{baseTokenDto.getUserId()})
|
||||
return chain.filter(exchange.mutate().request(build).build()); |
// .header(AppClientConstant.TRANSACTION_SERIAL_KEY, new String[]{getTransactionSerial()})
|
||||
} |
// .build();
|
||||
|
// return chain.filter(exchange.mutate().request(build).build());
|
||||
return chain.filter(exchange); |
// }
|
||||
} |
//
|
||||
|
// return chain.filter(exchange);
|
||||
/** |
// }
|
||||
* 获取事务流水号 |
//
|
||||
* @return |
// /**
|
||||
*/ |
// * 获取事务流水号
|
||||
public static String getTransactionSerial() { |
// * @return
|
||||
String[] letterPool = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n" |
// */
|
||||
, "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}; |
// public static String getTransactionSerial() {
|
||||
|
// String[] letterPool = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n"
|
||||
StringBuilder sb = new StringBuilder(); |
// , "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
|
||||
for (int i = 0; i < 2; i++) { |
//
|
||||
sb.append(letterPool[(int) (Math.random() * 25)]); |
// StringBuilder sb = new StringBuilder();
|
||||
} |
// for (int i = 0; i < 2; i++) {
|
||||
|
// sb.append(letterPool[(int) (Math.random() * 25)]);
|
||||
sb.append(System.currentTimeMillis()); |
// }
|
||||
return sb.toString(); |
//
|
||||
} |
// sb.append(System.currentTimeMillis());
|
||||
} |
// return sb.toString();
|
||||
|
// }
|
||||
|
//}
|
||||
|
@ -0,0 +1,32 @@ |
|||||
|
package com.epmet.resi.group.dto.topic.result; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Description 关闭话题详情相关信息 |
||||
|
* @ClassName ResiTopicClosingMsgResultDTO |
||||
|
* @Auth wangc |
||||
|
* @Date 2020-06-01 17:44 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class ResiTopicClosingMsgResultDTO implements Serializable { |
||||
|
private static final long serialVersionUID = 3959914139163088792L; |
||||
|
|
||||
|
/** |
||||
|
* 关闭人(目前只有组长可以关闭话题) |
||||
|
* */ |
||||
|
private String closeUserName; |
||||
|
|
||||
|
/** |
||||
|
* 关闭时间 |
||||
|
* */ |
||||
|
private Long closeDateTime; |
||||
|
|
||||
|
/** |
||||
|
* 关闭理由 |
||||
|
* */ |
||||
|
private String closeReason; |
||||
|
|
||||
|
} |
Loading…
Reference in new issue