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
5f991d25
Commit
5f991d25
authored
Oct 30, 2020
by
chongfu.liang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
配送单取消/异常时推送pos
parent
edbd5f5c
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
39 additions
and
0 deletions
+39
-0
order-application-service/src/main/java/cn/freemud/service/delivery/ThirdDeliveryServiceImpl.java
+39
-0
No files found.
order-application-service/src/main/java/cn/freemud/service/delivery/ThirdDeliveryServiceImpl.java
View file @
5f991d25
package
cn
.
freemud
.
service
.
delivery
;
import
cn.freemud.adapter.MessageNoticeAdapter
;
import
cn.freemud.amp.service.ProduceMQService
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.log.LogTreadLocal
;
...
...
@@ -29,11 +30,14 @@ import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.ordercenter.request.OrderCollectReq
;
import
com.freemud.application.sdk.api.ordercenter.service.OrderSdkService
;
import
com.freemud.application.sdk.api.structure.request.PushMessageNoticeDto
;
import
com.freemud.application.sdk.api.structure.service.MessageCenterClient
;
import
com.freemud.sdk.api.assortment.order.request.order.AssortmentUpdateDeliveryAbnormalRequest
;
import
com.freemud.sdk.api.assortment.order.request.order.UpdateDeliveryInfoByIdRequest
;
import
com.freemud.sdk.api.assortment.order.response.order.OrderBaseResponse
;
import
com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService
;
import
com.google.common.collect.Lists
;
import
com.google.gson.Gson
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
...
...
@@ -72,6 +76,10 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
private
OrderManagerAdapter
orderManagerAdapter
;
@Autowired
private
OrderSdkService
orderSdkService
;
@Autowired
private
MessageNoticeAdapter
messageNoticeAdapter
;
@Autowired
private
MessageCenterClient
messageNoticeClient
;
@Override
public
BaseResponse
callbackUrl
(
CallbackUrlRequestDto
request
)
{
...
...
@@ -122,6 +130,13 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
// 订单已完成
sendPosService
(
deliveryStatus
,
posBaseRequestDto
);
}
else
if
(
deliveryStatus
==
DeliveryStatus
.
DELIVERYERROR
.
getCode
()
||
deliveryStatus
==
DeliveryStatus
.
DELIVERYCANCEL
.
getCode
())
{
Integer
sendPosDeliveryStatus
;
if
(
deliveryStatus
==
DeliveryStatus
.
DELIVERYERROR
.
getCode
()){
sendPosDeliveryStatus
=
71
;
}
else
{
sendPosDeliveryStatus
=
81
;
}
sendPosMessage
(
partnerId
,
storeCode
,
request
.
getOrderId
(),
sendPosDeliveryStatus
);
// 取消外卖中台配送单 订单异常
// 如果 "配送单异常并且顾客更改配送地址" 不取消配送单
...
...
@@ -307,4 +322,28 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
orderCenterSdkService
.
updateDeliveryAbnormal
(
request
);
}
/**
* 发送pos端消息
*/
public
void
sendPosMessage
(
String
partnerId
,
String
storeId
,
String
orderId
,
Integer
deliveryStatus
)
{
PushMessageNoticeDto
pushMessageNoticeDto
=
new
PushMessageNoticeDto
();
pushMessageNoticeDto
.
setPartnerId
(
partnerId
);
pushMessageNoticeDto
.
setStoreId
(
storeId
);
pushMessageNoticeDto
.
setTargetId
(
null
);
pushMessageNoticeDto
.
setTargetType
(
2
);
pushMessageNoticeDto
.
setCmd
(
11
);
PushMessageNoticeDto
.
Message
message
=
new
PushMessageNoticeDto
.
Message
();
message
.
setType
(
1
);
PushMessageNoticeDto
.
Message
.
Content
content
=
new
PushMessageNoticeDto
.
Message
.
Content
();
content
.
setOid
(
orderId
);
content
.
setDeliveryStatus
(
deliveryStatus
);
message
.
setContent
(
content
);
pushMessageNoticeDto
.
setData
(
new
Gson
().
toJson
(
message
));
messageNoticeClient
.
createMessage
(
pushMessageNoticeDto
,
LogThreadLocal
.
getTrackingNo
());
}
}
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