diff --git a/mcwl-admin/pom.xml b/mcwl-admin/pom.xml index 5a751d5..d7c6bf5 100644 --- a/mcwl-admin/pom.xml +++ b/mcwl-admin/pom.xml @@ -24,6 +24,17 @@ 0.4.7 + + + + + + + + + + + com.alipay.sdk alipay-easysdk diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/memberCenter/MemberController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/memberCenter/MemberController.java index 602986a..9a384bd 100644 --- a/mcwl-admin/src/main/java/com/mcwl/web/controller/memberCenter/MemberController.java +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/memberCenter/MemberController.java @@ -111,7 +111,7 @@ public class MemberController { return AjaxResult.warn("用户不存在"); } - Member member = memberService.rechargePoints(userId, amount * 10); + Member member = memberService.rechargePoints(userId, amount * 100); // 返回充值积分 if (!Optional.ofNullable(member).isPresent()) { diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/pay/AliPay/OrderTradeController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/pay/AliPay/OrderTradeController.java index 918f87b..2aada84 100644 --- a/mcwl-admin/src/main/java/com/mcwl/web/controller/pay/AliPay/OrderTradeController.java +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/pay/AliPay/OrderTradeController.java @@ -118,9 +118,9 @@ public class OrderTradeController extends BaseController { String type = orderTradeDto.getType(); - if ("member".equals(type)) { + if ("member".equalsIgnoreCase(type)) { qrUrl = aliPayIntegration.memberPay(orderTradeDto); - } else if ("points".equals(type)) { + } else if ("points".equalsIgnoreCase(type)) { qrUrl = aliPayIntegration.pointsPay(orderTradeDto.getPaymentAmount()); } diff --git a/mcwl-memberCenter/src/main/java/com/mcwl/memberCenter/service/impl/MemberServiceImpl.java b/mcwl-memberCenter/src/main/java/com/mcwl/memberCenter/service/impl/MemberServiceImpl.java index f237821..92f79ad 100644 --- a/mcwl-memberCenter/src/main/java/com/mcwl/memberCenter/service/impl/MemberServiceImpl.java +++ b/mcwl-memberCenter/src/main/java/com/mcwl/memberCenter/service/impl/MemberServiceImpl.java @@ -7,20 +7,14 @@ import com.mcwl.common.core.domain.AjaxResult; import com.mcwl.common.core.domain.entity.SysUser; import com.mcwl.common.exception.ServiceException; import com.mcwl.common.utils.SecurityUtils; -import com.mcwl.memberCenter.domain.MemberBenefit; -import com.mcwl.memberCenter.domain.MemberLevel; -import com.mcwl.memberCenter.domain.Member; -import com.mcwl.memberCenter.domain.Promotion; +import com.mcwl.memberCenter.domain.*; import com.mcwl.memberCenter.enums.MemberBenefitTypeEnum; import com.mcwl.memberCenter.enums.MemberEnum; import com.mcwl.memberCenter.enums.MemberPeriodicEnum; import com.mcwl.memberCenter.enums.PromotionEnum; import com.mcwl.memberCenter.mapper.MemberMapper; import com.mcwl.memberCenter.mapper.PromotionMapper; -import com.mcwl.memberCenter.service.MemberBenefitService; -import com.mcwl.memberCenter.service.MemberLevelService; -import com.mcwl.memberCenter.service.MemberService; -import com.mcwl.memberCenter.service.PromotionService; +import com.mcwl.memberCenter.service.*; import com.mcwl.system.service.ISysUserService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -41,6 +35,8 @@ public class MemberServiceImpl extends ServiceImpl impleme private final PromotionMapper promotionMapper; + private final MemberConsumeService memberConsumeService; + @Override public Member createUserMember(Long userId, Long memberLevelId, String paymentMethod, Long promotionId) { if (userId == null) { @@ -195,16 +191,19 @@ public class MemberServiceImpl extends ServiceImpl impleme throw new ServiceException("积分不足"); } + // 保存消费记录 + saveMemberConsume(consumePoints, userId, points); + // 先扣除会员的积分 if (member != null) { double mp = member.getPoints() - consumePoints; if (mp >= 0) { member.setPoints(mp); + consumePoints = 0.0; } else { member.setPoints(0D); consumePoints = consumePoints - memberPoints; } - member.setPoints(mp); baseMapper.updateById(member); } // consumePoints有剩余再扣除用户的积分 @@ -215,6 +214,18 @@ public class MemberServiceImpl extends ServiceImpl impleme } + private void saveMemberConsume(Double consumePoints, Long userId, double points) { + MemberConsume memberConsume = new MemberConsume(); + memberConsume.setUserId(userId); + memberConsume.setConsumePoints(consumePoints); + memberConsume.setRemainingPoints(points - consumePoints); + memberConsume.setConsumeTime(new Date()); + memberConsume.setCreateBy(SecurityUtils.getUsername()); + memberConsume.setUpdateBy(SecurityUtils.getUsername()); + memberConsume.setUpdateTime(new Date()); + memberConsumeService.save(memberConsume); + } + private List getUseUserMember(Long userId) { // startDate 小于等于当前时间、endDate 大于等于当前时间 // subscriptionStatus 不为 "过期" 或 "待支付" diff --git a/mcwl-pay/src/main/java/com/mcwl/pay/service/impl/OrderTradeServiceImpl.java b/mcwl-pay/src/main/java/com/mcwl/pay/service/impl/OrderTradeServiceImpl.java index 10612f2..8dd6136 100644 --- a/mcwl-pay/src/main/java/com/mcwl/pay/service/impl/OrderTradeServiceImpl.java +++ b/mcwl-pay/src/main/java/com/mcwl/pay/service/impl/OrderTradeServiceImpl.java @@ -141,11 +141,15 @@ public class OrderTradeServiceImpl extends ServiceImpl