diff --git a/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java b/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java index 65911fd..f5b6bd1 100644 --- a/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java +++ b/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java @@ -74,21 +74,10 @@ public class MemberServiceImpl implements MemberService { member.setLevel(memberAddDTO.getLevel()); member.setRemark(memberAddDTO.getRemark()); member.setStartDate(DateUtil.today()); + member.setEndDate(null); member.setRemainCount(null); member.setTotalSpend(0); - // 根据卡类型计算到期日期 - String cardType = memberAddDTO.getCardType(); - if ("月卡".equals(cardType)) { - member.setEndDate(DateUtil.offsetDay(DateUtil.date(), 30).toString().substring(0, 10)); - } else if ("季卡".equals(cardType)) { - member.setEndDate(DateUtil.offsetDay(DateUtil.date(), 90).toString().substring(0, 10)); - } else if ("年卡".equals(cardType)) { - member.setEndDate(DateUtil.offsetDay(DateUtil.date(), 365).toString().substring(0, 10)); - } else { - member.setEndDate(null); // 无限期 - } - if (memberAddDTO.getFile() != null && !memberAddDTO.getFile().isEmpty()) { try { String avatar = saveAvatar(memberAddDTO.getFile()); @@ -98,6 +87,20 @@ public class MemberServiceImpl implements MemberService { } } memberMapper.insert(member); + + // 根据卡类型调用续费设置到期日期 + String cardType = memberAddDTO.getCardType(); + Integer days = null; + if ("月卡".equals(cardType)) { + days = 30; + } else if ("季卡".equals(cardType)) { + days = 90; + } else if ("年卡".equals(cardType)) { + days = 365; + } + if (days != null) { + memberMapper.renew(member.getId(), days); + } } private String saveAvatar(MultipartFile file) throws Exception {