记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
41116eaf
Commit
41116eaf
authored
Jul 31, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
去除MONGO,第三方登录逻辑修复;
parent
645912bd
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
117 additions
and
131 deletions
+117
-131
AdamUserServiceImpl.java
...uidnet/service/adam/service/impl/AdamUserServiceImpl.java
+117
-131
No files found.
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserServiceImpl.java
View file @
41116eaf
...
...
@@ -65,47 +65,39 @@ public class AdamUserServiceImpl implements IAdamUserService {
LocalDateTime
now
=
LocalDateTime
.
now
();
AdamUserInfoVo
userInfoVo
=
null
;
// if (RedisLockUtil.tryLock(LOCK_KEY_UREGISTER + mobile, 1, 5)) {
// String uid = adamRdmService.getUidByMobile(mobile);
// if (StringUtils.isEmpty(uid)) {
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setMobile
(
mobile
);
userInfoVo
.
setNickname
(
NknameUtil
.
randomNkname
());
userInfoVo
.
setIsComplete
(
0
);
userInfoVo
.
setState
(
1
);
userInfoVo
.
setQrCode
(
"lN"
.
concat
(
userInfoVo
.
getUid
()).
concat
(
RandomStringUtils
.
randomAlphanumeric
(
5
).
toUpperCase
()));
userInfoVo
.
setCreateAt
(
now
);
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setMobile
(
mobile
);
userInfoVo
.
setNickname
(
NknameUtil
.
randomNkname
());
userInfoVo
.
setIsComplete
(
0
);
userInfoVo
.
setState
(
1
);
userInfoVo
.
setQrCode
(
"lN"
.
concat
(
userInfoVo
.
getUid
()).
concat
(
RandomStringUtils
.
randomAlphanumeric
(
5
).
toUpperCase
()));
userInfoVo
.
setCreateAt
(
now
);
// long s = System.currentTimeMillis();
// mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
long
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setUidByMobile
(
mobile
,
userInfoVo
.
getUid
());
adamRdmService
.
setUserInfoVoByUid
(
userInfoVo
.
getUid
(),
userInfoVo
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
long
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setUidByMobile
(
mobile
,
userInfoVo
.
getUid
());
adamRdmService
.
setUserInfoVoByUid
(
userInfoVo
.
getUid
(),
userInfoVo
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
initUserObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initUserInfoObjs
=
CollectionUtil
.
linkedListObjectArr
();
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
initUserObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initUserInfoObjs
=
CollectionUtil
.
linkedListObjectArr
();
s
=
System
.
currentTimeMillis
();
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user.add"
));
initUserObjs
.
add
(
new
Object
[]{
userInfoVo
.
getUid
(),
userInfoVo
.
getMobile
(),
userInfoVo
.
getState
(),
0
,
now
});
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_info.add"
));
initUserInfoObjs
.
add
(
new
Object
[]{
userInfoVo
.
getUid
(),
userInfoVo
.
getNickname
(),
null
,
userInfoVo
.
getQrCode
()});
log
.
debug
(
"#SQL.GET耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
queueUtils
.
sendMsgByRedis
(
MQConst
.
AdamQueue
.
SQL_UREGISTER
.
getKey
(),
SqlMapping
.
gets
(
toMqSqls
,
initUserObjs
,
initUserInfoObjs
)
);
log
.
debug
(
"#MQ耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
// } else {
// userInfoVo = adamRdmService.getUserInfoVoByUid(uid);
// }
// RedisLockUtil.unlock(LOCK_KEY_UREGISTER + mobile);
// }
s
=
System
.
currentTimeMillis
();
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user.add"
));
initUserObjs
.
add
(
new
Object
[]{
userInfoVo
.
getUid
(),
userInfoVo
.
getMobile
(),
userInfoVo
.
getState
(),
0
,
now
});
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_info.add"
));
initUserInfoObjs
.
add
(
new
Object
[]{
userInfoVo
.
getUid
(),
userInfoVo
.
getNickname
(),
null
,
userInfoVo
.
getQrCode
()});
log
.
debug
(
"#SQL.GET耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
queueUtils
.
sendMsgByRedis
(
MQConst
.
AdamQueue
.
SQL_UREGISTER
.
getKey
(),
SqlMapping
.
gets
(
toMqSqls
,
initUserObjs
,
initUserInfoObjs
)
);
log
.
debug
(
"#MQ耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
userInfoVo
;
}
...
...
@@ -115,73 +107,73 @@ public class AdamUserServiceImpl implements IAdamUserService {
LocalDateTime
now
=
LocalDateTime
.
now
();
AdamUserInfoVo
userInfoVo
=
null
;
long
s
=
System
.
currentTimeMillis
();
String
uid
=
adamRdmService
.
getUidByMobile
(
param
.
getMobile
());
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
initUserObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initUserInfoObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initThirdPartObjs
=
CollectionUtil
.
linkedListObjectArr
();
if
(
StringUtils
.
isEmpty
(
uid
))
{
// 手机号未注册
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setMobile
(
param
.
getMobile
());
userInfoVo
.
setNickname
(
param
.
getNickname
());
userInfoVo
.
setAvatar
(
param
.
getAvatar
());
userInfoVo
.
setIsComplete
(
0
);
userInfoVo
.
setState
(
1
);
userInfoVo
.
setQrCode
(
"lN"
.
concat
(
userInfoVo
.
getUid
()).
concat
(
RandomStringUtils
.
randomAlphanumeric
(
5
).
toUpperCase
()));
userInfoVo
.
setCreateAt
(
now
);
long
s
=
System
.
currentTimeMillis
();
String
uid
=
adamRdmService
.
getUidByMobile
(
param
.
getMobile
());
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
LinkedList
<
String
>
toMqSqls
=
CollectionUtil
.
linkedListString
();
LinkedList
<
Object
[]>
initUserObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initUserInfoObjs
=
CollectionUtil
.
linkedListObjectArr
(),
initThirdPartObjs
=
CollectionUtil
.
linkedListObjectArr
();
if
(
StringUtils
.
isEmpty
(
uid
))
{
// 手机号未注册
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setMobile
(
param
.
getMobile
());
userInfoVo
.
setNickname
(
param
.
getNickname
());
userInfoVo
.
setAvatar
(
param
.
getAvatar
());
userInfoVo
.
setIsComplete
(
0
);
userInfoVo
.
setState
(
1
);
userInfoVo
.
setQrCode
(
"lN"
.
concat
(
userInfoVo
.
getUid
()).
concat
(
RandomStringUtils
.
randomAlphanumeric
(
5
).
toUpperCase
()));
userInfoVo
.
setCreateAt
(
now
);
// s = System.currentTimeMillis();
// mongoTemplate.insert(userInfoVo, AdamUserInfoVo.class.getSimpleName());
// 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
()});
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-绑定
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"
));
initThirdPartObjs
.
add
(
new
Object
[]{
thirdPartInfoVo
.
getUid
(),
thirdPartInfoVo
.
getOpenId
(),
thirdPartInfoVo
.
getAvatar
(),
thirdPartInfoVo
.
getNickname
(),
thirdPartInfoVo
.
getPlatform
(),
thirdPartInfoVo
.
getState
(),
thirdPartInfoVo
.
getCreatedAt
()});
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setUidByPlatformOpenId
(
param
.
getPlatform
(),
param
.
getOpenId
(),
uid
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
s
=
System
.
currentTimeMillis
();
queueUtils
.
sendMsgByRedis
(
MQConst
.
AdamQueue
.
SQL_UREGISTER
.
getKey
(),
SqlMapping
.
gets
(
toMqSqls
,
initUserObjs
,
initUserInfoObjs
,
initThirdPartObjs
)
);
log
.
debug
(
"#MQ耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
}
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
);
}
else
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"10007"
));
}
}
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
()});
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setUidByPlatformOpenId
(
param
.
getPlatform
(),
param
.
getOpenId
(),
uid
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
s
=
System
.
currentTimeMillis
();
queueUtils
.
sendMsgByRedis
(
MQConst
.
AdamQueue
.
SQL_UREGISTER
.
getKey
(),
SqlMapping
.
gets
(
toMqSqls
,
initUserObjs
,
initUserInfoObjs
,
initThirdPartObjs
)
);
log
.
debug
(
"#MQ耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
}
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
);
}
else
{
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"10007"
));
}
}
return
ResponseDto
.
success
(
userInfoVo
);
}
...
...
@@ -342,8 +334,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamUserMemberVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) {
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.close"
));
objsThirdPart
.
add
(
new
Object
[]{
now
,
uid
});
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_user_member.close"
));
objsThirdPart
.
add
(
new
Object
[]{
now
,
uid
});
// }
/* ---------------------- 收货地址信息 */
...
...
@@ -351,8 +343,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)), AdamAddressesVo.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) {
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_addresses.close"
));
objsAddresses
.
add
(
new
Object
[]{
now
,
now
,
uid
});
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_addresses.close"
));
objsAddresses
.
add
(
new
Object
[]{
now
,
now
,
uid
});
// }
/* ---------------------- 入场人信息 */
...
...
@@ -360,8 +352,8 @@ public class AdamUserServiceImpl implements IAdamUserService {
// deleteResult = mongoTemplate.remove(Query.query(Criteria.where("uid").is(uid)).getQueryObject(), AdamEnters.class.getSimpleName());
// log.debug("#MDB耗时:{}ms", System.currentTimeMillis() - s);
// if (deleteResult.getDeletedCount() > 0) {
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_enters.close"
));
objsAddresses
.
add
(
new
Object
[]{
now
,
now
,
uid
});
toMqSqls
.
add
(
SqlMapping
.
get
(
"adam_enters.close"
));
objsAddresses
.
add
(
new
Object
[]{
now
,
now
,
uid
});
// }
s
=
System
.
currentTimeMillis
();
...
...
@@ -376,10 +368,7 @@ public class AdamUserServiceImpl implements IAdamUserService {
// @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public
AdamRealInfoVo
identity
(
String
uid
,
String
name
,
String
idCard
)
{
AdamRealInfoVo
vo
=
null
;
// if (RedisLockUtil.tryLock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid, 1, 3)) {
// vo = adamRdmService.getRealInfoVoByUid(uid);
// if (null == vo) {
if
(!
adamRdmService
.
isCertification
(
1
,
idCard
,
name
))
{
if
(!
adamRdmService
.
isCertification
(
1
,
idCard
,
name
))
{
// String respStr = null;
// try {
// LinkedMultiValueMap<String, String> paramsMap = new LinkedMultiValueMap<>();
...
...
@@ -400,39 +389,36 @@ public class AdamUserServiceImpl implements IAdamUserService {
// ErrorMapping.ErrorMessage errorMessage = ErrorMapping.get("10102");
// throw new LiquidnetServiceException(errorMessage.getCode(), errorMessage.getMessage());
// }
String
respStr
=
IdentityUtils
.
aliThird
(
name
,
idCard
);
JsonNode
respJNode
=
JsonUtils
.
fromJson
(
respStr
,
JsonNode
.
class
);
if
(
null
==
respJNode
||
!
"0"
.
equals
(
respJNode
.
get
(
"error_code"
).
asText
()))
{
log
.
info
(
"###实名认证失败[{}]"
,
respStr
);
ErrorMapping
.
ErrorMessage
errorMessage
=
ErrorMapping
.
get
(
"10102"
);
throw
new
LiquidnetServiceException
(
errorMessage
.
getCode
(),
errorMessage
.
getMessage
());
}
adamRdmService
.
setCertification
(
1
,
idCard
,
name
);
}
AdamRealName
realName
=
new
AdamRealName
();
realName
.
setRealNameId
(
IDGenerator
.
nextSnowId
()
+
""
);
realName
.
setUid
(
uid
);
realName
.
setType
(
1
);
realName
.
setName
(
name
);
realName
.
setIdCard
(
idCard
);
realName
.
setState
(
1
);
realName
.
setCreatedAt
(
LocalDateTime
.
now
());
adamRealNameService
.
add
(
realName
);
vo
=
AdamRealInfoVo
.
getNew
();
vo
.
setUid
(
uid
);
vo
.
setName
(
name
);
vo
.
setIdCard
(
idCard
);
vo
.
setType
(
realName
.
getType
());
vo
.
setState
(
1
);
long
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setRealInfoVoByUid
(
uid
,
vo
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
// }
// RedisLockUtil.unlock(AdamRedisConst.LOCK_KEY_UIDENTITY + uid);
// }
String
respStr
=
IdentityUtils
.
aliThird
(
name
,
idCard
);
JsonNode
respJNode
=
JsonUtils
.
fromJson
(
respStr
,
JsonNode
.
class
);
if
(
null
==
respJNode
||
!
"0"
.
equals
(
respJNode
.
get
(
"error_code"
).
asText
()))
{
log
.
info
(
"###实名认证失败[{}]"
,
respStr
);
ErrorMapping
.
ErrorMessage
errorMessage
=
ErrorMapping
.
get
(
"10102"
);
throw
new
LiquidnetServiceException
(
errorMessage
.
getCode
(),
errorMessage
.
getMessage
());
}
adamRdmService
.
setCertification
(
1
,
idCard
,
name
);
}
AdamRealName
realName
=
new
AdamRealName
();
realName
.
setRealNameId
(
IDGenerator
.
nextSnowId
()
+
""
);
realName
.
setUid
(
uid
);
realName
.
setType
(
1
);
realName
.
setName
(
name
);
realName
.
setIdCard
(
idCard
);
realName
.
setState
(
1
);
realName
.
setCreatedAt
(
LocalDateTime
.
now
());
adamRealNameService
.
add
(
realName
);
vo
=
AdamRealInfoVo
.
getNew
();
vo
.
setUid
(
uid
);
vo
.
setName
(
name
);
vo
.
setIdCard
(
idCard
);
vo
.
setType
(
realName
.
getType
());
vo
.
setState
(
1
);
long
s
=
System
.
currentTimeMillis
();
adamRdmService
.
setRealInfoVoByUid
(
uid
,
vo
);
log
.
debug
(
"#RDS耗时:{}ms"
,
System
.
currentTimeMillis
()
-
s
);
return
vo
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment