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
a1968cf5
Commit
a1968cf5
authored
Sep 21, 2020
by
zhiheng.zhang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/2020/09/11-1.9.39-混合支付-张志恒' into develop
parents
e5b964fe
aa6dbc03
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
8 additions
and
92 deletions
+8
-92
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
+0
-74
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+1
-13
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
+7
-5
No files found.
order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
View file @
a1968cf5
...
@@ -3209,80 +3209,6 @@ public class OrderAdapter {
...
@@ -3209,80 +3209,6 @@ public class OrderAdapter {
public
static
boolean
isPayOfSVC
(
String
payChannel
)
{
public
static
boolean
isPayOfSVC
(
String
payChannel
)
{
return
StringUtils
.
isNotBlank
(
payChannel
)
&&
OrderAdapter
.
PAY_CODE_10102
.
equalsIgnoreCase
(
payChannel
);
return
StringUtils
.
isNotBlank
(
payChannel
)
&&
OrderAdapter
.
PAY_CODE_10102
.
equalsIgnoreCase
(
payChannel
);
}
}
/**
* 生成取餐码
* @param partnerId 商户ID
* @param storeId 门店ID
* @return
*/
public
String
generateTackCode
(
String
partnerId
,
String
storeId
){
String
pickUpGoodsNo
=
generateNumber
(
6
);
String
key
=
this
.
getOrderTackCodeKey
(
partnerId
,
storeId
);
if
(!
redisTemplate
.
opsForHash
().
hasKey
(
key
,
storeId
+
pickUpGoodsNo
))
{
redisTemplate
.
opsForHash
().
put
(
key
,
storeId
+
pickUpGoodsNo
,
pickUpGoodsNo
);
redisTemplate
.
expire
(
key
,
getSecondsNextEarlyMorning
(),
TimeUnit
.
SECONDS
);
}
else
{
generateTackCode
(
partnerId
,
storeId
);
}
return
pickUpGoodsNo
;
}
/**
* 获取取餐码key
* @param partnerId
* @return
*/
public
String
getOrderTackCodeKey
(
String
partnerId
,
String
storeId
){
Date
currentDay
=
new
Date
();
String
todayStr
=
formatDate
(
currentDay
);
StringBuilder
key
=
new
StringBuilder
(
TAKECODEKEY
).
append
(
REDIS_KEY_SEP
)
.
append
(
partnerId
)
.
append
(
REDIS_KEY_SEP
)
.
append
(
storeId
)
.
append
(
REDIS_KEY_SEP
)
.
append
(
todayStr
);
return
key
.
toString
();
}
public
static
SimpleDateFormat
defaultDateFormater
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
private
String
formatDate
(
Date
date
){
return
defaultDateFormater
.
format
(
date
);
}
/**
* 返回一个定长的随机字符串(只包含大小写字母、数字)
*
* @param length
* 随机字符串长度
* @return 随机字符串
*/
public
static
String
generateNumber
(
int
length
)
{
StringBuffer
sb
=
new
StringBuffer
();
Random
random
=
new
Random
();
for
(
int
i
=
0
;
i
<
length
;
i
++)
{
if
(
i
==
0
){
sb
.
append
(
numberCharWithoutZero
.
charAt
(
random
.
nextInt
(
numberCharWithoutZero
.
length
())));
}
else
{
sb
.
append
(
numberChar
.
charAt
(
random
.
nextInt
(
numberChar
.
length
())));
}
}
return
sb
.
toString
();
}
private
Long
getSecondsNextEarlyMorning
(){
Calendar
cal
=
Calendar
.
getInstance
();
cal
.
add
(
Calendar
.
DAY_OF_YEAR
,
1
);
cal
.
set
(
Calendar
.
HOUR_OF_DAY
,
0
);
cal
.
set
(
Calendar
.
SECOND
,
0
);
cal
.
set
(
Calendar
.
MINUTE
,
0
);
cal
.
set
(
Calendar
.
MILLISECOND
,
0
);
return
(
cal
.
getTimeInMillis
()
-
System
.
currentTimeMillis
())
/
1000
;
}
/**
/**
* 支付信息转换
* 支付信息转换
*/
*/
...
...
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
a1968cf5
...
@@ -445,18 +445,6 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -445,18 +445,6 @@ public class OrderServiceImpl implements Orderservice {
String
string2
=
JSONObject
.
toJSONString
(
payAccessRes
);
String
string2
=
JSONObject
.
toJSONString
(
payAccessRes
);
JSONObject
jsonObject2
=
JSONObject
.
parseObject
(
string2
);
JSONObject
jsonObject2
=
JSONObject
.
parseObject
(
string2
);
payAccessResponse
=
jsonObject2
.
toJavaObject
(
PayAccessResponse
.
class
);
payAccessResponse
=
jsonObject2
.
toJavaObject
(
PayAccessResponse
.
class
);
//获取生态缓存中的配置项,如果mealCodeRule的值不为空并且值等于2,则随机生成取参数,当日不重复
String
mealCodeRule
=
redisCache
.
getValue
(
"mealCodeRule"
);
if
(!
StringUtils
.
isEmpty
(
mealCodeRule
)
&&
"2"
.
equalsIgnoreCase
(
mealCodeRule
)){
//更新db中的取餐码,生成取餐码
OrderModifyRelatingCodeReq
relatingCodeReq
=
new
OrderModifyRelatingCodeReq
();
relatingCodeReq
.
setOrderCode
(
orderBean
.
getOid
());
relatingCodeReq
.
setOperator
(
orderBean
.
getCreateUser
());
relatingCodeReq
.
setPartnerId
(
orderBean
.
getCompanyId
());
relatingCodeReq
.
setPickUpGoodsNo
(
orderAdapter
.
generateTackCode
(
orderBean
.
getCompanyId
(),
orderBean
.
getShopId
()));
orderCenterSdkService
.
updatePickUpGoodNo
(
relatingCodeReq
,
LogThreadLocal
.
getTrackingNo
());
}
// 添加幂等处理,若订单是已支付成功状态,直接返回成功
// 添加幂等处理,若订单是已支付成功状态,直接返回成功
if
(!
RESPONSE_SUCCESS_CODE
.
equals
(
payAccessResponse
.
getErrcode
()))
{
if
(!
RESPONSE_SUCCESS_CODE
.
equals
(
payAccessResponse
.
getErrcode
()))
{
OrderBean
saasOrder
=
getOrderBeanByOrderId
(
confirmOrderDto
.
getOrderId
()).
get
(
OrderBeanType
.
SAASORDER
.
getCode
());
OrderBean
saasOrder
=
getOrderBeanByOrderId
(
confirmOrderDto
.
getOrderId
()).
get
(
OrderBeanType
.
SAASORDER
.
getCode
());
...
@@ -1545,7 +1533,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -1545,7 +1533,7 @@ public class OrderServiceImpl implements Orderservice {
}
}
}
}
if
(
OrderStatus
.
COMPLETE
.
getCode
().
equals
(
orderBean
.
getStatus
()))
{
if
(
OrderStatus
.
COMPLETE
.
getCode
().
equals
(
orderBean
.
getStatus
()))
{
boolean
refundButton
=
this
.
orderAdapter
.
checkRefundButton
(
queryOrderByIdResponse
.
getData
(),
userInfo
.
getWxAppId
());
boolean
refundButton
=
orderAdapter
.
checkRefundButton
(
queryOrderByIdResponse
.
getData
(),
userInfo
.
getWxAppId
());
if
(!
refundButton
)
{
if
(!
refundButton
)
{
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_NOT_ALLOW_REFUND
.
getCode
(),
ResponseResult
.
ORDER_NOT_ALLOW_REFUND
.
getMessage
());
return
ResponseUtil
.
error
(
ResponseResult
.
ORDER_NOT_ALLOW_REFUND
.
getCode
(),
ResponseResult
.
ORDER_NOT_ALLOW_REFUND
.
getMessage
());
}
}
...
...
shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
View file @
a1968cf5
...
@@ -1441,11 +1441,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
...
@@ -1441,11 +1441,13 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
Integer
deliveryAmount
=
shoppingCartGoodsResponseVo
.
getDiscountDeliveryAmount
().
intValue
();
Integer
deliveryAmount
=
shoppingCartGoodsResponseVo
.
getDiscountDeliveryAmount
().
intValue
();
orderAmount
+=
deliveryAmount
;
orderAmount
+=
deliveryAmount
;
}
}
Integer
amount1
=
response
.
getData
().
getData
().
getCardSimpleInfos
().
get
(
0
).
getAmount
();
//混合支付无需校验svc卡余额
Integer
vamount
=
response
.
getData
().
getData
().
getCardSimpleInfos
().
get
(
0
).
getVamount
();
// Integer amount1 = response.getData().getData().getCardSimpleInfos().get(0).getAmount();
if
(
orderAmount
>
amount1
+
vamount
)
{
// Integer vamount = response.getData().getData().getCardSimpleInfos().get(0).getVamount();
throw
new
ServiceException
(
ResponseResult
.
USER_SVC_CARD_AMOUNT_DEFICIENCY
);
//
}
// if (orderAmount > amount1 + vamount) {
// throw new ServiceException(ResponseResult.USER_SVC_CARD_AMOUNT_DEFICIENCY);
// }
BigDecimal
bigDecimal
=
new
BigDecimal
(
orderAmount
);
BigDecimal
bigDecimal
=
new
BigDecimal
(
orderAmount
);
String
amountStr
=
bigDecimal
.
divide
(
new
BigDecimal
(
100
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
).
toString
();
String
amountStr
=
bigDecimal
.
divide
(
new
BigDecimal
(
100
)).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
).
toString
();
shoppingCartGoodsResponseVo
.
setTotalAmount
(
0L
);
shoppingCartGoodsResponseVo
.
setTotalAmount
(
0L
);
...
...
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