无关风月
2025-03-28 1e12b2abcaa1bdbdb57d3694446337126168bef1
xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationServiceImpl.java
@@ -211,26 +211,20 @@
                LoginUser loginUser = tokenService.getLoginUser();
                List<ClientMeditationVO> meditationListByCateId = getMeditationListByCateId(cate.getId());
                if (loginUser!=null){
                    List<Order> data1 = remoteOrderService.getMeditationIsBuyAll(loginUser.getUserid()).getData();
                    for (ClientMeditationVO clientMeditationVO : meditationListByCateId) {
                        Integer data = remoteOrderService.getMeditationIsBuy(loginUser.getUserid(),clientMeditationVO.getId() ).getData();
                        clientMeditationVO.setIsBuy(data);
                        Long data1 = remoteAppUserService.getMeditationHistoryCount(clientMeditationVO.getId()).getData();
                        clientMeditationVO.setRealLearnedNum(Integer.valueOf(data1+""));
                        Order order = data1.stream().filter(e -> e.getBusinessId().equals(clientMeditationVO.getId())).findFirst().orElse(null);
                        if (order==null){
                            clientMeditationVO.setIsBuy(2);
                        }else{
                            clientMeditationVO.setIsBuy(1);
                        }
                        clientMeditationVO.setRealLearnedNum(clientMeditationVO.getVirtualLearnedNum()+clientMeditationVO.getRealLearnedNum());
                    }
                }else{
                    for (ClientMeditationVO clientMeditationVO : meditationListByCateId) {
                        clientMeditationVO.setIsBuy(2);
                        Long data = remoteAppUserService.getMeditationHistoryCount(clientMeditationVO.getId()).getData();
                        clientMeditationVO.setRealLearnedNum(Integer.valueOf(data+""));
                        clientMeditationVO.setRealLearnedNum(clientMeditationVO.getVirtualLearnedNum()+clientMeditationVO.getRealLearnedNum());
                        if (tokenService.getLoginUser()!=null){
                            Integer data2 = remoteOrderService.getMeditationIsBuy(tokenService.getLoginUser().getUserid()
                                    ,clientMeditationVO.getId() ).getData();
                            clientMeditationVO.setIsBuy(data2);
                        }else{
                            clientMeditationVO.setIsBuy(2);
                        }
                    }
                }
                vo.setClientMeditationVOList(meditationListByCateId);
@@ -307,14 +301,22 @@
        if (page.getRecords().isEmpty()) {
            return pageDTO;
        }
        List<Order> data1 = new ArrayList<Order>();
        if (tokenService.getLoginUser()!=null){
            data1 = remoteOrderService.getMeditationIsBuyAll(tokenService.getLoginUser().getUserid()).getData();
        }
        for (Meditation record : page.getRecords()) {
            Long data = remoteAppUserService.getMeditationHistoryCount(record.getId()).getData();
            record.setRealLearnedNum(Integer.valueOf(data+""));
            record.setRealLearnedNum(record.getVirtualLearnedNum()+record.getRealLearnedNum());
            if (tokenService.getLoginUser()!=null){
                Integer data2 = remoteOrderService.getMeditationIsBuy(tokenService.getLoginUser().getUserid()
                        ,record.getId() ).getData();
                record.setIsBuy(data2);
                Order order = data1.stream().filter(e -> e.getBusinessId().equals(record.getId())).findFirst().orElse(null);
                if (order==null){
                    record.setIsBuy(2);
                }else{
                    record.setIsBuy(1);
                }
            }else{
                record.setIsBuy(2);
            }
@@ -350,6 +352,7 @@
        if (loginUser!=null){
            Long userid = loginUser.getUserid();
            AppUser appUser = remoteAppUserService.getAppUserById(userid + "").getData();
            if (appUser.getSanskritFlag()==2)
            meditationLambdaQueryWrapper.eq(Meditation::getSanskrit, appUser.getSanskritFlag());
        }
        meditationLambdaQueryWrapper.like(Meditation::getMeditationTitle, condition);