浏览代码

【学习助手】1.查看文章,增加访问记录 2.关闭增加访问日志对外接口

lzu918 6 月之前
父节点
当前提交
c3a2adf76c

+ 16 - 8
ruoyi-zzb/src/main/java/com/ruoyi/zzb/study/controller/StudyController.java

@@ -5,11 +5,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.zzb.common.bean.RspResult;
 import com.ruoyi.zzb.study.domain.StudyDocInfo;
 import com.ruoyi.zzb.study.domain.UserSearchParam;
-import com.ruoyi.zzb.study.domain.req.SaveViewLogVO;
+import com.ruoyi.zzb.study.domain.req.QueryInfoVO;
 import com.ruoyi.zzb.study.domain.req.UpdatePageViewNumVO;
 import com.ruoyi.zzb.study.service.StudyService;
 import lombok.extern.slf4j.Slf4j;
@@ -41,10 +40,19 @@ public class StudyController {
 	}
 
 	@PostMapping("/findDocInfoById")
-	public JSONObject findDocInfoById(HttpServletResponse response, HttpServletRequest request,@RequestBody JSONObject params) {
+	public JSONObject findDocInfoById(HttpServletResponse response, HttpServletRequest request, @Validated @RequestBody QueryInfoVO queryInfoVO) {
 
 		try {
-			StudyDocInfo result = studyService.findDocInfoById(params.getString("docId"));
+			LoginUser loginUser = SecurityUtils.getLoginUser();
+			SysUser sysUser = loginUser.getUser();
+
+			queryInfoVO.setUserId(sysUser.getUserId()+"");
+			StudyDocInfo result = studyService.findDocInfoById(queryInfoVO.getDocId());
+
+			if(result != null){		//有记录详情,保存浏览记录
+				studyService.saveViewLogInfo(queryInfoVO,sysUser);
+			}
+
 			return RspResult.success(result);
 		}catch (Exception e){
 			e.printStackTrace();
@@ -96,15 +104,15 @@ public class StudyController {
 		}
 	}
 
-	@PostMapping("/saveViewLog")
-	public JSONObject saveViewLog(HttpServletResponse response, HttpServletRequest request, @Validated @RequestBody SaveViewLogVO saveViewLogVO) {
+//	@PostMapping("/saveViewLog")		关闭保存访问日志对外接口
+	public JSONObject saveViewLog(HttpServletResponse response, HttpServletRequest request, @Validated @RequestBody QueryInfoVO queryInfoVO) {
 		try {
 
 			LoginUser loginUser = SecurityUtils.getLoginUser();
 			SysUser sysUser = loginUser.getUser();
 
-			saveViewLogVO.setUserId(sysUser.getUserId()+"");
-			boolean result = studyService.saveViewLogInfo(saveViewLogVO,sysUser);
+			queryInfoVO.setUserId(sysUser.getUserId()+"");
+			boolean result = studyService.saveViewLogInfo(queryInfoVO,sysUser);
 			return RspResult.success(result);
 		}catch (Exception e){
 			e.printStackTrace();

+ 15 - 0
ruoyi-zzb/src/main/java/com/ruoyi/zzb/study/domain/req/QueryInfoVO.java

@@ -0,0 +1,15 @@
+package com.ruoyi.zzb.study.domain.req;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+public class QueryInfoVO {
+
+    @NotBlank
+    private String  docId;
+
+    private String userId;
+
+}

+ 0 - 21
ruoyi-zzb/src/main/java/com/ruoyi/zzb/study/domain/req/SaveViewLogVO.java

@@ -1,21 +0,0 @@
-package com.ruoyi.zzb.study.domain.req;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-@Data
-public class SaveViewLogVO {
-
-    @NotBlank
-    private String  docId;
-
-    private String userId;
-
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private String viewTime;
-}

+ 7 - 7
ruoyi-zzb/src/main/java/com/ruoyi/zzb/study/service/StudyService.java

@@ -11,7 +11,7 @@ import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.zzb.study.domain.StudyDocInfo;
 import com.ruoyi.zzb.study.domain.StudyViewLogInfo;
 import com.ruoyi.zzb.study.domain.UserSearchParam;
-import com.ruoyi.zzb.study.domain.req.SaveViewLogVO;
+import com.ruoyi.zzb.study.domain.req.QueryInfoVO;
 import com.ruoyi.zzb.study.domain.req.UpdatePageViewNumVO;
 import com.ruoyi.zzb.study.mapper.StudyDocInfoMapper;
 import com.ruoyi.zzb.study.mapper.StudyViewLogInfoMapper;
@@ -98,23 +98,23 @@ public class StudyService {
     }
 
     @Transactional
-    public boolean saveViewLogInfo(SaveViewLogVO saveViewLogVO,SysUser sysUser) {
+    public boolean saveViewLogInfo(QueryInfoVO queryInfoVO, SysUser sysUser) {
 
 
         //记录浏览量+1
         UpdateWrapper<StudyDocInfo> updateDocWrapper = new UpdateWrapper<>();
-        updateDocWrapper.eq("DOC_ID",saveViewLogVO.getDocId());
+        updateDocWrapper.eq("DOC_ID", queryInfoVO.getDocId());
         updateDocWrapper.setSql("PAGE_VIEW_NUM = PAGE_VIEW_NUM + 1");
         Integer j =   studyDocInfoMapper.update(null,updateDocWrapper);
 
         if(j != 1){
-            throw new RuntimeException("记录浏览量更新异常,docId不存在:"+saveViewLogVO.getDocId());
+            throw new RuntimeException("记录浏览量更新异常,docId不存在:"+ queryInfoVO.getDocId());
         }
 
         //保存访问记录
         StudyViewLogInfo studyViewLogInfo = new StudyViewLogInfo();
-        studyViewLogInfo.setDocId(saveViewLogVO.getDocId());
-        studyViewLogInfo.setUserId(saveViewLogVO.getUserId());
+        studyViewLogInfo.setDocId(queryInfoVO.getDocId());
+        studyViewLogInfo.setUserId(queryInfoVO.getUserId());
         studyViewLogInfo.setUserName(sysUser.getNickName());
         studyViewLogInfo.setUserIdcard(sysUser.getIdCard());
         studyViewLogInfo.setUserPoliceNo(sysUser.getPoliceNo());
@@ -128,7 +128,7 @@ public class StudyService {
             throw new RuntimeException("保存访问记录日志保存失败:"+JSONObject.toJSONString(studyViewLogInfo));
         }
 
-        log.info("============【学习板块】保存访问记录成功!{}============",saveViewLogVO.getDocId());
+        log.info("============【学习板块】保存访问记录成功!{}============", queryInfoVO.getDocId());
         return i == 1 && j ==1;
     }