From ab6603d889f482459c1812e52ce2c5c04fe8e3e7 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 08 Sep 2022 09:53:10 +0800 Subject: [PATCH] 20220902 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 31 ++++++++++++++++++++++++------- 1 files changed, 24 insertions(+), 7 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..fd7ac30 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 @@ -462,7 +462,8 @@ @Override public OrderDetailVo findOrderDetailsById(Long id) { MallOrderInfo orderInfo = this.baseMapper.selectOrderDetailsById(id); - if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) { +// if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) { + if (ObjectUtil.isNull(orderInfo)) { throw new FebsException("订单不存在"); } @@ -504,6 +505,11 @@ if (orderInfo.getDeliveryState() != OrderDeliveryStateEnum.DELIVERY_FINISH.getValue()) { throw new FebsException("还未送至自提点"); + } + + List<MallRefundEntity> mallRefundEntities = mallRefundMapper.selectByItemIdAndOrderIdAndState(null, orderInfo.getId(), 3); + if(CollUtil.isNotEmpty(mallRefundEntities)){ + throw new FebsException("请先处理退款商品"); } orderInfo.setStatus(OrderStatusEnum.FINISH.getValue()); @@ -722,9 +728,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 +743,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 +803,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