Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yanxuan-wx-store-sharer
Overview
Overview
Details
Activity
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
wx
yanxuan-wx-store-sharer
Commits
41965eac
Commit
41965eac
authored
Mar 14, 2025
by
fanjiaxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
联调问题处理
parent
c11c4e05
Pipeline
#71601
passed with stages
in 56 seconds
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
7 deletions
+21
-7
ProductServiceImpl.java
.../wx/store/sharer/biz/service/impl/ProductServiceImpl.java
+18
-5
UserServiceImpl.java
...uan/wx/store/sharer/biz/service/impl/UserServiceImpl.java
+3
-2
No files found.
yanxuan-wx-store-sharer-biz/src/main/java/com/netease/yanxuan/wx/store/sharer/biz/service/impl/ProductServiceImpl.java
View file @
41965eac
...
...
@@ -10,6 +10,7 @@ import com.netease.yanxuan.wx.store.sharer.biz.meta.page.PageVO;
import
com.netease.yanxuan.wx.store.sharer.biz.service.IProductService
;
import
com.netease.yanxuan.wx.store.sharer.common.exception.NoBindSharerException
;
import
com.netease.yanxuan.wx.store.sharer.common.util.AsyncUtils
;
import
com.netease.yanxuan.wx.store.sharer.integration.constant.WeChatApi
;
import
com.netease.yanxuan.wx.store.sharer.integration.handler.impl.WeChatShopPromoteProductDetailRequest
;
import
com.netease.yanxuan.wx.store.sharer.integration.handler.impl.WeChatShopPromoteProductLinkRequest
;
import
com.netease.yanxuan.wx.store.sharer.integration.handler.impl.WeChatShopPromoteProductListRequest
;
...
...
@@ -72,10 +73,15 @@ public class ProductServiceImpl implements IProductService {
listVO
.
setTitle
(
productInfo
.
getTitle
());
listVO
.
setHeadImg
(
CollectionUtils
.
isEmpty
(
productInfo
.
getHead_imgs
())
?
null
:
productInfo
.
getHead_imgs
().
get
(
0
));
// 取参数SkuInfo中sale_price的最小
BigDecimal
price
=
Optional
.
ofNullable
(
productInfo
.
getSkus
()).
orElseGet
(
ArrayList:
:
new
)
BigDecimal
price
=
null
;
Optional
<
BigDecimal
>
priceOpt
=
Optional
.
ofNullable
(
productInfo
.
getSkus
()).
orElseGet
(
ArrayList:
:
new
)
.
stream
()
.
map
(
WeChatPromoteProductDetailVO
.
WeChatPromoteProductVO
.
WeChatPromoteProductInfoVO
.
WeChatPromoteProductSkuInfoVO
::
getSale_price
)
.
min
(
BigDecimal:
:
compareTo
).
orElse
(
null
);
.
min
(
BigDecimal:
:
compareTo
);
if
(
priceOpt
.
isPresent
())
{
// 以分为单位,进行元转换
price
=
priceOpt
.
get
().
divide
(
new
BigDecimal
(
"100"
)).
setScale
(
2
,
RoundingMode
.
HALF_UP
);
}
listVO
.
setPrice
(
price
);
// 推客分佣比例
...
...
@@ -87,13 +93,20 @@ public class ProductServiceImpl implements IProductService {
if
(
null
!=
sharerListVO
&&
!
CollectionUtils
.
isEmpty
(
sharerListVO
.
getSharer_info_list
()))
{
WeChatSharerInfoVO
sharerInfoVO
=
sharerListVO
.
getSharer_info_list
().
get
(
0
);
if
(
null
!=
sharerInfoVO
&&
null
!=
sharerInfoVO
.
getCommission_ratio
())
{
commissionRatio
=
sharerInfoVO
.
getCommission_ratio
();
// 微信分佣比例倍数
BigDecimal
wechatMultiplier
=
new
BigDecimal
(
WeChatApi
.
WECHAT_COMMISSION_RATIO_MULTIPLIER
);
commissionRatio
=
sharerInfoVO
.
getCommission_ratio
().
divide
(
wechatMultiplier
);
}
}
}
WeChatPromoteProductDetailVO
.
WeChatPromoteProductVO
.
WeChatPromoteProductCommissionInfoVO
commissionInfo
=
product
.
getCommission_info
();
WeChatPromoteProductDetailVO
.
WeChatPromoteProductVO
.
WeChatPromoteProductCommissionInfoVO
commissionInfo
=
product
.
getCommission_info
();
// 服务费率
Integer
serviceRatio
=
null
!=
commissionInfo
?
commissionInfo
.
getService_ratio
()
:
null
;
BigDecimal
serviceRatio
=
null
;
if
(
null
!=
commissionInfo
&&
null
!=
commissionInfo
.
getService_ratio
())
{
serviceRatio
=
new
BigDecimal
(
commissionInfo
.
getService_ratio
())
.
divide
(
new
BigDecimal
(
"10000"
));
}
// 佣金=商品价格*服务费率*推客分佣比例,四舍五入保留小数点后两位
BigDecimal
commission
=
null
;
if
(
null
!=
price
&&
null
!=
commissionRatio
&&
null
!=
serviceRatio
)
{
...
...
yanxuan-wx-store-sharer-biz/src/main/java/com/netease/yanxuan/wx/store/sharer/biz/service/impl/UserServiceImpl.java
View file @
41965eac
...
...
@@ -104,8 +104,9 @@ public class UserServiceImpl implements IUserService {
Date
bindTime
=
null
!=
sharerInfoVO
.
getBind_time
()
?
new
Date
(
sharerInfoVO
.
getBind_time
())
:
now
;
sharerInfo
.
setBindTime
(
bindTime
);
// 微信分佣比例倍数
BigDecimal
wechatCommissionRatioMultiplier
=
new
BigDecimal
(
WeChatApi
.
WECHAT_COMMISSION_RATIO_MULTIPLIER
);
BigDecimal
commissionRatio
=
sharerInfoVO
.
getCommission_ratio
().
divide
(
wechatCommissionRatioMultiplier
)
BigDecimal
wechatMultiplier
=
new
BigDecimal
(
WeChatApi
.
WECHAT_COMMISSION_RATIO_MULTIPLIER
);
BigDecimal
commissionRatio
=
sharerInfoVO
.
getCommission_ratio
()
.
divide
(
wechatMultiplier
)
.
setScale
(
2
,
RoundingMode
.
HALF_UP
);
sharerInfo
.
setCommissionRatio
(
commissionRatio
);
String
commissionType
=
null
!=
sharerInfoVO
.
getCommission_type
()
?
sharerInfoVO
.
getCommission_type
().
toString
()
:
CommissionTypeEnum
.
PLATFORM
.
getCode
();
...
...
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