Commit c652410f by 王世昌

拼团订单退款后先通知促销,再取消订单

parent 40897b4b
......@@ -2113,39 +2113,27 @@ public class OrderServiceImpl implements Orderservice {
if(Objects.isNull(orderRefundVo.getRefundMode()) || RefundModeEnum.getByIndex(orderRefundVo.getRefundMode()) == null){
return ResponseUtil.error(ResponseResult.PARAMETER_MISSING.getCode(), "请选择退款方式");
}
// 完成/配送中 可以选择退货退款
List<Integer> refundGoodsCodes = Arrays.asList(
OrderStatus.DISTRIBUTION.getCode(), OrderStatus.COMPLETE.getCode());
if(!refundGoodsCodes.contains(orderBean.getStatus())&& !Objects.equals(RefundModeEnum.UN_REFUND_GOODS.getIndex(), orderRefundVo.getRefundMode())){
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "还未发货,请选择只退款不退货");
}
// 拼团类型
if (Objects.equals(OrderMarketType.GROUPB.getIndex(),orderBean.getMarketingType())) {
OrderExtInfoDto orderExtInfoDto = JSON.parseObject(orderBean.getExtInfo(),OrderExtInfoDto.class);
String spellGroupCode;
if(Objects.isNull(orderExtInfoDto) || StringUtils.isBlank(spellGroupCode = orderExtInfoDto.getSpellGroupCode())){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_GROUP_WORK_ERROR);
}
// 获取拼团活动
OrderSettlementResp settlement;
if(CollectionUtils.isEmpty(orderBean.getOrderSettlementDetailList())
|| Objects.isNull(settlement = orderBean.getOrderSettlementDetailList().stream().filter(e -> Objects.equals(OrderSettlementType.SPELL_GROUP.getIndex(),e.getSettlementType())).findFirst().orElse(null))
|| StringUtils.isBlank(settlement.getExternalObjectId())){
if(StringUtils.isBlank(orderBean.getSpellGroupCode()) || StringUtils.isBlank(orderBean.getSpellGroupActivityCode())){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_GROUP_WORK_ERROR);
}
// 查询团信息
GroupWorkQueryRequest groupWorkQueryRequest = new GroupWorkQueryRequest();
groupWorkQueryRequest.setActivityCode(settlement.getExternalObjectId());
groupWorkQueryRequest.setGoodId(spellGroupCode);
groupWorkQueryRequest.setActivityCode(orderBean.getSpellGroupActivityCode());
groupWorkQueryRequest.setGoodId(orderBean.getSpellGroupActivityCode());
groupWorkQueryRequest.setPartnerId(orderBean.getCompanyId());
GroupWorkQueryResponse groupWorkQueryResponse = spellGroupOrderDataManager.groupWorkQuery(groupWorkQueryRequest);
if(groupWorkQueryResponse == null || groupWorkQueryResponse.getResult() == null){
return ResponseUtil.error(ResponseResult.SPELL_GROUP_QUERY_GROUP_WORK_ERROR);
}
}
// 完成/配送中 可以选择退货退款
List<Integer> refundGoodsCodes = Arrays.asList(
OrderStatus.DISTRIBUTION.getCode(), OrderStatus.COMPLETE.getCode());
if(!refundGoodsCodes.contains(orderBean.getStatus())&& !Objects.equals(RefundModeEnum.UN_REFUND_GOODS.getIndex(), orderRefundVo.getRefundMode())){
return ResponseUtil.error(ResponseResult.ORDER__ERRORREFUND.getCode(), "还未发货,请选择只退款不退货");
}
}
// todo 这里直接拒绝?
else if (OrderStatus.DISTRIBUTION.getCode().equals(orderBean.getStatus())) {
......
......@@ -195,10 +195,5 @@ public class OrderExtInfoDto {
private String svcCardCode;
/**
* 团号
*/
private String spellGroupCode;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment