新增了文章收藏

This commit is contained in:
wucongxing8150 2025-05-12 17:43:41 +08:00
parent ebffb14ba5
commit 8841975427
2 changed files with 76 additions and 4 deletions

View File

@ -8,12 +8,13 @@ import com.example.caseData.dao.*;
import com.example.caseData.dto.basicHospital.BasicHospitalDto;
import com.example.caseData.dto.caseClinicalArticle.CaseClinicalArticleDto;
import com.example.caseData.dto.statsCaseClinicalHospital.StatsCaseClinicalHospitalDto;
import com.example.caseData.model.BasicHospitalModel;
import com.example.caseData.model.CaseClinicalArticleAuthorModel;
import com.example.caseData.model.CaseClinicalArticleModel;
import com.example.caseData.model.CaseClinicalDoctorModel;
import com.example.caseData.exception.BusinessException;
import com.example.caseData.model.*;
import com.example.caseData.request.clinicalRequest.getClinicalHospitalSearchPage;
import com.example.caseData.service.CaseClinicalArticleService;
import com.example.caseData.service.UserService;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -39,6 +40,15 @@ public class CaseClinicalArticleController {
@Resource
private BasicHospitalDao basicHospitalDao;
@Resource
private UserCollectClinicalArticleDao userCollectClinicalArticleDao;
@Resource
private HttpServletRequest request;
@Resource
private CaseClinicalArticleService caseClinicalArticleService;
/**
* 临床病例库-文章-详情
*/
@ -73,4 +83,26 @@ public class CaseClinicalArticleController {
CaseClinicalArticleDto g = CaseClinicalArticleDto.GetDto(article);
return Response.success(g);
}
/**
* 临床病例库-文章-收藏
*/
@PostMapping("/clinical/article/collect/{article_id}")
public Response<CaseClinicalArticleDto> AddClinicalArticleCollect(
@PathVariable("article_id") String articleId
) {
String userId = (String) request.getAttribute("userId");
if (userId == null) {
return Response.error("操作失败");
}
boolean res = caseClinicalArticleService.AddClinicalArticleCollect(articleId,userId);
if (!res){
return Response.error("操作失败");
}
return Response.success();
}
}

View File

@ -0,0 +1,40 @@
package com.example.caseData.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.example.caseData.dao.UserCollectClinicalArticleDao;
import com.example.caseData.model.UserCollectClinicalArticleModel;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import static com.baomidou.mybatisplus.extension.toolkit.Db.save;
@Service
public class CaseClinicalArticleService {
@Resource
private UserCollectClinicalArticleDao userCollectClinicalArticleDao;
/**
* 新增收藏-临床病例库-文章
* @param articleId 文章id
* @param userId 用户id
* @return bool
*/
@Transactional
public boolean AddClinicalArticleCollect(String articleId,String userId){
// 检测用户是否已收藏过
LambdaQueryWrapper<UserCollectClinicalArticleModel> mapQueryWrapper = new LambdaQueryWrapper<>();
mapQueryWrapper.eq(UserCollectClinicalArticleModel::getUserId, userId);
mapQueryWrapper.eq(UserCollectClinicalArticleModel::getArticleId, articleId);
UserCollectClinicalArticleModel userCollectClinicalArticle = userCollectClinicalArticleDao.selectOne(mapQueryWrapper);
if (userCollectClinicalArticle != null) {
return true;
}
// 新增收藏
UserCollectClinicalArticleModel userCollectClinicalArticleData = new UserCollectClinicalArticleModel();
userCollectClinicalArticleData.setUserId(Long.valueOf(userId));
userCollectClinicalArticleData.setArticleId(Long.valueOf(articleId));
return save(userCollectClinicalArticleData);
}
}