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
39dee8bb
Commit
39dee8bb
authored
Jul 19, 2021
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
对接促销会员价
parent
292dfd0b
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
89 additions
and
32 deletions
+89
-32
shopping-cart-application-service/src/main/java/cn/freemud/demo/manager/promotion/KgdPromotionServiceImpl.java
+7
-3
shopping-cart-application-service/src/main/java/cn/freemud/enums/ActivityTypeEnum.java
+1
-0
shopping-cart-application-service/src/main/java/cn/freemud/enums/ShoppingCartPromotionEnum.java
+2
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/MemberDiscountServiceImpl.java
+30
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+5
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingDiscountService.java
+10
-3
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/ActivityClient.java
+10
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/CalculationClient.java
+24
-24
No files found.
shopping-cart-application-service/src/main/java/cn/freemud/demo/manager/promotion/KgdPromotionServiceImpl.java
View file @
39dee8bb
...
@@ -14,7 +14,8 @@ import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
...
@@ -14,7 +14,8 @@ import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.service.ActivityService
;
import
cn.freemud.service.ActivityService
;
import
cn.freemud.service.thirdparty.CalculationClient
;
import
cn.freemud.service.thirdparty.ActivityClient
;
//import cn.freemud.service.thirdparty.CalculationClient;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
...
@@ -26,8 +27,11 @@ import org.springframework.stereotype.Service;
...
@@ -26,8 +27,11 @@ import org.springframework.stereotype.Service;
//@Slf4j
//@Slf4j
public
class
KgdPromotionServiceImpl
implements
PromotionService
{
public
class
KgdPromotionServiceImpl
implements
PromotionService
{
// @Autowired
// private CalculationClient calculationClient;
@Autowired
@Autowired
private
CalculationClient
calculation
Client
;
private
ActivityClient
activity
Client
;
@Autowired
@Autowired
private
ActivityService
activityService
;
private
ActivityService
activityService
;
...
@@ -46,7 +50,7 @@ public class KgdPromotionServiceImpl implements PromotionService{
...
@@ -46,7 +50,7 @@ public class KgdPromotionServiceImpl implements PromotionService{
try
{
try
{
//ApiLog.debug("start sharing discount dto={}", JSON.toJSONString(shareDiscountRequestDto));
//ApiLog.debug("start sharing discount dto={}", JSON.toJSONString(shareDiscountRequestDto));
ApiLog
.
printLog
(
"start sharing discount dto={}"
,
JSON
.
toJSONString
(
shareDiscountRequestDto
),
null
,
null
);
ApiLog
.
printLog
(
"start sharing discount dto={}"
,
JSON
.
toJSONString
(
shareDiscountRequestDto
),
null
,
null
);
calculationSharingDiscountResponseDto
=
calculation
Client
.
calculationSharingDiscount
(
shareDiscountRequestDto
);
calculationSharingDiscountResponseDto
=
activity
Client
.
calculationSharingDiscount
(
shareDiscountRequestDto
);
}
}
catch
(
Exception
e
)
{
catch
(
Exception
e
)
{
ErrorLog
.
printErrorLog
(
"calculation_discount_error"
,
"/calculation/discount/sharing"
,
calculationSharingDiscountResponseDto
,
e
);
ErrorLog
.
printErrorLog
(
"calculation_discount_error"
,
"/calculation/discount/sharing"
,
calculationSharingDiscountResponseDto
,
e
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/enums/ActivityTypeEnum.java
View file @
39dee8bb
...
@@ -28,6 +28,7 @@ public enum ActivityTypeEnum {
...
@@ -28,6 +28,7 @@ public enum ActivityTypeEnum {
TYPE_21
(
21
,
"单品折扣"
),
TYPE_21
(
21
,
"单品折扣"
),
TYPE_22
(
22
,
"单品立减"
),
TYPE_22
(
22
,
"单品立减"
),
TYPE_23
(
23
,
"超值加购"
),
TYPE_23
(
23
,
"超值加购"
),
TYPE_27
(
27
,
"促销会员价"
),
/**
/**
* 优惠券
* 优惠券
*/
*/
...
...
shopping-cart-application-service/src/main/java/cn/freemud/enums/ShoppingCartPromotionEnum.java
View file @
39dee8bb
...
@@ -27,7 +27,8 @@ public enum ShoppingCartPromotionEnum {
...
@@ -27,7 +27,8 @@ public enum ShoppingCartPromotionEnum {
MEMBER_DISCOUNT
(
11
,
"memberDiscountService"
),
MEMBER_DISCOUNT
(
11
,
"memberDiscountService"
),
Material
(
12
,
"MaterialPromotionService"
),
Material
(
12
,
"MaterialPromotionService"
),
// 集点活动类
// 集点活动类
GATHER_SPOT
(
13
,
"gatherSpotPromotionService"
);
GATHER_SPOT
(
13
,
"gatherSpotPromotionService"
),
MEMBER_DISCOUNT_NEw
(
27
,
"memberDiscountService"
);
private
Integer
type
;
private
Integer
type
;
private
String
msgType
;
private
String
msgType
;
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/MemberDiscountServiceImpl.java
View file @
39dee8bb
...
@@ -76,4 +76,34 @@ public class MemberDiscountServiceImpl implements IPromotionService {
...
@@ -76,4 +76,34 @@ public class MemberDiscountServiceImpl implements IPromotionService {
return
result
;
return
result
;
}
}
public
void
updateShoppingCartGoodsDiscountNew
(
CouponPromotionVO
couponPromotionVO
,
ActivityQueryDto
activityQueryDto
,
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
calculationDiscountResult
,
List
<
CartGoods
>
cartGoodsList
,
ShoppingCartGoodsResponseVo
shoppingCartGoodsResponseVo
,
UserLoginInfoDto
userLoginInfoDto
,
ShoppingCartInfoRequestVo
shoppingCartInfoRequestVo
)
{
//获取每个商品的会员价优惠单价
if
(
calculationDiscountResult
==
null
||
CollectionUtils
.
isEmpty
(
calculationDiscountResult
.
getApportionGoods
()))
{
return
;
}
Map
<
String
,
Long
>
result
=
new
HashMap
<>();
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
ApportionGoods
apportionGood
:
calculationDiscountResult
.
getApportionGoods
())
{
if
(!
CollectionUtils
.
isEmpty
(
apportionGood
.
getApportionDetails
()))
{
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
ApportionGoods
.
ApportionDetails
apportionDetail
:
apportionGood
.
getApportionDetails
())
{
if
(
apportionDetail
.
getActivityType
().
equals
(
ActivityTypeEnum
.
TYPE_27
.
getCode
()))
{
result
.
putIfAbsent
(
apportionGood
.
getGoodsId
(),
apportionDetail
.
getActivityApportionAmount
());
}
}
}
}
if
(
result
.
size
()==
0
){
return
;
}
for
(
CartGoods
cartGoods
:
cartGoodsList
)
{
//优惠单价
Long
discountPrice
=
result
.
get
(
cartGoods
.
getGoodsId
());
if
(
discountPrice
!=
null
&&
discountPrice
>
0
){
cartGoods
.
setAmount
(
cartGoods
.
getAmount
()-
discountPrice
*
cartGoods
.
getQty
());
}
}
}
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
39dee8bb
...
@@ -1781,10 +1781,14 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1781,10 +1781,14 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
BuyAndGiftsPromotionService
buyAndGiftsPromotionService
=(
BuyAndGiftsPromotionService
)
PromotionFactory
.
getPromotionService
(
ShoppingCartPromotionEnum
.
BUY_GIFTS
);
BuyAndGiftsPromotionService
buyAndGiftsPromotionService
=(
BuyAndGiftsPromotionService
)
PromotionFactory
.
getPromotionService
(
ShoppingCartPromotionEnum
.
BUY_GIFTS
);
buyAndGiftsPromotionService
.
updateShoppingCartGoodsDiscount
(
couponPromotionVO
,
activityQueryDto
,
calculationDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
userLoginInfoDto
,
shoppingCartInfoRequestVo
);
buyAndGiftsPromotionService
.
updateShoppingCartGoodsDiscount
(
couponPromotionVO
,
activityQueryDto
,
calculationDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
userLoginInfoDto
,
shoppingCartInfoRequestVo
);
//会员价
//
商品
会员价
MemberDiscountServiceImpl
memberDiscountService
=(
MemberDiscountServiceImpl
)
PromotionFactory
.
getPromotionService
(
ShoppingCartPromotionEnum
.
MEMBER_DISCOUNT
);
MemberDiscountServiceImpl
memberDiscountService
=(
MemberDiscountServiceImpl
)
PromotionFactory
.
getPromotionService
(
ShoppingCartPromotionEnum
.
MEMBER_DISCOUNT
);
memberDiscountService
.
updateShoppingCartGoodsDiscount
(
couponPromotionVO
,
activityQueryDto
,
calculationDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
userLoginInfoDto
,
shoppingCartInfoRequestVo
);
memberDiscountService
.
updateShoppingCartGoodsDiscount
(
couponPromotionVO
,
activityQueryDto
,
calculationDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
userLoginInfoDto
,
shoppingCartInfoRequestVo
);
//促销会员价
MemberDiscountServiceImpl
memberDiscountServiceNew
=(
MemberDiscountServiceImpl
)
PromotionFactory
.
getPromotionService
(
ShoppingCartPromotionEnum
.
MEMBER_DISCOUNT_NEw
);
memberDiscountServiceNew
.
updateShoppingCartGoodsDiscountNew
(
couponPromotionVO
,
activityQueryDto
,
calculationDiscountResult
,
cartGoodsList
,
shoppingCartGoodsResponseVo
,
userLoginInfoDto
,
shoppingCartInfoRequestVo
);
/**
/**
* 满额减配送费 优选活动 再配送券
* 满额减配送费 优选活动 再配送券
*/
*/
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingDiscountService.java
View file @
39dee8bb
...
@@ -20,7 +20,8 @@ import cn.freemud.service.CouponService;
...
@@ -20,7 +20,8 @@ import cn.freemud.service.CouponService;
import
cn.freemud.service.active.ActiveFactory
;
import
cn.freemud.service.active.ActiveFactory
;
import
cn.freemud.service.active.ActiveService
;
import
cn.freemud.service.active.ActiveService
;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
cn.freemud.service.impl.AssortmentSdkService
;
import
cn.freemud.service.thirdparty.CalculationClient
;
import
cn.freemud.service.thirdparty.ActivityClient
;
//import cn.freemud.service.thirdparty.CalculationClient;
import
cn.freemud.utils.PropertyConvertUtil
;
import
cn.freemud.utils.PropertyConvertUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.freemud.application.sdk.api.log.ApiLog
;
import
com.freemud.application.sdk.api.log.ApiLog
;
...
@@ -59,12 +60,18 @@ public class CalculationSharingDiscountService {
...
@@ -59,12 +60,18 @@ public class CalculationSharingDiscountService {
private
ShoppingCartBaseServiceImpl
shoppingCartBaseService
;
private
ShoppingCartBaseServiceImpl
shoppingCartBaseService
;
@Autowired
@Autowired
private
CommonService
commonService
;
private
CommonService
commonService
;
// @Autowired
// private CalculationClient calculationClient;
@Autowired
@Autowired
private
CalculationClient
calculation
Client
;
private
ActivityClient
activity
Client
;
@Autowired
@Autowired
private
ActiveFactory
activeFactory
;
private
ActiveFactory
activeFactory
;
public
CalculationSharingDiscountService
()
{
}
// 新算价
// 新算价
public
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
getCalculationSharingDiscountResult
(
String
menuType
public
CalculationSharingDiscountResponseDto
.
CalculationDiscountResult
getCalculationSharingDiscountResult
(
String
menuType
...
@@ -200,7 +207,7 @@ public class CalculationSharingDiscountService {
...
@@ -200,7 +207,7 @@ public class CalculationSharingDiscountService {
ActiveService
activeService
=
activeFactory
.
getBuildChooseGoodsService
(
partnerId
);
ActiveService
activeService
=
activeFactory
.
getBuildChooseGoodsService
(
partnerId
);
activeService
.
buildChooseGoodsService
(
calculationSharingDiscountRequestDto
,
shoppingCartInfoRequestVo
==
null
?
null
:
shoppingCartInfoRequestVo
.
getChooseGoods
());
activeService
.
buildChooseGoodsService
(
calculationSharingDiscountRequestDto
,
shoppingCartInfoRequestVo
==
null
?
null
:
shoppingCartInfoRequestVo
.
getChooseGoods
());
try
{
try
{
sharingDiscountResponseDto
=
calculation
Client
.
calculationSharingDiscount
(
calculationSharingDiscountRequestDto
);
sharingDiscountResponseDto
=
activity
Client
.
calculationSharingDiscount
(
calculationSharingDiscountRequestDto
);
}
}
catch
(
Exception
e
)
{
catch
(
Exception
e
)
{
ErrorLog
.
printErrorLog
(
"calculation_discount_error"
,
"/calculation/discount/sharing"
,
calculationSharingDiscountRequestDto
,
e
);
ErrorLog
.
printErrorLog
(
"calculation_discount_error"
,
"/calculation/discount/sharing"
,
calculationSharingDiscountRequestDto
,
e
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/ActivityClient.java
View file @
39dee8bb
...
@@ -17,6 +17,8 @@ import cn.freemud.constant.ResponseCodeConstant;
...
@@ -17,6 +17,8 @@ import cn.freemud.constant.ResponseCodeConstant;
import
cn.freemud.constant.ResponseCodeKeyConstant
;
import
cn.freemud.constant.ResponseCodeKeyConstant
;
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.calculate.CalculationSharingDiscountRequestDto
;
import
cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
@@ -62,4 +64,12 @@ public interface ActivityClient {
...
@@ -62,4 +64,12 @@ public interface ActivityClient {
@PostMapping
(
"/calculation/discount/sharing"
)
@PostMapping
(
"/calculation/discount/sharing"
)
//@IgnoreFeignLogAnnotation(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MSG)
//@IgnoreFeignLogAnnotation(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MSG)
ActivityCalculationDiscountResponseDto
calculationDiscountSharing
(
ActivityCalculationDiscountRequestDto
activityCalculationDiscountRequestDto
);
ActivityCalculationDiscountResponseDto
calculationDiscountSharing
(
ActivityCalculationDiscountRequestDto
activityCalculationDiscountRequestDto
);
/**
* 促销新的算价对接
*/
@PostMapping
(
"/promotioncenter/calculateservice/discount/sharing"
)
//@IgnoreFeignLogAnnotation(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MEG)
CalculationSharingDiscountResponseDto
calculationSharingDiscount
(
CalculationSharingDiscountRequestDto
shareDiscountRequestDto
);
}
}
shopping-cart-application-service/src/main/java/cn/freemud/service/thirdparty/CalculationClient.java
View file @
39dee8bb
package
cn
.
freemud
.
service
.
thirdparty
;
//
package cn.freemud.service.thirdparty;
//
import
cn.freemud.annotations.IgnoreFeignLogAnnotation
;
//
import cn.freemud.annotations.IgnoreFeignLogAnnotation;
import
cn.freemud.constant.ResponseCodeConstant
;
//
import cn.freemud.constant.ResponseCodeConstant;
import
cn.freemud.constant.ResponseCodeKeyConstant
;
//
import cn.freemud.constant.ResponseCodeKeyConstant;
import
cn.freemud.entities.dto.calculate.CalculationSharingDiscountRequestDto
;
//
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountRequestDto;
import
cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto
;
//
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import
org.springframework.cloud.openfeign.FeignClient
;
//
import org.springframework.cloud.openfeign.FeignClient;
import
org.springframework.web.bind.annotation.PostMapping
;
//
import org.springframework.web.bind.annotation.PostMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
//
import org.springframework.web.bind.annotation.RequestMapping;
//
@FeignClient
(
name
=
"promotion-service"
,
url
=
"${saas.activityclient.feign.url}"
)
//
@FeignClient(name = "promotion-service", url = "${saas.activityclient.feign.url}")
@RequestMapping
(
produces
=
{
"application/json;charset=UTF-8"
})
//
@RequestMapping(produces = {"application/json;charset=UTF-8"})
public
interface
CalculationClient
{
//
public interface CalculationClient {
//
//
// TODO: 21-3-31 和 ActivityClient 待合并
//
// TODO: 21-3-31 和 ActivityClient 待合并
/**
//
/**
* 促销新的算价对接
//
* 促销新的算价对接
*/
//
*/
@PostMapping
(
"/promotioncenter/calculateservice/discount/sharing"
)
//
@PostMapping("/promotioncenter/calculateservice/discount/sharing")
//@IgnoreFeignLogAnnotation(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MEG)
//
//@IgnoreFeignLogAnnotation(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MEG)
CalculationSharingDiscountResponseDto
calculationSharingDiscount
(
CalculationSharingDiscountRequestDto
shareDiscountRequestDto
);
//
CalculationSharingDiscountResponseDto calculationSharingDiscount(CalculationSharingDiscountRequestDto shareDiscountRequestDto);
}
//
}
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