Commit 26d3b6f1 authored by 王亮's avatar 王亮

Merge branch 'feature-temp-20230616' into 'master'

Feature temp 20230616

See merge request !118
parents 374a906e d4846ff7
package cn.quantgroup.xyqb.event;
import cn.quantgroup.xyqb.entity.User;
import cn.quantgroup.xyqb.exception.PushUserToLkbException;
import cn.quantgroup.xyqb.model.UserRegisterParam;
import cn.quantgroup.xyqb.service.user.ILkbUserService;
import cn.quantgroup.xyqb.util.JsonUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationListener;
/**
* 注册成功之后lkb
*
* @author ag
*/
@Slf4j
//@Component
public class LkbRegisteredEventListener implements ApplicationListener<RegisterEvent> {
@Autowired
private ILkbUserService lkbUserService;
//todo 这里重试机制补齐
@Override
public void onApplicationEvent(RegisterEvent event) {
UserRegisterParam userRegisterParam = event.getUserRegisterParam();
User user = userRegisterParam.getUser();
String uuid = user.getUuid();
boolean pushResult = lkbUserService.pushUser(uuid, userRegisterParam.getPhoneNo(),
userRegisterParam.getName());
if (!pushResult) {
log.error("[userRegisterHandler][baseUserRegisterHandler]同步用户至Lkb出错,userRegisterParam:{}", JsonUtil.toJson(userRegisterParam));
throw new PushUserToLkbException("同步用户至Lkb出错");
}
}
}
...@@ -20,7 +20,6 @@ public class PhoneHashEventListener implements ApplicationListener<RegisterEvent ...@@ -20,7 +20,6 @@ public class PhoneHashEventListener implements ApplicationListener<RegisterEvent
private IUserHashMappingRepository userHashMappingRepository; private IUserHashMappingRepository userHashMappingRepository;
@Override @Override
public void onApplicationEvent(RegisterEvent event) { public void onApplicationEvent(RegisterEvent event) {
log.info("onApplicationEvent cn.quantgroup.xyqb.event.PhoneHashEventListener start");
UserRegisterParam userRegisterParam = event.getUserRegisterParam(); UserRegisterParam userRegisterParam = event.getUserRegisterParam();
String phoneNo = userRegisterParam.getPhoneNo(); String phoneNo = userRegisterParam.getPhoneNo();
Long userId = userRegisterParam.getUser().getId(); Long userId = userRegisterParam.getUser().getId();
......
...@@ -21,8 +21,6 @@ public class UserDetailHashEventListener implements ApplicationListener<UserDeta ...@@ -21,8 +21,6 @@ public class UserDetailHashEventListener implements ApplicationListener<UserDeta
@Autowired @Autowired
private IUserHashMappingRepository userHashMappingRepository; private IUserHashMappingRepository userHashMappingRepository;
// @Resource
// private IUserHashPhoneNoIdNoMappingRepository userHashPhoneNoIdNoMappingRepository;
@Override @Override
public void onApplicationEvent(UserDetailUpdateEvent event) { public void onApplicationEvent(UserDetailUpdateEvent event) {
...@@ -48,21 +46,5 @@ public class UserDetailHashEventListener implements ApplicationListener<UserDeta ...@@ -48,21 +46,5 @@ public class UserDetailHashEventListener implements ApplicationListener<UserDeta
log.warn("保存userHashMapping重复, 无需再保存, userId:{}", userDetail.getUserId()); log.warn("保存userHashMapping重复, 无需再保存, userId:{}", userDetail.getUserId());
} }
// UserHashPhoneNoIdNoMapping userHashPhoneNoIdNoMapping = userHashPhoneNoIdNoMappingRepository.findByUserId(userDetail.getUserId());
//
// //如果不存在, 我先保存一下
// if (userHashPhoneNoIdNoMapping == null) {
// userHashPhoneNoIdNoMapping = new UserHashPhoneNoIdNoMapping(userDetail.getUserId());
// }
//
// //可能存在手机号、身份证号修改. 搞一下.
// String phoneNoIdNoMd5 = (userDetail.getPhoneNo() + userDetail.getIdNo()).toUpperCase();
// userHashPhoneNoIdNoMapping.setPhoneNoIdNoMd5(Md5Util.build(phoneNoIdNoMd5));
//
// try {
// userHashPhoneNoIdNoMappingRepository.save(userHashPhoneNoIdNoMapping);
// } catch (PersistenceException e) {
// log.error("保存userHashPhoneNoIdNoMapping重复, 无需再保存, userId:{}", userDetail.getUserId());
// }
} }
} }
...@@ -19,7 +19,6 @@ public class WechatPhoneNoUpdateEventListener implements ApplicationListener<Pho ...@@ -19,7 +19,6 @@ public class WechatPhoneNoUpdateEventListener implements ApplicationListener<Pho
@Override @Override
public void onApplicationEvent(PhoneNoUpdateEvent event) { public void onApplicationEvent(PhoneNoUpdateEvent event) {
log.info("onApplicationEvent cn.quantgroup.xyqb.event.WechatPhoneNoUpdateEventListener start");
String oldPhoneNo = event.getOldPhoneNo(); String oldPhoneNo = event.getOldPhoneNo();
User user = event.getUser(); User user = event.getUser();
WechatUserInfo userInfo = wechatService.findWechatUserInfoByPhoneNo(oldPhoneNo); WechatUserInfo userInfo = wechatService.findWechatUserInfoByPhoneNo(oldPhoneNo);
......
package cn.quantgroup.xyqb.service.user;
/**
* @author mengfan.feng
* @time 2015-08-19 17:44
*/
public interface ILkbUserService {
/**
* 同步用戶信息
*
* @param uuid
* @param phoneNo
* @param name
*/
boolean pushUser(String uuid, String phoneNo, String name);
}
package cn.quantgroup.xyqb.service.user.impl;
import cn.quantgroup.xyqb.Constants;
import cn.quantgroup.xyqb.service.http.IHttpService;
import cn.quantgroup.xyqb.service.user.ILkbUserService;
import cn.quantgroup.xyqb.util.JsonUtil;
import cn.quantgroup.xyqb.util.PasswordUtil;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.Optional;
/**
* @author mengfan.feng
* @time 2015-08-19 18:20
*/
@Service
@Slf4j
public class LkbUserviceImpl implements ILkbUserService {
private static final String TOKEN_PATTERN = "timeunit=%sappkey=lkb010203#$%%";
private static final String LKB_CODE = "0002";
@Autowired
private IHttpService httpService;
@Value("${lkb.client.url}")
private String clientUrl;
@Override
public boolean pushUser(String uuid, String phoneNo, String name) {
String timeunit = System.currentTimeMillis() + "";
String token = PasswordUtil.MD5(String.format(TOKEN_PATTERN, timeunit));
Map<String, String> parameters = Maps.newHashMap();
parameters.put("appId", LKB_CODE);
parameters.put("timeunit", timeunit);
parameters.put("token", token);
parameters.put("userId", uuid);
parameters.put("loginName", phoneNo);
if (StringUtils.isNotBlank(name)) {
parameters.put("realName", name);
}
String response = httpService.post(clientUrl + "/user/push.json", parameters);
Optional<Map> resultOptional = JsonUtil.fromJson(response, Map.class);
if (!resultOptional.isPresent() || !Constants.SUCCESS_CODE.equals(resultOptional.get().get(Constants.RESULT_CODE))) {
log.error("[lkb_user_push]向LKB同步用户失败,phoneNo:{},response={}", phoneNo, response);
return false;
}
return true;
}
}
...@@ -40,15 +40,12 @@ public class XyqbSessionContextHolder { ...@@ -40,15 +40,12 @@ public class XyqbSessionContextHolder {
public static SessionStruct getXSessionFromRedis() { public static SessionStruct getXSessionFromRedis() {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String token = request.getHeader(Constants.X_AUTH_TOKEN); String token = request.getHeader(Constants.X_AUTH_TOKEN);
log.info("getXSessionFromRedis token = 【{}】", token);
return getXSessionFromRedis(token); return getXSessionFromRedis(token);
} }
public static String getXSessionFromTenantRedis() { public static String getXSessionFromTenantRedis() {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String tenantId = request.getHeader(Constants.X_AUTH_TENANT); return request.getHeader(Constants.X_AUTH_TENANT);
log.info("getXSessionFromRedis tenantId = 【{}】", tenantId);
return tenantId;
} }
public static SessionStruct getXSessionFromRedis(String token) { public static SessionStruct getXSessionFromRedis(String token) {
......
...@@ -51,8 +51,7 @@ public class MqUtils { ...@@ -51,8 +51,7 @@ public class MqUtils {
//增加用户注册广播 //增加用户注册广播
UserRegisterMqMessage registerMqMessage = new UserRegisterMqMessage(user); UserRegisterMqMessage registerMqMessage = new UserRegisterMqMessage(user);
MqUtils.sendRegisterMessage(registerMqMessage); MqUtils.sendRegisterMessage(registerMqMessage);
UserRet userRet = new UserRet(user); return new UserRet(user);
return userRet;
} }
/** /**
......
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