Quellcode durchsuchen

作者:张哲
时间:2023/02/17
类型:优化
描述:里程碑(2)定时任务开发

ZizgZh vor 2 Jahren
Ursprung
Commit
2dc7549da1

+ 25 - 0
src/main/java/com/redxun/knowledge/album/service/AlbumInfoServiceImpl.java

@@ -22,6 +22,7 @@ import com.redxun.knowledge.album.entity.enums.AlbumVersionEnum;
 import com.redxun.knowledge.album.entity.vo.*;
 import com.redxun.knowledge.album.mapper.*;
 import com.redxun.knowledge.common.UserService;
+import com.redxun.knowledge.entity.dao.ActionLog;
 import com.redxun.knowledge.entity.dao.Knowledge;
 import com.redxun.knowledge.entity.vo.KnowledgeCategoryAdminVo;
 import com.redxun.knowledge.service.KnowledgeCategoryServiceImpl;
@@ -576,6 +577,11 @@ public class AlbumInfoServiceImpl extends SuperServiceImpl<AlbumInfoMapper, Albu
             albumInfoDetailPcVo.setShowStatus(0);
             albumInfoDetailPcVo.setActionFlag(new ArrayList<>());
         }
+        //增加点击量
+        // TODO: 2023/2/17  增加点击量
+        if (albumInfoDetailPcVo.getVersionState() == 2){
+            addCountViews(userId,albumInfoDetailPcVo.getPkId());
+        }
         return albumInfoDetailPcVo;
     }
 
@@ -805,4 +811,23 @@ public class AlbumInfoServiceImpl extends SuperServiceImpl<AlbumInfoMapper, Albu
             );
         }
     }
+
+
+    /**
+     * 向统计表中增加数据(相同数据不增加)
+     * @param userId 用户Id
+     * @param albumId 专辑Id
+     */
+    private void addCountViews(String userId,String albumId){
+        //QueryWrapper<ActionLog> queryWrapper = new QueryWrapper<>();
+        //queryWrapper.eq("USER_ID",userId);
+        //queryWrapper.eq("KNOWLEDGE_ID",knowledgeId);
+        //List<ActionLog> actionLogList = actionLogMapper.selectList(queryWrapper);
+        //if (org.springframework.util.CollectionUtils.isEmpty(actionLogList)){
+        //    ActionLog actionLog = new ActionLog();
+        //    actionLog.setType(1);
+        //    actionLog.setKnowledgeId(knowledgeId);
+        //    actionLog.setUserId(userId);
+        //    actionLogMapper.insert(actionLog);
+    }
 }

+ 17 - 12
src/main/java/com/redxun/knowledge/album/service/AlbumYelpApproveServiceImpl.java

@@ -31,6 +31,8 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.*;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ThreadPoolExecutor;
 import java.util.stream.Collectors;
 
 /**
@@ -61,6 +63,9 @@ public class AlbumYelpApproveServiceImpl extends SuperServiceImpl<AlbumYelpAppro
     @Autowired
     private MessageService messageService;
 
+    @Autowired
+    private ThreadPoolExecutor threadPoolExecutor;
+
     @Override
     public BaseDao<AlbumYelpApprove> getRepository() {
         return albumYelpApproveMapper;
@@ -283,18 +288,18 @@ public class AlbumYelpApproveServiceImpl extends SuperServiceImpl<AlbumYelpAppro
      * @param createBy,remark,flag
      */
     private void sendMessage(String createBy, String albumName, String yelpContent, String remark) {
-        List<OsUserDto> osUserDtoList = new ArrayList<>();
-        //查询用户信息
-        OsUserDto osUserDto = userService.queryOsUserDto(createBy);
-        osUserDtoList.add(osUserDto);
-        // 点评不通过
-        messageService.sendInnerMsg("您提交的申请已被驳回!",
-                "提交内容:" + albumName + ":" + yelpContent + "<br>" +
-                        "驳回原因:" + remark + "<br>" +
-                        "审核人:" + ContextUtil.getCurrentUser().getFullName() + "<br>" +
-                        "审批时间:" + DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN), osUserDtoList);
-
-
+        CompletableFuture.runAsync(() -> {
+            List<OsUserDto> osUserDtoList = new ArrayList<>();
+            //查询用户信息
+            OsUserDto osUserDto = userService.queryOsUserDto(createBy);
+            osUserDtoList.add(osUserDto);
+            // 点评不通过
+            messageService.sendInnerMsg("您提交的申请已被驳回!",
+                    "提交内容:" + albumName + ":" + yelpContent + "<br>" +
+                            "驳回原因:" + remark + "<br>" +
+                            "审核人:" + ContextUtil.getCurrentUser().getFullName() + "<br>" +
+                            "审批时间:" + DateUtil.format(new Date(), DatePattern.NORM_DATETIME_PATTERN), osUserDtoList);
+        },threadPoolExecutor);
     }
 
     /**

+ 7 - 7
src/main/java/com/redxun/knowledge/album/service/AlbumYelpServiceImpl.java

@@ -212,13 +212,13 @@ public class AlbumYelpServiceImpl extends SuperServiceImpl<AlbumYelpMapper, Albu
         albumYelpInfoVo.setCreateTime(albumYelp.getCreateTime());
         albumYelpInfoVo.setState(albumYelp.getState());
         albumYelpInfoVo.setStateName(AlbumYelpEnum.getMessage(albumYelp.getState()));
-        List<String> actionFlag = new ArrayList<>();
-        if (albumYelp.getState() == 0){
-            actionFlag.add("approve");
-        } else {
-            actionFlag.add("view");
-        }
-        albumYelpInfoVo.setActionFlag(actionFlag);
+        //List<String> actionFlag = new ArrayList<>();
+        //if (albumYelp.getState() == 0){
+        //    actionFlag.add("approve");
+        //} else {
+        //    actionFlag.add("view");
+        //}
+        //albumYelpInfoVo.setActionFlag(actionFlag);
         //上级点评
         if (albumYelp.getYelpId() != null){
             AlbumYelp albumYelpParent = albumYelpMapper.selectById(albumYelp.getYelpId());

+ 39 - 0
src/main/java/com/redxun/knowledge/task/AlbumJobHandler.java

@@ -0,0 +1,39 @@
+package com.redxun.knowledge.task;
+
+import com.redxun.knowledge.album.entity.dao.AlbumYelp;
+import com.redxun.knowledge.album.mapper.AlbumInfoMapper;
+import com.redxun.knowledge.album.mapper.AlbumYelpMapper;
+import com.xxl.job.core.handler.IJobHandler;
+import com.xxl.job.core.handler.annotation.XxlJob;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Component;
+
+/**
+ * 文件名: AlbumJobHandler
+ * 作者: Zizg
+ * 时间: 2023/2/17
+ * 描述:
+ * 修改人:
+ * 修改时间:
+ * 修改内容:
+ */
+@Component
+@Slf4j
+public class AlbumJobHandler extends IJobHandler {
+
+    @Autowired
+    private RedisTemplate redisTemplate;
+
+    @Autowired
+    private AlbumInfoMapper albumInfoMapper;
+
+    @Autowired
+    private AlbumYelpMapper albumYelpMapper;
+
+    @Override
+    public void execute() throws Exception {
+    }
+
+}