From a4c1caa24924c8cf989c844e3f6d33ef8f825969 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Wed, 07 Sep 2022 15:43:59 +0800 Subject: [PATCH] 20220902 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 28 ++++++++++++++++++++++------ 1 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index a3c3e5f..3b7b6ca 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -506,6 +506,11 @@ throw new FebsException("还未送至自提点"); } + List<MallRefundEntity> mallRefundEntities = mallRefundMapper.selectByItemIdAndOrderIdAndState(null, orderInfo.getId(), 3); + if(CollUtil.isNotEmpty(mallRefundEntities)){ + throw new FebsException("请先处理退款商品"); + } + orderInfo.setStatus(OrderStatusEnum.FINISH.getValue()); orderInfo.setReceivingTime(new Date()); this.baseMapper.updateById(orderInfo); @@ -722,9 +727,10 @@ mallRefundEntity.setRefundNo(mallOrderInfo.getOrderNo()+"_RITEM"+mallOrderItem.getId()); mallRefundEntity.setMemberId(member.getId()); mallRefundEntity.setOrderId(mallOrderInfo.getId()); - if("余额支付"==mallOrderInfo.getPayMethod()){ + mallRefundEntity.setItemId(mallOrderItem.getId()); + if("余额支付".equals(mallOrderInfo.getPayMethod())){ mallRefundEntity.setType(3); - }else if("微信支付"==mallOrderInfo.getPayMethod()){ + }else if("微信支付".equals(mallOrderInfo.getPayMethod())){ mallRefundEntity.setType(1); }else{ mallRefundEntity.setType(3); @@ -736,14 +742,12 @@ if(mallRefund.getState() == 1){ return new FebsResponse().fail().message("订单已退款"); } - if(mallRefund.getState() == 3){ - return new FebsResponse().fail().message("订单退款中"); - } - if(mallRefund.getState() == 2){ + if(mallRefund.getState() == 2 || mallRefund.getState() == 3){ mallRefundEntity.setId(mallRefund.getId()); mallRefundEntity.setRefundNo(mallRefund.getRefundNo()); mallRefundEntity.setMemberId(mallRefund.getMemberId()); mallRefundEntity.setOrderId(mallRefund.getOrderId()); + mallRefundEntity.setItemId(mallRefund.getItemId()); mallRefundEntity.setType(mallRefund.getType()); mallRefundEntity.setState(3); mallRefundEntity.setAmount(mallRefund.getAmount()); @@ -798,4 +802,16 @@ return new FebsResponse().success().message("已申请"); } + @Override + public FebsResponse cancelRefundOrder(Long id) { + MallRefundEntity mallRefundEntity = mallRefundMapper.selectById(id); + mallRefundEntity.setState(2); + mallRefundMapper.updateById(mallRefundEntity); + Long itemId = mallRefundEntity.getItemId(); + MallOrderItem mallOrderItem = mallOrderItemMapper.selectById(itemId); + mallOrderItem.setState(1); + mallOrderItemMapper.updateById(mallOrderItem); + return new FebsResponse().success().message("已取消"); + } + } -- Gitblit v1.9.1