Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
order-group
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
order-group-application
order-group
Commits
d3ed036c
Commit
d3ed036c
authored
Aug 03, 2020
by
xiaoer.li@freemud.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'remotes/origin/feature/1.9.29_修复发券时指定门店引起的结算页展示非适用门店券问题'
parents
cd81c43b
a863af59
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
212 additions
and
8 deletions
+212
-8
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/coupon/CouponAvailableRespDto.java
+24
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/CouponAvailableReqVo.java
+36
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/CouponStateVo.java
+63
-0
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/Product.java
+34
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CouponServiceImpl.java
+18
-8
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/CouponAdapterClient.java
+37
-0
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/entities/dto/coupon/CouponAvailableRespDto.java
0 → 100644
View file @
d3ed036c
package
cn
.
freemud
.
entities
.
dto
.
coupon
;
import
cn.freemud.entities.vo.coupon.CouponStateVo
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.util.List
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.entities.dto CouponAvailableRespDto
* @Description: TDO 描述....
* @author: family
* @date: 2020/6/30
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
@NoArgsConstructor
public
class
CouponAvailableRespDto
{
private
List
<
CouponStateVo
>
couponStateList
;
private
String
result
;
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/CouponAvailableReqVo.java
0 → 100644
View file @
d3ed036c
package
cn
.
freemud
.
entities
.
vo
.
coupon
;
import
lombok.Data
;
import
java.util.List
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.entities.vo CouponAvailableReqVo
* @Description: TDO 描述....
* @author: family
* @date: 2020/6/30
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
CouponAvailableReqVo
{
//渠道id
private
String
providerId
;
//商户号
private
String
merchantId
;
//门店id(校验门店限制)
private
String
storeId
;
//组织机构id列表(校验渠道限制)
private
List
<
String
>
channelIdList
;
//组织机构code列表(校验渠道限制)
private
List
<
String
>
channelCodeList
;
//券码列表
private
List
<
String
>
couponCodes
;
//金额
private
Integer
totalAmount
;
//购物车商品列表
private
List
<
Product
>
productList
;
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/CouponStateVo.java
0 → 100644
View file @
d3ed036c
package
cn
.
freemud
.
entities
.
vo
.
coupon
;
import
lombok.Data
;
import
java.util.List
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.entities.vo.coupon CouponStateVo
* @Description: TDO 描述....
* @author: family
* @date: 2020/6/30
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
CouponStateVo
{
/**
* 券号
*/
private
String
couponCode
;
private
Integer
type
;
/**
* 状态
* 0 可用 1 不可用 2 限制可用
*/
private
Integer
state
;
/**
* 不可用原因
*/
private
String
message
;
/**
* 最小金额 分
*/
private
Integer
minAmount
;
/**
* 数量
*/
private
Integer
amount
;
/**
* 活动折扣价格 分
*/
private
Integer
priceDiscount
;
/**
* 原价 分
*/
private
Integer
originalPrice
;
/**
* 折扣百分比
*/
private
Integer
discount
;
/**
* 限制类型
* 0 白名单 1 黑名单
*/
private
String
limitType
;
/**
* 可用商品
*/
private
List
<
Product
>
productList
;
}
shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/coupon/Product.java
0 → 100644
View file @
d3ed036c
package
cn
.
freemud
.
entities
.
vo
.
coupon
;
import
lombok.Data
;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: cn.freemud.entities.vo.coupon Product
* @Description: TDO 描述....
* @author: family
* @date: 2020/6/30
* @Copyright: www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
public
class
Product
{
/**
* 商品id
*/
private
String
productId
;
/**
* 商品单价
*/
private
Integer
amount
;
/**
* quantity
*/
private
Integer
quantity
;
/**
* categoryCode
*/
private
String
categoryCode
;
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CouponServiceImpl.java
View file @
d3ed036c
...
@@ -22,11 +22,15 @@ import cn.freemud.base.util.DateUtil;
...
@@ -22,11 +22,15 @@ import cn.freemud.base.util.DateUtil;
import
cn.freemud.constant.ResponseCodeConstant
;
import
cn.freemud.constant.ResponseCodeConstant
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.activity.ActivityQueryResponseDto
;
import
cn.freemud.entities.dto.activity.ActivityQueryResponseDto
;
import
cn.freemud.entities.dto.coupon.CouponAvailableRespDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardCodeRequestDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardCodeRequestDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardCodeResponseDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardCodeResponseDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeRequestDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeRequestDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeResponseDto
;
import
cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeResponseDto
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.coupon.CouponAvailableReqVo
;
import
cn.freemud.entities.vo.coupon.CouponStateVo
;
import
cn.freemud.entities.vo.coupon.Product
;
import
cn.freemud.enums.*
;
import
cn.freemud.enums.*
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.redis.RedisCache
;
...
@@ -44,12 +48,11 @@ import com.freemud.card.sdk.service.GetCouponService;
...
@@ -44,12 +48,11 @@ import com.freemud.card.sdk.service.GetCouponService;
import
com.freemud.card.sdk.service.MemberProductService
;
import
com.freemud.card.sdk.service.MemberProductService
;
import
com.freemud.card.sdk.vo.comm.GetCodeRespVo
;
import
com.freemud.card.sdk.vo.comm.GetCodeRespVo
;
import
com.freemud.card.sdk.vo.comm.GetCouponVo
;
import
com.freemud.card.sdk.vo.comm.GetCouponVo
;
import
com.freemud.card.sdk.vo.coupon.CouponStateVo
;
//import com.freemud.card.sdk.vo.coupon.CouponStateVo;
//import com.freemud.card.sdk.vo.coupon.Product;
//import com.freemud.card.sdk.vo.coupon.request.CouponAvailableReqVo;
import
com.freemud.card.sdk.vo.coupon.CreateCouponVo
;
import
com.freemud.card.sdk.vo.coupon.CreateCouponVo
;
import
com.freemud.card.sdk.vo.coupon.Product
;
import
com.freemud.card.sdk.vo.coupon.request.CouponAvailableReqVo
;
import
com.freemud.card.sdk.vo.coupon.request.MemberAddCouponVo
;
import
com.freemud.card.sdk.vo.coupon.request.MemberAddCouponVo
;
import
com.freemud.card.sdk.vo.coupon.response.CouponAvailableRespVo
;
import
com.freemud.card.sdk.vo.coupon.response.MemberBaseRespVo
;
import
com.freemud.card.sdk.vo.coupon.response.MemberBaseRespVo
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Lists
;
import
com.google.common.collect.Maps
;
import
com.google.common.collect.Maps
;
...
@@ -109,6 +112,8 @@ public class CouponServiceImpl implements CouponService {
...
@@ -109,6 +112,8 @@ public class CouponServiceImpl implements CouponService {
private
CommonService
commonService
;
private
CommonService
commonService
;
@Value
(
"${coupon.partner.id}"
)
@Value
(
"${coupon.partner.id}"
)
private
String
couponPartnerId
;
private
String
couponPartnerId
;
@Autowired
private
CouponAdapterClient
couponAdaptClient
;
/**
/**
* 获取优惠券列表
* 获取优惠券列表
...
@@ -405,7 +410,8 @@ public class CouponServiceImpl implements CouponService {
...
@@ -405,7 +410,8 @@ public class CouponServiceImpl implements CouponService {
int
count
=
couponCodes
.
size
()
/
maxNum
;
int
count
=
couponCodes
.
size
()
/
maxNum
;
// 计算可用不可用券
// 计算可用不可用券
CouponAvailableReqVo
couponAvailableReqVo
=
new
CouponAvailableReqVo
();
CouponAvailableReqVo
couponAvailableReqVo
=
new
CouponAvailableReqVo
();
couponAvailableReqVo
.
setPartnerId
(
partnerId
);
couponAvailableReqVo
.
setProviderId
(
partnerId
);
couponAvailableReqVo
.
setMerchantId
(
partnerId
);
couponAvailableReqVo
.
setStoreId
(
storeId
);
couponAvailableReqVo
.
setStoreId
(
storeId
);
List
<
Product
>
productList
=
Lists
.
newArrayList
();
List
<
Product
>
productList
=
Lists
.
newArrayList
();
// 优惠券优先级最高,根据商品原价做计算
// 优惠券优先级最高,根据商品原价做计算
...
@@ -425,7 +431,9 @@ public class CouponServiceImpl implements CouponService {
...
@@ -425,7 +431,9 @@ public class CouponServiceImpl implements CouponService {
}
}
// 书写逻辑
// 书写逻辑
couponAvailableReqVo
.
setCouponCodes
(
calCouponCodes
);
couponAvailableReqVo
.
setCouponCodes
(
calCouponCodes
);
CouponAvailableRespVo
couponsAvailable
=
couponAvailableService
.
getCouponsAvailable
(
couponAvailableReqVo
,
appSecret
);
//CouponAvailableRespVo couponsAvailable = couponAvailableService.getCouponsAvailable(couponAvailableReqVo, appSecret);
CouponAvailableRespDto
couponsAvailable
=
couponAdaptClient
.
getCouponsAvailable
(
couponAvailableReqVo
);
;
LogUtil
.
info
(
"availableCoupon_couponAvailableService.getCouponsAvailable"
,
JSON
.
toJSONString
(
couponAvailableReqVo
),
JSON
.
toJSONString
(
couponsAvailable
));
LogUtil
.
info
(
"availableCoupon_couponAvailableService.getCouponsAvailable"
,
JSON
.
toJSONString
(
couponAvailableReqVo
),
JSON
.
toJSONString
(
couponsAvailable
));
if
(
Objects
.
equals
(
String
.
valueOf
(
couponsAvailable
.
getResult
()),
ResponseResult
.
SUCCESS
.
getCode
())
if
(
Objects
.
equals
(
String
.
valueOf
(
couponsAvailable
.
getResult
()),
ResponseResult
.
SUCCESS
.
getCode
())
&&
CollectionUtils
.
isNotEmpty
(
couponsAvailable
.
getCouponStateList
()))
{
&&
CollectionUtils
.
isNotEmpty
(
couponsAvailable
.
getCouponStateList
()))
{
...
@@ -801,7 +809,8 @@ public class CouponServiceImpl implements CouponService {
...
@@ -801,7 +809,8 @@ public class CouponServiceImpl implements CouponService {
int
count
=
codes
.
size
()
/
maxNum
;
int
count
=
codes
.
size
()
/
maxNum
;
// 计算可用不可用券
// 计算可用不可用券
CouponAvailableReqVo
couponAvailableReqVo
=
new
CouponAvailableReqVo
();
CouponAvailableReqVo
couponAvailableReqVo
=
new
CouponAvailableReqVo
();
couponAvailableReqVo
.
setPartnerId
(
partnerId
);
couponAvailableReqVo
.
setMerchantId
(
partnerId
);
couponAvailableReqVo
.
setProviderId
(
partnerId
);
couponAvailableReqVo
.
setStoreId
(
storeId
);
couponAvailableReqVo
.
setStoreId
(
storeId
);
List
<
Product
>
productList
=
Lists
.
newArrayList
();
List
<
Product
>
productList
=
Lists
.
newArrayList
();
// 优惠券优先级最高,根据商品原价做计算
// 优惠券优先级最高,根据商品原价做计算
...
@@ -822,7 +831,8 @@ public class CouponServiceImpl implements CouponService {
...
@@ -822,7 +831,8 @@ public class CouponServiceImpl implements CouponService {
// 书写逻辑
// 书写逻辑
couponAvailableReqVo
.
setCouponCodes
(
calCouponCodes
);
couponAvailableReqVo
.
setCouponCodes
(
calCouponCodes
);
log
.
info
(
"availableCoupon couponAvailableService.getCouponsAvailable num:{};start:{}"
,
j
,
JSON
.
toJSONString
(
couponAvailableReqVo
));
log
.
info
(
"availableCoupon couponAvailableService.getCouponsAvailable num:{};start:{}"
,
j
,
JSON
.
toJSONString
(
couponAvailableReqVo
));
CouponAvailableRespVo
couponsAvailable
=
couponAvailableService
.
getCouponsAvailable
(
couponAvailableReqVo
,
appSecret
);
//CouponAvailableRespVo couponsAvailable = couponAvailableService.getCouponsAvailable(couponAvailableReqVo, appSecret);
CouponAvailableRespDto
couponsAvailable
=
couponAdaptClient
.
getCouponsAvailable
(
couponAvailableReqVo
);
log
.
info
(
"availableCoupon couponAvailableService.getCouponsAvailable num:{};end:{}"
,
j
,
JSON
.
toJSONString
(
couponsAvailable
));
log
.
info
(
"availableCoupon couponAvailableService.getCouponsAvailable num:{};end:{}"
,
j
,
JSON
.
toJSONString
(
couponsAvailable
));
if
(
Objects
.
equals
(
String
.
valueOf
(
couponsAvailable
.
getResult
()),
ResponseResult
.
SUCCESS
.
getCode
())
if
(
Objects
.
equals
(
String
.
valueOf
(
couponsAvailable
.
getResult
()),
ResponseResult
.
SUCCESS
.
getCode
())
&&
CollectionUtils
.
isNotEmpty
(
couponsAvailable
.
getCouponStateList
()))
{
&&
CollectionUtils
.
isNotEmpty
(
couponsAvailable
.
getCouponStateList
()))
{
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/CouponAdapterClient.java
0 → 100644
View file @
d3ed036c
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: OrderClient
* @Package cn.freemud.service.thirdparty
* @Description:
* @author: liming.guo
* @date: 2018/8/10 16:06
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
service
.
thirdparty
;
import
cn.freemud.entities.dto.*
;
import
cn.freemud.entities.dto.coupon.CouponAvailableRespDto
;
import
cn.freemud.entities.vo.coupon.CouponAvailableReqVo
;
import
org.springframework.cloud.netflix.feign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
// 测试http://115.159.65.101:8002 线上http://10.51.0.37:8002
//@FeignClient(name = "COUPON",url="${saas.couponclient.feign.url}")
@FeignClient
(
name
=
"COUPON-ADAPTER"
,
url
=
"${saas.couponadapterclient.feign.url}"
)
@RequestMapping
(
produces
=
{
"application/json;charset=UTF-8"
})
public
interface
CouponAdapterClient
{
/**
* 获取可用券信息
*
* @param couponAvailableReqVo
* @return
*/
@PostMapping
(
"/getCouponsAvailable"
)
CouponAvailableRespDto
getCouponsAvailable
(
CouponAvailableReqVo
couponAvailableReqVo
);
}
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