Commit 4993877d authored by hezhen's avatar hezhen

Merge branch 'master_chw_publish' into dev-chw

# Conflicts:
#	xx-order/xx-order-api/src/main/java/com/xxfc/platform/order/feign/OrderFeign.java
parents 27e1f2ba 25686818
......@@ -6,8 +6,10 @@ import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderInvoice;
import com.xxfc.platform.order.pojo.dto.OrderDTO;
import com.xxfc.platform.order.pojo.dto.OrderDetailDTO;
import com.xxfc.platform.order.pojo.dto.ReceiveRefundDTO;
import com.xxfc.platform.order.pojo.order.OrderPageVO;
import com.xxfc.platform.order.pojo.order.PulishReceiveBO;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
......@@ -59,4 +61,7 @@ public interface OrderFeign {
BaseOrder updateBaseOrder(@RequestBody BaseOrder baseOrder);
@RequestMapping(value = "chw/orderPulishReceive/app/unauth/refund", method = RequestMethod.GET)
ObjectRestResponse refund(ReceiveRefundDTO receiveRefundDTO);
}
package com.xxfc.platform.order.pojo.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author libin
* @version 1.0
* @description
* @data 2019/8/23 16:27
*/
@Data
public class ReceiveRefundDTO {
@ApiModelProperty("退款金额")
private BigDecimal refundAmount;
@ApiModelProperty("退款描述")
private String refundDesc;
private String orderNo;
}
......@@ -2,12 +2,14 @@ package com.xxfc.platform.order.rest;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreClientToken;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.context.BaseContextHandler;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import com.xxfc.platform.order.biz.OrderPulishReceiveDetailBiz;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.entity.OrderPulishReceiveDetail;
import com.xxfc.platform.order.pojo.dto.ReceiveRefundDTO;
import com.xxfc.platform.order.pojo.order.PulishReceiveBO;
import com.xxfc.platform.order.service.OrderPulishReceiveService;
import io.swagger.annotations.Api;
......@@ -37,4 +39,14 @@ public class OrderPulishReceiveController extends BaseController<OrderPulishRece
receiveService.createOrder(bo);
return ObjectRestResponse.succ(bo.getOrder());
}
@RequestMapping(value = "app/unauth/refund", method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "退款")
@IgnoreUserToken
public ObjectRestResponse refund(ReceiveRefundDTO receiveRefundDTO) {
receiveService.refund(receiveRefundDTO);
return ObjectRestResponse.succ();
}
}
\ No newline at end of file
......@@ -3,10 +3,14 @@ package com.xxfc.platform.order.service;
import cn.hutool.core.bean.BeanUtil;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.xxfc.platform.activity.feign.ActivityFeign;
import com.xxfc.platform.order.biz.*;
import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.contant.enumerate.OrderTypeEnum;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.pojo.dto.ReceiveRefundDTO;
import com.xxfc.platform.order.pojo.order.PulishReceiveBO;
import com.xxfc.platform.order.pojo.price.OrderPriceVO;
import com.xxfc.platform.universal.constant.DictionaryKey;
......@@ -23,6 +27,8 @@ import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.*;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
import static com.xxfc.platform.universal.constant.DictionaryKey.APP_ORDER;
@Service
......@@ -36,6 +42,13 @@ public class OrderPulishReceiveService extends AbstractOrderHandle<OrderPulishRe
@Autowired
ThirdFeign thirdFeign;
@Autowired
OrderAccountBiz orderAccountBiz;
@Autowired
BaseOrderBiz baseOrderBiz;
private static Integer IS_CHILD = 1;
private static Integer LEVEL_DEFAULT = 0;
......@@ -161,4 +174,22 @@ public class OrderPulishReceiveService extends AbstractOrderHandle<OrderPulishRe
return opv;
}
public void refund(ReceiveRefundDTO receiveRefundDTO){
BaseOrder baseOrder = baseOrderBiz.selectOne(new BaseOrder() {{
setNo(receiveRefundDTO.getOrderNo());
}});
if (baseOrder == null || !baseOrder.getHasPay().equals(SYS_FALSE)){
throw new BaseException("该订单无法退款", ResultCode.FAILED_CODE);
}
String refundDesc = receiveRefundDTO.getRefundDesc();
BigDecimal realAmount = baseOrder.getRealAmount();
BigDecimal deductAmount = realAmount.subtract(receiveRefundDTO.getRefundAmount());
orderAccountBiz.publishRefundProcess(baseOrder, refundDesc, baseOrder.getRealAmount(), deductAmount);
}
}
......@@ -12,6 +12,7 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.xxfc.platform.order.entity.BaseOrder;
import com.xxfc.platform.order.feign.OrderFeign;
import com.xxfc.platform.order.pojo.dto.ReceiveRefundDTO;
import com.xxfc.platform.order.pojo.order.PulishReceiveBO;
import com.xxfc.platform.universal.dto.SendMsgDTO;
import com.xxfc.platform.universal.feign.MQSenderFeign;
......@@ -354,6 +355,11 @@ public class VehiclePublishReceiveBiz extends BaseBiz<VehiclePublishReceiveMappe
).map(VehiclePublishReceiveVo::getReceiveAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
if (refundAmount.compareTo(BigDecimal.ZERO) > 0){
log.info("-----操作接单退款-----orderNo==="+orderNo+"----refundAmount==="+refundAmount);
ReceiveRefundDTO receiveRefundDTO = new ReceiveRefundDTO();
receiveRefundDTO.setRefundAmount(refundAmount);
receiveRefundDTO.setOrderNo(orderNo);
receiveRefundDTO.setRefundDesc("接单退款:"+orderNo);
orderFeign.refund(receiveRefundDTO);
}
}
......
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