记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
董敬伟
liquidnet-bus-v1
Commits
18e6758a
Commit
18e6758a
authored
Jul 15, 2021
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交 kylin 回调
parent
4d8e9cb6
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
56 additions
and
39 deletions
+56
-39
SyncOrderDtoParam.java
.../liquidnet/service/kylin/dto/param/SyncOrderDtoParam.java
+11
-0
SyncOrderParam.java
...com/liquidnet/service/kylin/dto/param/SyncOrderParam.java
+6
-6
IKylinOrderTicketsOrderService.java
...service/kylin/service/IKylinOrderTicketsOrderService.java
+2
-1
DragonOrderRefundsServiceImpl.java
...ce/dragon/service/impl/DragonOrderRefundsServiceImpl.java
+25
-22
KylinOrderTicketsController.java
...service/order/controller/KylinOrderTicketsController.java
+2
-1
KylinOrderTicketsServiceImpl.java
...vice/order/service/impl/KylinOrderTicketsServiceImpl.java
+10
-9
No files found.
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/param/SyncOrderDtoParam.java
0 → 100644
View file @
18e6758a
package
com
.
liquidnet
.
service
.
kylin
.
dto
.
param
;
import
lombok.Data
;
@Data
public
class
SyncOrderDtoParam
{
private
String
code
;
private
String
message
;
private
SyncOrderParam
data
;
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/param/SyncOrderParam.java
View file @
18e6758a
...
...
@@ -14,12 +14,12 @@ public class SyncOrderParam {
private
String
type
;
@ApiModelProperty
(
value
=
"code"
)
private
String
code
;
@ApiModelProperty
(
value
=
"payment
_i
d"
)
private
String
payment
_i
d
;
@ApiModelProperty
(
value
=
"order
_c
ode"
)
private
String
order
_c
ode
;
@ApiModelProperty
(
value
=
"payment
I
d"
)
private
String
payment
I
d
;
@ApiModelProperty
(
value
=
"order
C
ode"
)
private
String
order
C
ode
;
@ApiModelProperty
(
value
=
"price"
)
private
BigDecimal
price
;
@ApiModelProperty
(
value
=
"payment
_t
ype"
)
private
String
payment
_t
ype
;
@ApiModelProperty
(
value
=
"payment
T
ype"
)
private
String
payment
T
ype
;
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/service/IKylinOrderTicketsOrderService.java
View file @
18e6758a
...
...
@@ -4,6 +4,7 @@ import com.github.pagehelper.PageInfo;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.kylin.dto.param.PayAgainParam
;
import
com.liquidnet.service.kylin.dto.param.PayOrderParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderDtoParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderParam
;
import
com.liquidnet.service.kylin.dto.vo.returns.*
;
...
...
@@ -26,7 +27,7 @@ public interface IKylinOrderTicketsOrderService {
ResponseDto
<
PayInnerResultVo
>
payAgain
(
PayAgainParam
payAgainParam
);
// 支付回调(待支付->已支付->中断倒计时)
String
syncOrder
(
SyncOrderParam
syncOrderParam
);
String
syncOrder
(
SyncOrder
Dto
Param
syncOrderParam
);
//去 PHP pay检查 订单状态
ResponseDto
<
Integer
>
checkOrderResult
(
String
orderId
);
...
...
liquidnet-bus-service/liquidnet-service-dragon/liquidnet-service-dragon-impl/src/main/java/com/liquidnet/service/dragon/service/impl/DragonOrderRefundsServiceImpl.java
View file @
18e6758a
...
...
@@ -364,16 +364,6 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService
String
outRefundNo
=
info
.
getOutRefundNo
();
String
refundAt
=
info
.
getSuccessTime
();
try
{
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_log.insert"
),
new
Object
[]{
outRefundNo
,
info
.
getRefundRequestSource
(),
JSON
.
toJSONString
(
info
),
nowTime
,
nowTime
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_success.update"
),
new
Object
[]{
nowTime
,
refundAt
,
DragonConstant
.
RefundStatusEnum
.
STATUS_REFUNDED
.
getCode
(),
outRefundNo
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
NotifyUrlDto
dto
=
new
NotifyUrlDto
();
if
(
info
.
getRefundStatus
().
equalsIgnoreCase
(
"SUCCESS"
))
{
...
...
@@ -387,6 +377,17 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService
dto
.
setRefundAt
(
refundAt
);
dto
.
setRefundError
(
callBackDto
.
getReturnMsg
());
sendNotifyUrl
(
dto
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_log.insert"
),
new
Object
[]{
outRefundNo
,
info
.
getRefundRequestSource
(),
JSON
.
toJSONString
(
info
),
nowTime
,
nowTime
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_success.update"
),
new
Object
[]{
nowTime
,
refundAt
,
DragonConstant
.
RefundStatusEnum
.
STATUS_REFUNDED
.
getCode
(),
outRefundNo
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
return
"<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>"
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
@@ -417,18 +418,7 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService
if
(
response
.
isSuccess
())
{
try
{
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_log.insert"
),
new
Object
[]{
response
.
getOutRequestNo
(),
response
.
getRefundReason
(),
jsonStr
,
nowTime
,
nowTime
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
log
.
debug
(
"SEND MQ INSERT"
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_success.update"
),
new
Object
[]{
nowTime
,
callBackDto
.
getGmtRefund
(),
DragonConstant
.
RefundStatusEnum
.
STATUS_REFUNDED
.
getCode
(),
response
.
getOutRequestNo
()},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
log
.
debug
(
"SEND MQ UPDATE"
);
NotifyUrlDto
dto
=
new
NotifyUrlDto
();
if
(
response
.
getMsg
().
equalsIgnoreCase
(
"SUCCESS"
))
{
dto
.
setStatus
(
1
);
...
...
@@ -443,6 +433,19 @@ public class DragonOrderRefundsServiceImpl implements IDragonOrderRefundsService
dto
.
setRefundError
(
""
);
log
.
debug
(
"SEND NOTIFTURL = "
+
JSON
.
toJSONString
(
dto
));
sendNotifyUrl
(
dto
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_log.insert"
),
new
Object
[]{
response
.
getOutRequestNo
(),
response
.
getRefundReason
(),
jsonStr
,
nowTime
,
nowTime
},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
log
.
debug
(
"SEND MQ INSERT"
);
mqHandleUtil
.
sendMySqlRedis
(
SqlMapping
.
get
(
"dragon_order_refund_success.update"
),
new
Object
[]{
nowTime
,
callBackDto
.
getGmtRefund
(),
DragonConstant
.
RefundStatusEnum
.
STATUS_REFUNDED
.
getCode
(),
response
.
getOutRequestNo
()},
DragonConstant
.
MysqlRedisQueueEnum
.
DRAGON_REFUND_KEY
.
getCode
()
);
log
.
debug
(
"SEND MQ UPDATE"
);
return
"success"
;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/controller/KylinOrderTicketsController.java
View file @
18e6758a
...
...
@@ -7,6 +7,7 @@ import com.liquidnet.service.base.codec.annotation.DecryptAndVerify;
import
com.liquidnet.service.base.codec.vo.EncryptedReq
;
import
com.liquidnet.service.kylin.dto.param.PayAgainParam
;
import
com.liquidnet.service.kylin.dto.param.PayOrderParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderDtoParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderParam
;
import
com.liquidnet.service.kylin.dto.vo.returns.*
;
import
com.liquidnet.service.kylin.service.IKylinOrderTicketsOrderService
;
...
...
@@ -69,7 +70,7 @@ public class KylinOrderTicketsController {
@PostMapping
(
"syncOrder"
)
@ApiOperation
(
"支付回调"
)
@ApiResponse
(
code
=
200
,
message
=
"接口返回对象参数"
)
public
String
syncOrder
(
@ModelAttribute
@Valid
SyncOrderParam
syncOrderParam
)
{
public
String
syncOrder
(
@ModelAttribute
@Valid
SyncOrder
Dto
Param
syncOrderParam
)
{
return
orderTicketsOrderService
.
syncOrder
(
syncOrderParam
);
}
...
...
liquidnet-bus-service/liquidnet-service-order/liquidnet-service-order-impl/src/main/java/com/liquidnet/service/order/service/impl/KylinOrderTicketsServiceImpl.java
View file @
18e6758a
...
...
@@ -13,6 +13,7 @@ import com.liquidnet.service.kylin.constant.KylinRedisConst;
import
com.liquidnet.service.kylin.constant.KylinTableStatusConst
;
import
com.liquidnet.service.kylin.dto.param.PayAgainParam
;
import
com.liquidnet.service.kylin.dto.param.PayOrderParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderDtoParam
;
import
com.liquidnet.service.kylin.dto.param.SyncOrderParam
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo
;
import
com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo
;
...
...
@@ -716,18 +717,18 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
}
@Override
public
String
syncOrder
(
SyncOrderParam
syncOrderParam
)
{
public
String
syncOrder
(
SyncOrder
Dto
Param
syncOrderParam
)
{
try
{
log
.
debug
(
"SYNC PARAM = "
+
syncOrderParam
.
toString
());
//支付时间
LocalDateTime
now
=
LocalDateTime
.
now
();
String
lock
=
"order_lock:"
+
syncOrderParam
.
get
Order_c
ode
();
String
lock
=
"order_lock:"
+
syncOrderParam
.
get
Data
().
getOrderC
ode
();
if
(!
redisLockUtil
.
tryLock
(
lock
,
1
,
5
))
{
return
"fail"
;
//参数错误
}
String
timePay
=
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
now
);
KylinOrderTicketVo
orderTicketData
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderCode"
).
is
(
syncOrderParam
.
get
Order_c
ode
())),
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
KylinOrderTicketVo
orderTicketData
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"orderCode"
).
is
(
syncOrderParam
.
get
Data
().
getOrderC
ode
())),
KylinOrderTicketVo
.
class
,
KylinOrderTicketVo
.
class
.
getSimpleName
());
if
(
orderTicketData
==
null
)
{
redisLockUtil
.
unlock
(
lock
);
return
"fail"
;
//订单不存在
...
...
@@ -745,7 +746,7 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
}
}
if
(
orderTicketData
.
getPriceActual
().
compareTo
(
syncOrderParam
.
getPrice
())
!=
0
)
{
if
(
orderTicketData
.
getPriceActual
().
compareTo
(
syncOrderParam
.
get
Data
().
get
Price
())
!=
0
)
{
redisLockUtil
.
unlock
(
lock
);
return
"fail"
;
//价格不符
}
...
...
@@ -764,24 +765,24 @@ public class KylinOrderTicketsServiceImpl implements IKylinOrderTicketsOrderServ
if
(
orderTicketData
.
getStatus
()
==
2
)
{
orderUtils
.
resetOrderListVo
(
orderTicketData
.
getUserId
(),
2
,
orderTicketData
.
getOrderTicketsId
(),
null
);
log
.
error
(
"订单号位 {} 的订单超时支付"
,
syncOrderParam
.
get
Order_c
ode
());
log
.
error
(
"订单号位 {} 的订单超时支付"
,
syncOrderParam
.
get
Data
().
getOrderC
ode
());
orderRefundsCallbackService
.
refundApply
(
orderTicketData
.
getOrderTicketsId
());
}
else
if
(
orderTicketData
.
getStatus
()
==
3
||
orderTicketData
.
getStatus
()
==
4
)
{
log
.
error
(
"订单号位 {} 的订单正在退款 或者已退款"
,
syncOrderParam
.
get
Order_c
ode
());
log
.
error
(
"订单号位 {} 的订单正在退款 或者已退款"
,
syncOrderParam
.
get
Data
().
getOrderC
ode
());
}
else
{
orderTickets
.
setOrderTicketsId
(
orderTicketData
.
getOrderTicketsId
());
orderTickets
.
setPaymentType
(
syncOrderParam
.
get
Payment_t
ype
());
orderTickets
.
setPaymentType
(
syncOrderParam
.
get
Data
().
getPaymentT
ype
());
orderTickets
.
setPayCode
(
syncOrderParam
.
getCode
());
orderTickets
.
setTimePay
(
timePay
);
orderTickets
.
setQrCode
(
IDGenerator
.
ticketQrCode
(
orderTicketData
.
getOrderTicketsId
()));
orderTickets
.
setUpdatedAt
(
now
);
orderTickets
.
setPaymentId
(
syncOrderParam
.
get
Payment_i
d
());
orderTickets
.
setPaymentId
(
syncOrderParam
.
get
Data
().
getPaymentI
d
());
sqls
.
add
(
SqlMapping
.
get
(
"kylin_order_ticket.synPay"
));
sqlsDataA
.
add
(
orderTickets
.
getSynOrderObject
(
strTime
,
strTime
));
orderTicketStatus
.
setOrderId
(
orderTicketData
.
getOrderTicketsId
());
orderTicketStatus
.
setStatus
(
KylinTableStatusConst
.
ORDER_STATUS1
);
orderTicketStatus
.
setPayStatus
(
syncOrderParam
.
getStatus
());
orderTicketStatus
.
setPayStatus
(
syncOrderParam
.
get
Data
().
get
Status
());
orderTicketStatus
.
setUpdatedAt
(
orderTickets
.
getUpdatedAt
());
sqls
.
add
(
SqlMapping
.
get
(
"kylin_order_ticket_status.synPay"
));
sqlsDataB
.
add
(
orderTicketStatus
.
getSynOrderObject
(
strTime
,
strTime
));
...
...
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