无关风月
2025-04-03 b01f752252eaadd1fa31eda6a9ad43146660b721
xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java
@@ -1,20 +1,30 @@
package com.xinquan.meditation.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xinquan.common.core.domain.R;
import com.xinquan.common.core.utils.DateUtils;
import com.xinquan.common.core.utils.page.BeanUtils;
import com.xinquan.meditation.api.domain.Meditation;
import com.xinquan.meditation.domain.MeditationEveryday;
import com.xinquan.meditation.domain.MeditationMusic;
import com.xinquan.meditation.domain.MeditationVideo;
import com.xinquan.meditation.domain.vo.ClientMeditationEverydayVO;
import com.xinquan.meditation.domain.vo.ClientMeditationVO;
import com.xinquan.meditation.mapper.MeditationEverydayMapper;
import com.xinquan.meditation.mapper.MeditationMapper;
import com.xinquan.meditation.mapper.MeditationMusicMapper;
import com.xinquan.meditation.mapper.MeditationVideoMapper;
import com.xinquan.meditation.service.MeditationEverydayService;
import java.util.List;
import java.util.Optional;
import com.xinquan.user.api.feign.RemoteAppUserService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
 * <p>
@@ -29,6 +39,12 @@
public class MeditationEverydayServiceImpl extends ServiceImpl<MeditationEverydayMapper, MeditationEveryday> implements MeditationEverydayService {
    private final MeditationMapper meditationMapper;
    private final MeditationMusicMapper meditationMusicMapper;
    @Resource
    private RemoteAppUserService remoteAppUserService;
    @Resource
    private MeditationVideoMapper meditationVideoMapper;
    /**
     * 查询每日冥想
@@ -37,7 +53,9 @@
     */
    @Override
    public ClientMeditationEverydayVO getTodayMeditation() {
        ClientMeditationEverydayVO vo = null;
        ClientMeditationEverydayVO vo = new ClientMeditationEverydayVO();
        // 当前时间
        String now = DateUtils.dateTimeNow("HH:mm:ss");
        // 查询播放时间段在当前时间的每日冥想
@@ -57,6 +75,9 @@
        if (meditationEverydayOpt.isPresent()) {
            // 查询冥想详情
            MeditationEveryday meditationEveryday = meditationEverydayOpt.get();
            Long meditationId = meditationEveryday.getMeditationId();
            Meditation meditation = meditationMapper.selectById(meditationId);
            Optional<Meditation> meditationOpt = Optional.ofNullable(
                    meditationMapper.selectById(
                            meditationEveryday.getMeditationId()));
@@ -66,8 +87,30 @@
                        ClientMeditationVO.class);
                vo = BeanUtils.copyBean(meditationEveryday,
                        ClientMeditationEverydayVO.class);
                clientMeditationVO.setBackgroundUrl(meditationOpt.get().getBackgroundUrl());
                // 查询冥想实际学习人数
                Long data = remoteAppUserService.getMeditationHistoryCount(meditationId).getData();
                clientMeditationVO.setRealLearnedNum(Integer.valueOf(data+""));
                vo.setClientMeditationVO(clientMeditationVO);
                if (meditation!=null){
                    List<MeditationMusic> meditationId1 = meditationMusicMapper.selectList(new QueryWrapper<MeditationMusic>()
                            .eq("meditation_id", meditationId));
                    int a= 0;
                    for (MeditationMusic meditationMusic : meditationId1) {
                        a += meditationMusic.getMusicSecond();
                    }
                    vo.setTime(a);
                }
            }
            vo.setImageUrl(meditationEveryday.getImageUrl());
        }
        MeditationVideo meditationVideo = meditationVideoMapper.selectOne(null);
        if (meditationVideo==null){
            vo.setIsShow(0);
        }else{
            vo.setIsShow(meditationVideo.getIsShow());
            vo.setMeditationVideo(meditationVideo);
        }
        return vo;
    }