记得上下班打卡 | 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
e92ced9b
Commit
e92ced9b
authored
Jun 13, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:php.api;
parent
1dd12941
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
92 additions
and
37 deletions
+92
-37
IAdamUserService.java
.../com/liquidnet/service/adam/service/IAdamUserService.java
+1
-7
HttpUtil.java
...c/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
+30
-0
AdamLoginController.java
...iquidnet/service/adam/controller/AdamLoginController.java
+28
-16
AdamUserServiceImpl.java
...uidnet/service/adam/service/impl/AdamUserServiceImpl.java
+32
-13
errors.properties
...et-service-adam-impl/src/main/resources/errors.properties
+1
-1
No files found.
liquidnet-bus-api/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamUserService.java
View file @
e92ced9b
...
...
@@ -17,13 +17,7 @@ import java.util.List;
* @author liquidnet
* @since 2021-05-10
*/
public
interface
IAdamUserService
extends
IService
<
AdamUser
>
{
// String queryUidByRedis(String mobile);
//
// String queryUidByRedis(String openId, String platform);
// AdamUserInfoVo queryByUid(String uid);
public
interface
IAdamUserService
{
/**
* 手机号注册
...
...
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
View file @
e92ced9b
...
...
@@ -5,6 +5,11 @@ import org.springframework.util.LinkedMultiValueMap;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.web.client.RestTemplate
;
import
java.io.UnsupportedEncodingException
;
import
java.net.URLDecoder
;
import
java.util.List
;
import
java.util.Map
;
public
class
HttpUtil
{
/**
* get请求
...
...
@@ -140,4 +145,29 @@ public class HttpUtil {
ResponseEntity
<
String
>
response
=
client
.
exchange
(
url
,
method
,
httpEntity
,
String
.
class
);
return
response
.
getBody
();
}
private
static
final
String
PHP_API_KEY
=
"R7tXY9smPQPG9Ku5yI0u6sfnlckmk04V"
;
public
static
String
postToPhpApi
(
String
url
,
MultiValueMap
<
String
,
String
>
params
)
{
params
.
add
(
"sign"
,
processForPhpApi
(
params
).
concat
(
"&key="
).
concat
(
PHP_API_KEY
).
toUpperCase
());
return
post
(
url
,
params
,
null
);
}
private
static
String
processForPhpApi
(
MultiValueMap
<
String
,
String
>
map
)
{
StringBuilder
sb
=
new
StringBuilder
();
for
(
Map
.
Entry
<
String
,
List
<
String
>>
entry
:
map
.
entrySet
())
{
sb
.
append
(
entry
.
getKey
()).
append
(
"="
).
append
(
entry
.
getValue
().
get
(
0
)).
append
(
"&"
);
}
String
targetStr
=
sb
.
substring
(
0
,
sb
.
length
()
-
1
);
try
{
targetStr
=
URLDecoder
.
decode
(
targetStr
,
"UTF-8"
);
}
catch
(
UnsupportedEncodingException
e
)
{
e
.
printStackTrace
();
}
targetStr
=
targetStr
.
replace
(
"%3D"
,
"="
).
replace
(
"%26"
,
"&"
);
return
targetStr
;
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamLoginController.java
View file @
e92ced9b
...
...
@@ -25,6 +25,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.core.env.Environment
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.DigestUtils
;
import
org.springframework.util.LinkedMultiValueMap
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -67,6 +68,11 @@ public class AdamLoginController {
@Autowired
IAdamRdmService
adamRdmService
;
private
static
final
String
PHP_API_SMS_CODE_SEND
=
"https://service.zhengzai.tv/smsCode"
;
private
static
final
String
PHP_API_SMS_CODE_VALID
=
"https://service.zhengzai.tv/smsValidation"
;
/*@ApiOperationSupport(order = 1)
@ApiOperation(value = "手机号密码登录")
@ApiImplicitParams({
...
...
@@ -96,18 +102,23 @@ public class AdamLoginController {
LinkedMultiValueMap
<
String
,
String
>
headersMap
=
new
LinkedMultiValueMap
<>();
headersMap
.
add
(
"token"
,
null
);
String
respStr
=
null
;
try
{
// TODO: 2021/5/12
String
respStr
=
HttpUtil
.
post
(
"https://service.zhengzai.tv/smsCode"
,
paramsMap
,
headersMap
);
log
.
info
(
"###PHP.API[{}].RESP[{}]"
,
"https://service.zhengzai.tv/smsCode"
,
respStr
);
respStr
=
HttpUtil
.
post
(
PHP_API_SMS_CODE_SEND
,
paramsMap
,
headersMap
);
log
.
debug
(
"###PHP.API[{}].RESP[{}]"
,
PHP_API_SMS_CODE_SEND
,
respStr
);
//
Map respMap = JsonUtils.fromJson(respStr, Map.class);
Map
respMap
=
JsonUtils
.
fromJson
(
respStr
,
Map
.
class
);
if
(!
CollectionUtils
.
isEmpty
(
respMap
)
&&
StringUtils
.
equalsIgnoreCase
(
"OK"
,
(
String
)
respMap
.
get
(
"message"
)))
{
return
ResponseDto
.
success
();
}
else
{
log
.
warn
(
"PHP.API验证码发送失败[mobile:{},respStr:{}]"
,
mobile
,
respStr
);
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"10001"
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
"
验证码发送异常[mobile:{}]"
,
mobile
,
e
);
log
.
error
(
"
PHP.API验证码发送异常[mobile:{},respStr:{}]"
,
mobile
,
respStr
,
e
);
return
ResponseDto
.
failure
(
ErrorMapping
.
get
(
"10001"
));
}
return
ResponseDto
.
success
();
}
@ApiOperationSupport
(
order
=
3
)
...
...
@@ -229,26 +240,27 @@ public class AdamLoginController {
/* ---------------------------- Internal Method ---------------------------- */
private
boolean
checkSmsCode
(
String
mobile
,
String
code
)
{
if
(
Arrays
.
asList
(
"dev"
,
"test"
).
contains
(
env
.
getProperty
(
"spring.profiles.active"
)))
{
if
(
Arrays
.
asList
(
"dev"
).
contains
(
env
.
getProperty
(
"spring.profiles.active"
)))
{
return
"111111"
.
equals
(
code
);
}
LinkedMultiValueMap
<
String
,
String
>
paramsMap
=
new
LinkedMultiValueMap
<>();
paramsMap
.
add
(
"mobile"
,
mobile
);
paramsMap
.
add
(
"code"
,
code
);
LinkedMultiValueMap
<
String
,
String
>
headersMap
=
new
LinkedMultiValueMap
<>();
headersMap
.
add
(
"token"
,
null
);
String
respStr
=
null
;
try
{
// TODO: 2021/5/12
String
respStr
=
HttpUtil
.
get
(
"https://service.zhengzai.tv/smsValidation"
,
paramsMap
,
headersMap
);
log
.
info
(
"###PHP.API.RESP:{}"
,
respStr
);
respStr
=
HttpUtil
.
postToPhpApi
(
PHP_API_SMS_CODE_VALID
,
paramsMap
);
log
.
debug
(
"###PHP.API.RESP:{}"
,
respStr
);
Map
respMap
=
JsonUtils
.
fromJson
(
respStr
,
Map
.
class
);
return
StringUtils
.
equalsIgnoreCase
(
"OK"
,
(
String
)
respMap
.
get
(
"message"
));
if
(!
CollectionUtils
.
isEmpty
(
respMap
)
&&
StringUtils
.
equalsIgnoreCase
(
"OK"
,
(
String
)
respMap
.
get
(
"message"
)))
{
return
true
;
}
else
{
log
.
warn
(
"PHP.API验证码验证失败[mobile:{},code:{},respStr:{}]"
,
mobile
,
code
,
respStr
);
return
false
;
}
}
catch
(
Exception
e
)
{
log
.
error
(
"
验证码验证异常[mobile:{},code:{}]"
,
mobile
,
code
,
e
);
log
.
error
(
"
PHP.API验证码验证异常[mobile:{},code:{},respStr:{}]"
,
mobile
,
code
,
respStr
,
e
);
return
false
;
}
}
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserServiceImpl.java
View file @
e92ced9b
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.
baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.
liquidnet.common.exception.LiquidnetServiceException
;
import
com.liquidnet.common.mq.constant.MQConst
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.HttpUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.adam.dto.AdamThirdPartParam
;
import
com.liquidnet.service.adam.dto.vo.*
;
import
com.liquidnet.service.adam.entity.AdamAddresses
;
import
com.liquidnet.service.adam.entity.AdamEnters
;
import
com.liquidnet.service.adam.entity.AdamRealName
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.liquidnet.service.adam.mapper.AdamUserMapper
;
import
com.liquidnet.service.adam.service.*
;
import
com.liquidnet.service.base.ErrorMapping
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.mongodb.BasicDBObject
;
import
com.mongodb.client.model.FindOneAndUpdateOptions
;
import
com.mongodb.client.model.ReturnDocument
;
import
com.mongodb.client.result.DeleteResult
;
import
com.mongodb.client.result.UpdateResult
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.RandomStringUtils
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -27,18 +24,18 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.convert.MongoConverter
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.LinkedMultiValueMap
;
import
java.time.LocalDateTime
;
import
java.util.Arrays
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.Map
;
/**
* <p>
...
...
@@ -50,9 +47,7 @@ import java.util.List;
*/
@Slf4j
@Service
public
class
AdamUserServiceImpl
extends
ServiceImpl
<
AdamUserMapper
,
AdamUser
>
implements
IAdamUserService
{
@Autowired
MongoConverter
mongoConverter
;
public
class
AdamUserServiceImpl
implements
IAdamUserService
{
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
...
...
@@ -66,6 +61,10 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
@Autowired
IAdamRdmService
adamRdmService
;
private
static
final
String
PHP_API_REAL_NAME
=
"http://testservice.zhengzai.tv/IdCardCheckVerification"
;
// @Override
// public AdamUserInfoVo queryByUid(String uid) {
// AdamUserInfoVo userInfoVo = (AdamUserInfoVo) redisUtil.hget(AdamRedisConst.INFO_USER, uid);
...
...
@@ -231,7 +230,7 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
Document
doc
=
mongoTemplate
.
getCollection
(
AdamThirdPartInfoVo
.
class
.
getSimpleName
()).
findOneAndUpdate
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
).
and
(
"platform"
).
is
(
platform
).
and
(
"state"
).
is
(
1
)).
getQueryObject
(),
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
unBindThirdPartInfoVo
)),
new
Document
(
"$set"
,
Document
.
parse
(
JsonUtils
.
toJson
(
unBindThirdPartInfoVo
)
)),
new
FindOneAndUpdateOptions
().
returnDocument
(
ReturnDocument
.
AFTER
)
);
...
...
@@ -312,10 +311,30 @@ public class AdamUserServiceImpl extends ServiceImpl<AdamUserMapper, AdamUser> i
}
@Override
@Transactional
(
propagation
=
Propagation
.
REQUIRED
,
rollbackFor
=
Exception
.
class
)
//
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public
AdamRealInfoVo
identity
(
String
uid
,
String
name
,
String
idCard
)
{
// TODO: 2021/5/18 调用第三方认证服务
LinkedMultiValueMap
<
String
,
String
>
paramsMap
=
new
LinkedMultiValueMap
<>();
paramsMap
.
add
(
"realName"
,
name
);
paramsMap
.
add
(
"cardNo"
,
idCard
);
String
respStr
=
null
;
try
{
respStr
=
HttpUtil
.
postToPhpApi
(
PHP_API_REAL_NAME
,
paramsMap
);
log
.
debug
(
"###PHP.API.RESP:{}"
,
respStr
);
Map
respMap
=
JsonUtils
.
fromJson
(
respStr
,
Map
.
class
);
if
(
CollectionUtils
.
isEmpty
(
respMap
)
||
!
StringUtils
.
equalsIgnoreCase
(
"OK"
,
(
String
)
respMap
.
get
(
"message"
)))
{
log
.
warn
(
"PHP.API实名认证失败[uid:{},name:{},idCard:{},respStr:{}]"
,
uid
,
name
,
idCard
,
respStr
);
ErrorMapping
.
ErrorMessage
errorMessage
=
ErrorMapping
.
get
(
"10102"
);
throw
new
LiquidnetServiceException
(
errorMessage
.
getCode
(),
errorMessage
.
getMessage
());
}
}
catch
(
Exception
e
)
{
log
.
error
(
"PHP.API实名认证异常[uid:{},name:{},idCard:{},respStr:{}]"
,
uid
,
name
,
idCard
,
respStr
,
e
);
ErrorMapping
.
ErrorMessage
errorMessage
=
ErrorMapping
.
get
(
"10102"
);
throw
new
LiquidnetServiceException
(
errorMessage
.
getCode
(),
errorMessage
.
getMessage
());
}
AdamRealName
realName
=
new
AdamRealName
();
realName
.
setRealNameId
(
IDGenerator
.
nextSnowId
()
+
""
);
realName
.
setUid
(
uid
);
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/errors.properties
View file @
e92ced9b
...
...
@@ -24,7 +24,7 @@
10101
=
姓名或身份证件号无效
10102
=
10102
=
实名认证失败
10103
=
10104
=
10105
=
入场人不存在
...
...
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