Browse Source

班级动态阅读记录

dzx 7 months ago
parent
commit
127770676a

+ 2 - 0
src/main/java/com/xjrsoft/module/base/controller/BaseClassDynamicsController.java

@@ -143,6 +143,8 @@ public class BaseClassDynamicsController {
             }
         }
 
+        baseClassDynamicsService.read(id);
+
         return RT.ok(dynamicsVo);
     }
 

+ 2 - 0
src/main/java/com/xjrsoft/module/base/service/IBaseClassDynamicsService.java

@@ -14,4 +14,6 @@ import com.xjrsoft.module.base.entity.BaseClassDynamics;
 public interface IBaseClassDynamicsService extends MPJBaseService<BaseClassDynamics> {
 
     Boolean add(AddBaseClassDynamicsDto dto);
+
+    Boolean read(Long baseClassDynamicsId);
 }

+ 18 - 0
src/main/java/com/xjrsoft/module/base/service/impl/BaseClassDynamicsServiceImpl.java

@@ -1,8 +1,10 @@
 package com.xjrsoft.module.base.service.impl;
 
+import cn.dev33.satoken.stp.StpUtil;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.xjrsoft.common.utils.LocalDateTimeUtil;
@@ -151,4 +153,20 @@ public class BaseClassDynamicsServiceImpl extends MPJBaseServiceImpl<BaseClassDy
 
         return true;
     }
+
+    @Override
+    @Transactional
+    public Boolean read(Long baseClassDynamicsId) {
+        List<BaseClassDynamicsRelation> list = dynamicsRelationMapper.selectList(
+                new QueryWrapper<BaseClassDynamicsRelation>().lambda()
+                        .eq(BaseClassDynamicsRelation::getBaseClassDynamicsId, baseClassDynamicsId)
+                        .eq(BaseClassDynamicsRelation::getUserId, StpUtil.getLoginIdAsLong())
+        );
+        for (BaseClassDynamicsRelation dynamicsRelation : list) {
+            dynamicsRelation.setReadMark(1);
+            dynamicsRelation.setReadDate(LocalDateTime.now());
+            dynamicsRelationMapper.updateById(dynamicsRelation);
+        }
+        return true;
+    }
 }