| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.xinquan.common.core.constant.SecurityConstants; |
| | | import com.xinquan.common.core.enums.DisabledEnum; |
| | | import com.xinquan.common.core.enums.OrderFromEnum; |
| | | import com.xinquan.common.core.exception.ServiceException; |
| | | import com.xinquan.common.core.utils.page.BeanUtils; |
| | | import com.xinquan.common.core.utils.page.CollUtils; |
| | | import com.xinquan.common.core.utils.page.PageDTO; |
| | | import com.xinquan.common.security.utils.SecurityUtils; |
| | | import com.xinquan.meditation.domain.Meditation; |
| | | import com.xinquan.meditation.api.domain.Meditation; |
| | | import com.xinquan.meditation.domain.MeditationCategory; |
| | | import com.xinquan.meditation.domain.MeditationMusic; |
| | | import com.xinquan.meditation.domain.MeditationQuestion; |
| | |
| | | import com.xinquan.meditation.service.MeditationQuestionLikeService; |
| | | import com.xinquan.meditation.service.MeditationService; |
| | | import com.xinquan.meditation.service.MeditationUserFavoriteService; |
| | | import com.xinquan.order.api.domain.Order; |
| | | import com.xinquan.order.api.feign.RemoteOrderService; |
| | | import com.xinquan.user.api.domain.AppUser; |
| | | import com.xinquan.user.api.domain.dto.AppUserDTO; |
| | | import com.xinquan.user.api.feign.RemoteAppUserService; |
| | |
| | | private final MeditationQuestionMapper meditationQuestionMapper; |
| | | private final MeditationQuestionLikeService meditationQuestionLikeService; |
| | | private final MeditationUserFavoriteService meditationUserFavoriteService; |
| | | |
| | | private final RemoteOrderService remoteOrderService; |
| | | /** |
| | | * 获取私人订制 |
| | | * |
| | |
| | | .collect(Collectors.toSet()); |
| | | // 查询冥想列表 |
| | | voList = baseMapper.getMeditationListByTagId(tagIdSet, sanskritFlag); |
| | | } |
| | | voList = handlePaidMeditation(voList); |
| | | return voList; |
| | | } |
| | | |
| | | /** |
| | | * 处理已付费冥想音频 |
| | | * |
| | | * @param voList |
| | | * @return |
| | | */ |
| | | private List<ClientMeditationVO> handlePaidMeditation(List<ClientMeditationVO> voList) { |
| | | // 远程调用订单服务,查询用户已付费冥想 |
| | | Long userId = SecurityUtils.getUserId(); |
| | | List<Order> orderList = remoteOrderService.getOrderListByType(userId, |
| | | OrderFromEnum.MEDITATION.getCode(), |
| | | SecurityConstants.INNER).getData(); |
| | | List<Long> meditationIdList = orderList.stream().map(Order::getBusinessId) |
| | | .collect(Collectors.toList()); |
| | | if (CollUtils.isNotEmpty(meditationIdList)) { |
| | | voList = voList.stream() |
| | | .filter(meditationVO -> meditationIdList.contains(meditationVO.getId())) |
| | | .peek(meditationVO -> meditationVO.setPaidStatus(1)) |
| | | .collect(Collectors.toList()); |
| | | } |
| | | return voList; |
| | | } |
| | |
| | | // 对象拷贝 |
| | | voList = BeanUtils.copyList(list, ClientMeditationVO.class); |
| | | } |
| | | handlePaidMeditation(voList); |
| | | return voList; |
| | | } |
| | | |
| | |
| | | });*/ |
| | | // 将实体类转换为VO |
| | | pageDTO = PageDTO.of(page, ClientMeditationVO.class); |
| | | handlePaidMeditation(pageDTO.getList()); |
| | | return pageDTO; |
| | | } |
| | | |
| | |
| | | .eq(MeditationUserFavorite::getMeditationId, id) |
| | | .eq(MeditationUserFavorite::getAppUserId, SecurityUtils.getUserId()) |
| | | .count() > 0 ? 1 : 2); |
| | | // 获取提问数 |
| | | vo.setQuestionCount(meditationQuestionMapper.selectCount( |
| | | Wrappers.lambdaQuery(MeditationQuestion.class) |
| | | .eq(MeditationQuestion::getMeditationId, id))); |
| | | return vo; |
| | | } |
| | | |
| | |
| | | .last("limit 1").oneOpt(); |
| | | if (userOperationOpt.isPresent()) { |
| | | meditationUserFavoriteService.removeById(userOperationOpt.get()); |
| | | // 增加收藏数 |
| | | // 减少收藏数 |
| | | meditation.setFavoriteCount(meditation.getFavoriteCount() - 1); |
| | | } else { |
| | | // 增加收藏记录 |
| | |
| | | meditationUserFavorite.setMeditationId(id); |
| | | meditationUserFavorite.setAppUserId(SecurityUtils.getUserId()); |
| | | meditationUserFavoriteService.save(meditationUserFavorite); |
| | | // 减少收藏数 |
| | | // 增加收藏数 |
| | | meditation.setFavoriteCount(meditation.getFavoriteCount() + 1); |
| | | } |
| | | this.updateById(meditation); |