问题知识库业务接口开发。

This commit is contained in:
wangzhijiang
2022-08-08 11:26:50 +08:00
parent 00fcb4bac9
commit 310b32c5d6
13 changed files with 370 additions and 21 deletions
@@ -35,7 +35,7 @@ import com.jero.common.aspect.annotation.AutoLog;
public class ProblemKnowledgeBaseClassifyEOController extends JeroController<ProblemKnowledgeBaseClassifyEO, IProblemKnowledgeBaseClassifyEOService> {
@Autowired
private IProblemKnowledgeBaseClassifyEOService problemKnowledgeBaseClassifyEOService;
/**
* 分页列表查询
*
@@ -93,7 +93,7 @@ public class ProblemKnowledgeBaseClassifyEOController extends JeroController<Pro
*/
@AutoLog(value = "问题知识库-分类表-编辑")
@ApiOperation(value="问题知识库-分类表-编辑", notes="问题知识库-分类表-编辑")
@PutMapping(value = "/edit")
@PostMapping(value = "/edit")
public Result<?> edit(@Validated @RequestBody ProblemKnowledgeBaseClassifyEO problemKnowledgeBaseClassifyEO) {
problemKnowledgeBaseClassifyEOService.editById(problemKnowledgeBaseClassifyEO);
return Result.OK("编辑成功!");
@@ -35,7 +35,7 @@ import com.jero.common.aspect.annotation.AutoLog;
public class ProblemKnowledgeBaseCommentEOController extends JeroController<ProblemKnowledgeBaseCommentEO, IProblemKnowledgeBaseCommentEOService> {
@Autowired
private IProblemKnowledgeBaseCommentEOService problemKnowledgeBaseCommentEOService;
/**
* 分页列表查询
*
@@ -66,8 +66,8 @@ public class ProblemKnowledgeBaseCommentEOController extends JeroController<Prob
@AutoLog(value = "问题知识库评论表-列表查询")
@ApiOperation(value="问题知识库评论表-列表查询", notes="问题知识库评论表-列表查询")
@GetMapping(value = "/list")
public Result<List<ProblemKnowledgeBaseCommentEO>> queryList() {
List<ProblemKnowledgeBaseCommentEO> list = problemKnowledgeBaseCommentEOService.queryList();
public Result<List<ProblemKnowledgeBaseCommentEO>> queryList(ProblemKnowledgeBaseCommentEO problemKnowledgeBaseCommentEO,HttpServletRequest req) {
List<ProblemKnowledgeBaseCommentEO> list = problemKnowledgeBaseCommentEOService.queryList(problemKnowledgeBaseCommentEO,req);
return Result.OK(list);
}
@@ -35,7 +35,7 @@ import com.jero.common.aspect.annotation.AutoLog;
public class ProblemKnowledgeBaseEOController extends JeroController<ProblemKnowledgeBaseEO, IProblemKnowledgeBaseEOService> {
@Autowired
private IProblemKnowledgeBaseEOService problemKnowledgeBaseEOService;
/**
* 分页列表查询
*
@@ -55,6 +55,7 @@ public class ProblemKnowledgeBaseEOController extends JeroController<ProblemKnow
QueryWrapper<ProblemKnowledgeBaseEO> queryWrapper = QueryGenerator.initQueryWrapper(problemKnowledgeBaseEO, req.getParameterMap());
Page<ProblemKnowledgeBaseEO> page = new Page<ProblemKnowledgeBaseEO>(pageNo, pageSize);
IPage<ProblemKnowledgeBaseEO> pageList = problemKnowledgeBaseEOService.page(page, queryWrapper);
this.problemKnowledgeBaseEOService.disposeData(pageList.getRecords(),problemKnowledgeBaseEO.getCut());
return Result.OK(pageList);
}
@@ -66,8 +67,9 @@ public class ProblemKnowledgeBaseEOController extends JeroController<ProblemKnow
@AutoLog(value = "问题知识库表-列表查询")
@ApiOperation(value="问题知识库表-列表查询", notes="问题知识库表-列表查询")
@GetMapping(value = "/list")
public Result<List<ProblemKnowledgeBaseEO>> queryList() {
List<ProblemKnowledgeBaseEO> list = problemKnowledgeBaseEOService.queryList();
public Result<List<ProblemKnowledgeBaseEO>> queryList(ProblemKnowledgeBaseEO problemKnowledgeBaseEO,
HttpServletRequest req) {
List<ProblemKnowledgeBaseEO> list = problemKnowledgeBaseEOService.queryList(problemKnowledgeBaseEO,req);
return Result.OK(list);
}
@@ -136,8 +138,9 @@ public class ProblemKnowledgeBaseEOController extends JeroController<ProblemKnow
@AutoLog(value = "问题知识库表-通过id查询")
@ApiOperation(value="问题知识库表-通过id查询", notes="问题知识库表-通过id查询")
@GetMapping(value = "/queryById")
public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
ProblemKnowledgeBaseEO problemKnowledgeBaseEO = problemKnowledgeBaseEOService.queryById(id);
public Result<?> queryById(@RequestParam(name="id",required=true) String id,
@RequestParam(name="cut",required=true) String cut) {
ProblemKnowledgeBaseEO problemKnowledgeBaseEO = problemKnowledgeBaseEOService.queryById(id,cut);
if(problemKnowledgeBaseEO==null) {
return Result.error("未找到对应数据");
}
@@ -3,7 +3,10 @@ package com.jero.modules.problemKnowledgeBase.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.util.List;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@@ -129,6 +132,13 @@ public class ProblemKnowledgeBaseEO implements Serializable {
@Excel(name = "展示权限", width = 15)
@ApiModelProperty(value = "展示权限")
private java.lang.String showPermissions;
/**展示权限翻译*/
@TableField(exist = false)
private java.lang.String showPermissions_dicText;
/**允许的用户列表*/
@TableField(exist = false)
private List<ProblemKnowledgeBaseUserEO> permissionUserList;
/**发布人id*/
@Excel(name = "展示权限", width = 15)
@@ -140,4 +150,25 @@ public class ProblemKnowledgeBaseEO implements Serializable {
@ApiModelProperty(value = "发布日期")
private java.lang.String releaseTime;
/**点赞总数量*/
@TableField(exist = false)
private long praiseCount;
/**自己的点赞信息*/
@TableField(exist = false)
private ProblemKnowledgeBasePraiseEO praiseEO;
/**收藏总数量*/
@TableField(exist = false)
private long collectCount;
/**自己的收藏信息*/
@TableField(exist = false)
private ProblemKnowledgeBaseCollectEO collectEO;
/**浏览总数量*/
@TableField(exist = false)
private long browsingHistoryCount;
/**中英文切换*/
@TableField(exist = false)
private String cut;
}
@@ -0,0 +1,46 @@
package com.jero.modules.problemKnowledgeBase.enums;
import com.jero.common.constant.enums.CutEnum;
import org.apache.commons.lang3.StringUtils;
/**
* 问题知识库-收藏状态枚举类
*/
public enum CollectStatusEnum {
COLLECT("收藏","Collect","Collect"),
CANCEL_COLLECT("取消收藏","Cancel collect","Cancel collect"),
;
String cnName;
String enName;
String value;
private CollectStatusEnum(String cnName, String enName, String value) {
this.cnName = cnName;
this.enName = enName;
this.value = value;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public static String getTextByValue(String value,String cut) {
CollectStatusEnum[] values = values();
for (CollectStatusEnum collectStatusEnum : values) {
if (collectStatusEnum.value.equals(value)) {
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
return collectStatusEnum.cnName;
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
return collectStatusEnum.enName;
}
}
}
return null;
}
}
@@ -0,0 +1,46 @@
package com.jero.modules.problemKnowledgeBase.enums;
import com.jero.common.constant.enums.CutEnum;
import org.apache.commons.lang3.StringUtils;
/**
* 问题知识库-点赞状态枚举类
*/
public enum PraiseStatusEnum {
PRAISE("点赞","Praise","Praise"),
CANCEL_PRAISE("取消点赞","Cancel praise","Cancel praise"),
;
String cnName;
String enName;
String value;
private PraiseStatusEnum(String cnName, String enName, String value) {
this.cnName = cnName;
this.enName = enName;
this.value = value;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public static String getTextByValue(String value,String cut) {
PraiseStatusEnum[] values = values();
for (PraiseStatusEnum praiseStatusEnum : values) {
if (praiseStatusEnum.value.equals(value)) {
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
return praiseStatusEnum.cnName;
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
return praiseStatusEnum.enName;
}
}
}
return null;
}
}
@@ -0,0 +1,46 @@
package com.jero.modules.problemKnowledgeBase.enums;
import com.jero.common.constant.enums.CutEnum;
import org.apache.commons.lang3.StringUtils;
/**
* 问题知识库-展示权限枚举类
*/
public enum ShowPermissionsEnum {
OPEN("公开","Open","Open"),
PRIVACY("私密","Privacy","Privacy"),
;
String cnName;
String enName;
String value;
private ShowPermissionsEnum(String cnName, String enName, String value) {
this.cnName = cnName;
this.enName = enName;
this.value = value;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public static String getTextByValue(String value,String cut) {
ShowPermissionsEnum[] values = values();
for (ShowPermissionsEnum showPermissionsEnum : values) {
if (showPermissionsEnum.value.equals(value)) {
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
return showPermissionsEnum.cnName;
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
return showPermissionsEnum.enName;
}
}
}
return null;
}
}
@@ -2,6 +2,8 @@ package com.jero.modules.problemKnowledgeBase.service;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCommentEO;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
@@ -57,5 +59,5 @@ public interface IProblemKnowledgeBaseCommentEOService extends IService<ProblemK
*
* @return
*/
List<ProblemKnowledgeBaseCommentEO> queryList();
List<ProblemKnowledgeBaseCommentEO> queryList(ProblemKnowledgeBaseCommentEO problemKnowledgeBaseCommentEO, HttpServletRequest req);
}
@@ -2,6 +2,8 @@ package com.jero.modules.problemKnowledgeBase.service;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO;
import com.baomidou.mybatisplus.extension.service.IService;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
@@ -50,12 +52,20 @@ public interface IProblemKnowledgeBaseEOService extends IService<ProblemKnowledg
* @param id
* @return
*/
ProblemKnowledgeBaseEO queryById(String id);
ProblemKnowledgeBaseEO queryById(String id,String cut);
/**
* 列表查询
*
* @return
*/
List<ProblemKnowledgeBaseEO> queryList();
List<ProblemKnowledgeBaseEO> queryList(ProblemKnowledgeBaseEO problemKnowledgeBaseEO,
HttpServletRequest req);
/**
* 处理数据
* @param datas
* @param cut
*/
void disposeData(List<ProblemKnowledgeBaseEO> datas,String cut);
}
@@ -88,6 +88,9 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl<CountryCa
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
QueryWrapper<CountryCardManageReleaseDetailEO> manageReleaseDetailEODeleteWrapper = new QueryWrapper<>();
manageReleaseDetailEODeleteWrapper.lambda().in(CountryCardManageReleaseDetailEO::getCountryCardManageReleaseId,ids);
this.countryCardManageReleaseDetailEOService.remove(manageReleaseDetailEODeleteWrapper);
}
/**
@@ -93,6 +93,10 @@ public class CountryCardTempEOServiceImpl extends ServiceImpl<CountryCardTempEOM
@Override
public void deleteByIds(List<String> ids) {
removeByIds(ids);
QueryWrapper<CountryCardTempItemEO> itemDeleteWrapper = new QueryWrapper<>();
itemDeleteWrapper.lambda().in(CountryCardTempItemEO::getCountryCardTempId,ids);
this.countryCardTempItemEOService.remove(itemDeleteWrapper);
}
/**
@@ -1,5 +1,7 @@
package com.jero.modules.problemKnowledgeBase.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseCommentEO;
import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseCommentEOMapper;
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseCommentEOService;
@@ -10,6 +12,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
/**
* @Description: 问题知识库评论表
* @Author: jero-boot
@@ -86,7 +90,9 @@ public class ProblemKnowledgeBaseCommentEOServiceImpl extends ServiceImpl<Proble
* @return
*/
@Override
public List<ProblemKnowledgeBaseCommentEO> queryList() {
return list();
public List<ProblemKnowledgeBaseCommentEO> queryList(ProblemKnowledgeBaseCommentEO problemKnowledgeBaseCommentEO, HttpServletRequest req) {
QueryWrapper<ProblemKnowledgeBaseCommentEO> queryWrapper = QueryGenerator.initQueryWrapper(problemKnowledgeBaseCommentEO, req.getParameterMap());
List<ProblemKnowledgeBaseCommentEO> result = this.list(queryWrapper);
return result;
}
}
@@ -1,15 +1,29 @@
package com.jero.modules.problemKnowledgeBase.service.impl;
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.problemKnowledgeBase.entity.*;
import com.jero.modules.problemKnowledgeBase.enums.ShowPermissionsEnum;
import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseEOMapper;
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseEOService;
import com.jero.modules.problemKnowledgeBase.service.*;
import com.jero.modules.system.util.StringUtils;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Date;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
/**
* @Description: 问题知识库表
* @Author: jero-boot
@@ -20,6 +34,15 @@ import org.springframework.transaction.annotation.Transactional;
@Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class)
public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowledgeBaseEOMapper, ProblemKnowledgeBaseEO> implements IProblemKnowledgeBaseEOService {
@Autowired
private IProblemKnowledgeBaseUserEOService problemKnowledgeBaseUserEOService;
@Autowired
private IProblemKnowledgeBasePraiseEOService problemKnowledgeBasePraiseEOService;
@Autowired
private IProblemKnowledgeBaseCollectEOService problemKnowledgeBaseCollectEOService;
@Autowired
private IProblemKnowledgeBaseBrowsingHistoryEOService problemKnowledgeBaseBrowsingHistoryEOService;
/**
* 保存
*
@@ -32,6 +55,11 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
problemKnowledgeBaseEO.setCreateTime(now);
problemKnowledgeBaseEO.setUpdateTime(now);
save(problemKnowledgeBaseEO);
//如果该条问题知识库的展示权限为私密,则创建权限表数据
if(StringUtils.equals(problemKnowledgeBaseEO.getShowPermissions(), ShowPermissionsEnum.PRIVACY.getValue())){
batchInsertProblemKnowledgeBaseUserEO(problemKnowledgeBaseEO);
}
}
/**
@@ -45,6 +73,11 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
Date now = new Date();
problemKnowledgeBaseEO.setUpdateTime(now);
saveOrUpdate(problemKnowledgeBaseEO);
//如果该条问题知识库的展示权限为私密,则创建权限表数据
if(StringUtils.equals(problemKnowledgeBaseEO.getShowPermissions(), ShowPermissionsEnum.PRIVACY.getValue())){
batchInsertProblemKnowledgeBaseUserEO(problemKnowledgeBaseEO);
}
}
/**
@@ -76,8 +109,15 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
* @return
*/
@Override
public ProblemKnowledgeBaseEO queryById(String id) {
return getById(id);
public ProblemKnowledgeBaseEO queryById(String id,String cut) {
ProblemKnowledgeBaseEO problemKnowledgeBaseEO = getById(id);
List<ProblemKnowledgeBaseEO> problemKnowledgeBaseEOList = new ArrayList<>();
problemKnowledgeBaseEOList.add(problemKnowledgeBaseEO);
this.disposeData(problemKnowledgeBaseEOList,cut);
if (CollectionUtils.isNotEmpty(problemKnowledgeBaseEOList)) {
problemKnowledgeBaseEO = problemKnowledgeBaseEOList.get(0);
}
return problemKnowledgeBaseEO;
}
/**
@@ -86,7 +126,119 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
* @return
*/
@Override
public List<ProblemKnowledgeBaseEO> queryList() {
return list();
public List<ProblemKnowledgeBaseEO> queryList(ProblemKnowledgeBaseEO problemKnowledgeBaseEO,
HttpServletRequest req) {
QueryWrapper<ProblemKnowledgeBaseEO> queryWrapper = QueryGenerator.initQueryWrapper(problemKnowledgeBaseEO, req.getParameterMap());
List<ProblemKnowledgeBaseEO> result = this.list(queryWrapper);
this.disposeData(result,problemKnowledgeBaseEO.getCut());
return result;
}
/**
* 批量添加问题知识库展示权限表数据。
*/
public void batchInsertProblemKnowledgeBaseUserEO(ProblemKnowledgeBaseEO problemKnowledgeBaseEO){
//1.把当前问题知识库所有的权限删掉。
QueryWrapper<ProblemKnowledgeBaseUserEO> deleteWrapper = new QueryWrapper<>();
deleteWrapper.lambda().eq(ProblemKnowledgeBaseUserEO::getProblemKnowledgeBaseId,problemKnowledgeBaseEO.getId());
this.problemKnowledgeBaseUserEOService.remove(deleteWrapper);
List<ProblemKnowledgeBaseUserEO> permissionUserList = problemKnowledgeBaseEO.getPermissionUserList();
//2.获取当前登录用户信息,把当前登录用户组成一条数据添加进权限表
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ProblemKnowledgeBaseUserEO currentUserPermission = new ProblemKnowledgeBaseUserEO();
currentUserPermission.setUserId(currentUser.getId());
permissionUserList.add(currentUserPermission);
permissionUserList.forEach(permissionUser -> {
permissionUser.setProblemKnowledgeBaseId(problemKnowledgeBaseEO.getId());
});
//3.把允许的用户添加进权限表。
this.problemKnowledgeBaseUserEOService.saveOrUpdateBatch(permissionUserList);
}
@Override
public void disposeData(List<ProblemKnowledgeBaseEO> datas,String cut){
if (CollectionUtils.isNotEmpty(datas)) {
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
List<String> probleKnowledgeBaseIdList = datas.stream().map(ProblemKnowledgeBaseEO::getId).distinct().collect(Collectors.toList());
//查询出数据的所有点赞数量
QueryWrapper<ProblemKnowledgeBasePraiseEO> praiseQueryWrapper = new QueryWrapper<>();
praiseQueryWrapper.lambda().in(ProblemKnowledgeBasePraiseEO::getProblemKnowledgeBaseId,probleKnowledgeBaseIdList);
List<ProblemKnowledgeBasePraiseEO> praiseEOList = this.problemKnowledgeBasePraiseEOService.list(praiseQueryWrapper);
//查询出数据的所有的浏览数量
QueryWrapper<ProblemKnowledgeBaseBrowsingHistoryEO> browsingHistoryQueryWrapper = new QueryWrapper<>();
browsingHistoryQueryWrapper.lambda().in(ProblemKnowledgeBaseBrowsingHistoryEO::getProblemKnowledgeBaseId,probleKnowledgeBaseIdList);
List<ProblemKnowledgeBaseBrowsingHistoryEO> browsingHistoryEOList = this.problemKnowledgeBaseBrowsingHistoryEOService.list(browsingHistoryQueryWrapper);
//查询出数据的所有的收藏数量
QueryWrapper<ProblemKnowledgeBaseCollectEO> collectQueryWrapper = new QueryWrapper<>();
collectQueryWrapper.lambda().in(ProblemKnowledgeBaseCollectEO::getProblemKnowledgeBaseId,probleKnowledgeBaseIdList);
List<ProblemKnowledgeBaseCollectEO> collectEOList = this.problemKnowledgeBaseCollectEOService.list(collectQueryWrapper);
datas.forEach(data -> {
if(StringUtils.isNotEmpty(data.getShowPermissions())){
data.setShowPermissions_dicText(ShowPermissionsEnum.getTextByValue(data.getShowPermissions(),cut));
}
long praiseCount = praiseEOList.stream().filter(praiseEO -> {
boolean flag = false;
if(StringUtils.equals(data.getId(),praiseEO.getProblemKnowledgeBaseId())){
flag = true;
}
return flag;
}).count();
data.setPraiseCount(praiseCount);
List<ProblemKnowledgeBasePraiseEO> poblemKnowledgeBasePraiseEOS = praiseEOList.stream().filter(praiseEO -> {
boolean flag = false;
if(StringUtils.equals(data.getId(),praiseEO.getProblemKnowledgeBaseId())
&& StringUtils.equals(praiseEO.getPraiseUserId(),currentUser.getId())){
flag = true;
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(poblemKnowledgeBasePraiseEOS)){
data.setPraiseEO(poblemKnowledgeBasePraiseEOS.get(0));
}
long browsingHistoryCount = browsingHistoryEOList.stream().filter(praiseEO -> {
boolean flag = false;
if(StringUtils.equals(data.getId(),praiseEO.getProblemKnowledgeBaseId())){
flag = true;
}
return flag;
}).count();
data.setBrowsingHistoryCount(browsingHistoryCount);
long collectCount = collectEOList.stream().filter(collectEO -> {
boolean flag = false;
if(StringUtils.equals(data.getId(),collectEO.getProblemKnowledgeBaseId())){
flag = true;
}
return flag;
}).count();
data.setCollectCount(collectCount);
List<ProblemKnowledgeBaseCollectEO> problemKnowledgeBaseCollectEOS = collectEOList.stream().filter(collectEO -> {
boolean flag = false;
if(StringUtils.equals(data.getId(),collectEO.getProblemKnowledgeBaseId())
&& StringUtils.equals(collectEO.getCollectUserId(),currentUser.getId())){
flag = true;
}
return flag;
}).collect(Collectors.toList());
if(CollectionUtils.isNotEmpty(problemKnowledgeBaseCollectEOS)){
data.setCollectEO(problemKnowledgeBaseCollectEOS.get(0));
}
});
}
}
}