Administrator
2025-05-27 c6ac1561db0b2f1c8e3a799d7f49808f4bae67c7
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -896,7 +896,13 @@
    @Transactional(rollbackFor = Exception.class)
    public void confirmOrder(Long id) {
        MallMember member = LoginUserUtil.getLoginUser();
        MallOrderInfo orderInfo = this.baseMapper.selectOrderByMemberIdAndId(member.getId(), id);
//        MallOrderInfo orderInfo = this.baseMapper.selectOrderByMemberIdAndId(member.getId(), id);
        MallOrderInfo orderInfo = this.baseMapper.selectOne(
                new LambdaQueryWrapper<MallOrderInfo>()
                .eq(MallOrderInfo::getMemberId, member.getId())
                .eq(MallOrderInfo::getId, id)
                .last("limit 1")
        );
        if (orderInfo == null || AppContants.DEL_FLAG_Y == orderInfo.getDelFlag()) {
            throw new FebsException("订单不存在");
        }
@@ -904,6 +910,16 @@
        if (orderInfo.getStatus() != OrderStatusEnum.WAIT_FINISH.getValue()) {
            throw new FebsException("该状态不能确认收货");
        }
        if(orderInfo.getDeliveryType().equals(1)){
            List<MallOrderItem> mallOrderItems = mallOrderItemMapper.selectList(
                    new LambdaQueryWrapper<MallOrderItem>()
                            .eq(MallOrderItem::getOrderId, id)
                            .eq(MallOrderItem::getLeaderState, 0)
            );
            if(CollUtil.isNotEmpty(mallOrderItems)){
                throw new FebsException("请先核销"+mallOrderItems.get(0).getGoodsName());
            }
        }
        List<MallRefundEntity> mallRefundEntities = mallRefundMapper.selectByItemIdAndOrderIdAndState(null, orderInfo.getId(), 3);
        if(CollUtil.isNotEmpty(mallRefundEntities)){