@ApiOperation(value = "确认并退款", notes = "确认并退款")
@PutMapping(value = "/updateAfter/{refundId}")
@ApiImplicitParams({
@ApiImplicitParam(name = "ACCESS_TOKEN", value = "接口调用凭证", defaultValue = "06855244f2f221da4cd0a395c0d3c68c", dataType = "string", required = true, paramType = "query")})
public void updateAfter(@ApiParam(value = "售后单Id", required = true) @PathVariable("refundId") Integer refundId,
@ApiParam(value = "订单类型(0 购物车付款 1 直接支付)")@RequestParam(value = "orderType")Integer orderType) {
AdminUser adminUser = SessionUtil.getUser(request, AdminUser.class);
goodsOrderRefundService.updateAfter(refundId,adminUser.getId(), HttpUtil.getIpAddr(request),orderType);
}
@Transactional(rollbackFor = Exception.class)
public void updateAfter(Integer refundId, Integer adminId, String ip, Integer orderType) {
GoodsOrderRefund goodsOrderRefund = new GoodsOrderRefund();
if (Objects.equals(orderType, shoppingPay.getCode())){
goodsOrderRefund = shoppingPay(refundId);
}else {
OrderRefundBo orderRefundBo = goodsOrderRefundMapper.getOrderRefundBo(refundId);
AssertUtil.notNull(orderRefundBo.getPayType(), ExceptionEnum.OrderRefundInvalid);
goodsOrderRefund.setId(refundId);
goodsOrderRefund.setDeleteFlag(DeleteFlagEnum.NotDeleted.getCode());
goodsOrderRefund = goodsOrderRefundMapper.selectOne(goodsOrderRefund);
AssertUtil.notNull(goodsOrderRefund, ExceptionEnum.invalidOrderRefund);
String refundNo = "R" + DateUtils.getTimeString(DateUtils.DATE_YYYYMMDDHHMMSS, new Date()) + RandomStringUtils.randomNumeric(6);