From ad7017ab5c836eadcdba41bcc8f282eb60f6f0dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E8=89=AF=28004796=29?= Date: Thu, 25 Apr 2024 11:00:23 +0800 Subject: [PATCH] init --- .../xq/service/impl/UserVipServiceImpl.java | 19 +++++++++++++------ .../resources/mapper/xq/WxTransDataMapper.xml | 1 + 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserVipServiceImpl.java b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserVipServiceImpl.java index ff5df38..44cb814 100644 --- a/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserVipServiceImpl.java +++ b/ruoyi-xq/src/main/java/com/ruoyi/xq/service/impl/UserVipServiceImpl.java @@ -117,6 +117,7 @@ public class UserVipServiceImpl extends ServiceImpl imple } @Override + @Transactional(rollbackFor = Exception.class) public void incsVip(User user, Integer vipType, Integer vipMonth){ // TODO 加锁 UserVip userVip = this.getUserVip(user.getId(),vipType); @@ -139,9 +140,8 @@ public class UserVipServiceImpl extends ServiceImpl imple userVip.setVipTimeout(userVip.getVipTimeout().plusMonths(vipMonth)); this.saveOrUpdate(userVip); } - userService.update(Wrappers.lambdaUpdate(User.class) - .eq(User::getId, user.getId()) - .set(User::getOpenVip, true)); + UserVipService service = SpringUtil.getBean(UserVipService.class); + service.checkUserVip(userVip.getUserId()); } @Override @@ -161,15 +161,22 @@ public class UserVipServiceImpl extends ServiceImpl imple } @Override + @Transactional(rollbackFor = Exception.class) public void checkUserVip(Long userId){ UserVip vip = this.getByUserVipMaster(userId); - userService.update(Wrappers.lambdaUpdate(User.class) - .eq(User::getId, userId) - .set(User::getOpenVip, vip!=null)); if(vip == null){ userStatusService.update(Wrappers.lambdaUpdate(UserStatus.class) .eq(UserStatus::getUserId, userId) .set(UserStatus::getPushVip, 0)); + userService.update(Wrappers.lambdaUpdate(User.class) + .eq(User::getId, userId) + .set(User::getOpenVip, false)); + }else{ + userService.update(Wrappers.lambdaUpdate(User.class) + .eq(User::getId, userId) + .set(User::getOpenVip, true) + .set(User::getVipType, vip.getVipType()) + .set(User::getVipTimeout, vip.getVipTimeout())); } } diff --git a/ruoyi-xq/src/main/resources/mapper/xq/WxTransDataMapper.xml b/ruoyi-xq/src/main/resources/mapper/xq/WxTransDataMapper.xml index bc9ac6c..e68c8ec 100644 --- a/ruoyi-xq/src/main/resources/mapper/xq/WxTransDataMapper.xml +++ b/ruoyi-xq/src/main/resources/mapper/xq/WxTransDataMapper.xml @@ -20,6 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and (t1.receive_user_id = #{query.userId} or t1.sponsor_user_id = #{query.userId}) + order by t1.create_time desc