|
@@ -1,6 +1,9 @@
|
|
|
package com.jeeplus.test.knowledge.service;
|
|
|
|
|
|
+import cn.hutool.core.collection.CollectionUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
@@ -8,6 +11,10 @@ import com.jeeplus.core.domain.BaseEntity;
|
|
|
import com.jeeplus.core.service.dto.BaseDTO;
|
|
|
import com.jeeplus.sys.service.dto.UserDTO;
|
|
|
import com.jeeplus.sys.utils.UserUtils;
|
|
|
+import com.jeeplus.test.editor.domain.EditorFiles;
|
|
|
+import com.jeeplus.test.editor.service.EditorFilesService;
|
|
|
+import com.jeeplus.test.editor.service.dto.EditorFilesDTO;
|
|
|
+import com.jeeplus.test.klgBase.question.domain.KlgBaseQuestions;
|
|
|
import com.jeeplus.test.knowledge.domain.KnowledgeShareComment;
|
|
|
import com.jeeplus.test.knowledge.domain.KnowledgeShareDetail;
|
|
|
import com.jeeplus.test.knowledge.domain.KnowledgeShareVisit;
|
|
@@ -27,6 +34,7 @@ import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
import java.util.UUID;
|
|
@@ -55,6 +63,9 @@ public class KnowledgeShareInfoService {
|
|
|
@Resource
|
|
|
private WorkContractService workContractService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private EditorFilesService editorFilesService;
|
|
|
+
|
|
|
public IPage<KnowledgeShareListDto> list(Page<KnowledgeShareListDto> page, KnowledgeShareDetail detail) {
|
|
|
return detailMapper.findList(page, detail);
|
|
|
}
|
|
@@ -82,6 +93,13 @@ public class KnowledgeShareInfoService {
|
|
|
detail.setUpdateDate(new Date());
|
|
|
detail.setDelFlag(0);
|
|
|
detailMapper.insert(detail);
|
|
|
+ // 保存富文本中的文件
|
|
|
+ editorFilesService.remove(new QueryWrapper<EditorFiles>().lambda().eq(EditorFiles::getSourceId,id));
|
|
|
+ if (CollectionUtil.isNotEmpty(dto.getEditorFilesDTOList())) {
|
|
|
+ dto.getEditorFilesDTOList().stream().forEach(item->{
|
|
|
+ editorFilesService.saveUrl(item.getTemporaryUrl(),item.getUrl(),id);
|
|
|
+ });
|
|
|
+ }
|
|
|
// 保存附件信息
|
|
|
if (CollectionUtils.isNotEmpty(dto.getFiles())) {
|
|
|
workContractService.saveFilesNew(dto.getFiles(), userDTO, id, "knowledgeShare");
|
|
@@ -98,6 +116,13 @@ public class KnowledgeShareInfoService {
|
|
|
detail.setUpdateBy(userDTO.getId());
|
|
|
detail.setUpdateDate(new Date());
|
|
|
detailMapper.updateById(detail);
|
|
|
+ // 保存富文本中的文件
|
|
|
+ editorFilesService.remove(new QueryWrapper<EditorFiles>().lambda().eq(EditorFiles::getSourceId,dto.getId()));
|
|
|
+ if (CollectionUtil.isNotEmpty(dto.getEditorFilesDTOList())) {
|
|
|
+ dto.getEditorFilesDTOList().stream().forEach(item->{
|
|
|
+ editorFilesService.saveUrl(item.getTemporaryUrl(),item.getUrl(),dto.getId());
|
|
|
+ });
|
|
|
+ }
|
|
|
// 保存附件信息
|
|
|
if (CollectionUtils.isNotEmpty(dto.getFiles())) {
|
|
|
workContractService.updateFiles(dto.getFiles(), userDTO, dto.getId());
|
|
@@ -117,6 +142,29 @@ public class KnowledgeShareInfoService {
|
|
|
KnowledgeShareDetail detail = detailMapper.selectById(id);
|
|
|
BeanUtils.copyProperties(detail, dto);
|
|
|
dto.setTypeName(typeMapper.selectById(detail.getTypeId()).getKlgsType());
|
|
|
+
|
|
|
+ // 富文本图片查询
|
|
|
+ if (ObjectUtil.isNotEmpty(detail)) {
|
|
|
+ if(StringUtils.isNotBlank(detail.getDetail())){
|
|
|
+ String newContent = editorFilesService.getNewContent(detail.getDetail(), id);
|
|
|
+ dto.setDetail(newContent);
|
|
|
+ KnowledgeShareDetail k = new KnowledgeShareDetail();
|
|
|
+ k.setId(id);
|
|
|
+ k.setDetail(newContent);
|
|
|
+ detailMapper.update(k, new QueryWrapper<KnowledgeShareDetail>().lambda().eq(KnowledgeShareDetail::getId, id));
|
|
|
+ List<EditorFiles> list = editorFilesService.list(new QueryWrapper<EditorFiles>().lambda().eq(EditorFiles::getSourceId, id));
|
|
|
+ List<EditorFilesDTO> editorFilesDTOList = new ArrayList<>();
|
|
|
+ list.stream().forEach(item->{
|
|
|
+ EditorFilesDTO editorFilesDTO = new EditorFilesDTO();
|
|
|
+ editorFilesDTO.setSourceId(item.getSourceId());
|
|
|
+ editorFilesDTO.setTemporaryUrl(item.getTemporaryUrl());
|
|
|
+ editorFilesDTO.setUrl(item.getUrl());
|
|
|
+ editorFilesDTOList.add(editorFilesDTO);
|
|
|
+ });
|
|
|
+ dto.setEditorFilesDTOList(editorFilesDTOList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
// 查询访问记录
|
|
|
LambdaQueryWrapper<KnowledgeShareVisit> visitWrapper = new LambdaQueryWrapper<>();
|
|
|
visitWrapper.eq(KnowledgeShareVisit::getDetailId, id).eq(BaseEntity::getDelFlag, 0);
|