diff --git a/src/main/java/edu/situ/stlserver/model/dto/MemberAddDTO.java b/src/main/java/edu/situ/stlserver/model/dto/MemberAddDTO.java index a2cdf87..eab6c2b 100644 --- a/src/main/java/edu/situ/stlserver/model/dto/MemberAddDTO.java +++ b/src/main/java/edu/situ/stlserver/model/dto/MemberAddDTO.java @@ -13,6 +13,8 @@ public class MemberAddDTO { private Integer sex; private String phone; private String level; + private String cardType; + private Integer price; private String remark; private MultipartFile file; } 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 9f6397d..65911fd 100644 --- a/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java +++ b/src/main/java/edu/situ/stlserver/service/impl/MemberServiceImpl.java @@ -74,10 +74,21 @@ 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());