无关风月
2024-11-09 bf9e778330e28916b41002629743546c91e1eb7d
代码提交
5个文件已修改
129 ■■■■■ 已修改文件
xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/client/ClientOrderController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java 124 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserViewingHistoryController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
xinquan-modules/xinquan-course/src/main/java/com/xinquan/course/controller/client/ClientCourseController.java
@@ -679,7 +679,7 @@
            courseChapter.setRealLearnedNum(size+courseChapter.getVirtualLearnedNum());
        }
        clientCourseVO.setList(page);
        clientCourseVO.setIsBuy(0);
        clientCourseVO.setIsBuy(2);
        // 查询推荐课程
xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java
@@ -60,6 +60,7 @@
            Long meditationId = meditationEveryday.getMeditationId();
            Meditation meditation = meditationMapper.selectById(meditationId);
            if (meditation!=null){
                vo.setImageUrl(meditation.getBackgroundUrl());
                vo.setTime(Integer.valueOf(meditation.getTutorAudioSecond()));
            }
            Optional<Meditation> meditationOpt = Optional.ofNullable(
xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/client/ClientOrderController.java
@@ -199,6 +199,7 @@
                    orderCourseVO.setIosPrice(data1.getIosPrice());
                    orderCourseVO.setCount(data1.getRealLearnedNum()+data1.getVirtualLearnedNum());
                    orderCourseVO.setChargeType(data1.getChargeType());
                    orderCourseVO.setCoverDescription(data1.getCoverDescription());
                    break;
                case 2:
                    OrderCourseVO data = remoteCourseService.getCourseByIdAny(orderCourseVO).getData();
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
@@ -28,6 +28,7 @@
import com.xinquan.system.api.RemoteUserService;
import com.xinquan.system.api.domain.*;
import com.xinquan.system.api.domain.vo.*;
import com.xinquan.system.api.feignClient.SysUserClient;
import com.xinquan.system.api.model.LoginUser;
import com.xinquan.user.api.domain.dto.AppUserManagementDTO;
import com.xinquan.user.api.domain.dto.OrderListDTO;
@@ -1374,6 +1375,8 @@
        appUser.setLevelIcon(data.getLevelIcon());
        return R.ok(appUser);
    }
    @Resource
    private SysUserClient sysUserClient;
    @PostMapping("/healingLevel")
    @ApiOperation(value = "冥想等级", tags = {"个人中心"})
    public R<HealingLevelVO> healingLevel() {
@@ -1382,88 +1385,63 @@
            return R.tokenError("登录失效");
        }
        Long userId = loginUser.getUserid();
        List<AppUserTree> list1 = appUserTreeService.lambdaQuery().eq(AppUserTree::getAppUserId, userId)
                .list();
        if (list1.isEmpty()){
            AppUserTree appUserTree = new AppUserTree();
            appUserTree.setAppUserId(userId);
            appUserTree.setTreeLevelType(1);
            appUserTree.setGrowthValue(0);
            appUserTree.setSowAgain(2);
            appUserTree.setStatus(2);
            appUserTree.setCreateTime(LocalDateTime.now());
            appUserTreeService.save(appUserTree);
        }
        // 查询用户等级最高的那颗树苗
        AppUserTree tree = list1.stream().max((o1, o2) -> {
            if (o1.getTreeLevelType() > o2.getTreeLevelType()) {
                return 1;
            } else if (o1.getTreeLevelType() < o2.getTreeLevelType()) {
                return -1;
            } else {
                return 0;
            }
        }).orElse(null);
        // 查询疗愈等级 名称 图标
        int level = 1;
        if (tree != null){
            level = tree.getTreeLevelType();
        }
        HealingLevelVO healingLevelVO = new HealingLevelVO();
        HealingLevelVO healingLevelVO = new HealingLevelVO();
        AppUser one = appUserService.getById(userId);
        AppUserTree list1 = appUserTreeService.lambdaQuery().eq(AppUserTree::getAppUserId, userId)
                .eq(AppUserTree::getSowAgain,2)
                .one();
        // 查询疗愈等级 名称 图标
        int level = list1.getTreeLevelType();
        healingLevelVO.setLevel(level);
        // 查询疗愈等级 名称 图标
        if (list1 != null){
            level = list1.getTreeLevelType();
        }
        healingLevelVO.setLevel(level);
        // 根据等级查询疗愈名称和图标
        UserLevelSetting data = remoteBannerService.getIconNameByLevel(level).getData();
        healingLevelVO.setLevelName(data.getLevelName());
        healingLevelVO.setLevelIcon(data.getLevelIcon());
        if (level==10){
            healingLevelVO.setNextLevel(2400);
        }else{
            switch (level){
                case 1:
                    healingLevelVO.setNextLevel(1000);
                    healingLevelVO.setDifferenceLevel(1000-tree.getGrowthValue());
        List<TreeLevelSetting> data3 = sysUserClient.getTreeGroup().getData();
                    break;
                case 2:
                    healingLevelVO.setNextLevel(1000);
                    healingLevelVO.setDifferenceLevel(1000-tree.getGrowthValue());
                    break;
                case 3:
                    healingLevelVO.setNextLevel(1000);
                    healingLevelVO.setDifferenceLevel(1000-tree.getGrowthValue());
                    break;
                case 4:
                    healingLevelVO.setNextLevel(1000);
                    healingLevelVO.setDifferenceLevel(1000-tree.getGrowthValue());
                    break;
                case 5:
                    healingLevelVO.setNextLevel(2000);
                    healingLevelVO.setDifferenceLevel(2000-tree.getGrowthValue());
                    break;
                case 6:
                    healingLevelVO.setNextLevel(2000);
                    healingLevelVO.setDifferenceLevel(2000-tree.getGrowthValue());
                    break;
                case 7:
                    healingLevelVO.setNextLevel(2000);
                    healingLevelVO.setDifferenceLevel(2000-tree.getGrowthValue());
                    break;
                case 8:
                    healingLevelVO.setNextLevel(2000);
                    healingLevelVO.setDifferenceLevel(2000-tree.getGrowthValue());
                    break;
                case 9:
                    healingLevelVO.setNextLevel(2400);
                    healingLevelVO.setDifferenceLevel(2400-tree.getGrowthValue());
                    break;
                case 10:
                    healingLevelVO.setNextLevel(2400);
                    healingLevelVO.setDifferenceLevel(2400-tree.getGrowthValue());
                    break;
        Integer total1 = list1.getTotal();
        // 根据总能量值 确定他在哪一等级
        int x = 1;
        int tem = 0;
        for (TreeLevelSetting datum : data3) {
            if (total1 == 0){
                Integer growthValue = data3.get(1).getGrowthValue();
                tem = growthValue;
                break;
            }else if (total1>=datum.getGrowthValue()){
                x = datum.getTreeLevelType();
            }
        }
        healingLevelVO.setGrowthValue(tree.getGrowthValue());
        if (x == 10){
            // 如果等级为10那么成长阈值是10级减去9级
            int ten=0;
            int nine = 0;
            for (TreeLevelSetting datum : data3) {
                if (datum.getTreeLevelType()==10){
                    ten = datum.getGrowthValue();
                }
                if (datum.getTreeLevelType()==9){
                    nine = datum.getGrowthValue();
                }
            }
            tem = ten-nine;
            total1 = tem;
        }else{
            // 根据当前所在等级查询成长值
            int a = data3.get(x).getGrowthValue()-data3.get(x-1).getGrowthValue();
            tem = a;
            total1 = Math.abs(total1-data3.get(x-1).getGrowthValue());
        }
        healingLevelVO.setNextLevel(tem);
        healingLevelVO.setLevel(x);
        // 将当前成长值更新
        healingLevelVO.setGrowthValue(total1);
        String data1 = remoteUserService.getCourseList(7).getData();
        healingLevelVO.setContent(data1);
        return R.ok(healingLevelVO);
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserViewingHistoryController.java
@@ -148,6 +148,7 @@
                    orderCourseVO.setIosPrice(meditation.getIosPrice());
                    orderCourseVO.setCoverUrl(meditation.getCoverUrl());
                    orderCourseVO.setCount(meditation.getRealLearnedNum()+meditation.getVirtualLearnedNum());
                    orderCourseVO.setCoverDescription(meditation.getCoverDescription());
                    orderCourseVOS.add(orderCourseVO);
                }
                break;