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
jenkins
order-group
Commits
0e41142d
Commit
0e41142d
authored
Mar 11, 2020
by
ping.wu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
外卖单取消配送
parent
5c6431d0
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
75 additions
and
4 deletions
+75
-4
order-management/src/main/java/cn/freemud/management/controller/DeliveryOrderController.java
+11
-4
order-management/src/main/java/cn/freemud/management/entities/DeliveryOrderRequest.java
+14
-0
order-management/src/main/java/cn/freemud/management/service/OrderDeliveryService.java
+50
-0
No files found.
order-management/src/main/java/cn/freemud/management/controller/DeliveryOrderController.java
View file @
0e41142d
package
cn
.
freemud
.
management
.
controller
;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.management.entities.DeliveryOrderRequest
;
import
cn.freemud.management.service.OrderDeliveryService
;
import
com.freemud.application.sdk.api.log.ApiAnnotation
;
import
com.freemud.application.sdk.api.log.LogParams
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
/**
* 创建配送单
...
...
@@ -31,4 +30,12 @@ public class DeliveryOrderController {
,
@RequestParam
(
value
=
"operator"
,
required
=
false
)
String
operator
)
{
return
orderDeliveryService
.
createDelivery
(
orderCode
,
operator
);
}
@ApiAnnotation
(
logMessage
=
"cancelDeliveryOrder"
)
@ApiOperation
(
value
=
"取消配送单"
,
notes
=
"取消配送单"
,
produces
=
"application/json"
)
@PostMapping
(
"/delivery/cancel"
)
public
BaseResponse
cancelDeliveryOrder
(
@Validated
@LogParams
@RequestBody
DeliveryOrderRequest
request
)
{
return
orderDeliveryService
.
cancelDeliveryOrder
(
request
);
}
}
order-management/src/main/java/cn/freemud/management/entities/DeliveryOrderRequest.java
0 → 100644
View file @
0e41142d
package
cn
.
freemud
.
management
.
entities
;
import
lombok.Data
;
/**
* Created by wuping27 on 2020/3/11.
*/
@Data
public
class
DeliveryOrderRequest
{
private
String
orderCode
;
private
String
operator
;
}
order-management/src/main/java/cn/freemud/management/service/OrderDeliveryService.java
View file @
0e41142d
...
...
@@ -2,11 +2,16 @@ package cn.freemud.management.service;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.base.log.LogTreadLocal
;
import
cn.freemud.management.entities.DeliveryOrderRequest
;
import
cn.freemud.management.enums.DeliveryStatus
;
import
cn.freemud.management.util.CheckException
;
import
cn.freemud.management.util.CommonResp
;
import
com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto
;
import
com.freemud.application.sdk.api.deliverycenter.dto.CreateDeliveryOrderRequestDto
;
import
com.freemud.application.sdk.api.deliverycenter.response.CreateDeliveryOrderResponseDto
;
import
com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto
;
import
com.freemud.application.sdk.api.deliverycenter.service.DeliveryService
;
import
com.freemud.application.sdk.api.log.LogThreadLocal
;
import
com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest
;
import
com.freemud.application.sdk.api.storecenter.response.StoreResponse
;
import
com.freemud.application.sdk.api.storecenter.service.StoreCenterService
;
...
...
@@ -15,6 +20,7 @@ import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import
com.google.common.base.Throwables
;
import
javafx.util.Pair
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.ObjectUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
...
...
@@ -179,4 +185,48 @@ public class OrderDeliveryService {
deliveryOrderRequestDto
.
setProductInfos
(
productInfos
);
return
deliveryOrderRequestDto
;
}
/**
* 取消外卖配送单
* @return
*/
public
BaseResponse
cancelDeliveryOrder
(
DeliveryOrderRequest
request
)
{
BaseResponse
baseResponse
=
new
BaseResponse
();
baseResponse
.
setCode
(
SUCCESS
+
""
);
QueryOrdersResponse
.
DataBean
.
OrderBean
data
=
orderBaseService
.
getByOrderCode
(
request
.
getOrderCode
());
if
(
null
==
data
)
{
baseResponse
.
setCode
(
"101"
);
baseResponse
.
setMessage
(
"订单不存在"
);
return
baseResponse
;
}
if
(
data
.
getType
()
==
1
&&
data
.
getAddInfo
()
!=
null
&&
ObjectUtils
.
equals
(
data
.
getAddInfo
().
getDeliveryType
(),
"third"
))
{
Integer
deliverStatus
=
data
.
getAddInfo
().
getDeliverStatus
();
//运单异常或取消时,无需作废三方配送运单
if
(
ObjectUtils
.
equals
(
DeliveryStatus
.
DELIVERYERROR
.
getCode
(),
deliverStatus
)
||
ObjectUtils
.
equals
(
DeliveryStatus
.
DELIVERYCANCEL
.
getCode
(),
deliverStatus
)
||
ObjectUtils
.
equals
(
DeliveryStatus
.
DELIVERYARRIVED
.
getCode
(),
deliverStatus
))
{
return
baseResponse
;
}
//运单状态非待接单或系统接单时,不能取消运单
if
(
ObjectUtils
.
equals
(
DeliveryStatus
.
RIDERSTARTDELIVERY
.
getCode
(),
deliverStatus
))
{
baseResponse
.
setCode
(
"101"
);
baseResponse
.
setMessage
(
"配送单不能取消"
);
return
baseResponse
;
}
CancelDeliveryOrderRequestDto
cancelDeliveryOrderRequestDto
=
new
CancelDeliveryOrderRequestDto
();
cancelDeliveryOrderRequestDto
.
setDeliveryId
(
data
.
getAddInfo
().
getDeliveryId
());
cancelDeliveryOrderRequestDto
.
setOrderCancelCode
(
4
);
//商家退款取消配送
cancelDeliveryOrderRequestDto
.
setOrderCancelDescription
(
"顾客取消订单"
);
DeliveryResponseDto
deliveryResponse
=
deliveryService
.
deliveryOrderCancel
(
cancelDeliveryOrderRequestDto
,
LogThreadLocal
.
getTrackingNo
());
if
(
deliveryResponse
==
null
||
SUCCESS
!=
deliveryResponse
.
getCode
())
{
baseResponse
.
setCode
(
"101"
);
baseResponse
.
setMessage
(
"取消配送单异常,不能操作"
);
return
baseResponse
;
}
}
return
baseResponse
;
}
}
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