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
8ed49915
Commit
8ed49915
authored
Oct 23, 2019
by
liwenbin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
9dfb4bb1
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
13 additions
and
11 deletions
+13
-11
AssetServiceImpl.java
...set/distribution/service/asset/impl/AssetServiceImpl.java
+6
-8
FundModuleChannelFundConfigServiceImpl.java
.../funding/impl/FundModuleChannelFundConfigServiceImpl.java
+6
-2
FundModuleServiceImpl.java
...tribution/service/funding/impl/FundModuleServiceImpl.java
+1
-1
No files found.
src/main/java/com/quantgroup/asset/distribution/service/asset/impl/AssetServiceImpl.java
View file @
8ed49915
...
...
@@ -2,7 +2,6 @@ package com.quantgroup.asset.distribution.service.asset.impl;
import
java.lang.reflect.Field
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
...
...
@@ -69,8 +68,6 @@ public class AssetServiceImpl implements IAssetService{
public
void
assetsIn
(
AssetForm
assetForm
)
{
try
{
Stopwatch
stopwatch
=
Stopwatch
.
createStarted
();
// 如果使用资方模块则去命中资方,创建金融产品集
hitFundIfUseFundModule
(
assetForm
);
// 转换为资产Object
Asset
asset
=
assetForm
.
transToAsset
();
// 获取所有资产扩展属性配置
...
...
@@ -81,6 +78,8 @@ public class AssetServiceImpl implements IAssetService{
assetAttributeService
.
saveAssetAttrubite
(
asset
,
assetAttributeExtendConfigList
,
data
);
// 把资产基础属性值放入data
data
=
addAssetAttributeToData
(
asset
,
data
);
// 如果使用资方模块则去命中资方,创建金融产品集
hitFundIfUseFundModule
(
assetForm
,
data
);
// 资产分发
assetDistributeService
.
distribute
(
assetForm
,
asset
,
data
);
log
.
info
(
"资产分发完成, uuid : {}, bizNo : {}, assetNo : {}, bizChannel : {}, 耗时 : {}"
,
assetForm
.
getUuid
(),
...
...
@@ -213,16 +212,13 @@ public class AssetServiceImpl implements IAssetService{
* 如果使用资方模块,需要去命中资方
* @param assetForm
*/
public
void
hitFundIfUseFundModule
(
AssetForm
assetForm
)
{
public
void
hitFundIfUseFundModule
(
AssetForm
assetForm
,
Map
<
String
,
Object
>
data
)
{
if
(
"false"
.
equals
(
assetForm
.
getAuditResult
()))
{
return
;
}
if
(
"true"
.
equals
(
assetForm
.
getAuditResult
())
&&
StringUtils
.
isNotEmpty
(
assetForm
.
getFinanceProducts
()))
{
return
;
}
Map
<
String
,
Object
>
data
=
new
HashMap
<>();
data
.
put
(
"amount"
,
assetForm
.
getAmount
());
data
.
put
(
"term"
,
assetForm
.
getTerm
());
// 创建金融产品集,并初始化金额期数
JSONArray
financeProductArray
=
new
JSONArray
();
JSONObject
amountJSON
=
new
JSONObject
();
...
...
@@ -249,6 +245,8 @@ public class AssetServiceImpl implements IAssetService{
}
}
}
log
.
info
(
"资方模块用户命中资方条件, uuid : {}, assetNo : {}, bizNo : {}, fundId : {}, fundProductId : {}"
,
assetForm
.
getUuid
(),
assetForm
.
getAssetNo
(),
assetForm
.
getBizNo
(),
channelFundConfig
.
getFundId
(),
channelFundConfig
.
getFundProductId
());
// 创建并增加资方配置
JSONObject
fundInfoJSON
=
new
JSONObject
();
fundInfoJSON
.
put
(
"fundId"
,
channelFundConfig
.
getFundId
());
...
...
@@ -262,7 +260,7 @@ public class AssetServiceImpl implements IAssetService{
// 如果fundArray为空,未命中任何一个资方
QGPreconditions
.
checkArgument
(
fundArray
.
size
()
!=
0
,
QGExceptionType
.
NO_FUND_INFO_BEEN_HIT
,
assetForm
.
getBizChannel
(),
assetForm
.
getAmount
(),
assetForm
.
getTerm
());
// 看命中优先级是否符合要求
boolean
[]
bucket
=
new
boolean
[
fundArray
.
size
()];
boolean
[]
bucket
=
new
boolean
[
fundArray
.
size
()
+
1
];
for
(
int
i
=
0
,
len
=
fundArray
.
size
();
i
<
len
;
i
++)
{
int
priority
=
fundArray
.
getJSONObject
(
i
).
getIntValue
(
"priority"
);
if
(!(
priority
>
0
&&
priority
<=
len
))
{
...
...
src/main/java/com/quantgroup/asset/distribution/service/funding/impl/FundModuleChannelFundConfigServiceImpl.java
View file @
8ed49915
...
...
@@ -12,6 +12,8 @@ import javax.persistence.criteria.Root;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.cache.annotation.CacheEvict
;
import
org.springframework.cache.annotation.Cacheable
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Pageable
;
...
...
@@ -69,7 +71,7 @@ public class FundModuleChannelFundConfigServiceImpl implements IFundModuleChanne
@Override
public
GlobalResponse
addChannelFundConfig
(
String
bizChannel
,
String
funds
,
String
remarks
)
{
// 新增配置, 根据渠道查询如果库里已存在,返回异常;
测试一下渠道号存在2条配置去find正常否
// 新增配置, 根据渠道查询如果库里已存在,返回异常;
FundModuleChannelFundConfig
fundModuleChannelFundConfig
=
fundModuleChannelFundConfigRepository
.
findByBizChannelAndEnableIsTrue
(
bizChannel
);
if
(
fundModuleChannelFundConfig
!=
null
)
{
log
.
info
(
"资方模块, 渠道 : {}资方配置已存在, 添加失败!"
,
bizChannel
);
...
...
@@ -85,6 +87,7 @@ public class FundModuleChannelFundConfigServiceImpl implements IFundModuleChanne
return
GlobalResponse
.
create
(
FundModuleResponse
.
SUCCESS
);
}
@CacheEvict
(
value
=
"cacheManager"
,
key
=
"'ASSET_DISTRIBUTION:FUND_MODULE:CHANNEL_FUND_CONFIG:AC8A_'+#bizChannel"
)
@Override
public
GlobalResponse
updateChannelFundConfig
(
Long
id
,
String
bizChannel
,
String
funds
,
String
remarks
)
{
// 更改配置, 根据id查询如果库里不存在,返回异常
...
...
@@ -101,7 +104,8 @@ public class FundModuleChannelFundConfigServiceImpl implements IFundModuleChanne
fundModuleChannelFundConfigRepository
.
save
(
fundModuleChannelFundConfig
);
return
GlobalResponse
.
create
(
FundModuleResponse
.
SUCCESS
);
}
@Cacheable
(
value
=
"cacheManager"
,
key
=
"'ASSET_DISTRIBUTION:FUND_MODULE:CHANNEL_FUND_CONFIG:AC8A_'+#bizChannel"
)
@Override
public
FundModuleChannelFundConfig
findByBizChannel
(
String
bizChannel
)
{
return
fundModuleChannelFundConfigRepository
.
findByBizChannelAndEnableIsTrue
(
bizChannel
);
...
...
src/main/java/com/quantgroup/asset/distribution/service/funding/impl/FundModuleServiceImpl.java
View file @
8ed49915
...
...
@@ -50,7 +50,7 @@ public class FundModuleServiceImpl implements IFundModuleService{
@Override
public
GlobalResponse
getAllFundsInfo
()
{
Stopwatch
stopwatch
=
Stopwatch
.
createStarted
();
String
text
=
httpService
.
get
(
clothoURL
+
"/ex/funding/corp/all"
);
String
text
=
httpService
.
get
(
clothoURL
+
"/ex/funding/corp/all
.json
"
);
log
.
info
(
"拉取xyqb所有资方信息完成, 耗时 : {}, 结果 : {}"
,
stopwatch
.
stop
().
elapsed
(
TimeUnit
.
MILLISECONDS
),
text
);
QGPreconditions
.
checkArgument
(
StringUtils
.
isNotEmpty
(
text
),
QGExceptionType
.
GET_ALL_FUNDS_INFO_ERROR
,
text
);
JSONObject
data
=
JSONObject
.
parseObject
(
text
);
...
...
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