From 64f7ccb9ef8b5a0618e65cddc14b981c1f108ba3 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 04 十一月 2024 09:01:59 +0800
Subject: [PATCH] 代码提交

---
 xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationQuestionServiceImpl.java |   22 +++++++++++++++++++---
 1 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationQuestionServiceImpl.java b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationQuestionServiceImpl.java
index 4f95e22..4c265a0 100644
--- a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationQuestionServiceImpl.java
+++ b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/service/impl/MeditationQuestionServiceImpl.java
@@ -1,8 +1,10 @@
 package com.xinquan.meditation.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.enums.ReportStatusEnum;
 import com.xinquan.common.core.exception.ServiceException;
+import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.meditation.mapper.MeditationReportMapper;
 import com.xinquan.meditation.service.MeditationReportService;
@@ -17,6 +19,7 @@
 import java.util.Optional;
 
 import com.xinquan.system.api.domain.MeditationReport;
+import com.xinquan.system.api.model.LoginUser;
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -38,6 +41,8 @@
     @Autowired
     private MeditationReportMapper meditationReportMapper;
 
+    @Autowired
+    private TokenService tokenService;
     /**
      * 举报提问
      *
@@ -46,6 +51,11 @@
      */
     @Override
     public void report(Long id, String content) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        if (loginUser==null){
+            return;
+        }
+        Long userId = loginUser.getUserid();
         MeditationQuestion meditationQuestion = this.getById(id);
         if (Optional.ofNullable(meditationQuestion).isPresent()) {
             meditationQuestion.setReportStatus(2);
@@ -54,7 +64,7 @@
             meditationReport.setMeditationId(meditationQuestion.getMeditationId());
             meditationReport.setQuestionId(meditationQuestion.getId());
             meditationReport.setReportContent(content);
-            meditationReport.setReportUserId(SecurityUtils.getUserId());
+            meditationReport.setReportUserId(userId);
             meditationReport.setCreateTime(LocalDateTime.now());
             meditationReportMapper.insert(meditationReport);
         }
@@ -67,6 +77,12 @@
      */
     @Override
     public void likeQuestion(Long id) {
+        LoginUser loginUser = tokenService.getLoginUser();
+        if (loginUser==null){
+            return ;
+        }
+        Long userId = loginUser.getUserid();
+
         MeditationQuestion meditationQuestion = this.getById(id);
         if (Objects.isNull(meditationQuestion)) {
             throw new ServiceException("提问不存在");
@@ -74,7 +90,7 @@
         // 判断是否已点赞
         Optional<MeditationQuestionLike> likeOpt = meditationQuestionLikeService.lambdaQuery()
                 .eq(MeditationQuestionLike::getMeditationQuestionId, id)
-                .eq(MeditationQuestionLike::getAppUserId, SecurityUtils.getUserId()).last("limit 1")
+                .eq(MeditationQuestionLike::getAppUserId, userId).last("limit 1")
                 .oneOpt();
         if (likeOpt.isPresent()) {
             // 已点赞则取消点赞
@@ -83,7 +99,7 @@
         } else {
             // 未点赞则点赞
             MeditationQuestionLike meditationQuestionLike = new MeditationQuestionLike();
-            meditationQuestionLike.setAppUserId(SecurityUtils.getUserId());
+            meditationQuestionLike.setAppUserId(userId);
             meditationQuestionLike.setMeditationQuestionId(id);
             if (meditationQuestionLikeService.save(meditationQuestionLike)) {
                 meditationQuestion.setLikeCount(meditationQuestion.getLikeCount() + 1);

--
Gitblit v1.7.1