记得上下班打卡 | git大法好,push需谨慎

Commit f0e4d1af authored by anjiabin's avatar anjiabin
parents 08a7c8fe ca33f56e
...@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.service; ...@@ -3,6 +3,7 @@ package com.liquidnet.service.adam.service;
import com.liquidnet.service.adam.dto.AdamThirdPartParam; import com.liquidnet.service.adam.dto.AdamThirdPartParam;
import com.liquidnet.service.adam.dto.vo.AdamRealInfoVo; import com.liquidnet.service.adam.dto.vo.AdamRealInfoVo;
import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo; import com.liquidnet.service.adam.dto.vo.AdamUserInfoVo;
import com.liquidnet.service.base.ResponseDto;
/** /**
* <p> * <p>
...@@ -26,9 +27,9 @@ public interface IAdamUserService { ...@@ -26,9 +27,9 @@ public interface IAdamUserService {
* 第三方账号注册 * 第三方账号注册
* *
* @param param * @param param
* @return AdamUserInfoVo * @return ResponseDto<AdamUserInfoVo>
*/ */
AdamUserInfoVo register(AdamThirdPartParam param); ResponseDto<AdamUserInfoVo> register(AdamThirdPartParam param);
/** /**
* 第三方账号绑定(不存在已绑定账号) * 第三方账号绑定(不存在已绑定账号)
......
...@@ -96,6 +96,8 @@ liquidnet: ...@@ -96,6 +96,8 @@ liquidnet:
service: service:
appid: wx3498304dda39c5a1 appid: wx3498304dda39c5a1
secret: a1307fab0a5f2380086a7c636f7339ea secret: a1307fab0a5f2380086a7c636f7339ea
token: tftipg1427706847
aeskey: LwVpmpuOcl7Mi3mtfQgBol11MsmMCATIqbPgHrEpDzx
applet: applet:
strawberry: strawberry:
appid: wx08b852ade69f8019 appid: wx08b852ade69f8019
......
...@@ -96,6 +96,8 @@ liquidnet: ...@@ -96,6 +96,8 @@ liquidnet:
service: service:
appid: wx3498304dda39c5a1 appid: wx3498304dda39c5a1
secret: a1307fab0a5f2380086a7c636f7339ea secret: a1307fab0a5f2380086a7c636f7339ea
token: tftipg1427706847
aeskey: LwVpmpuOcl7Mi3mtfQgBol11MsmMCATIqbPgHrEpDzx
applet: applet:
strawberry: strawberry:
appid: wx08b852ade69f8019 appid: wx08b852ade69f8019
......
...@@ -281,14 +281,16 @@ public class AdamLoginController { ...@@ -281,14 +281,16 @@ public class AdamLoginController {
if (!checkSmsCodeDto.isSuccess()) { if (!checkSmsCodeDto.isSuccess()) {
return checkSmsCodeDto; return checkSmsCodeDto;
} }
AdamUserInfoVo registerUserInfo = adamUserService.register(parameter); ResponseDto<AdamUserInfoVo> registerRespDto = adamUserService.register(parameter);
if (null == registerUserInfo) { if (!registerRespDto.isSuccess()) {
return ResponseDto.failure(ErrorMapping.get("10000")); return ResponseDto.failure(registerRespDto.getCode(), registerRespDto.getMessage());
} else {
AdamUserInfoVo registerUserInfo = registerRespDto.getData();
loginInfoVo.setUserInfo(registerUserInfo);
loginInfoVo.setThirdPartInfo(adamRdmService.getThirdPartVoListByUid(registerUserInfo.getUid()));
// loginInfoVo.setMemberVo(adamRdmService.getMemberSimpleVo());
} }
toRegister = true; toRegister = true;
loginInfoVo.setUserInfo(registerUserInfo);
loginInfoVo.setThirdPartInfo(adamRdmService.getThirdPartVoListByUid(registerUserInfo.getUid()));
// loginInfoVo.setMemberVo(adamRdmService.getMemberSimpleVo());
} }
loginInfoVo.setToken(this.ssoProcess(loginInfoVo.getUserInfo())); loginInfoVo.setToken(this.ssoProcess(loginInfoVo.getUserInfo()));
loginInfoVo.getUserInfo().setMobile(SensitizeUtil.custom(loginInfoVo.getUserInfo().getMobile(), 3, 4)); loginInfoVo.getUserInfo().setMobile(SensitizeUtil.custom(loginInfoVo.getUserInfo().getMobile(), 3, 4));
......
...@@ -197,6 +197,24 @@ public class AdamRdmService { ...@@ -197,6 +197,24 @@ public class AdamRdmService {
return redisUtil.set(AdamRedisConst.INFO_THIRD_PARTY + uid, vos); return redisUtil.set(AdamRedisConst.INFO_THIRD_PARTY + uid, vos);
} }
public boolean rmvThirdPartVoListByUid(String uid, List<AdamThirdPartInfoVo> vos, String platform) {
if (CollectionUtils.isEmpty(vos)) {
return true;
}
vos.removeIf(r -> r.getPlatform().equals(platform));
return redisUtil.set(AdamRedisConst.INFO_THIRD_PARTY + uid, vos);
}
public AdamThirdPartInfoVo getThirdPartVoByUidPlatform(List<AdamThirdPartInfoVo> vos, String platform) {
if (!CollectionUtils.isEmpty(vos)) {
Optional<AdamThirdPartInfoVo> any = vos.stream().filter(r -> r.getPlatform().equals(platform)).findAny();
if (any.isPresent()) {
return any.get();
}
}
return null;
}
public AdamThirdPartInfoVo getThirdPartVoByUidPlatform(String uid, String platform) { public AdamThirdPartInfoVo getThirdPartVoByUidPlatform(String uid, String platform) {
List<AdamThirdPartInfoVo> vos = this.getThirdPartVoListByUid(uid); List<AdamThirdPartInfoVo> vos = this.getThirdPartVoListByUid(uid);
if (!CollectionUtils.isEmpty(vos)) { if (!CollectionUtils.isEmpty(vos)) {
......
...@@ -15,6 +15,7 @@ import com.liquidnet.service.adam.service.IAdamUserService; ...@@ -15,6 +15,7 @@ import com.liquidnet.service.adam.service.IAdamUserService;
import com.liquidnet.service.adam.util.NknameUtil; import com.liquidnet.service.adam.util.NknameUtil;
import com.liquidnet.service.adam.util.QueueUtils; import com.liquidnet.service.adam.util.QueueUtils;
import com.liquidnet.service.base.ErrorMapping; import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.SqlMapping; import com.liquidnet.service.base.SqlMapping;
import com.liquidnet.service.base.constant.MQConst; import com.liquidnet.service.base.constant.MQConst;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -64,126 +65,116 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -64,126 +65,116 @@ public class AdamUserServiceImpl implements IAdamUserService {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
AdamUserInfoVo userInfoVo = null; AdamUserInfoVo userInfoVo = null;
// if (RedisLockUtil.tryLock(LOCK_KEY_UREGISTER + mobile, 1, 5)) { userInfoVo = AdamUserInfoVo.getNew();
// String uid = adamRdmService.getUidByMobile(mobile); userInfoVo.setUid(IDGenerator.nextSnowId() + "");
// if (StringUtils.isEmpty(uid)) { userInfoVo.setMobile(mobile);
userInfoVo = AdamUserInfoVo.getNew(); userInfoVo.setNickname(NknameUtil.randomNkname());
userInfoVo.setUid(IDGenerator.nextSnowId() + ""); userInfoVo.setIsComplete(0);
userInfoVo.setMobile(mobile); userInfoVo.setState(1);
userInfoVo.setNickname(NknameUtil.randomNkname()); userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setIsComplete(0); userInfoVo.setCreateAt(now);
userInfoVo.setState(1);
userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setCreateAt(now);
// long s = System.currentTimeMillis(); // long s = System.currentTimeMillis();
// mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName()); // mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
adamRdmService.setUidByMobile(mobile, userInfoVo.getUid()); adamRdmService.setUidByMobile(mobile, userInfoVo.getUid());
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo); adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
LinkedList<String> toMqSqls = CollectionUtil.linkedListString(); LinkedList<String> toMqSqls = CollectionUtil.linkedListString();
LinkedList<Object[]> initUserObjs = CollectionUtil.linkedListObjectArr(), LinkedList<Object[]> initUserObjs = CollectionUtil.linkedListObjectArr(),
initUserInfoObjs = CollectionUtil.linkedListObjectArr(); initUserInfoObjs = CollectionUtil.linkedListObjectArr();
s = System.currentTimeMillis(); s = System.currentTimeMillis();
toMqSqls.add(SqlMapping.get("adam_user.add")); toMqSqls.add(SqlMapping.get("adam_user.add"));
initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), 0, now}); initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), 0, now});
toMqSqls.add(SqlMapping.get("adam_user_info.add")); toMqSqls.add(SqlMapping.get("adam_user_info.add"));
initUserInfoObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getNickname(), null, userInfoVo.getQrCode()}); initUserInfoObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getNickname(), null, userInfoVo.getQrCode()});
log.debug("#SQL.GET耗时:{}ms", System.currentTimeMillis() - s); log.debug("#SQL.GET耗时:{}ms", System.currentTimeMillis() - s);
queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UREGISTER.getKey(), queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UREGISTER.getKey(),
SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs) SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs)
); );
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s); log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
// } else {
// userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
// }
// RedisLockUtil.unlock(LOCK_KEY_UREGISTER + mobile);
// }
return userInfoVo; return userInfoVo;
} }
@Override @Override
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) // @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public AdamUserInfoVo register(AdamThirdPartParam param) { public ResponseDto<AdamUserInfoVo> register(AdamThirdPartParam param) {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
AdamUserInfoVo userInfoVo = null; AdamUserInfoVo userInfoVo = null;
// if (RedisLockUtil.tryLock(LOCK_KEY_UREGISTER + param.getOpenId() + param.getPlatform(), 1, 5)) { long s = System.currentTimeMillis();
// String uid = adamRdmService.getUidByPlatformOpenId(param.getPlatform(), param.getOpenId()); String uid = adamRdmService.getUidByMobile(param.getMobile());
// if (StringUtils.isEmpty(uid)) { log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
long s = System.currentTimeMillis(); LinkedList<String> toMqSqls = CollectionUtil.linkedListString();
String uid = adamRdmService.getUidByMobile(param.getMobile()); LinkedList<Object[]> initUserObjs = CollectionUtil.linkedListObjectArr(),
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); initUserInfoObjs = CollectionUtil.linkedListObjectArr(),
LinkedList<String> toMqSqls = CollectionUtil.linkedListString(); initThirdPartObjs = CollectionUtil.linkedListObjectArr();
LinkedList<Object[]> initUserObjs = CollectionUtil.linkedListObjectArr(), if (StringUtils.isEmpty(uid)) {// 手机号未注册
initUserInfoObjs = CollectionUtil.linkedListObjectArr(), userInfoVo = AdamUserInfoVo.getNew();
initThirdPartObjs = CollectionUtil.linkedListObjectArr();
if (StringUtils.isEmpty(uid)) {// 手机号未注册 userInfoVo.setUid(IDGenerator.nextSnowId() + "");
userInfoVo = AdamUserInfoVo.getNew(); userInfoVo.setMobile(param.getMobile());
userInfoVo.setNickname(param.getNickname());
userInfoVo.setUid(IDGenerator.nextSnowId() + ""); userInfoVo.setAvatar(param.getAvatar());
userInfoVo.setMobile(param.getMobile()); userInfoVo.setIsComplete(0);
userInfoVo.setNickname(param.getNickname()); userInfoVo.setState(1);
userInfoVo.setAvatar(param.getAvatar()); userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setIsComplete(0); userInfoVo.setCreateAt(now);
userInfoVo.setState(1);
userInfoVo.setQrCode("lN".concat(userInfoVo.getUid()).concat(RandomStringUtils.randomAlphanumeric(5).toUpperCase()));
userInfoVo.setCreateAt(now);
// s = System.currentTimeMillis(); // s = System.currentTimeMillis();
// mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName()); // mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
userInfoVo.setMobile(SensitizeUtil.custom(param.getMobile(), 3, 4)); userInfoVo.setMobile(SensitizeUtil.custom(param.getMobile(), 3, 4));
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo);
adamRdmService.setUserInfoVoByUid(userInfoVo.getUid(), userInfoVo); toMqSqls.add(SqlMapping.get("adam_user.add"));
initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now});
toMqSqls.add(SqlMapping.get("adam_user_info.add"));
initUserInfoObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getNickname(), userInfoVo.getAvatar(), userInfoVo.getQrCode()});
AdamThirdPartInfoVo thirdPartInfoVo = AdamThirdPartInfoVo.getNew();
BeanUtils.copyProperties(param, thirdPartInfoVo);
thirdPartInfoVo.setCreatedAt(now);
thirdPartInfoVo.setUid(userInfoVo.getUid());
thirdPartInfoVo.setState(1);// 1-绑定
toMqSqls.add(SqlMapping.get("adam_user.add"));
initUserObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getMobile(), userInfoVo.getState(), now});
toMqSqls.add(SqlMapping.get("adam_user_info.add"));
initUserInfoObjs.add(new Object[]{userInfoVo.getUid(), userInfoVo.getNickname(), userInfoVo.getAvatar(), userInfoVo.getQrCode()});
// } else {
// s = System.currentTimeMillis(); // s = System.currentTimeMillis();
// userInfoVo = adamRdmService.getUserInfoVoByUid(uid); // mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
// log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// toMqSqls.add(SqlMapping.get("adam_user.add"));
// toMqSqls.add(SqlMapping.get("adam_user_info.add"));
// }
AdamThirdPartInfoVo thirdPartInfoVo = AdamThirdPartInfoVo.getNew();
BeanUtils.copyProperties(param, thirdPartInfoVo);
thirdPartInfoVo.setCreatedAt(now);
thirdPartInfoVo.setUid(userInfoVo.getUid());
thirdPartInfoVo.setState(1);// 1-绑定
// s = System.currentTimeMillis();
// mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
toMqSqls.add(SqlMapping.get("adam_third_party.add")); toMqSqls.add(SqlMapping.get("adam_third_party.add"));
initThirdPartObjs.add(new Object[]{thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()}); initThirdPartObjs.add(new Object[]{thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt()});
s = System.currentTimeMillis(); s = System.currentTimeMillis();
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid); adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis(); s = System.currentTimeMillis();
queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UREGISTER.getKey(), queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UREGISTER.getKey(),
SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs, initThirdPartObjs) SqlMapping.gets(toMqSqls, initUserObjs, initUserInfoObjs, initThirdPartObjs)
); );
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s); log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
} else {
} else {// 手机号已注册
// 判断已注册用户是否绑定同平台的第三方账号
AdamThirdPartInfoVo thirdPartVo = adamRdmService.getThirdPartVoByUidPlatform(uid, param.getPlatform());
if (null == thirdPartVo) {// 未绑定
this.bindTpa(uid, param);
userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
} else if (thirdPartVo.getOpenId().equals(param.getOpenId())) {
userInfoVo = adamRdmService.getUserInfoVoByUid(uid); userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
} else {
return ResponseDto.failure(ErrorMapping.get("10007"));
} }
// RedisLockUtil.unlock(LOCK_KEY_UREGISTER + param.getOpenId() + param.getPlatform()); }
// } return ResponseDto.success(userInfoVo);
return userInfoVo;
} }
@Override @Override
...@@ -206,7 +197,8 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -206,7 +197,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis(); s = System.currentTimeMillis();
adamRdmService.delThirdPartVoListByUid(uid); // adamRdmService.delThirdPartVoListByUid(uid);
adamRdmService.addThirdPartVoListByUid(uid, adamRdmService.getThirdPartVoListByUid(uid), thirdPartInfoVo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis(); s = System.currentTimeMillis();
...@@ -226,22 +218,24 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -226,22 +218,24 @@ public class AdamUserServiceImpl implements IAdamUserService {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
AdamThirdPartInfoVo thirdPartInfoVo = AdamThirdPartInfoVo.getNew(); AdamThirdPartInfoVo bindThirdPartVo = AdamThirdPartInfoVo.getNew();
BeanUtils.copyProperties(param, thirdPartInfoVo); BeanUtils.copyProperties(param, bindThirdPartVo);
thirdPartInfoVo.setCreatedAt(now); bindThirdPartVo.setCreatedAt(now);
thirdPartInfoVo.setUid(bindUid); bindThirdPartVo.setUid(bindUid);
thirdPartInfoVo.setState(1);// 1-绑定 bindThirdPartVo.setState(1);// 1-绑定
// mongoTemplate.insert(thirdPartInfoVo, AdamThirdPartInfoVo.class.getSimpleName()); // mongoTemplate.insert(bindThirdPartVo, AdamThirdPartInfoVo.class.getSimpleName());
adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), bindUid); adamRdmService.setUidByPlatformOpenId(param.getPlatform(), param.getOpenId(), bindUid);
adamRdmService.delThirdPartVoListByUid(bindUid); // adamRdmService.delThirdPartVoListByUid(bindUid);
adamRdmService.rmvThirdPartVoListByUid(unBindUid, adamRdmService.getThirdPartVoListByUid(unBindUid), param.getPlatform());
adamRdmService.addThirdPartVoListByUid(bindUid, adamRdmService.getThirdPartVoListByUid(bindUid), bindThirdPartVo);
queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UCENTER.getKey(), queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UCENTER.getKey(),
SqlMapping.get( SqlMapping.get(
"adam_third_party.add", "adam_third_party.add",
thirdPartInfoVo.getUid(), thirdPartInfoVo.getOpenId(), thirdPartInfoVo.getAvatar(), thirdPartInfoVo.getNickname(), thirdPartInfoVo.getPlatform(), thirdPartInfoVo.getState(), thirdPartInfoVo.getCreatedAt() bindThirdPartVo.getUid(), bindThirdPartVo.getOpenId(), bindThirdPartVo.getAvatar(), bindThirdPartVo.getNickname(), bindThirdPartVo.getPlatform(), bindThirdPartVo.getState(), bindThirdPartVo.getCreatedAt()
) )
); );
} }
...@@ -272,18 +266,22 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -272,18 +266,22 @@ public class AdamUserServiceImpl implements IAdamUserService {
// adamRdmService.delUidByPlatformOpenId(platform, doc.getString("openId")); // adamRdmService.delUidByPlatformOpenId(platform, doc.getString("openId"));
// } // }
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
AdamThirdPartInfoVo unBindTpaVo = adamRdmService.getThirdPartVoByUidPlatform(uid, platform); List<AdamThirdPartInfoVo> vos = adamRdmService.getThirdPartVoListByUid(uid);
if (null != unBindTpaVo) { if (!CollectionUtils.isEmpty(vos)) {
adamRdmService.delUidByPlatformOpenId(platform, unBindTpaVo.getOpenId()); AdamThirdPartInfoVo unBindTpaVo = adamRdmService.getThirdPartVoByUidPlatform(vos, platform);
if (null != unBindTpaVo) {
adamRdmService.delUidByPlatformOpenId(platform, unBindTpaVo.getOpenId());
adamRdmService.rmvThirdPartVoListByUid(uid, vos, platform);
s = System.currentTimeMillis();
queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UCENTER.getKey(),
SqlMapping.get("adam_third_party.unbind", now, uid, platform)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
}
} }
adamRdmService.delThirdPartVoListByUid(uid);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
s = System.currentTimeMillis();
queueUtils.sendMsgByRedis(MQConst.AdamQueue.SQL_UCENTER.getKey(),
SqlMapping.get("adam_third_party.unbind", now, uid, platform)
);
log.debug("#MQ耗时:{}ms", System.currentTimeMillis() - s);
} }
@Override @Override
...@@ -336,8 +334,8 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -336,8 +334,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamUserMemberVo.class.getSimpleName()); // deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamUserMemberVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) { // if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_user_member.close")); toMqSqls.add(SqlMapping.get("adam_user_member.close"));
objsThirdPart.add(new Object[]{now, uid}); objsThirdPart.add(new Object[]{now, uid});
// } // }
/* ---------------------- 收货地址信息 */ /* ---------------------- 收货地址信息 */
...@@ -345,8 +343,8 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -345,8 +343,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamAddressesVo.class.getSimpleName()); // deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamAddressesVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) { // if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_addresses.close")); toMqSqls.add(SqlMapping.get("adam_addresses.close"));
objsAddresses.add(new Object[]{now, now, uid}); objsAddresses.add(new Object[]{now, now, uid});
// } // }
/* ---------------------- 入场人信息 */ /* ---------------------- 入场人信息 */
...@@ -354,8 +352,8 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -354,8 +352,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)).getQueryObject(), AdamEnters.class.getSimpleName()); // deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)).getQueryObject(), AdamEnters.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s); // log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) { // if (deleteResult.getDeletedCount() > 0) {
toMqSqls.add(SqlMapping.get("adam_enters.close")); toMqSqls.add(SqlMapping.get("adam_enters.close"));
objsAddresses.add(new Object[]{now, now, uid}); objsAddresses.add(new Object[]{now, now, uid});
// } // }
s = System.currentTimeMillis(); s = System.currentTimeMillis();
...@@ -370,10 +368,7 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -370,10 +368,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) // @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public AdamRealInfoVo identity(String uid, String name, String idCard) { public AdamRealInfoVo identity(String uid, String name, String idCard) {
AdamRealInfoVo vo = null; AdamRealInfoVo vo = null;
// if (RedisLockUtil.tryLock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid, 1, 3)) { if (!adamRdmService.isCertification(1, idCard, name)) {
// vo = adamRdmService.getRealInfoVoByUid(uid);
// if (null == vo) {
if (!adamRdmService.isCertification(1, idCard, name)) {
// String respStr = null; // String respStr = null;
// try { // try {
// LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>(); // LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
...@@ -394,39 +389,36 @@ public class AdamUserServiceImpl implements IAdamUserService { ...@@ -394,39 +389,36 @@ public class AdamUserServiceImpl implements IAdamUserService {
// ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102"); // ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
// throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage()); // throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
// } // }
String respStr = IdentityUtils.aliThird(name, idCard); String respStr = IdentityUtils.aliThird(name, idCard);
JsonNode respJNode = JsonUtils.fromJson(respStr, JsonNode.class); JsonNode respJNode = JsonUtils.fromJson(respStr, JsonNode.class);
if (null == respJNode || !"0".equals(respJNode.get("error_code").asText())) { if (null == respJNode || !"0".equals(respJNode.get("error_code").asText())) {
log.info("###实名认证失败[{}]", respStr); log.info("###实名认证失败[{}]", respStr);
ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102"); ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage()); throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
} }
adamRdmService.setCertification(1, idCard, name); adamRdmService.setCertification(1, idCard, name);
} }
AdamRealName realName = new AdamRealName(); AdamRealName realName = new AdamRealName();
realName.setRealNameId(IDGenerator.nextSnowId() + ""); realName.setRealNameId(IDGenerator.nextSnowId() + "");
realName.setUid(uid); realName.setUid(uid);
realName.setType(1); realName.setType(1);
realName.setName(name); realName.setName(name);
realName.setIdCard(idCard); realName.setIdCard(idCard);
realName.setState(1); realName.setState(1);
realName.setCreatedAt(LocalDateTime.now()); realName.setCreatedAt(LocalDateTime.now());
adamRealNameService.add(realName); adamRealNameService.add(realName);
vo = AdamRealInfoVo.getNew(); vo = AdamRealInfoVo.getNew();
vo.setUid(uid); vo.setUid(uid);
vo.setName(name); vo.setName(name);
vo.setIdCard(idCard); vo.setIdCard(idCard);
vo.setType(realName.getType()); vo.setType(realName.getType());
vo.setState(1); vo.setState(1);
long s = System.currentTimeMillis(); long s = System.currentTimeMillis();
adamRdmService.setRealInfoVoByUid(uid, vo); adamRdmService.setRealInfoVoByUid(uid, vo);
log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s); log.debug("#RDS耗时:{}ms", System.currentTimeMillis() - s);
// }
// RedisLockUtil.unlock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid);
// }
return vo; return vo;
} }
} }
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