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
2653a0d9
Commit
2653a0d9
authored
Jun 15, 2020
by
chongfu.liang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/qa' into qa
parents
e70703f6
0c5b3919
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
66 additions
and
36 deletions
+66
-36
call-back-service/src/main/java/cn/freemud/amp/service/OrderCallBackMQService.java
+3
-1
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+3
-2
order-application-service/src/main/java/cn/freemud/entities/dto/order/CreatePrepayRequestDto.java
+3
-0
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
+1
-0
order-application-service/src/main/java/cn/freemud/service/impl/AppOrderServiceImpl.java
+8
-13
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+12
-9
shopping-cart-application-service/pom.xml
+1
-1
shopping-cart-application-service/src/main/java/cn/freemud/adapter/ShoppingCartConvertAdapter.java
+4
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuyAndGiftsPromotionService.java
+2
-0
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuySendPromotionService.java
+3
-1
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CustomerScoreService.java
+21
-5
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+5
-4
No files found.
call-back-service/src/main/java/cn/freemud/amp/service/OrderCallBackMQService.java
View file @
2653a0d9
...
@@ -37,6 +37,7 @@ import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderItemR
...
@@ -37,6 +37,7 @@ import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderItemR
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp
;
import
com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp
;
import
com.freemud.sdk.api.assortment.orderdistributor.request.DisRequest
;
import
com.freemud.sdk.api.assortment.orderdistributor.request.DisRequest
;
import
com.freemud.sdk.api.assortment.orderdistributor.service.OrderDistributionService
;
import
com.freemud.sdk.api.assortment.orderdistributor.service.OrderDistributionService
;
import
com.google.common.collect.Lists
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
...
@@ -141,7 +142,8 @@ public class OrderCallBackMQService {
...
@@ -141,7 +142,8 @@ public class OrderCallBackMQService {
}
}
try
{
try
{
OrderInfoReqs
orderInfoReqs
=
JSONObject
.
parseObject
(
body
.
getContent
(),
OrderInfoReqs
.
class
);
OrderInfoReqs
orderInfoReqs
=
JSONObject
.
parseObject
(
body
.
getContent
(),
OrderInfoReqs
.
class
);
if
(
orderInfoReqs
!=
null
&&
OrderClientType
.
SAAS
.
getIndex
().
equals
(
orderInfoReqs
.
getOrderClient
())
&&
List
<
Integer
>
allowOrderClientList
=
Lists
.
newArrayList
(
OrderClientType
.
SAAS
.
getIndex
(),
OrderClientType
.
ALIPAY
.
getIndex
());
if
(
orderInfoReqs
!=
null
&&
allowOrderClientList
.
contains
(
orderInfoReqs
.
getOrderClient
())
&&
((
body
.
getOperateType
()
==
0
&&
NewOrderStatus
.
PENDING_PAYMENT
.
getIndex
().
equals
(
orderInfoReqs
.
getOrderState
()))
||
((
body
.
getOperateType
()
==
0
&&
NewOrderStatus
.
PENDING_PAYMENT
.
getIndex
().
equals
(
orderInfoReqs
.
getOrderState
()))
||
(
body
.
getOperateType
()
==
1
&&
NewOrderStatus
.
PLACE_AN_ORDER
.
getIndex
().
equals
(
orderInfoReqs
.
getOrderState
()))))
{
(
body
.
getOperateType
()
==
1
&&
NewOrderStatus
.
PLACE_AN_ORDER
.
getIndex
().
equals
(
orderInfoReqs
.
getOrderState
()))))
{
return
orderInfoReqs
;
return
orderInfoReqs
;
...
...
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
2653a0d9
...
@@ -2778,7 +2778,7 @@ public class OrderAdapter {
...
@@ -2778,7 +2778,7 @@ public class OrderAdapter {
public
CreatePrepayRequestDto
convertToCreatePrepayRequestDto
(
String
partnerId
,
String
wxAppId
,
String
openId
,
public
CreatePrepayRequestDto
convertToCreatePrepayRequestDto
(
String
partnerId
,
String
wxAppId
,
String
openId
,
String
faceCode
,
String
cardCode
,
String
payCode
,
QueryOrdersResponse
.
DataBean
.
OrderBean
fatherOrderBean
,
String
faceCode
,
String
cardCode
,
String
payCode
,
QueryOrdersResponse
.
DataBean
.
OrderBean
fatherOrderBean
,
QueryOrdersResponse
.
DataBean
.
OrderBean
productOrderBean
,
long
totalAmount
,
int
cardAmount
,
OrderExtInfoDto
orderExtInfoDTO
,
QueryOrdersResponse
.
DataBean
.
OrderBean
productOrderBean
,
long
totalAmount
,
int
cardAmount
,
OrderExtInfoDto
orderExtInfoDTO
,
String
transId
){
String
transId
,
OrderClientType
orderClient
){
CreatePrepayRequestDto
requestDto
=
new
CreatePrepayRequestDto
();
CreatePrepayRequestDto
requestDto
=
new
CreatePrepayRequestDto
();
requestDto
.
setPartnerId
(
partnerId
);
requestDto
.
setPartnerId
(
partnerId
);
requestDto
.
setWxAppId
(
wxAppId
);
requestDto
.
setWxAppId
(
wxAppId
);
...
@@ -2792,6 +2792,7 @@ public class OrderAdapter {
...
@@ -2792,6 +2792,7 @@ public class OrderAdapter {
requestDto
.
setCardAmount
(
cardAmount
);
requestDto
.
setCardAmount
(
cardAmount
);
requestDto
.
setOrderExtInfoDTO
(
orderExtInfoDTO
);
requestDto
.
setOrderExtInfoDTO
(
orderExtInfoDTO
);
requestDto
.
setTransId
(
transId
);
requestDto
.
setTransId
(
transId
);
requestDto
.
setOrderClient
(
orderClient
);
return
requestDto
;
return
requestDto
;
}
}
...
@@ -2802,7 +2803,7 @@ public class OrderAdapter {
...
@@ -2802,7 +2803,7 @@ public class OrderAdapter {
createOrderOperateDto
.
getFatherOrderBean
(),
createOrderOperateDto
.
getProductOrderBean
(),
createOrderOperateDto
.
getFatherOrderBean
(),
createOrderOperateDto
.
getProductOrderBean
(),
createOrderOperateDto
.
getTotalAmount
()
==
null
?
0
:
createOrderOperateDto
.
getTotalAmount
(),
createOrderOperateDto
.
getTotalAmount
()
==
null
?
0
:
createOrderOperateDto
.
getTotalAmount
(),
createOrderOperateDto
.
getCardAmount
()
==
null
?
0
:
createOrderOperateDto
.
getCardAmount
(),
orderExtInfoDTO
,
createOrderOperateDto
.
getCardAmount
()
==
null
?
0
:
createOrderOperateDto
.
getCardAmount
(),
orderExtInfoDTO
,
createOrderOperateDto
.
getFatherOrderBean
().
getOid
());
createOrderOperateDto
.
getFatherOrderBean
().
getOid
()
,
null
);
}
}
/**
/**
...
...
order-application-service/src/main/java/cn/freemud/entities/dto/order/CreatePrepayRequestDto.java
View file @
2653a0d9
package
cn
.
freemud
.
entities
.
dto
.
order
;
package
cn
.
freemud
.
entities
.
dto
.
order
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -54,4 +55,6 @@ public class CreatePrepayRequestDto {
...
@@ -54,4 +55,6 @@ public class CreatePrepayRequestDto {
* 交易请求号
* 交易请求号
*/
*/
private
String
transId
;
private
String
transId
;
private
OrderClientType
orderClient
;
}
}
order-application-service/src/main/java/cn/freemud/enums/ResponseResult.java
View file @
2653a0d9
...
@@ -141,6 +141,7 @@ public enum ResponseResult {
...
@@ -141,6 +141,7 @@ public enum ResponseResult {
ORDER_HAS_PAID
(
"45057"
,
"订单已支付或已完成"
),
ORDER_HAS_PAID
(
"45057"
,
"订单已支付或已完成"
),
ORDER_PRE_PAYMENT_CLOSE_FAILED
(
"45058"
,
"关闭预支付订单失败"
),
ORDER_PRE_PAYMENT_CLOSE_FAILED
(
"45058"
,
"关闭预支付订单失败"
),
ORDER_OWNER_ERROR
(
"45059"
,
"订单归属错误"
),
ORDER_OWNER_ERROR
(
"45059"
,
"订单归属错误"
),
ORDER_STATUS_PRE_PAYMENT_NOT_SUPPORT
(
"45060"
,
"订单非待支付状态, 创建预支付失败"
),
/**
/**
* 支付
* 支付
...
...
order-application-service/src/main/java/cn/freemud/service/impl/AppOrderServiceImpl.java
View file @
2653a0d9
...
@@ -11,14 +11,7 @@ import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
...
@@ -11,14 +11,7 @@ import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
import
cn.freemud.entities.dto.shoppingCart.ActivityDiscountsDto
;
import
cn.freemud.entities.dto.shoppingCart.ActivityDiscountsDto
;
import
cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto
;
import
cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.CreateOrderResponseVo
;
import
cn.freemud.enums.*
;
import
cn.freemud.entities.vo.CreateOrderVo
;
import
cn.freemud.entities.vo.CreatePrepayVo
;
import
cn.freemud.entities.vo.PaysuccessNoticeMessage
;
import
cn.freemud.enums.OrderBeanType
;
import
cn.freemud.enums.PayStatus
;
import
cn.freemud.enums.ResponseResult
;
import
cn.freemud.enums.TradeState
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.interceptor.ServiceException
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.redis.RedisCache
;
import
cn.freemud.service.AppOrderService
;
import
cn.freemud.service.AppOrderService
;
...
@@ -31,6 +24,7 @@ import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
...
@@ -31,6 +24,7 @@ import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import
com.freemud.application.sdk.api.constant.ResponseResultEnum
;
import
com.freemud.application.sdk.api.constant.ResponseResultEnum
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType
;
import
com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType
;
import
com.freemud.application.sdk.api.ordercenter.enums.OrderClientType
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto
;
import
com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest
;
import
com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest
;
import
com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest
;
import
com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest
;
...
@@ -59,10 +53,10 @@ import org.springframework.stereotype.Service;
...
@@ -59,10 +53,10 @@ import org.springframework.stereotype.Service;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
@Service
@Service
public
class
AppOrderServiceImpl
implements
AppOrderService
{
public
class
AppOrderServiceImpl
implements
AppOrderService
{
...
@@ -133,7 +127,7 @@ public class AppOrderServiceImpl implements AppOrderService {
...
@@ -133,7 +127,7 @@ public class AppOrderServiceImpl implements AppOrderService {
String
transId
=
createPrepayVo
.
getOrderCode
()
+
redisService
.
increment
(
RedisUtil
.
getPaymentTransIdSequenceKey
(
createPrepayVo
.
getOrderCode
()),
1
,
TimeUnit
.
DAYS
);
String
transId
=
createPrepayVo
.
getOrderCode
()
+
redisService
.
increment
(
RedisUtil
.
getPaymentTransIdSequenceKey
(
createPrepayVo
.
getOrderCode
()),
1
,
TimeUnit
.
DAYS
);
CreatePrepayRequestDto
createPrepayRequestDto
=
orderAdapter
.
convertToCreatePrepayRequestDto
(
createPrepayVo
.
getPartnerId
(),
createPrepayVo
.
getPayAppId
(),
createPrepayVo
.
getOpenId
(),
faceCode
,
CreatePrepayRequestDto
createPrepayRequestDto
=
orderAdapter
.
convertToCreatePrepayRequestDto
(
createPrepayVo
.
getPartnerId
(),
createPrepayVo
.
getPayAppId
(),
createPrepayVo
.
getOpenId
(),
faceCode
,
cardCode
,
createPrepayVo
.
getPayCode
(),
createOrderOperateDto
.
getFatherOrderBean
(),
createOrderOperateDto
.
getProductOrderBean
(),
createOrderOperateDto
.
getTotalAmount
(),
cardCode
,
createPrepayVo
.
getPayCode
(),
createOrderOperateDto
.
getFatherOrderBean
(),
createOrderOperateDto
.
getProductOrderBean
(),
createOrderOperateDto
.
getTotalAmount
(),
createOrderOperateDto
.
getCardAmount
(),
extInfo
,
transId
);
createOrderOperateDto
.
getCardAmount
(),
extInfo
,
transId
,
OrderClientType
.
APP
);
redisService
.
savePaymentTransIdOrder
(
RedisUtil
.
getPaymentTransIdOrderKey
(
transId
),
productOrderBean
.
getOid
(),
30L
,
TimeUnit
.
MINUTES
);
redisService
.
savePaymentTransIdOrder
(
RedisUtil
.
getPaymentTransIdOrderKey
(
transId
),
productOrderBean
.
getOid
(),
30L
,
TimeUnit
.
MINUTES
);
return
orderservice
.
createPrepayOrder
(
createPrepayRequestDto
);
return
orderservice
.
createPrepayOrder
(
createPrepayRequestDto
);
}
}
...
@@ -193,9 +187,10 @@ public class AppOrderServiceImpl implements AppOrderService {
...
@@ -193,9 +187,10 @@ public class AppOrderServiceImpl implements AppOrderService {
}
}
private
void
checkOrderBefore
(
CreatePrepayVo
createPrepayVo
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
private
void
checkOrderBefore
(
CreatePrepayVo
createPrepayVo
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
)
{
if
(!
PayStatus
.
NOT_PAY
.
getCode
().
equals
(
orderBean
.
getPayStatus
()))
{
if
(!
PayStatus
.
NOT_PAY
.
getCode
().
equals
(
orderBean
.
getPayStatus
())
||
!
OrderStatus
.
WAIT_PAY
.
getCode
().
equals
(
orderBean
.
getStatus
()))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_
HAS_PAID
);
throw
new
ServiceException
(
ResponseResult
.
ORDER_
STATUS_PRE_PAYMENT_NOT_SUPPORT
);
}
}
OrderExtInfoDto
extInfo
=
JSONObject
.
parseObject
(
orderBean
.
getExtInfo
(),
OrderExtInfoDto
.
class
);
OrderExtInfoDto
extInfo
=
JSONObject
.
parseObject
(
orderBean
.
getExtInfo
(),
OrderExtInfoDto
.
class
);
if
(
extInfo
==
null
||
StringUtils
.
isBlank
(
extInfo
.
getSessionId
())
||
!
extInfo
.
getSessionId
().
equals
(
createPrepayVo
.
getSessionId
()))
{
if
(
extInfo
==
null
||
StringUtils
.
isBlank
(
extInfo
.
getSessionId
())
||
!
extInfo
.
getSessionId
().
equals
(
createPrepayVo
.
getSessionId
()))
{
throw
new
ServiceException
(
ResponseResult
.
ORDER_OWNER_ERROR
);
throw
new
ServiceException
(
ResponseResult
.
ORDER_OWNER_ERROR
);
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
2653a0d9
...
@@ -1717,7 +1717,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1717,7 +1717,7 @@ public class OrderServiceImpl implements Orderservice {
orderPayResponse
=
getOrderPayResponse
(
paymentRequest
,
createPrepayRequestDto
.
getFatherOrderBean
());
orderPayResponse
=
getOrderPayResponse
(
paymentRequest
,
createPrepayRequestDto
.
getFatherOrderBean
());
}
}
if
(
orderPayResponse
==
null
)
{
if
(
orderPayResponse
==
null
)
{
return
failPreOrderPay
(
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getProductOrderBean
(),
cardCode
);
return
failPreOrderPay
(
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getProductOrderBean
(),
cardCode
,
createPrepayRequestDto
.
getOrderClient
()
);
}
}
createOrderResponse
=
orderAdapter
.
convent2CreateFatherSonOrderResponseVo
(
orderPayResponse
,
createPrepayRequestDto
.
getProductOrderBean
());
createOrderResponse
=
orderAdapter
.
convent2CreateFatherSonOrderResponseVo
(
orderPayResponse
,
createPrepayRequestDto
.
getProductOrderBean
());
BaseResponse
baseEditResponse
=
this
.
updateOrderInfo
(
orderPayResponse
,
createPrepayRequestDto
.
getOrderExtInfoDTO
(),
createPrepayRequestDto
.
getProductOrderBean
(),
LogThreadLocal
.
getTrackingNo
());
BaseResponse
baseEditResponse
=
this
.
updateOrderInfo
(
orderPayResponse
,
createPrepayRequestDto
.
getOrderExtInfoDTO
(),
createPrepayRequestDto
.
getProductOrderBean
(),
LogThreadLocal
.
getTrackingNo
());
...
@@ -1794,13 +1794,16 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1794,13 +1794,16 @@ public class OrderServiceImpl implements Orderservice {
return
orderPayResponse
;
return
orderPayResponse
;
}
}
private
BaseResponse
failPreOrderPay
(
String
trackingNo
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
String
cardCode
)
{
private
BaseResponse
failPreOrderPay
(
String
trackingNo
,
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
String
cardCode
,
OrderClientType
orderClient
)
{
//失败冲正库存,冲正活动库存,取消订单
List
<
OrderClientType
>
notCancelOrderClientList
=
Lists
.
newArrayList
(
OrderClientType
.
APP
);
CancelOrderRequest
cancelOrderRequest
=
orderAdapter
.
convent2CancelOrderRequest
(
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
if
(!
notCancelOrderClientList
.
contains
(
orderClient
))
{
AfterSalesType
.
SYSTEM_CANCEL
,
"获取预支付失败"
,
trackingNo
,
null
);
//失败冲正库存,冲正活动库存,取消订单
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
CancelOrderRequest
cancelOrderRequest
=
orderAdapter
.
convent2CancelOrderRequest
(
orderBean
.
getOid
(),
orderBean
.
getCompanyId
(),
// TODO: 2019/9/10 hubowen mq推送变更
AfterSalesType
.
SYSTEM_CANCEL
,
"获取预支付失败"
,
trackingNo
,
null
);
backOrdersStatusChange
(
orderBean
.
getOid
(),
orderBean
.
getStatus
());
orderCenterSdkService
.
orderCancel
(
cancelOrderRequest
);
// TODO: 2019/9/10 hubowen mq推送变更
backOrdersStatusChange
(
orderBean
.
getOid
(),
orderBean
.
getStatus
());
}
//svc 卡支付失败
//svc 卡支付失败
if
(
StringUtils
.
isNotBlank
(
cardCode
))
{
if
(
StringUtils
.
isNotBlank
(
cardCode
))
{
return
ResponseUtil
.
error
(
ResponseResultEnum
.
PAY_BACKEND_CONFIG_ERROR
.
getCode
(),
ResponseResultEnum
.
PAY_BACKEND_CONFIG_ERROR
.
getMessage
(),
null
);
return
ResponseUtil
.
error
(
ResponseResultEnum
.
PAY_BACKEND_CONFIG_ERROR
.
getCode
(),
ResponseResultEnum
.
PAY_BACKEND_CONFIG_ERROR
.
getMessage
(),
null
);
...
@@ -2124,7 +2127,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -2124,7 +2127,7 @@ public class OrderServiceImpl implements Orderservice {
if
(
createOrderVo
.
getFaceCode
()
!=
null
){
if
(
createOrderVo
.
getFaceCode
()
!=
null
){
createOrderVo
.
setCardCode
(
createOrderVo
.
getFaceCode
());
createOrderVo
.
setCardCode
(
createOrderVo
.
getFaceCode
());
}
}
return
failPreOrderPay
(
LogThreadLocal
.
getTrackingNo
(),
productOrderBean
,
createOrderVo
.
getCardCode
());
return
failPreOrderPay
(
LogThreadLocal
.
getTrackingNo
(),
productOrderBean
,
createOrderVo
.
getCardCode
()
,
null
);
}
}
//更新订单extinfo信息
//更新订单extinfo信息
BaseResponse
baseEditResponse
=
this
.
updateOrderInfo
(
orderPayResponse
,
orderExtInfoDTO
,
productOrderBean
,
LogThreadLocal
.
getTrackingNo
());
BaseResponse
baseEditResponse
=
this
.
updateOrderInfo
(
orderPayResponse
,
orderExtInfoDTO
,
productOrderBean
,
LogThreadLocal
.
getTrackingNo
());
...
...
shopping-cart-application-service/pom.xml
View file @
2653a0d9
...
@@ -45,7 +45,7 @@
...
@@ -45,7 +45,7 @@
<dependency>
<dependency>
<groupId>
cn.freemud
</groupId>
<groupId>
cn.freemud
</groupId>
<artifactId>
assortment-shoppingcart-sdk
</artifactId>
<artifactId>
assortment-shoppingcart-sdk
</artifactId>
<version>
1.1.
4
-SNAPSHOT
</version>
<version>
1.1.
5
-SNAPSHOT
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.freemud.application.service.sdk
</groupId>
<groupId>
com.freemud.application.service.sdk
</groupId>
...
...
shopping-cart-application-service/src/main/java/cn/freemud/adapter/ShoppingCartConvertAdapter.java
View file @
2653a0d9
...
@@ -48,6 +48,8 @@ public class ShoppingCartConvertAdapter {
...
@@ -48,6 +48,8 @@ public class ShoppingCartConvertAdapter {
cartGoodsDetailDto
.
setSkuName
(
product
.
getSkuName
());
cartGoodsDetailDto
.
setSkuName
(
product
.
getSkuName
());
cartGoodsDetailDto
.
setPicture
(
getProductsVo
!=
null
?
getProductsVo
.
getSpuPicture
()
:
""
);
cartGoodsDetailDto
.
setPicture
(
getProductsVo
!=
null
?
getProductsVo
.
getSpuPicture
()
:
""
);
cartGoodsDetailDto
.
setActivityType
(
ActivityTypeEnum
.
TYPE_81
.
getCode
());
cartGoodsDetailDto
.
setActivityType
(
ActivityTypeEnum
.
TYPE_81
.
getCode
());
cartGoodsDetailDto
.
setClassificationId
(
getProductsVo
.
getCategory
());
cartGoodsDetailDto
.
setClassificationName
(
getProductsVo
.
getCategoryName
());
List
<
ShoppingCartGoodsDto
.
CartGoodsDetailDto
.
CartGoodsExtra
>
cartGoodsExtraList
=
new
ArrayList
<>();
List
<
ShoppingCartGoodsDto
.
CartGoodsDetailDto
.
CartGoodsExtra
>
cartGoodsExtraList
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
product
.
getAttributes
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
product
.
getAttributes
()))
{
for
(
CreateOrderVo
.
PremiumExchangeActivity
.
Product
.
Attribute
attribute
:
product
.
getAttributes
())
{
for
(
CreateOrderVo
.
PremiumExchangeActivity
.
Product
.
Attribute
attribute
:
product
.
getAttributes
())
{
...
@@ -323,6 +325,8 @@ public class ShoppingCartConvertAdapter {
...
@@ -323,6 +325,8 @@ public class ShoppingCartConvertAdapter {
cartGoods
.
setCreateTimeMili
(
cartGood
.
getCreateTimeMili
());
cartGoods
.
setCreateTimeMili
(
cartGood
.
getCreateTimeMili
());
cartGoods
.
setSkuName
(
cartGood
.
getSkuName
());
cartGoods
.
setSkuName
(
cartGood
.
getSkuName
());
cartGoods
.
setSkuName
(
cartGood
.
getSkuName
());
cartGoods
.
setSkuName
(
cartGood
.
getSkuName
());
cartGood
.
setClassificationId
(
cartGood
.
getClassificationId
());
cartGood
.
setClassificationName
(
cartGood
.
getClassificationName
());
cartGoods
.
setActivityType
(
ActivityTypeEnum
.
TYPE_61
.
getCode
());
cartGoods
.
setActivityType
(
ActivityTypeEnum
.
TYPE_61
.
getCode
());
return
cartGoods
;
return
cartGoods
;
}
}
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuyAndGiftsPromotionService.java
View file @
2653a0d9
...
@@ -88,6 +88,8 @@ public class BuyAndGiftsPromotionService implements IPromotionService {
...
@@ -88,6 +88,8 @@ public class BuyAndGiftsPromotionService implements IPromotionService {
cartGoods
.
setUnit
(
product
.
getUnit
());
cartGoods
.
setUnit
(
product
.
getUnit
());
cartGoods
.
setWeight
(
product
.
getWeight
());
cartGoods
.
setWeight
(
product
.
getWeight
());
cartGoods
.
setQty
(
sendGoods
.
getSendNumber
());
cartGoods
.
setQty
(
sendGoods
.
getSendNumber
());
cartGoods
.
setClassificationId
(
product
.
getCategory
());
cartGoods
.
setClassificationName
(
product
.
getCategoryName
());
// nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额
// nodeId标识activeCode,用于计算均摊时每个商品在每个活动上均摊金额
cartGoods
.
setNodeId
(
sendActivity
.
getActivityCode
());
cartGoods
.
setNodeId
(
sendActivity
.
getActivityCode
());
cartGoodsList
.
add
(
cartGoods
);
cartGoodsList
.
add
(
cartGoods
);
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/BuySendPromotionService.java
View file @
2653a0d9
...
@@ -221,7 +221,9 @@ public class BuySendPromotionService implements IPromotionService {
...
@@ -221,7 +221,9 @@ public class BuySendPromotionService implements IPromotionService {
}
}
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
SendActivity
.
SendGoods
sendGoods
=
sendGoodsMap
.
get
(
cartGood
.
getSpuId
());
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
SendActivity
.
SendGoods
sendGoods
=
sendGoodsMap
.
get
(
cartGood
.
getSpuId
());
CartGoods
cartGoods
=
shoppingCartConvertAdapter
.
convent2CartGoods
(
cartGood
,
sendGoods
.
getNowPrice
());
CartGoods
cartGoods
=
shoppingCartConvertAdapter
.
convent2CartGoods
(
cartGood
,
sendGoods
.
getNowPrice
());
cartGoods
.
setQty
(
sendGoods
.
getSendNumber
()
>
0
?
sendGoods
.
getSendNumber
()
:
SEND_NUMBER
);
cartGoods
.
setQty
(
SEND_NUMBER
);
cartGoods
.
setClassificationId
(
cartGood
.
getClassificationId
());
cartGoods
.
setClassificationName
(
cartGood
.
getClassificationName
());
newCartGoodsList
.
add
(
cartGoods
);
newCartGoodsList
.
add
(
cartGoods
);
}
}
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/CustomerScoreService.java
View file @
2653a0d9
...
@@ -9,16 +9,19 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
...
@@ -9,16 +9,19 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import
cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest
;
import
cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest
;
import
cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse
;
import
cn.freemud.entities.dto.user.GetUserScoreUserDetailResponse
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.entities.vo.*
;
import
cn.freemud.enums.ActivityTypeEnum
;
import
cn.freemud.service.IPromotionService
;
import
cn.freemud.service.IPromotionService
;
import
cn.freemud.service.thirdparty.CustomScoreClient
;
import
cn.freemud.service.thirdparty.CustomScoreClient
;
import
cn.freemud.utils.LogUtil
;
import
cn.freemud.utils.LogUtil
;
import
com.freemud.application.sdk.api.constant.FMStatusCode
;
import
com.freemud.application.sdk.api.constant.FMStatusCode
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
com.freemud.application.sdk.api.log.ErrorLog
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -66,15 +69,28 @@ public class CustomerScoreService implements IPromotionService {
...
@@ -66,15 +69,28 @@ public class CustomerScoreService implements IPromotionService {
customerScoreVo
.
setReduceAmount
(
getValue
(
userScoreUseDetail
.
getResult
().
getReduceAmount
()));
customerScoreVo
.
setReduceAmount
(
getValue
(
userScoreUseDetail
.
getResult
().
getReduceAmount
()));
customerScoreVo
.
setReducePriceLimit
(
getValue
(
userScoreUseDetail
.
getResult
().
getReducePriceLimit
()));
customerScoreVo
.
setReducePriceLimit
(
getValue
(
userScoreUseDetail
.
getResult
().
getReducePriceLimit
()));
customerScoreVo
.
setOverlayOffers
(
userScoreUseDetail
.
getResult
().
getOverlayOffers
());
customerScoreVo
.
setOverlayOffers
(
userScoreUseDetail
.
getResult
().
getOverlayOffers
());
customerScoreVo
.
setScoreReduceState
(
getValue
(
userScoreUseDetail
.
getResult
().
getScoreState
()));
// 是否可优惠同享{0所有订单均可抵扣,1仅限原价订单才可抵扣(享受了促销活动、或使用了优惠券,不能进行积分抵扣
// 是否可优惠同享{0所有订单均可抵扣,1仅限原价订单才可抵扣(享受了促销活动、或使用了优惠券,不能进行积分抵扣
if
(
getValue
(
userScoreUseDetail
.
getResult
().
getOverlayOffers
())
==
0
)
{
if
(
getValue
(
userScoreUseDetail
.
getResult
().
getOverlayOffers
())
==
0
)
{
customerScoreVo
.
setScoreReduceState
(
getValue
(
userScoreUseDetail
.
getResult
().
getScoreState
()));
customerScoreVo
.
setScoreReduceState
(
getValue
(
userScoreUseDetail
.
getResult
().
getScoreState
()));
}
else
{
}
else
{
if
(
StringUtils
.
isNotBlank
(
shoppingCartInfoRequestVo
.
getCouponCode
())
||
(
calculationDiscountResult
!=
null
&&
calculationDiscountResult
.
getTotalDiscountAmount
().
intValue
()
>
0
))
{
if
(
StringUtils
.
isNotBlank
(
shoppingCartInfoRequestVo
.
getCouponCode
())
||
(
calculationDiscountResult
!=
null
&&
calculationDiscountResult
.
getTotalDiscountAmount
().
intValue
()
>
0
)
//积分抵扣开关禁用
||
(
calculationDiscountResult
!=
null
&&
!
CollectionUtils
.
isEmpty
(
calculationDiscountResult
.
getDiscounts
())))
{
customerScoreVo
.
setScoreReduceState
(
5
);
int
type81
=
0
;
userScoreUseDetail
.
getResult
().
setScoreState
(
5
);
for
(
ActivityCalculationDiscountResponseDto
.
CalculationDiscountResult
.
Discount
discount
:
calculationDiscountResult
.
getDiscounts
())
{
discountAmount
=
0
;
if
(
ActivityTypeEnum
.
TYPE_81
.
getCode
().
equals
(
discount
.
getType
()))
{
type81
=
1
;
break
;
}
}
//积分抵扣开关禁用 过滤换购
if
(
type81
==
0
||
(
type81
==
1
&&
!
CollectionUtils
.
isEmpty
(
shoppingCartInfoRequestVo
.
getSendGoods
()))
||
(
type81
==
1
&&
calculationDiscountResult
.
getDiscounts
().
size
()
>
1
))
{
customerScoreVo
.
setScoreReduceState
(
5
);
userScoreUseDetail
.
getResult
().
setScoreState
(
5
);
discountAmount
=
0
;
customerScoreVo
.
setReduceAmount
(
0
);
}
}
}
}
}
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
2653a0d9
...
@@ -417,7 +417,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -417,7 +417,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
if
((
CollectionUtils
.
isEmpty
(
availableStocks
.
getResult
()))
||
(
qty
>
availableStocks
.
getResult
().
get
(
0
).
getQty
()))
{
if
((
CollectionUtils
.
isEmpty
(
availableStocks
.
getResult
()))
||
(
qty
>
availableStocks
.
getResult
().
get
(
0
).
getQty
()))
{
Integer
stock
=
0
;
Integer
stock
=
0
;
if
((
stock
=
availableStocks
.
getResult
().
get
(
0
).
getQty
())
>
0
)
{
if
((
stock
=
availableStocks
.
getResult
().
get
(
0
).
getQty
())
>
0
)
{
throw
new
BizServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
,
"仅剩"
+
stock
+
"件"
);
throw
new
BizServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
,
"仅剩"
+
stock
+
"件
库存了
"
);
}
}
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
);
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
);
}
}
...
@@ -1220,7 +1220,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1220,7 +1220,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
||
availableStocks
.
getResult
().
get
(
0
).
getQty
()
<
qty
))
{
||
availableStocks
.
getResult
().
get
(
0
).
getQty
()
<
qty
))
{
Integer
stock
=
0
;
Integer
stock
=
0
;
if
((
stock
=
availableStocks
.
getResult
().
get
(
0
).
getQty
())
>
0
)
{
if
((
stock
=
availableStocks
.
getResult
().
get
(
0
).
getQty
())
>
0
)
{
throw
new
BizServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
,
"仅剩"
+
stock
+
"件"
);
throw
new
BizServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
,
"仅剩"
+
stock
+
"件
库存了
"
);
}
}
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
);
throw
new
ServiceException
(
ResponseResult
.
SHOPPING_CART_STOCK_NOT_HAVE
);
}
}
...
@@ -1534,12 +1534,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1534,12 +1534,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
*/
*/
private
Integer
checkSkuQty
(
List
<
CartGoods
>
allCartGoodsList
,
CartGoods
cartGoods
)
{
private
Integer
checkSkuQty
(
List
<
CartGoods
>
allCartGoodsList
,
CartGoods
cartGoods
)
{
Integer
qty
=
0
;
Integer
qty
=
0
;
if
(
allCartGoodsList
==
null
)
{
if
(
CollectionUtils
.
isEmpty
(
allCartGoodsList
)
)
{
qty
=
cartGoods
.
getQty
();
qty
=
cartGoods
.
getQty
();
}
else
{
}
else
{
qty
=
cartGoods
.
getQty
();
for
(
CartGoods
goods
:
allCartGoodsList
)
{
for
(
CartGoods
goods
:
allCartGoodsList
)
{
if
(
goods
.
getSkuId
().
equals
(
cartGoods
.
getSkuId
())
&&
goods
.
getSpuId
().
equals
(
cartGoods
.
getSpuId
()))
{
if
(
goods
.
getSkuId
().
equals
(
cartGoods
.
getSkuId
())
&&
goods
.
getSpuId
().
equals
(
cartGoods
.
getSpuId
()))
{
qty
=
qty
+
cartG
oods
.
getQty
();
qty
+=
g
oods
.
getQty
();
}
}
}
}
}
}
...
...
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