From 61296f3965dd87dcc02ada9c630a5bc2db5eda5b Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Fri, 20 Dec 2024 13:28:07 +0800 Subject: [PATCH] fix(mall): 修复查询充值记录时的空指针异常 - 在查询充值记录后,增加对结果为空的检查 - 如果查询结果为空,抛出 "记录不存在" 的异常 - 这个修改确保了在处理充值记录时,不会因为空指针而导致程序崩溃 --- src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java index 87fe1bf..37fad9e 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java @@ -50,12 +50,13 @@ private final MallMemberMapper mallMemberMapper; @Override public List<ApiRunVipVo> vipInfo() { - MallMember member = LoginUserUtil.getLoginUser(); + Long memberId = LoginUserUtil.getLoginUser().getId(); List<ApiRunVipVo> apiRunVipVos = new ArrayList<>(); - if (StrUtil.isEmpty(member.getLevel())) { + MallMember mallMember = mallMemberMapper.selectById(memberId); + if (StrUtil.isEmpty(mallMember.getLevel())) { return apiRunVipVos; } - String level = member.getLevel(); + String level = mallMember.getLevel(); //获取当前用户的VIP等级 RunVip runVip = this.baseMapper.selectOne(new LambdaQueryWrapper<RunVip>().eq(RunVip::getVipCode, level)); //获取大于当前用户等级序号的所有的VIP等级 @@ -161,6 +162,9 @@ MallCharge mallCharge = mallChargeMapper.selectOne(objectLambdaQueryWrapper); ApiGoChargeVo apiGoChargeVo = new ApiGoChargeVo(); + if(null == mallCharge){ + throw new FebsException("记录不存在"); + } apiGoChargeVo.setFailTime(mallCharge.getFailTime()); apiGoChargeVo.setAddress(mallCharge.getAddress()); apiGoChargeVo.setAmount(mallCharge.getAmount()); -- Gitblit v1.9.1