Browse Source

模块类型 修改

feature/syp_points
songyunpeng 5 years ago
parent
commit
3013a7c720
  1. 1
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ModuleCategoryDTO.java
  2. 59
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/TreeNode.java
  3. 24
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/dao/ModuleCategoryDao.java
  4. 16
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/entity/ModuleCategoryEntity.java
  5. 13
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/service/impl/ModuleCategoryServiceImpl.java
  6. 81
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/utils/TreeUtils.java
  7. 4
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/moduleCategory/ModuleCategoryDao.xml

1
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ModuleCategoryDTO.java

@ -17,7 +17,6 @@
package com.elink.esua.epdc.dto;
import com.elink.esua.epdc.commons.tools.utils.TreeNode;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;

59
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/TreeNode.java

@ -0,0 +1,59 @@
/**
* Copyright (c) 2018 人人开源 All rights reserved.
*
* https://www.renren.io
*
* 版权所有侵权必究
*/
package com.elink.esua.epdc.dto;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* 树节点所有需要实现树节点的都需要继承该类
*
* @author Mark sunlightcs@gmail.com
* @since 1.0.0
*/
public class TreeNode<T> implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 上级ID
*/
private String pid;
/**
* 子节点列表
*/
private List<T> children = new ArrayList<>();
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public List<T> getChildren() {
return children;
}
public void setChildren(List<T> children) {
this.children = children;
}
}

24
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/dao/ModuleCategoryDao.java

@ -33,8 +33,28 @@ import java.util.Map;
*/
@Mapper
public interface ModuleCategoryDao extends BaseDao<ModuleCategoryEntity> {
/**
* @Description 获取列表
* @Author songyunpeng
* @Date 2020/10/29
* @Param [params]
* @return java.util.List<com.elink.esua.epdc.modules.moduleCategory.entity.ModuleCategoryEntity>
**/
List<ModuleCategoryEntity> getList(Map<String, Object> params);
/**
* @Description 查询类别tree
* @Author songyunpeng
* @Date 2020/10/29
* @Param []
* @return java.util.List<com.elink.esua.epdc.dto.ModuleCategoryTreeDTO>
**/
List<ModuleCategoryTreeDTO> selectListCategoryTreeDTO();
/**
* @Description 单条查询
* @Author songyunpeng
* @Date 2020/10/29
* @Param [id]
* @return com.elink.esua.epdc.modules.moduleCategory.entity.ModuleCategoryEntity
**/
ModuleCategoryEntity getById(String id);
}

16
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/entity/ModuleCategoryEntity.java

@ -17,14 +17,12 @@
package com.elink.esua.epdc.modules.moduleCategory.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 模块类别表 模块类别表
*
@ -93,4 +91,16 @@ public class ModuleCategoryEntity extends BaseEpdcEntity {
*/
private String enableFlag;
/**
* 上级部门名称
*/
@TableField(exist = false)
private String parentName;
@TableField(exist = false)
private String value;
@TableField(exist = false)
private String label;
}

13
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/service/impl/ModuleCategoryServiceImpl.java

@ -22,14 +22,12 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.exception.ErrorCode;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.utils.TreeUtils;
import com.elink.esua.epdc.dto.CategoryOption;
import com.elink.esua.epdc.dto.ModuleCategoryDTO;
import com.elink.esua.epdc.dto.ModuleCategoryTreeDTO;
@ -37,6 +35,7 @@ import com.elink.esua.epdc.modules.moduleCategory.dao.ModuleCategoryDao;
import com.elink.esua.epdc.modules.moduleCategory.entity.ModuleCategoryEntity;
import com.elink.esua.epdc.modules.moduleCategory.redis.ModuleCategoryRedis;
import com.elink.esua.epdc.modules.moduleCategory.service.ModuleCategoryService;
import com.elink.esua.epdc.modules.moduleCategory.utils.TreeUtils;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -86,7 +85,11 @@ public class ModuleCategoryServiceImpl extends BaseServiceImpl<ModuleCategoryDao
@Override
public ModuleCategoryDTO get(String id) {
ModuleCategoryEntity entity = baseDao.selectById(id);
if (id == null) {
return null;
}
ModuleCategoryEntity entity = baseDao.getById(id);
return ConvertUtils.sourceToTarget(entity, ModuleCategoryDTO.class);
}
@ -123,7 +126,7 @@ public class ModuleCategoryServiceImpl extends BaseServiceImpl<ModuleCategoryDao
*/
private List<ModuleCategoryEntity> getPidListByPid(String pid) {
//顶级部门,无上级部门
if (Constant.CATEGORY_ROOT.equals(pid)) {
if ("0".equals(pid)) {
return new ArrayList<>();
}
@ -146,7 +149,7 @@ public class ModuleCategoryServiceImpl extends BaseServiceImpl<ModuleCategoryDao
}
private void getPidTree(String pid, Map<String, ModuleCategoryEntity> map, List<ModuleCategoryEntity> pCategoryEntityList) {
//顶级,无上级
if (Constant.CATEGORY_ROOT.equals(pid)) {
if ("0".equals(pid)) {
return;
}
//上级存在

81
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/moduleCategory/utils/TreeUtils.java

@ -0,0 +1,81 @@
/**
* Copyright (c) 2018 人人开源 All rights reserved.
*
* https://www.renren.io
*
* 版权所有侵权必究
*/
package com.elink.esua.epdc.modules.moduleCategory.utils;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.dto.TreeNode;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
/**
* 树形结构工具类菜单部门等
*
* @author Mark sunlightcs@gmail.com
* @since 1.0.0
*/
public class TreeUtils {
/**
* 根据pid构建树节点
*/
public static <T extends TreeNode> List<T> build(List<T> treeNodes, String pid) {
//pid不能为空
AssertUtils.isNull(pid, "pid");
List<T> treeList = new ArrayList<>();
for(T treeNode : treeNodes) {
if (pid.equals(treeNode.getPid())) {
treeList.add(findChildren(treeNodes, treeNode));
}
}
return treeList;
}
/**
* 查找子节点
*/
private static <T extends TreeNode> T findChildren(List<T> treeNodes, T rootNode) {
for(T treeNode : treeNodes) {
if(rootNode.getId().equals(treeNode.getPid())) {
rootNode.getChildren().add(findChildren(treeNodes, treeNode));
}
}
return rootNode;
}
/**
* 构建树节点
*/
public static <T extends TreeNode> List<T> build(List<T> treeNodes) {
List<T> result = new ArrayList<>();
//list转map
Map<String, T> nodeMap = new LinkedHashMap<>(treeNodes.size());
for(T treeNode : treeNodes){
nodeMap.put(treeNode.getId(), treeNode);
}
for(T node : nodeMap.values()) {
T parent = nodeMap.get(node.getPid());
if(parent != null && !(node.getId().equals(parent.getId()))){
parent.getChildren().add(node);
continue;
}
result.add(node);
}
return result;
}
}

4
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/moduleCategory/ModuleCategoryDao.xml

@ -42,6 +42,10 @@
ORDER BY
t1.sort ASC
</select>
<select id="getById" resultType="com.elink.esua.epdc.modules.moduleCategory.entity.ModuleCategoryEntity">
select t1.*,(select t2.category_name from epdc_module_category t2 where t2.id=t1.pid)parentName from epdc_module_category t1
where t1.id = #{value} and t1.del_flag = 0
</select>
</mapper>
Loading…
Cancel
Save