Commit 4d476953 authored by 董建华's avatar 董建华

增加地址过滤特殊字符功能

parent d690d455
......@@ -3,6 +3,7 @@ package cn.quantgroup.xyqb.service.user.impl;
import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.repository.IAddressRepository;
import cn.quantgroup.xyqb.service.user.IAddressService;
import cn.quantgroup.xyqb.util.AddressFilter;
import cn.quantgroup.xyqb.util.EmojiUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
......@@ -24,7 +25,14 @@ public class AddressServiceImpl implements IAddressService {
@Override
// @Cacheable(value = "addresscache", key = "'address' + #userId", unless = "#result == null", cacheManager = "cacheManager")
public Address findByUserId(Long userId) {
return addressRepository.findByUserId(userId);
Address address = addressRepository.findByUserId(userId);
//过滤特殊字符
if (null != address && null != address.getAddress()) {
address.setAddress(AddressFilter.filterAddress(address.getAddress()));
}
return address;
}
@Override
......
package cn.quantgroup.xyqb.util;
import com.google.common.collect.Lists;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.lang3.StringUtils;
import java.util.List;
/**
* @author :dongjianhua
* @date :Created in 2020/6/22 11:01
* @description:过滤地址特殊符号
* @modified By:
* @version: 1.0
*/
public class AddressFilter {
private static final List<Pattern> PATTERN_LIST = Lists.newArrayList();
static {
PATTERN_LIST.add(new Pattern("|", ""));
}
public static String filterAddress(String address) {
if (!StringUtils.isNotEmpty(address)) {
return address;
}
for (Pattern pattern : PATTERN_LIST) {
address = StringUtils.replace(address, pattern.getTarget(), pattern.getReplaceMent());
}
return address;
}
@Getter
@Setter
@AllArgsConstructor
public static class Pattern {
private String target;
private String replaceMent;
}
}
......@@ -5,8 +5,11 @@ import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.Constants;
import cn.quantgroup.xyqb.controller.internal.user.InnerController;
import cn.quantgroup.xyqb.controller.external.UserController;
import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.model.AuthBean;
import cn.quantgroup.xyqb.model.JsonResult;
import cn.quantgroup.xyqb.service.user.IAddressService;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity;
......@@ -33,44 +36,54 @@ import java.util.List;
*/
@Slf4j
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = Bootstrap.class )
@SpringBootTest(classes = Bootstrap.class)
public class UserLoginTest {
private MockHttpServletRequest request = new MockHttpServletRequest();;
@Resource
private UserController userController;
private MockHttpServletRequest request = new MockHttpServletRequest();
;
@Resource
IAddressService iAddressService;
@Resource
private UserController userController;
@Resource
private InnerController innerController;
@Resource
private InnerController innerController;
//注入brave-spring-boot-starter提供的techHttpClient
@Resource
private ITechHttpClient techHttpClient;
@Test
public void testBull() {
String contacts = null;
boolean notBlank = StringUtils.isNotBlank(contacts);
System.out.println("-----------------------------result:"+notBlank);
@Test
public void testQuery(){
Address byUserId = iAddressService.findByUserId(1L);
System.out.println(byUserId);
}
@Test
public void testBull() {
String contacts = null;
boolean notBlank = StringUtils.isNotBlank(contacts);
System.out.println("-----------------------------result:" + notBlank);
}
}
@Test
public void testJson() {
JsonResult addressByUserId = innerController.findAddressByUserId(22L);
// JsonResult userByUserId = innerController.findUserByPhoneNo("17811111122");
System.out.println("-------------result:"+addressByUserId);
@Test
public void testJson() {
JsonResult addressByUserId = innerController.findAddressByUserId(22L);
// JsonResult userByUserId = innerController.findUserByPhoneNo("17811111122");
System.out.println("-------------result:" + addressByUserId);
}
}
/**
* 用户密码登陆接口
*/
@Test
public void testUserLogin() {
Long code = 1L;
String format = String.format(Constants.ZERO_FILL_TEMPLATE, code);
System.out.println("-----------format:"+format);
//访问xyqb-user拿到登录token
@Test
public void testUserLogin() {
Long code = 1L;
String format = String.format(Constants.ZERO_FILL_TEMPLATE, code);
System.out.println("-----------format:" + format);
//访问xyqb-user拿到登录token
Long channelId = 1L;
String appChannel = "3";
Long createFrom = 152L;
......@@ -80,20 +93,20 @@ public class UserLoginTest {
String ip = "172.16.0.1";
request.addHeader("x-original-client-ip", ip);
request.addHeader("authorization", "Basic MTg1MTMzNDE4MDg6MTIzNDU2");
JsonResult jsonResult = userController.login(channelId, appChannel, createFrom, userId,"xyqb","xyqb", request);
JsonResult jsonResult = userController.login(channelId, appChannel, createFrom, userId, "xyqb", "xyqb", request);
AuthBean authBean = (AuthBean) jsonResult.getData();
String token = authBean.getToken();
System.out.println("user token:" + token);
//用获取到的token请求xyqb的receive_token
CloseableHttpClient httpClient = techHttpClient.createHttpClientBuilder().build();
HttpPost post = new HttpPost("http://localhost:9004/ex/login/receive_token");
CloseableHttpClient httpClient = techHttpClient.createHttpClientBuilder().build();
HttpPost post = new HttpPost("http://localhost:9004/ex/login/receive_token");
List<NameValuePair> pairList = new ArrayList<>();
pairList.add(new BasicNameValuePair("token", token));
HttpEntity entity = null;
try {
entity = new UrlEncodedFormEntity(pairList, "UTF-8");
}catch (Exception e){
} catch (Exception e) {
log.error("error", e);
}
post.setEntity(entity);
......@@ -103,6 +116,6 @@ public class UserLoginTest {
} catch (IOException e) {
log.error("error", e);
}
}
}
}
package wechat;
import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.entity.WechatUserInfo;
import cn.quantgroup.xyqb.repository.IWeChatUserRepository;
import cn.quantgroup.xyqb.service.user.IAddressService;
import com.ctrip.framework.apollo.spring.config.ApolloPropertySourceInitializer;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
......@@ -31,6 +33,16 @@ public class WechatTest {
@Resource
private IWeChatUserRepository weChatUserRepository;
@Resource
IAddressService iAddressService;
@Test
public void testQuery(){
Address byUserId = iAddressService.findByUserId(58846805L);
System.out.println(byUserId);
}
@Test
public void test(){
WechatUserInfo xyqb = weChatUserRepository.findByOpenIdAndAppName("ou5l71eY3oO0oM88I-fp3pfC9sQg", "xyqb");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment