diff --git a/src/main/java/com/peanut/modules/common/controller/UserVipController.java b/src/main/java/com/peanut/modules/common/controller/UserVipController.java index e0e6c27c..24c2bbd8 100644 --- a/src/main/java/com/peanut/modules/common/controller/UserVipController.java +++ b/src/main/java/com/peanut/modules/common/controller/UserVipController.java @@ -99,6 +99,7 @@ public class UserVipController { if(buyOrder.getJfDeduction()!=null&&buyOrder.getJfDeduction().compareTo(BigDecimal.ZERO) > 0){ recordJfTransaction(buyOrder, user, buyOrder.getJfDeduction()); } + //开通用户vip,并且对已开通的课程做延期 openVipForUser(buyOrder); } else { return R.error(500, "余额不足!"); @@ -138,8 +139,9 @@ public class UserVipController { private void openVipForUser(BuyOrder buyOrder) throws Exception { VipBuyConfigEntity vipBuyConfigEntity = vipBuyConfigDao.selectById(buyOrder.getVipBuyConfigId()); MyUserEntity userEntity = myUserDao.selectById(buyOrder.getUserId()); + String u_v_type = userEntity.getVip(); if(vipBuyConfigEntity.getType()==1){//超v - if(userEntity.getVip().equals("0")){//初次办理 + if(u_v_type.equals("0")){//初次办理 UserVip userVip = new UserVip(); userVip.setUserId(userEntity.getId()); userVip.setType(1); @@ -151,8 +153,7 @@ public class UserVipController { userVipDao.insert(userVip); userEntity.setVip("1"); myUserDao.updateById(userEntity); - } - if(userEntity.getVip().equals("1")){//vip延期 + }else if(u_v_type.equals("1")){//vip延期 List userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); @@ -164,8 +165,7 @@ public class UserVipController { calendar.add(Calendar.YEAR,vipBuyConfigEntity.getYear()); userVip.setEndTime(calendar.getTime()); userVipDao.updateById(userVip); - } - if (userEntity.getVip().equals("2")||userEntity.getVip().equals("3")){//医学vip或国学vip升级 + }else if (u_v_type.equals("2")||u_v_type.equals("3")){//医学vip或国学vip升级 List userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); diff --git a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java index 1e97f850..55c87dc8 100644 --- a/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/alipay/service/impl/AliPayServiceImpl.java @@ -324,8 +324,9 @@ public class AliPayServiceImpl implements AliPayService { private void openVipForUser(BuyOrder buyOrder) throws Exception { VipBuyConfigEntity vipBuyConfigEntity = vipBuyConfigDao.selectById(buyOrder.getVipBuyConfigId()); MyUserEntity userEntity = myUserDao.selectById(buyOrder.getUserId()); + String u_v_type = userEntity.getVip(); if(vipBuyConfigEntity.getType()==1){//超v - if(userEntity.getVip().equals("0")){//初次办理 + if(u_v_type.equals("0")){//初次办理 UserVip userVip = new UserVip(); userVip.setUserId(userEntity.getId()); userVip.setType(1); @@ -337,8 +338,7 @@ public class AliPayServiceImpl implements AliPayService { userVipDao.insert(userVip); userEntity.setVip("1"); myUserDao.updateById(userEntity); - } - if(userEntity.getVip().equals("1")){//vip延期 + } else if(u_v_type.equals("1")){//vip延期 List userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); @@ -350,8 +350,7 @@ public class AliPayServiceImpl implements AliPayService { calendar.add(Calendar.YEAR,vipBuyConfigEntity.getYear()); userVip.setEndTime(calendar.getTime()); userVipDao.updateById(userVip); - } - if (userEntity.getVip().equals("2")||userEntity.getVip().equals("3")){//医学vip或国学vip升级 + }else if (u_v_type.equals("2")||u_v_type.equals("3")){//医学vip或国学vip升级 List userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); @@ -371,7 +370,6 @@ public class AliPayServiceImpl implements AliPayService { userVipDao.insert(userVip); userEntity.setVip("1"); myUserDao.updateById(userEntity); - } } if(vipBuyConfigEntity.getType()==2||vipBuyConfigEntity.getType()==3){//医学vip或国学vip diff --git a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java index 5acdfec2..8a8bce0c 100644 --- a/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java +++ b/src/main/java/com/peanut/modules/pay/weChatPay/service/impl/WxpayServiceImpl.java @@ -285,8 +285,9 @@ public class WxpayServiceImpl extends ServiceImpl userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); @@ -311,8 +311,7 @@ public class WxpayServiceImpl extends ServiceImpl userVips = userVipDao.selectList(new LambdaQueryWrapper().eq(UserVip::getUserId, userEntity.getId()).gt(UserVip::getEndTime, new Date()).eq(UserVip::getState, 0)); if(userVips.size()!=1){ throwExceptionMethod(); diff --git a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java index 7aa792f3..28ae4d85 100644 --- a/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java +++ b/src/main/java/com/peanut/modules/sociology/service/impl/CourseServiceImpl.java @@ -139,7 +139,7 @@ public class CourseServiceImpl extends ServiceImpl impl @Override public List getCoursePrice() { //获取所有国学标签 - List courseSociologyEntities = courseSociologyDao.selectList(null); + List courseSociologyEntities = courseSociologyDao.selectList(new LambdaQueryWrapper().orderByAsc(CourseSociologyEntity::getSort)); ArrayList flag = new ArrayList<>(); for (CourseSociologyEntity c : courseSociologyEntities){ HashMap stringObjectHashMap = new HashMap<>();