Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
asset-distribution
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
data-spider
asset-distribution
Commits
0b913ddc
Commit
0b913ddc
authored
Mar 24, 2020
by
郑建
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
你我贷
parent
2137f928
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
116 additions
and
18 deletions
+116
-18
HttpClientConfig.java
...roup/asset/distribution/config/http/HttpClientConfig.java
+4
-2
INiwodaiAssetService.java
...et/distribution/service/niwodai/INiwodaiAssetService.java
+7
-3
INiwodaiService.java
...p/asset/distribution/service/niwodai/INiwodaiService.java
+3
-4
NiwodaiAssetServiceImpl.java
...ibution/service/niwodai/impl/NiwodaiAssetServiceImpl.java
+37
-8
NiwodaiServiceImpl.java
...distribution/service/niwodai/impl/NiwodaiServiceImpl.java
+16
-0
NiwodaiAccessTokenResponseVO.java
...tion/service/niwodai/vo/NiwodaiAccessTokenResponseVO.java
+3
-1
NiwodaiIncomingResultRequestVO.java
...on/service/niwodai/vo/NiwodaiIncomingResultRequestVO.java
+10
-0
NiwodaiIncomingResultResponseVO.java
...n/service/niwodai/vo/NiwodaiIncomingResultResponseVO.java
+36
-0
No files found.
src/main/java/com/quantgroup/asset/distribution/config/http/HttpClientConfig.java
View file @
0b913ddc
...
@@ -20,6 +20,7 @@ import org.apache.http.protocol.HttpContext;
...
@@ -20,6 +20,7 @@ import org.apache.http.protocol.HttpContext;
import
org.apache.http.ssl.SSLContexts
;
import
org.apache.http.ssl.SSLContexts
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.util.ClassUtils
;
import
javax.net.ssl.*
;
import
javax.net.ssl.*
;
import
java.io.File
;
import
java.io.File
;
...
@@ -124,10 +125,11 @@ public class HttpClientConfig {
...
@@ -124,10 +125,11 @@ public class HttpClientConfig {
return
null
;
return
null
;
}
}
};
};
String
classesPath
=
ClassUtils
.
getDefaultClassLoader
().
getResource
(
""
).
getPath
();
KeyStore
keyStore
=
KeyStore
.
getInstance
(
"PKCS12"
);
KeyStore
keyStore
=
KeyStore
.
getInstance
(
"PKCS12"
);
keyStore
.
load
(
new
FileInputStream
(
new
File
(
"F:\\9_QFNEW\\data-export-platform\\src\\main\\resources\\niwodai\\
qg-keystore.jks"
)),
"password"
.
toCharArray
());
keyStore
.
load
(
new
FileInputStream
(
new
File
(
classesPath
+
"/niwodai/"
+
"
qg-keystore.jks"
)),
"password"
.
toCharArray
());
SSLContext
sslcontext
=
SSLContexts
.
custom
()
SSLContext
sslcontext
=
SSLContexts
.
custom
()
.
loadTrustMaterial
(
new
File
(
"F:\\9_QFNEW\\data-export-platform\\src\\main\\resources\\niwodai\\
qg-truststore.jks"
),
"password"
.
toCharArray
(),
new
TrustSelfSignedStrategy
())
.
loadTrustMaterial
(
new
File
(
classesPath
+
"/niwodai/"
+
"
qg-truststore.jks"
),
"password"
.
toCharArray
(),
new
TrustSelfSignedStrategy
())
.
loadKeyMaterial
(
keyStore
,
"password"
.
toCharArray
())
.
loadKeyMaterial
(
keyStore
,
"password"
.
toCharArray
())
.
build
();
.
build
();
SSLConnectionSocketFactory
sslConnectionSocketFactory
=
new
SSLConnectionSocketFactory
(
SSLConnectionSocketFactory
sslConnectionSocketFactory
=
new
SSLConnectionSocketFactory
(
...
...
src/main/java/com/quantgroup/asset/distribution/service/niwodai/INiwodaiAssetService.java
View file @
0b913ddc
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
;
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.Niwodai
Costant
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.Niwodai
DataImportCheckResponseVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiIncomingResponseVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiIncomingResponseVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiIncomingResultResponseVO
;
import
java.util.Map
;
import
java.util.Map
;
public
interface
INiwodaiAssetService
{
public
interface
INiwodaiAssetService
{
NiwodaiIncomingResponseVO
incoming
(
String
uuid
,
String
orderId
,
String
amount
,
Integer
term
,
NiwodaiIncomingResultResponseVO
incomingResult
(
String
orderId
);
NiwodaiCostant
.
MnoData
mnoData
);
NiwodaiDataImportCheckResponseVO
dataCheck
(
String
uuid
);
NiwodaiIncomingResponseVO
incoming
(
String
uuid
,
String
orderId
,
String
amount
,
Integer
term
);
Map
<
String
,
Object
>
queryUserBasic2Info
(
String
userId
,
String
phoneNo
,
boolean
isQuery
);
Map
<
String
,
Object
>
queryUserBasic2Info
(
String
userId
,
String
phoneNo
,
boolean
isQuery
);
}
}
src/main/java/com/quantgroup/asset/distribution/service/niwodai/INiwodaiService.java
View file @
0b913ddc
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
;
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiDataImportCheckRequestVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.*
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiDataImportCheckResponseVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiIncomingRequestVO
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.NiwodaiIncomingResponseVO
;
public
interface
INiwodaiService
{
public
interface
INiwodaiService
{
...
@@ -12,4 +9,6 @@ public interface INiwodaiService {
...
@@ -12,4 +9,6 @@ public interface INiwodaiService {
NiwodaiIncomingResponseVO
incoming
(
NiwodaiIncomingRequestVO
niwodaiIncomingRequestVO
);
NiwodaiIncomingResponseVO
incoming
(
NiwodaiIncomingRequestVO
niwodaiIncomingRequestVO
);
NiwodaiIncomingResultResponseVO
incoingResult
(
NiwodaiIncomingResultRequestVO
requestVO
);
}
}
src/main/java/com/quantgroup/asset/distribution/service/niwodai/impl/NiwodaiAssetServiceImpl.java
View file @
0b913ddc
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
.
impl
;
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
.
impl
;
import
cn.quantgroup.motan.bean.UserInfo
;
import
cn.quantgroup.motan.bean.UserInfo
;
import
cn.quantgroup.motan.enums.EducationEnum
;
import
cn.quantgroup.motan.enums.IncomeRangeEnum
;
import
cn.quantgroup.motan.vo.UserSysResult
;
import
cn.quantgroup.motan.vo.UserSysResult
;
import
cn.quantgroup.user.IUserSdkService
;
import
cn.quantgroup.user.IUserSdkService
;
import
cn.quantgroup.user.UserSdkServiceFactory
;
import
cn.quantgroup.user.UserSdkServiceFactory
;
import
com.alibaba.druid.sql.visitor.functions.If
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.gson.Gson
;
import
com.google.gson.Gson
;
...
@@ -19,7 +16,6 @@ import com.quantgroup.asset.distribution.service.httpclient.IHttpService;
...
@@ -19,7 +16,6 @@ import com.quantgroup.asset.distribution.service.httpclient.IHttpService;
import
com.quantgroup.asset.distribution.service.niwodai.INiwodaiAssetService
;
import
com.quantgroup.asset.distribution.service.niwodai.INiwodaiAssetService
;
import
com.quantgroup.asset.distribution.service.niwodai.INiwodaiService
;
import
com.quantgroup.asset.distribution.service.niwodai.INiwodaiService
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.*
;
import
com.quantgroup.asset.distribution.service.niwodai.vo.*
;
import
com.quantgroup.asset.distribution.util.AddressResolutionUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.commons.lang3.StringUtils
;
...
@@ -30,7 +26,6 @@ import org.springframework.beans.factory.annotation.Value;
...
@@ -30,7 +26,6 @@ import org.springframework.beans.factory.annotation.Value;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.PostConstruct
;
import
javax.annotation.PostConstruct
;
import
javax.annotation.Resource
;
import
java.lang.reflect.Field
;
import
java.lang.reflect.Field
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.HashMap
;
...
@@ -62,14 +57,48 @@ public class NiwodaiAssetServiceImpl implements INiwodaiAssetService {
...
@@ -62,14 +57,48 @@ public class NiwodaiAssetServiceImpl implements INiwodaiAssetService {
}
}
@Override
@Override
public
NiwodaiIncomingResponseVO
incoming
(
String
uuid
,
String
orderId
,
String
amount
,
Integer
term
,
public
NiwodaiIncomingResultResponseVO
incomingResult
(
String
orderId
){
NiwodaiCostant
.
MnoData
mnoData
)
{
NiwodaiIncomingResultRequestVO
vo
=
new
NiwodaiIncomingResultRequestVO
();
vo
.
setOrderId
(
orderId
);
return
niwodaiService
.
incoingResult
(
vo
);
}
@Override
public
NiwodaiDataImportCheckResponseVO
dataCheck
(
String
uuid
){
NiwodaiDataImportCheckRequestVO
requestVO
=
new
NiwodaiDataImportCheckRequestVO
();
requestVO
.
setExternalUserId
(
uuid
);
UserSysResult
<
UserInfo
>
userInfoByUuid
=
userSdkService
.
findUserInfoByUuid
(
uuid
);
if
(!
userInfoByUuid
.
isSuccess
()){
log
.
error
(
"准入检查获取用户中心信息失败 uuid : {}"
,
uuid
);
throw
new
QGException
(
"获取用户中心信息失败"
,
QGExceptionType
.
COMMON_ILLEGAL_PARAM
);
}
requestVO
.
setPhone
(
userInfoByUuid
.
getData
().
getPhoneNo
());
List
<
OCRIdCardRow
>
list
=
OCRIdCardDataService
.
get
(
uuid
);
List
<
OCRIdCardRow
>
list
=
OCRIdCardDataService
.
get
(
uuid
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
if
(
CollectionUtils
.
isEmpty
(
list
))
{
log
.
error
(
"准入检查获取用户OCR信息失败 uuid : {}"
,
uuid
);
throw
new
QGException
(
"没有相关用户信息"
,
QGExceptionType
.
COMMON_ILLEGAL_PARAM
);
}
OCRIdCardRow
ocrIdCardRow
=
list
.
get
(
0
);
IdCardA
idCardFront
=
JSON
.
parseObject
(
ocrIdCardRow
.
getIdCardContentA
(),
IdCardA
.
class
);
requestVO
.
setIdcardNumber
(
idCardFront
.
getCitizen_id
());
requestVO
.
setRealName
(
idCardFront
.
getName
());
return
niwodaiService
.
dataImportCheck
(
requestVO
);
}
@Override
public
NiwodaiIncomingResponseVO
incoming
(
String
uuid
,
String
orderId
,
String
amount
,
Integer
term
)
{
List
<
OCRIdCardRow
>
list
=
OCRIdCardDataService
.
get
(
uuid
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
log
.
error
(
"进件申请获取用户OCR信息失败 uuid : {}"
,
uuid
);
throw
new
QGException
(
"没有相关用户信息"
,
QGExceptionType
.
COMMON_ILLEGAL_PARAM
);
throw
new
QGException
(
"没有相关用户信息"
,
QGExceptionType
.
COMMON_ILLEGAL_PARAM
);
}
}
OCRIdCardRow
ocrIdCardRow
=
list
.
get
(
0
);
OCRIdCardRow
ocrIdCardRow
=
list
.
get
(
0
);
UserSysResult
<
UserInfo
>
userInfoByUuid
=
userSdkService
.
findUserInfoByUuid
(
uuid
);
UserSysResult
<
UserInfo
>
userInfoByUuid
=
userSdkService
.
findUserInfoByUuid
(
uuid
);
if
(!
userInfoByUuid
.
isSuccess
()){
log
.
error
(
"进件申请获取用户中心信息失败 uuid : {}"
,
uuid
);
throw
new
QGException
(
"获取用户中心信息失败"
,
QGExceptionType
.
COMMON_ILLEGAL_PARAM
);
}
IdCardA
idCardFront
=
JSON
.
parseObject
(
ocrIdCardRow
.
getIdCardContentA
(),
IdCardA
.
class
);
IdCardA
idCardFront
=
JSON
.
parseObject
(
ocrIdCardRow
.
getIdCardContentA
(),
IdCardA
.
class
);
IdCardB
idCardBack
=
JSON
.
parseObject
(
ocrIdCardRow
.
getIdCardContentB
(),
IdCardB
.
class
);
IdCardB
idCardBack
=
JSON
.
parseObject
(
ocrIdCardRow
.
getIdCardContentB
(),
IdCardB
.
class
);
Map
<
String
,
Object
>
infoMap
=
queryUserBasic2Info
(
uuid
,
userInfoByUuid
.
getData
().
getPhoneNo
(),
true
);
Map
<
String
,
Object
>
infoMap
=
queryUserBasic2Info
(
uuid
,
userInfoByUuid
.
getData
().
getPhoneNo
(),
true
);
...
@@ -116,7 +145,7 @@ public class NiwodaiAssetServiceImpl implements INiwodaiAssetService {
...
@@ -116,7 +145,7 @@ public class NiwodaiAssetServiceImpl implements INiwodaiAssetService {
compnayInfo
.
setCity
(
userInfo
.
getCity
());
compnayInfo
.
setCity
(
userInfo
.
getCity
());
compnayInfo
.
setProvince
(
userInfo
.
getProvince
());
compnayInfo
.
setProvince
(
userInfo
.
getProvince
());
vo
.
setCompanyInfo
(
compnayInfo
);
vo
.
setCompanyInfo
(
compnayInfo
);
vo
.
setMnoData
(
mnoData
);
vo
.
setMnoData
(
new
NiwodaiCostant
.
MnoData
()
);
return
niwodaiService
.
incoming
(
vo
);
return
niwodaiService
.
incoming
(
vo
);
}
}
...
...
src/main/java/com/quantgroup/asset/distribution/service/niwodai/impl/NiwodaiServiceImpl.java
View file @
0b913ddc
...
@@ -34,6 +34,7 @@ public class NiwodaiServiceImpl implements INiwodaiService {
...
@@ -34,6 +34,7 @@ public class NiwodaiServiceImpl implements INiwodaiService {
private
String
authUrl
;
private
String
authUrl
;
@Value
(
"${niwodai.url.incoming}"
)
@Value
(
"${niwodai.url.incoming}"
)
private
String
incomingUrl
;
private
String
incomingUrl
;
private
static
String
getIncomingResult
=
"/std/v1/apply-result"
;
@Value
(
"${niwodai.client.id}"
)
@Value
(
"${niwodai.client.id}"
)
private
String
clientId
;
private
String
clientId
;
@Value
(
"${niwodai.client.secret}"
)
@Value
(
"${niwodai.client.secret}"
)
...
@@ -72,6 +73,21 @@ public class NiwodaiServiceImpl implements INiwodaiService {
...
@@ -72,6 +73,21 @@ public class NiwodaiServiceImpl implements INiwodaiService {
return
null
;
return
null
;
}
}
@Override
public
NiwodaiIncomingResultResponseVO
incoingResult
(
NiwodaiIncomingResultRequestVO
requestVO
){
String
token
=
getToken
();
if
(
StringUtils
.
isEmpty
(
token
))
{
log
.
error
(
"你我贷获取进件结果时获取token失败,requestVO : {}"
,
JSON
.
toJSONString
(
requestVO
));
throw
new
QGException
(
"你我贷获取进件结果时获取token失败"
,
COMMON_THIRD_PARTY_TIMEOUT
);
}
String
result
=
iHttpService
.
postNiwodaiJson
(
domain2
+
getIncomingResult
,
commonHeader
(
token
),
JSON
.
toJSONString
(
requestVO
),
true
);
if
(
StringUtils
.
isNotEmpty
(
result
)){
return
JSON
.
parseObject
(
result
,
NiwodaiIncomingResultResponseVO
.
class
);
}
return
null
;
}
public
String
getToken
()
{
public
String
getToken
()
{
String
token
=
iRedisService
.
getString
(
RedisKeyConstants
.
NI_WO_DAI_TOKEN_KEY
);
String
token
=
iRedisService
.
getString
(
RedisKeyConstants
.
NI_WO_DAI_TOKEN_KEY
);
if
(
StringUtils
.
isBlank
(
token
))
{
if
(
StringUtils
.
isBlank
(
token
))
{
...
...
src/main/java/com/quantgroup/asset/distribution/service/niwodai/vo/NiwodaiAccessTokenResponseVO.java
View file @
0b913ddc
...
@@ -3,8 +3,10 @@ package com.quantgroup.asset.distribution.service.niwodai.vo;
...
@@ -3,8 +3,10 @@ package com.quantgroup.asset.distribution.service.niwodai.vo;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
@Data
public
class
NiwodaiAccessTokenResponseVO
{
public
class
NiwodaiAccessTokenResponseVO
implements
Serializable
{
@JsonProperty
(
"access_token"
)
@JsonProperty
(
"access_token"
)
private
String
accessToken
;
private
String
accessToken
;
...
...
src/main/java/com/quantgroup/asset/distribution/service/niwodai/vo/NiwodaiIncomingResultRequestVO.java
0 → 100644
View file @
0b913ddc
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
NiwodaiIncomingResultRequestVO
implements
Serializable
{
private
String
orderId
;
}
src/main/java/com/quantgroup/asset/distribution/service/niwodai/vo/NiwodaiIncomingResultResponseVO.java
0 → 100644
View file @
0b913ddc
package
com
.
quantgroup
.
asset
.
distribution
.
service
.
niwodai
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
@Data
public
class
NiwodaiIncomingResultResponseVO
implements
Serializable
{
/**
* 300004:进件处理中; 300005:进件拒绝; 300006: 审批通过
*/
private
String
code
;
/**
* 审批金额
*/
private
BigDecimal
approvedAmount
;
/**
* 最小借款金额
*/
private
BigDecimal
minAmount
;
/**
* 步长
*/
private
BigDecimal
step
;
/**
* 额度有效期
*/
private
Date
validBefore
;
}
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