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

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

parent d690d455
...@@ -3,6 +3,7 @@ package cn.quantgroup.xyqb.service.user.impl; ...@@ -3,6 +3,7 @@ package cn.quantgroup.xyqb.service.user.impl;
import cn.quantgroup.xyqb.entity.Address; import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.repository.IAddressRepository; import cn.quantgroup.xyqb.repository.IAddressRepository;
import cn.quantgroup.xyqb.service.user.IAddressService; import cn.quantgroup.xyqb.service.user.IAddressService;
import cn.quantgroup.xyqb.util.AddressFilter;
import cn.quantgroup.xyqb.util.EmojiUtil; import cn.quantgroup.xyqb.util.EmojiUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CacheEvict;
...@@ -24,7 +25,14 @@ public class AddressServiceImpl implements IAddressService { ...@@ -24,7 +25,14 @@ public class AddressServiceImpl implements IAddressService {
@Override @Override
// @Cacheable(value = "addresscache", key = "'address' + #userId", unless = "#result == null", cacheManager = "cacheManager") // @Cacheable(value = "addresscache", key = "'address' + #userId", unless = "#result == null", cacheManager = "cacheManager")
public Address findByUserId(Long userId) { 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 @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; ...@@ -5,8 +5,11 @@ import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.Constants; import cn.quantgroup.xyqb.Constants;
import cn.quantgroup.xyqb.controller.internal.user.InnerController; import cn.quantgroup.xyqb.controller.internal.user.InnerController;
import cn.quantgroup.xyqb.controller.external.UserController; import cn.quantgroup.xyqb.controller.external.UserController;
import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.model.AuthBean; import cn.quantgroup.xyqb.model.AuthBean;
import cn.quantgroup.xyqb.model.JsonResult; import cn.quantgroup.xyqb.model.JsonResult;
import cn.quantgroup.xyqb.service.user.IAddressService;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity; import org.apache.http.HttpEntity;
...@@ -33,44 +36,54 @@ import java.util.List; ...@@ -33,44 +36,54 @@ import java.util.List;
*/ */
@Slf4j @Slf4j
@RunWith(SpringJUnit4ClassRunner.class) @RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = Bootstrap.class ) @SpringBootTest(classes = Bootstrap.class)
public class UserLoginTest { public class UserLoginTest {
private MockHttpServletRequest request = new MockHttpServletRequest();; private MockHttpServletRequest request = new MockHttpServletRequest();
;
@Resource @Resource
private UserController userController; IAddressService iAddressService;
@Resource
private UserController userController;
@Resource @Resource
private InnerController innerController; private InnerController innerController;
//注入brave-spring-boot-starter提供的techHttpClient //注入brave-spring-boot-starter提供的techHttpClient
@Resource @Resource
private ITechHttpClient techHttpClient; private ITechHttpClient techHttpClient;
@Test @Test
public void testBull() { public void testQuery(){
String contacts = null; Address byUserId = iAddressService.findByUserId(1L);
boolean notBlank = StringUtils.isNotBlank(contacts); System.out.println(byUserId);
System.out.println("-----------------------------result:"+notBlank); }
@Test
public void testBull() {
String contacts = null;
boolean notBlank = StringUtils.isNotBlank(contacts);
System.out.println("-----------------------------result:" + notBlank);
}
} @Test
@Test public void testJson() {
public void testJson() { JsonResult addressByUserId = innerController.findAddressByUserId(22L);
JsonResult addressByUserId = innerController.findAddressByUserId(22L); // JsonResult userByUserId = innerController.findUserByPhoneNo("17811111122");
// JsonResult userByUserId = innerController.findUserByPhoneNo("17811111122"); System.out.println("-------------result:" + addressByUserId);
System.out.println("-------------result:"+addressByUserId);
} }
/** /**
* 用户密码登陆接口 * 用户密码登陆接口
*/ */
@Test @Test
public void testUserLogin() { public void testUserLogin() {
Long code = 1L; Long code = 1L;
String format = String.format(Constants.ZERO_FILL_TEMPLATE, code); String format = String.format(Constants.ZERO_FILL_TEMPLATE, code);
System.out.println("-----------format:"+format); System.out.println("-----------format:" + format);
//访问xyqb-user拿到登录token //访问xyqb-user拿到登录token
Long channelId = 1L; Long channelId = 1L;
String appChannel = "3"; String appChannel = "3";
Long createFrom = 152L; Long createFrom = 152L;
...@@ -80,20 +93,20 @@ public class UserLoginTest { ...@@ -80,20 +93,20 @@ public class UserLoginTest {
String ip = "172.16.0.1"; String ip = "172.16.0.1";
request.addHeader("x-original-client-ip", ip); request.addHeader("x-original-client-ip", ip);
request.addHeader("authorization", "Basic MTg1MTMzNDE4MDg6MTIzNDU2"); 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(); AuthBean authBean = (AuthBean) jsonResult.getData();
String token = authBean.getToken(); String token = authBean.getToken();
System.out.println("user token:" + token); System.out.println("user token:" + token);
//用获取到的token请求xyqb的receive_token //用获取到的token请求xyqb的receive_token
CloseableHttpClient httpClient = techHttpClient.createHttpClientBuilder().build(); CloseableHttpClient httpClient = techHttpClient.createHttpClientBuilder().build();
HttpPost post = new HttpPost("http://localhost:9004/ex/login/receive_token"); HttpPost post = new HttpPost("http://localhost:9004/ex/login/receive_token");
List<NameValuePair> pairList = new ArrayList<>(); List<NameValuePair> pairList = new ArrayList<>();
pairList.add(new BasicNameValuePair("token", token)); pairList.add(new BasicNameValuePair("token", token));
HttpEntity entity = null; HttpEntity entity = null;
try { try {
entity = new UrlEncodedFormEntity(pairList, "UTF-8"); entity = new UrlEncodedFormEntity(pairList, "UTF-8");
}catch (Exception e){ } catch (Exception e) {
log.error("error", e); log.error("error", e);
} }
post.setEntity(entity); post.setEntity(entity);
...@@ -103,6 +116,6 @@ public class UserLoginTest { ...@@ -103,6 +116,6 @@ public class UserLoginTest {
} catch (IOException e) { } catch (IOException e) {
log.error("error", e); log.error("error", e);
} }
} }
} }
package wechat; package wechat;
import cn.quantgroup.xyqb.Bootstrap; import cn.quantgroup.xyqb.Bootstrap;
import cn.quantgroup.xyqb.entity.Address;
import cn.quantgroup.xyqb.entity.WechatUserInfo; import cn.quantgroup.xyqb.entity.WechatUserInfo;
import cn.quantgroup.xyqb.repository.IWeChatUserRepository; import cn.quantgroup.xyqb.repository.IWeChatUserRepository;
import cn.quantgroup.xyqb.service.user.IAddressService;
import com.ctrip.framework.apollo.spring.config.ApolloPropertySourceInitializer; import com.ctrip.framework.apollo.spring.config.ApolloPropertySourceInitializer;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.junit.Test; import org.junit.Test;
...@@ -31,6 +33,16 @@ public class WechatTest { ...@@ -31,6 +33,16 @@ public class WechatTest {
@Resource @Resource
private IWeChatUserRepository weChatUserRepository; private IWeChatUserRepository weChatUserRepository;
@Resource
IAddressService iAddressService;
@Test
public void testQuery(){
Address byUserId = iAddressService.findByUserId(58846805L);
System.out.println(byUserId);
}
@Test @Test
public void test(){ public void test(){
WechatUserInfo xyqb = weChatUserRepository.findByOpenIdAndAppName("ou5l71eY3oO0oM88I-fp3pfC9sQg", "xyqb"); 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