From b01f752252eaadd1fa31eda6a9ad43146660b721 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 03 四月 2025 23:42:57 +0800 Subject: [PATCH] bug修改 --- xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java | 49 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 47 insertions(+), 2 deletions(-) diff --git a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java index 5cfb805..7dc0320 100644 --- a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java +++ b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationEverydayServiceImpl.java @@ -1,18 +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> @@ -27,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; /** * 查询每日冥想 @@ -35,13 +53,15 @@ */ @Override public ClientMeditationEverydayVO getTodayMeditation() { - ClientMeditationEverydayVO vo = null; + ClientMeditationEverydayVO vo = new ClientMeditationEverydayVO(); + + // 当前时间 String now = DateUtils.dateTimeNow("HH:mm:ss"); // 查询播放时间段在当前时间的每日冥想 Optional<MeditationEveryday> meditationEverydayOpt = this.lambdaQuery() .le(MeditationEveryday::getStartPlayTime, now) - .gt(MeditationEveryday::getEndPlayTime, now) + .ge(MeditationEveryday::getEndPlayTime, now) .orderByDesc(MeditationEveryday::getUpdateTime) .last("limit 1").oneOpt(); if (!meditationEverydayOpt.isPresent()) { @@ -55,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())); @@ -64,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; } -- Gitblit v1.7.1