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
01eea845
Commit
01eea845
authored
May 07, 2021
by
王世昌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
订单同意退款(已经退货完成)时,通知促销
parent
292f4f6b
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
196 additions
and
0 deletions
+196
-0
order-management/src/main/java/cn/freemud/management/entities/dto/request/activity/GroupWorkRefundRequest.java
+44
-0
order-management/src/main/java/cn/freemud/management/entities/dto/response/activity/GroupWorkRefundResponse.java
+34
-0
order-management/src/main/java/cn/freemud/management/enums/OrderMarketType.java
+34
-0
order-management/src/main/java/cn/freemud/management/enums/ResponseResult.java
+4
-0
order-management/src/main/java/cn/freemud/management/service/handle/ActivityHandle.java
+29
-0
order-management/src/main/java/cn/freemud/management/service/impl/MallOrderMangerServiceImpl.java
+17
-0
order-management/src/main/java/cn/freemud/management/thirdparty/OMSActivityClient.java
+34
-0
No files found.
order-management/src/main/java/cn/freemud/management/entities/dto/request/activity/GroupWorkRefundRequest.java
0 → 100644
View file @
01eea845
package
cn
.
freemud
.
management
.
entities
.
dto
.
request
.
activity
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* 通知促销团员取消订单
*
* @author shichang.wang 2021/4/21
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
GroupWorkRefundRequest
{
/**
* 活动号
*/
private
String
activityCode
;
/**
* 商户号
*/
private
String
partnerCode
;
/**
* 团号
*/
private
String
groupId
;
/**
* 订单
*/
private
String
orderId
;
/**
* 用户id
*/
private
String
userId
;
}
order-management/src/main/java/cn/freemud/management/entities/dto/response/activity/GroupWorkRefundResponse.java
0 → 100644
View file @
01eea845
package
cn
.
freemud
.
management
.
entities
.
dto
.
response
.
activity
;
import
lombok.Data
;
/**
* 通知促销团员取消订单
*
* @author shichang.wang 2021/4/21
*/
@Data
public
class
GroupWorkRefundResponse
{
/**
* 提示
*/
private
String
msg
;
/**
* 内容
*/
private
Object
result
;
/**
* 成功-100
*/
private
Integer
statusCode
;
/**
* 版本号
*/
private
String
ver
;
}
order-management/src/main/java/cn/freemud/management/enums/OrderMarketType.java
0 → 100644
View file @
01eea845
package
cn
.
freemud
.
management
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
java.util.Arrays
;
/**
* 订单特殊类型
* @Auther: yong.huang
* @Date: 2018/12/29 15:58
* @Description:
*/
@Getter
@AllArgsConstructor
public
enum
OrderMarketType
{
ORDER
((
byte
)
1
,
"普通订单"
),
GROUPB
((
byte
)
2
,
"拼团订单"
),
SEC_KILL
((
byte
)
3
,
"秒杀订单"
),
COLLAGE
((
byte
)
4
,
"拼单订单"
)
;
private
byte
index
;
private
String
name
;
public
static
final
String
API_DESC
=
"销售类型或营销活动类型 1:普通订单 2:拼团订单 3:秒杀订单 4:拼单订单"
;
public
static
OrderMarketType
getByIndex
(
byte
index
)
{
return
Arrays
.
stream
(
OrderMarketType
.
values
())
.
filter
(
e
->
e
.
getIndex
()
==
index
)
.
findFirst
()
.
orElseGet
(()
->
ORDER
);
}
}
order-management/src/main/java/cn/freemud/management/enums/ResponseResult.java
View file @
01eea845
...
...
@@ -221,6 +221,10 @@ public enum ResponseResult {
DELIVERY_INFO_NOT_DELIVERY
(
"60001"
,
"当前地址不可配送"
),
DELIVERY_INFO_ERROR
(
"60002"
,
"配送地址不正确"
),
DELIVERY_CREATE_ERROR
(
"60003"
,
"运单不足,配送失败"
),
SPELL_GROUP_REFUND_ERROR
(
"80015"
,
"取消拼团失败"
)
;
...
...
order-management/src/main/java/cn/freemud/management/service/handle/ActivityHandle.java
0 → 100644
View file @
01eea845
package
cn
.
freemud
.
management
.
service
.
handle
;
import
cn.freemud.management.entities.dto.request.activity.GroupWorkRefundRequest
;
import
cn.freemud.management.entities.dto.response.activity.GroupWorkRefundResponse
;
import
cn.freemud.management.thirdparty.OMSActivityClient
;
import
com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Component
;
@Slf4j
@Component
public
class
ActivityHandle
{
private
final
OMSActivityClient
omsActivityClient
;
public
ActivityHandle
(
OMSActivityClient
omsActivityClient
)
{
this
.
omsActivityClient
=
omsActivityClient
;
}
public
GroupWorkRefundResponse
groupWorkRefund
(
QueryOrdersResponse
.
DataBean
.
OrderBean
orderBean
){
GroupWorkRefundRequest
groupWorkRefundRequest
=
new
GroupWorkRefundRequest
(
orderBean
.
getSpellGroupActivityCode
(),
orderBean
.
getCompanyId
(),
orderBean
.
getSpellGroupCode
(),
orderBean
.
getOid
(),
orderBean
.
getUserId
());
GroupWorkRefundResponse
groupWorkRefundResponse
=
omsActivityClient
.
groupWorkRefund
(
groupWorkRefundRequest
);
if
(!
ResponseCodeConstant
.
RESPONSE_SUCCESS
.
equals
(
groupWorkRefundResponse
.
getStatusCode
()))
{
return
null
;
}
return
groupWorkRefundResponse
;
}
}
order-management/src/main/java/cn/freemud/management/service/impl/MallOrderMangerServiceImpl.java
View file @
01eea845
...
...
@@ -2,16 +2,22 @@ package cn.freemud.management.service.impl;
import
cn.freemud.base.entity.BaseResponse
;
import
cn.freemud.management.adapter.SaasMallOrderAdapter
;
import
cn.freemud.management.entities.dto.request.activity.GroupWorkRefundRequest
;
import
cn.freemud.management.entities.dto.request.order.OrderManagerRequest
;
import
cn.freemud.management.entities.dto.response.activity.GroupWorkRefundResponse
;
import
cn.freemud.management.entities.dto.response.order.OrderManagerResponse
;
import
cn.freemud.management.entities.dto.response.pay.PayRefundResponse
;
import
cn.freemud.management.enums.OperateType
;
import
cn.freemud.management.enums.OrderMarketType
;
import
cn.freemud.management.enums.ResponseResult
;
import
cn.freemud.management.intercept.OrderServiceException
;
import
cn.freemud.management.service.OrderBaseService
;
import
cn.freemud.management.service.OrderManagerService
;
import
cn.freemud.management.service.handle.*
;
import
cn.freemud.management.util.ResponseUtil
;
import
com.freemud.application.sdk.api.constant.ResponseConstant
;
import
com.freemud.application.sdk.api.ordercenter.enums.AfterSalesStatus
;
import
com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant
;
import
com.freemud.sdk.api.assortment.order.enums.PayRefundStatus
;
import
com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse
;
import
com.netflix.discovery.converters.Auto
;
...
...
@@ -44,6 +50,8 @@ public class MallOrderMangerServiceImpl implements OrderManagerService {
private
DeliveryHandle
deliveryHandle
;
@Autowired
private
StockHandle
stockHandle
;
@Autowired
private
ActivityHandle
activityHandle
;
/**
* 同意退款
...
...
@@ -60,6 +68,15 @@ public class MallOrderMangerServiceImpl implements OrderManagerService {
// 修改售后单状态为退货中
mallOrderHandle
.
mallOrderAgreeApply
(
request
,
orderBean
);
}
else
{
// 拼团订单主动退款触发通知促销
if
(
Objects
.
equals
(
com
.
freemud
.
sdk
.
api
.
assortment
.
order
.
enums
.
OrderSourceType
.
SAASMALL
.
getCode
(),
orderBean
.
getSource
())
&&
Objects
.
equals
(
OrderMarketType
.
GROUPB
.
getIndex
(),
orderBean
.
getMarketingType
()))
{
GroupWorkRefundResponse
refundResponse
=
activityHandle
.
groupWorkRefund
(
orderBean
);
if
(
Objects
.
isNull
(
refundResponse
)
||
!
Objects
.
equals
(
ResponseConstant
.
SUCCESS_RESPONSE_CODE
,
refundResponse
.
getStatusCode
()))
{
return
ResponseUtil
.
error
(
ResponseResult
.
SPELL_GROUP_REFUND_ERROR
);
}
}
//支付退款
PayRefundResponse
refundResponse
=
new
PayRefundResponse
();
try
{
...
...
order-management/src/main/java/cn/freemud/management/thirdparty/OMSActivityClient.java
0 → 100644
View file @
01eea845
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: PromotionActivityClient
* @Package cn.freemud.service.thirdparty
* @Description:
* @author: liming.guo
* @date: 2018/8/6 11:14
* @version V1.0
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package
cn
.
freemud
.
management
.
thirdparty
;
import
cn.freemud.management.entities.dto.request.activity.GroupWorkRefundRequest
;
import
cn.freemud.management.entities.dto.response.activity.GroupWorkRefundResponse
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
@FeignClient
(
name
=
"promotion-service"
,
url
=
"${saas.activityclient.feign.url}"
)
@RequestMapping
(
produces
=
{
"application/json;charset=UTF-8"
})
public
interface
OMSActivityClient
{
/**
* 订单主动退款调促销接口
* @param groupWorkRefundRequest
* @return
*/
@PostMapping
(
"/activity/groupWork/refund"
)
GroupWorkRefundResponse
groupWorkRefund
(
GroupWorkRefundRequest
groupWorkRefundRequest
);
}
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