问题知识库业务接口开发。
This commit is contained in:
+2
-2
@@ -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("编辑成功!");
|
||||
|
||||
+3
-3
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
+8
-5
@@ -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("未找到对应数据");
|
||||
}
|
||||
|
||||
+31
@@ -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;
|
||||
}
|
||||
|
||||
+46
@@ -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;
|
||||
}
|
||||
}
|
||||
+46
@@ -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;
|
||||
}
|
||||
}
|
||||
+46
@@ -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;
|
||||
}
|
||||
}
|
||||
+3
-1
@@ -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);
|
||||
}
|
||||
|
||||
+12
-2
@@ -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);
|
||||
}
|
||||
|
||||
+3
@@ -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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+4
@@ -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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+8
-2
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
+158
-6
@@ -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));
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user