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
cbccda8a
Commit
cbccda8a
authored
Nov 09, 2020
by
chongfu.liang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
农工商卖券
parent
d4b4fc33
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
71 additions
and
11 deletions
+71
-11
order-application-service/pom.xml
+1
-1
order-application-service/src/main/java/cn/freemud/constant/CommonRedisKeyConstant.java
+6
-0
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
+6
-3
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
+58
-7
No files found.
order-application-service/pom.xml
View file @
cbccda8a
...
@@ -40,7 +40,7 @@
...
@@ -40,7 +40,7 @@
<dependency>
<dependency>
<groupId>
cn.freemud
</groupId>
<groupId>
cn.freemud
</groupId>
<artifactId>
assortment-ordercenter-sdk
</artifactId>
<artifactId>
assortment-ordercenter-sdk
</artifactId>
<version>
2.0.
17-RELEASE
</version>
<version>
2.0.
24-SNAPSHOT
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
com.freemud.application.service.sdk
</groupId>
<groupId>
com.freemud.application.service.sdk
</groupId>
...
...
order-application-service/src/main/java/cn/freemud/constant/CommonRedisKeyConstant.java
View file @
cbccda8a
...
@@ -10,4 +10,10 @@ public class CommonRedisKeyConstant {
...
@@ -10,4 +10,10 @@ public class CommonRedisKeyConstant {
* 不需要授权得url
* 不需要授权得url
*/
*/
public
final
static
String
SAAS_NOT_AUTHORIZED_URL
=
"saas:micro:not:authorized:url"
;
public
final
static
String
SAAS_NOT_AUTHORIZED_URL
=
"saas:micro:not:authorized:url"
;
/**
* 农工商流水号
*/
public
final
static
String
NGS_FLOWNO_PARTNER_DATE_NO
=
"ngs:flowno:partner:date:no"
;
}
}
order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
View file @
cbccda8a
...
@@ -2232,7 +2232,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -2232,7 +2232,7 @@ public class OrderServiceImpl implements Orderservice {
orderPayResponse
=
uSvcPay
(
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
transId
,
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getUnionPayCard
());
orderPayResponse
=
uSvcPay
(
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
transId
,
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getUnionPayCard
());
}
else
if
(
totalAmount
>
0
&&
StringUtils
.
isBlank
(
cardCode
))
{
}
else
if
(
totalAmount
>
0
&&
StringUtils
.
isBlank
(
cardCode
))
{
String
partnerPayOvertime
=
this
.
getPartnerPayOvertime
(
createPrepayRequestDto
.
getPartnerId
());
String
partnerPayOvertime
=
this
.
getPartnerPayOvertime
(
createPrepayRequestDto
.
getPartnerId
());
orderPayResponse
=
getPreOrderPay
(
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getCardAmount
(),
transId
,
partnerPayOvertime
);
orderPayResponse
=
getPreOrderPay
(
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
LogThreadLocal
.
getTrackingNo
(),
createPrepayRequestDto
.
getCardAmount
(),
transId
,
partnerPayOvertime
,
createPrepayRequestDto
.
getOrderExtInfoDTO
()
);
}
else
if
(
totalAmount
>
0
&&
StringUtils
.
isNotBlank
(
cardCode
))
{
}
else
if
(
totalAmount
>
0
&&
StringUtils
.
isNotBlank
(
cardCode
))
{
//svc卡支付
//svc卡支付
orderPayResponse
=
svcPay
(
cardCode
,
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
transId
,
LogThreadLocal
.
getTrackingNo
());
orderPayResponse
=
svcPay
(
cardCode
,
createPrepayRequestDto
.
getFatherOrderBean
(),
paymentRequest
,
transId
,
LogThreadLocal
.
getTrackingNo
());
...
@@ -2394,10 +2394,13 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -2394,10 +2394,13 @@ public class OrderServiceImpl implements Orderservice {
return
ResponseUtil
.
error
(
ResponseResultEnum
.
PAY_UNIFIED_ORDER_ERROR
.
getCode
(),
ResponseResultEnum
.
PAY_UNIFIED_ORDER_ERROR
.
getMessage
(),
null
);
return
ResponseUtil
.
error
(
ResponseResultEnum
.
PAY_UNIFIED_ORDER_ERROR
.
getCode
(),
ResponseResultEnum
.
PAY_UNIFIED_ORDER_ERROR
.
getMessage
(),
null
);
}
}
public
OrderPayResponse
getPreOrderPay
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
PaymentRequest
paymentRequest
,
String
trackingNo
,
Integer
cardAmount
,
String
transId
,
String
partnerPayOvertime
)
{
public
OrderPayResponse
getPreOrderPay
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
,
PaymentRequest
paymentRequest
,
String
trackingNo
,
Integer
cardAmount
,
String
transId
,
String
partnerPayOvertime
,
OrderExtInfoDto
orderExtInfoDto
)
{
OrderPayResponse
orderPayResponse
;
OrderPayResponse
orderPayResponse
;
try
{
try
{
UnifiedOrderRequest
request
=
orderAdapter
.
convent2UnifiedOrderRequest
(
orderBean
,
paymentRequest
,
orderBean
.
getAmount
(),
cardAmount
,
transId
,
partnerPayOvertime
);
UnifiedOrderRequest
request
=
orderAdapter
.
convent2UnifiedOrderRequest
(
orderBean
,
paymentRequest
,
orderBean
.
getAmount
(),
cardAmount
,
transId
,
partnerPayOvertime
);
if
(
orderExtInfoDto
!=
null
&&
StringUtils
.
isNotBlank
(
orderExtInfoDto
.
getStationId
()))
{
request
.
setStationId
(
orderExtInfoDto
.
getStationId
());
}
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
UnifiedOrderResponse
>
responseBase
=
standardPaymentService
.
unifiedOrder
(
request
,
trackingNo
);
com
.
freemud
.
application
.
sdk
.
api
.
base
.
BaseResponse
<
UnifiedOrderResponse
>
responseBase
=
standardPaymentService
.
unifiedOrder
(
request
,
trackingNo
);
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
responseBase
.
getCode
()))
{
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS_STR
.
equals
(
responseBase
.
getCode
()))
{
log
.
error
(
"支付SDK返回信息错误,trackingNo:{} request:{} response:{}"
,
trackingNo
,
JSONObject
.
toJSONString
(
request
),
JSONObject
.
toJSONString
(
responseBase
));
log
.
error
(
"支付SDK返回信息错误,trackingNo:{} request:{} response:{}"
,
trackingNo
,
JSONObject
.
toJSONString
(
request
),
JSONObject
.
toJSONString
(
responseBase
));
...
@@ -2870,7 +2873,7 @@ public class OrderServiceImpl implements Orderservice {
...
@@ -2870,7 +2873,7 @@ public class OrderServiceImpl implements Orderservice {
//唤起微信支付
//唤起微信支付
if
(
totalAmount
>
0
&&
StringUtils
.
isBlank
(
createOrderVo
.
getCardCode
())
&&
StringUtils
.
isBlank
(
createOrderVo
.
getFaceCode
()))
{
if
(
totalAmount
>
0
&&
StringUtils
.
isBlank
(
createOrderVo
.
getCardCode
())
&&
StringUtils
.
isBlank
(
createOrderVo
.
getFaceCode
()))
{
String
partnerPayOvertime
=
this
.
getPartnerPayOvertime
(
createOrderVo
.
getPartnerId
());
String
partnerPayOvertime
=
this
.
getPartnerPayOvertime
(
createOrderVo
.
getPartnerId
());
orderPayResponse
=
getPreOrderPay
(
fatherBeanListOne
,
paymentRequest
,
LogThreadLocal
.
getTrackingNo
(),
cardAmount
,
fatherBeanListOne
.
getOid
(),
partnerPayOvertime
);
orderPayResponse
=
getPreOrderPay
(
fatherBeanListOne
,
paymentRequest
,
LogThreadLocal
.
getTrackingNo
(),
cardAmount
,
fatherBeanListOne
.
getOid
(),
partnerPayOvertime
,
null
);
return
orderPayResponse
;
return
orderPayResponse
;
}
}
//储值卡支付
//储值卡支付
...
...
order-application-service/src/main/java/cn/freemud/service/impl/SellCouponOrderServiceImpl.java
View file @
cbccda8a
...
@@ -4,6 +4,7 @@ import cn.freemud.adapter.LightApplicationConvertToAssortmentSdkAdapter;
...
@@ -4,6 +4,7 @@ import cn.freemud.adapter.LightApplicationConvertToAssortmentSdkAdapter;
import
cn.freemud.adapter.OrderAdapter
;
import
cn.freemud.adapter.OrderAdapter
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.base.util.DateUtil
;
import
cn.freemud.constant.CommonRedisKeyConstant
;
import
cn.freemud.entities.dto.ConfirmOrderDto
;
import
cn.freemud.entities.dto.ConfirmOrderDto
;
import
cn.freemud.entities.dto.QueryOrdersResponseDto
;
import
cn.freemud.entities.dto.QueryOrdersResponseDto
;
import
cn.freemud.entities.dto.order.CreatePrepayRequestDto
;
import
cn.freemud.entities.dto.order.CreatePrepayRequestDto
;
...
@@ -61,9 +62,13 @@ import org.apache.commons.collections4.CollectionUtils;
...
@@ -61,9 +62,13 @@ 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.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
/**
/**
* All rights Reserved, Designed By www.freemud.cn
* All rights Reserved, Designed By www.freemud.cn
...
@@ -99,13 +104,21 @@ public class SellCouponOrderServiceImpl {
...
@@ -99,13 +104,21 @@ public class SellCouponOrderServiceImpl {
private
OrderAdapter
orderAdapter
;
private
OrderAdapter
orderAdapter
;
@Autowired
@Autowired
private
OrderSdkAdapter
orderSdkAdapter
;
private
OrderSdkAdapter
orderSdkAdapter
;
@Autowired
private
static
RedisTemplate
redisTemplate
;
@Value
(
"${coupon.app.id}"
)
@Value
(
"${coupon.app.id}"
)
private
String
appId
;
private
String
appId
;
@Value
(
"#{${ngs.virtual.store.idmap:null}}"
)
private
Map
<
String
,
String
>
storeIdMap
;
@Value
(
"${ngs.partnerId.easy}"
)
private
String
easyPartnerId
;
@Value
(
"${ngs.partnerId.supermarket}"
)
private
String
supermarketPartnerId
;
private
final
String
SUCCESS
=
"100"
;
private
final
String
SUCCESS
=
"100"
;
private
final
String
ngsCouponProductId
=
"76161384"
;
private
final
String
ngsCouponProductId
=
"76161384"
;
...
@@ -217,8 +230,6 @@ public class SellCouponOrderServiceImpl {
...
@@ -217,8 +230,6 @@ public class SellCouponOrderServiceImpl {
// 查询用户信息、校验svc卡
// 查询用户信息、校验svc卡
AssortmentCustomerInfoVo
userLoginInfoDto
=
checkOrder
.
checkOrderByMemberNew
(
requestVo
.
getSessionId
(),
requestVo
.
getCardCode
());
AssortmentCustomerInfoVo
userLoginInfoDto
=
checkOrder
.
checkOrderByMemberNew
(
requestVo
.
getSessionId
(),
requestVo
.
getCardCode
());
// TODO 通过活动号查询金额
String
activityCode
=
requestVo
.
getActivityCode
();
String
trackingNo
=
LogThreadLocal
.
getTrackingNo
();
String
trackingNo
=
LogThreadLocal
.
getTrackingNo
();
String
partnerId
=
userLoginInfoDto
.
getPartnerId
();
String
partnerId
=
userLoginInfoDto
.
getPartnerId
();
...
@@ -238,7 +249,6 @@ public class SellCouponOrderServiceImpl {
...
@@ -238,7 +249,6 @@ public class SellCouponOrderServiceImpl {
createPrepayRequestDto
.
setTransId
(
orderInfoReqsBaseResponse
.
getResult
().
getOrderCode
());
createPrepayRequestDto
.
setTransId
(
orderInfoReqsBaseResponse
.
getResult
().
getOrderCode
());
createPrepayRequestDto
.
setWxAppId
(
userLoginInfoDto
.
getWxAppId
());
createPrepayRequestDto
.
setWxAppId
(
userLoginInfoDto
.
getWxAppId
());
createPrepayRequestDto
.
setOpenId
(
userLoginInfoDto
.
getOpenId
());
createPrepayRequestDto
.
setOpenId
(
userLoginInfoDto
.
getOpenId
());
// createPrepayRequestDto.setFaceCode(null);
createPrepayRequestDto
.
setCardCode
(
requestVo
.
getCardCode
());
createPrepayRequestDto
.
setCardCode
(
requestVo
.
getCardCode
());
createPrepayRequestDto
.
setPayCode
(
null
);
createPrepayRequestDto
.
setPayCode
(
null
);
createPrepayRequestDto
.
setFatherOrderBean
(
createOrderResponse
.
getData
());
createPrepayRequestDto
.
setFatherOrderBean
(
createOrderResponse
.
getData
());
...
@@ -265,11 +275,48 @@ public class SellCouponOrderServiceImpl {
...
@@ -265,11 +275,48 @@ public class SellCouponOrderServiceImpl {
orderExtInfoDto
.
setSessionKey
(
userLoginInfoDto
.
getSessionKey
());
orderExtInfoDto
.
setSessionKey
(
userLoginInfoDto
.
getSessionKey
());
orderExtInfoDto
.
setFromAppId
(
userLoginInfoDto
.
getWxAppId
());
orderExtInfoDto
.
setFromAppId
(
userLoginInfoDto
.
getWxAppId
());
String
date
=
DateUtil
.
convert2String
(
new
Date
(),
"yyyy-MM-dd"
);
String
key
=
this
.
getFolwNo
(
partnerId
,
date
);
int
flowno
=
0
;
if
(
redisTemplate
.
opsForValue
().
setIfAbsent
(
key
,
0
))
{
redisTemplate
.
expire
(
key
,
24
,
TimeUnit
.
HOURS
);
}
else
{
flowno
=
redisTemplate
.
opsForValue
().
increment
(
key
,
1
).
intValue
();
}
String
stationid
=
getStationId
(
date
,
partnerId
,
flowno
);
orderExtInfoDto
.
setStationId
(
stationid
);
createPrepayRequestDto
.
setOrderExtInfoDTO
(
orderExtInfoDto
);
createPrepayRequestDto
.
setOrderExtInfoDTO
(
orderExtInfoDto
);
return
orderservice
.
createPrepayOrder
(
createPrepayRequestDto
);
return
orderservice
.
createPrepayOrder
(
createPrepayRequestDto
);
}
}
private
String
getStationId
(
String
date
,
String
partnerId
,
int
flowno
)
{
String
stationid
=
""
;
int
length
=
String
.
valueOf
(
flowno
).
length
();
if
(
easyPartnerId
.
equals
(
partnerId
)){
stationid
=
date
+
"6600000001"
;
for
(
int
i
=
0
;
i
<
5
-
length
;
i
++){
stationid
+=
"0"
;
}
stationid
+=
flowno
;
}
else
if
(
supermarketPartnerId
.
equals
(
partnerId
))
{
stationid
=
date
+
"9988800001"
;
for
(
int
i
=
0
;
i
<
5
-
length
;
i
++){
stationid
+=
"0"
;
}
stationid
+=
flowno
;
}
return
stationid
;
}
private
String
getFolwNo
(
String
partnerId
,
String
date
){
return
CommonRedisKeyConstant
.
NGS_FLOWNO_PARTNER_DATE_NO
+
":"
+
partnerId
+
":"
+
date
;
}
/**
/**
* 批量查询活动详情
* 批量查询活动详情
*
*
...
@@ -447,6 +494,9 @@ public class SellCouponOrderServiceImpl {
...
@@ -447,6 +494,9 @@ public class SellCouponOrderServiceImpl {
private
CreateOrderRequest
ngsConvent2NEWCreateOrderRequest
(
NgsSellCouponCreateOrderVo
requestVo
,
AssortmentCustomerInfoVo
userLoginInfoDto
){
private
CreateOrderRequest
ngsConvent2NEWCreateOrderRequest
(
NgsSellCouponCreateOrderVo
requestVo
,
AssortmentCustomerInfoVo
userLoginInfoDto
){
CreateOrderRequest
request
=
new
CreateOrderRequest
();
CreateOrderRequest
request
=
new
CreateOrderRequest
();
Integer
orderClient
=
OrderClientType
.
SAAS
.
getIndex
();
Integer
orderClient
=
OrderClientType
.
SAAS
.
getIndex
();
if
(
UserLoginChannelEnum
.
ALIPAY
.
getCode
().
equals
(
userLoginInfoDto
.
getChannel
())){
if
(
UserLoginChannelEnum
.
ALIPAY
.
getCode
().
equals
(
userLoginInfoDto
.
getChannel
())){
...
@@ -458,7 +508,7 @@ public class SellCouponOrderServiceImpl {
...
@@ -458,7 +508,7 @@ public class SellCouponOrderServiceImpl {
String
partnerId
=
userLoginInfoDto
.
getPartnerId
();
String
partnerId
=
userLoginInfoDto
.
getPartnerId
();
request
.
setOrderClient
(
orderClient
);
request
.
setOrderClient
(
orderClient
);
request
.
setPartnerId
(
partnerId
);
request
.
setPartnerId
(
partnerId
);
request
.
setStoreId
(
null
);
// TODO 虚拟门店
request
.
setStoreId
(
storeIdMap
.
get
(
partnerId
));
//买券虚拟订单
//买券虚拟订单
request
.
setBizType
(
6
);
request
.
setBizType
(
6
);
//1:线上支付 2:线下支付
//1:线上支付 2:线下支付
...
@@ -474,6 +524,8 @@ public class SellCouponOrderServiceImpl {
...
@@ -474,6 +524,8 @@ public class SellCouponOrderServiceImpl {
request
.
setPayChannelName
(
"储值卡支付"
);
request
.
setPayChannelName
(
"储值卡支付"
);
}
}
// TODO 商品信息 从券码查
// TODO 商品信息 从券码查
// TODO 通过活动号查询金额
String
activityCode
=
requestVo
.
getActivityCode
();
// GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean productBean = productInfosResponse.getProducts().get(0);
// GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean productBean = productInfosResponse.getProducts().get(0);
//订单原始金额,单位分
//订单原始金额,单位分
//用户在界面上看到的支付金额
//用户在界面上看到的支付金额
...
@@ -544,7 +596,6 @@ public class SellCouponOrderServiceImpl {
...
@@ -544,7 +596,6 @@ public class SellCouponOrderServiceImpl {
request
.
setAppId
(
userLoginInfoDto
.
getWxAppId
());
request
.
setAppId
(
userLoginInfoDto
.
getWxAppId
());
return
request
;
return
request
;
}
}
/**
/**
...
...
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