diff --git a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysUserServiceImpl.java b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysUserServiceImpl.java index 304aa6215..3f4c2adcb 100644 --- a/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysUserServiceImpl.java +++ b/jero-boot/jero-boot-module-system/src/main/java/com/jero/modules/system/service/impl/SysUserServiceImpl.java @@ -459,7 +459,11 @@ public class SysUserServiceImpl extends ServiceImpl impl userIdList = userIdList.stream().distinct().collect(Collectors.toList()); QueryWrapper sysUserQueryWrapper = new QueryWrapper<>(); sysUserQueryWrapper.lambda().in(SysUser::getId,userIdList); - List sysUsers = this.baseMapper.selectList(sysUserQueryWrapper); + List sysUsers = new ArrayList<>(); + if(CollectionUtils.isNotEmpty(userIdList)){ + sysUsers = this.baseMapper.selectList(sysUserQueryWrapper); + } + return sysUsers; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseClassifyEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseClassifyEOController.java index 54aa4c3e3..842aaafe4 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseClassifyEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseClassifyEOController.java @@ -56,6 +56,7 @@ public class ProblemKnowledgeBaseClassifyEOController extends JeroController page = new Page(pageNo, pageSize); IPage pageList = problemKnowledgeBaseClassifyEOService.page(page, queryWrapper); + this.problemKnowledgeBaseClassifyEOService.disposeData(pageList.getRecords()); return Result.OK(pageList); } @@ -69,6 +70,7 @@ public class ProblemKnowledgeBaseClassifyEOController extends JeroController> queryList() { List list = problemKnowledgeBaseClassifyEOService.queryList(); + this.problemKnowledgeBaseClassifyEOService.disposeData(list); return Result.OK(list); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseEOController.java index 59bd50731..41b5dcb78 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/controller/ProblemKnowledgeBaseEOController.java @@ -53,7 +53,7 @@ public class ProblemKnowledgeBaseEOController extends JeroController queryWrapper = QueryGenerator.initQueryWrapper(problemKnowledgeBaseEO, req.getParameterMap()); - this.problemKnowledgeBaseEOService.createQueryPermission(queryWrapper); + this.problemKnowledgeBaseEOService.createQueryPermission(queryWrapper,problemKnowledgeBaseEO); queryWrapper.orderByDesc("create_time"); Page page = new Page(pageNo, pageSize); IPage pageList = problemKnowledgeBaseEOService.page(page, queryWrapper); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseClassifyEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseClassifyEO.java index 2ce96532e..994abea87 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseClassifyEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseClassifyEO.java @@ -4,6 +4,7 @@ import java.io.Serializable; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; 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; @@ -70,5 +71,7 @@ public class ProblemKnowledgeBaseClassifyEO implements Serializable { @Excel(name = "负责人id", width = 15) @ApiModelProperty(value = "负责人id") private java.lang.String chargePersonId; + @TableField(exist = false) + private java.lang.String chargePersonIdName; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseEO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseEO.java index 492a10074..dd152f332 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseEO.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/entity/ProblemKnowledgeBaseEO.java @@ -73,8 +73,12 @@ public class ProblemKnowledgeBaseEO implements Serializable { @Excel(name = "问题分类", width = 15) @ApiModelProperty(value = "问题分类") private java.lang.String problemType; + /**问题分类展示名称*/ + @TableField(exist = false) + private java.lang.String problemTypeName; /**市场*/ + @Dict(dicCode = "region") @Excel(name = "市场", width = 15) @ApiModelProperty(value = "市场") private java.lang.String targetMarket; @@ -171,4 +175,8 @@ public class ProblemKnowledgeBaseEO implements Serializable { /**中英文切换*/ @TableField(exist = false) private String cut; + + /**模糊搜索全部输入字段条件*/ + @TableField(exist = false) + private String searchStr; } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseClassifyEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseClassifyEOService.java index 486f3ea5e..00564d0f1 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseClassifyEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseClassifyEOService.java @@ -58,4 +58,10 @@ public interface IProblemKnowledgeBaseClassifyEOService extends IService queryList(); + + /** + * 处理数据 + * @param datas + */ + void disposeData(List datas); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseEOService.java index b62c1331a..4b538190c 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/IProblemKnowledgeBaseEOService.java @@ -74,5 +74,5 @@ public interface IProblemKnowledgeBaseEOService extends IService queryWrapper); + void createQueryPermission(QueryWrapper queryWrapper,ProblemKnowledgeBaseEO problemKnowledgeBaseEO); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java index 1c473bc11..4949d9f5f 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseClassifyEOServiceImpl.java @@ -3,9 +3,16 @@ package com.jero.modules.problemKnowledgeBase.service.impl; import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseClassifyEO; import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseClassifyEOMapper; import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseClassifyEOService; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; +import com.jero.modules.system.util.StringUtils; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; 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; @@ -19,6 +26,8 @@ import org.springframework.transaction.annotation.Transactional; @Service @Transactional(value = "transactionManager", readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = Throwable.class) public class ProblemKnowledgeBaseClassifyEOServiceImpl extends ServiceImpl implements IProblemKnowledgeBaseClassifyEOService { + @Autowired + private ISysUserService sysUserService; /** * 保存 @@ -89,4 +98,28 @@ public class ProblemKnowledgeBaseClassifyEOServiceImpl extends ServiceImpl queryList() { return list(); } + + @Override + public void disposeData(List datas) { + if (CollectionUtils.isNotEmpty(datas)) { + List userIdList = datas.stream().map(ProblemKnowledgeBaseClassifyEO::getChargePersonId).distinct().collect(Collectors.toList()); + + List userList = this.sysUserService.querySysUserListByIdList(userIdList); + + datas.forEach(data -> { + if(CollectionUtils.isNotEmpty(userList)){ + List sysUsers = userList.stream().filter(user -> { + boolean flag = false; + if (StringUtils.equals(data.getId(), user.getId())) { + flag = true; + } + return flag; + }).collect(Collectors.toList()); + if(CollectionUtils.isNotEmpty(sysUsers)){ + data.setChargePersonIdName(sysUsers.get(0).getUsername()); + } + } + }); + } + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java index 57a0f9ada..b4155d784 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java @@ -14,9 +14,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.Date; import java.util.stream.Collectors; +import java.util.stream.Stream; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.transaction.annotation.Propagation; @@ -42,6 +44,8 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl queryList(ProblemKnowledgeBaseEO problemKnowledgeBaseEO, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(problemKnowledgeBaseEO, req.getParameterMap()); - this.createQueryPermission(queryWrapper); + this.createQueryPermission(queryWrapper,problemKnowledgeBaseEO); queryWrapper.orderByDesc("create_time"); List result = this.list(queryWrapper); this.disposeData(result,problemKnowledgeBaseEO.getCut()); @@ -167,6 +171,11 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl probleKnowledgeBaseIdList = datas.stream().map(ProblemKnowledgeBaseEO::getId).distinct().collect(Collectors.toList()); //查询出数据的所有点赞数量 QueryWrapper praiseQueryWrapper = new QueryWrapper<>(); @@ -189,6 +198,16 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl permissionUserEOList = this.problemKnowledgeBaseUserEOService.list(permissionUserQueryWrapper); this.problemKnowledgeBaseUserEOService.disposeData(permissionUserEOList,cut); + List problemKnowledgeBaseClassifyEOList = new ArrayList<>(); + if(StringUtils.isNotEmpty(problemTypeSb.toString())){ + Stream problemTypeList = Arrays.asList(problemTypeSb.toString().substring(0, problemTypeSb.toString().length() - 1).split(",")).stream().distinct(); + QueryWrapper classifyEOQueryWrapper = new QueryWrapper<>(); + classifyEOQueryWrapper.lambda().in(ProblemKnowledgeBaseClassifyEO::getId,problemTypeList); + problemKnowledgeBaseClassifyEOList = this.problemKnowledgeBaseClassifyEOService.list(classifyEOQueryWrapper); + } + + + List finalProblemKnowledgeBaseClassifyEOList = problemKnowledgeBaseClassifyEOList; datas.forEach(data -> { if(StringUtils.isNotEmpty(data.getShowPermissions())){ data.setShowPermissions_dicText(ShowPermissionsEnum.getTextByValue(data.getShowPermissions(),cut)); @@ -258,12 +277,28 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl { + boolean flag = false; + for (String type : problemTypeArr) { + if (StringUtils.equals(type, problemKnowledgeBaseClassifyEO.getId())) { + flag = true; + } + } + return flag; + }).map(ProblemKnowledgeBaseClassifyEO::getProblemLabel).collect(Collectors.joining(",")); + + data.setProblemTypeName(problemTypeName); + } }); } } @Override - public void createQueryPermission(QueryWrapper queryWrapper) { + public void createQueryPermission(QueryWrapper queryWrapper,ProblemKnowledgeBaseEO problemKnowledgeBaseEO) { /** * 查询权限 * 公开:所有人都可以看到。 @@ -283,5 +318,17 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl { + query.like(ProblemKnowledgeBaseEO::getTitle,searchStr); + query.or().like(ProblemKnowledgeBaseEO::getProblemType,searchStr); + query.or().like(ProblemKnowledgeBaseEO::getTargetMarket,searchStr); + query.or().like(ProblemKnowledgeBaseEO::getStandNumber,searchStr); + query.or().like(ProblemKnowledgeBaseEO::getStandTitle,searchStr); + query.or().like(ProblemKnowledgeBaseEO::getContent,searchStr); + }); + } } }