|
|
@@ -13,6 +13,8 @@ import com.jeeplus.modules.WorkKnowledgeBase.entity.WorkKnowledgeBaseShareInfo;
|
|
|
import com.jeeplus.modules.WorkKnowledgeBase.entity.WorkKnowledgeBaseUserExchangeFlag;
|
|
|
import com.jeeplus.modules.WorkKnowledgeBase.entity.WorkKnowledgeBaseTreeInfo;
|
|
|
import com.jeeplus.modules.WorkKnowledgeBase.entity.WorkKnowledgePointCategory;
|
|
|
+import com.jeeplus.modules.sys.entity.User;
|
|
|
+import com.jeeplus.modules.sys.service.SystemService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
@@ -52,6 +54,9 @@ public class WorkKnowledgeBaseReadLikeService extends CrudService<WorkKnowledgeB
|
|
|
@Autowired
|
|
|
private WorkKnowledgeBaseTreeInfoDao treeInfoDao;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SystemService systemService;
|
|
|
+
|
|
|
/**
|
|
|
* 记录阅读行为(首次阅读给创建人加分)
|
|
|
* @param fileId 文件ID
|
|
|
@@ -97,6 +102,12 @@ public class WorkKnowledgeBaseReadLikeService extends CrudService<WorkKnowledgeB
|
|
|
newRecord.setLastReadTime(now);
|
|
|
newRecord.setReadCount(1);
|
|
|
newRecord.preInsert();
|
|
|
+ // preInsert 后如果 createBy 为空(无登录用户 session),手动补上
|
|
|
+ if (newRecord.getCreateBy() == null) {
|
|
|
+ User user = systemService.getUser(userId);
|
|
|
+ newRecord.setCreateBy(user);
|
|
|
+ newRecord.setUpdateBy(user);
|
|
|
+ }
|
|
|
readRecordDao.insert(newRecord);
|
|
|
|
|
|
// 首次阅读:给创建人发放积分
|
|
|
@@ -150,6 +161,12 @@ public class WorkKnowledgeBaseReadLikeService extends CrudService<WorkKnowledgeB
|
|
|
newRecord.setLikeTime(new Date());
|
|
|
newRecord.setStatus(1);
|
|
|
newRecord.preInsert();
|
|
|
+ // preInsert 后如果 createBy 为空(无登录用户 session),手动补上
|
|
|
+ if (newRecord.getCreateBy() == null) {
|
|
|
+ User user = systemService.getUser(userId);
|
|
|
+ newRecord.setCreateBy(user);
|
|
|
+ newRecord.setUpdateBy(user);
|
|
|
+ }
|
|
|
likeRecordDao.insert(newRecord);
|
|
|
|
|
|
// 首次点赞:给点赞人发放积分
|
|
|
@@ -382,6 +399,12 @@ public class WorkKnowledgeBaseReadLikeService extends CrudService<WorkKnowledgeB
|
|
|
detail.setPoint(point);
|
|
|
detail.setIsManualScore("0");
|
|
|
detail.preInsert();
|
|
|
+ // preInsert 后如果 createBy 为空(无登录用户 session),手动补上
|
|
|
+ if (detail.getCreateBy() == null) {
|
|
|
+ User user = systemService.getUser(userId);
|
|
|
+ detail.setCreateBy(user);
|
|
|
+ detail.setUpdateBy(user);
|
|
|
+ }
|
|
|
pointDetailDao.insert(detail);
|
|
|
|
|
|
// 确保该用户的兑换标记记录存在(新用户首次获得积分时自动初始化)
|
|
|
@@ -402,6 +425,12 @@ public class WorkKnowledgeBaseReadLikeService extends CrudService<WorkKnowledgeB
|
|
|
flag.setIsFirstExchanged(0);
|
|
|
flag.setDelFlag("0");
|
|
|
flag.preInsert();
|
|
|
+ // preInsert 后如果 createBy 为空(无登录用户 session),手动补上
|
|
|
+ if (flag.getCreateBy() == null) {
|
|
|
+ User user = systemService.getUser(userId);
|
|
|
+ flag.setCreateBy(user);
|
|
|
+ flag.setUpdateBy(user);
|
|
|
+ }
|
|
|
exchangeFlagDao.insert(flag);
|
|
|
}
|
|
|
} catch (Exception e) {
|