Commit 6cfa679f authored by 胡秀武's avatar 胡秀武

胡秀武:模型列表bug修复

parent cc5fdf04
...@@ -41,7 +41,8 @@ public enum CodeEnum { ...@@ -41,7 +41,8 @@ public enum CodeEnum {
*/ */
NO_DATA("555", "数据库数据异常", false), NO_DATA("555", "数据库数据异常", false),
UP_DATA_FAIL("401005", "更新失败", false), UP_DATA_FAIL("401005", "更新失败", false),
INSERT_FAIL("401006", "插入数据失败", false); INSERT_FAIL("401006", "插入数据失败", false),
DELETE_FAIL("401007", "修改失败", false);
/** /**
* 构造函数 * 构造函数
......
...@@ -43,7 +43,7 @@ public class PageUtil<T> { ...@@ -43,7 +43,7 @@ public class PageUtil<T> {
*/ */
Integer number; Integer number;
public void pageUtil(Integer page, Integer size, List<T> list) { public void startPage(Integer page, Integer size, List<T> list) {
List<T> list1 = list.stream().skip((page - 1) * size).limit(size).collect(Collectors.toList()); List<T> list1 = list.stream().skip((page - 1) * size).limit(size).collect(Collectors.toList());
int length = list.size(); int length = list.size();
this.first = (page == 0);//是否第一页 this.first = (page == 0);//是否第一页
......
package com.pms.ocp.controller; package com.pms.ocp.controller;
import com.github.pagehelper.PageInfo;
import com.pms.ocp.common.constants.ResultCode; import com.pms.ocp.common.constants.ResultCode;
import com.pms.ocp.model.entity.ModelClassify; import com.pms.ocp.model.entity.ModelClassify;
import com.pms.ocp.model.vo.OcpModelGroupVO; import com.pms.ocp.model.vo.OcpModelGroupVO;
...@@ -8,7 +7,6 @@ import com.pms.ocp.model.vo.ResponseVO; ...@@ -8,7 +7,6 @@ import com.pms.ocp.model.vo.ResponseVO;
import com.pms.ocp.service.ModelClassifyService; import com.pms.ocp.service.ModelClassifyService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -31,7 +29,6 @@ public class ModelClassifyController { ...@@ -31,7 +29,6 @@ public class ModelClassifyController {
/** /**
* 模型分类导航 * 模型分类导航
*
* @return pms.ocp.model.vo.ResponseVO * @return pms.ocp.model.vo.ResponseVO
* @author huxiuwu * @author huxiuwu
* @date 2022/3/9 * @date 2022/3/9
...@@ -52,9 +49,9 @@ public class ModelClassifyController { ...@@ -52,9 +49,9 @@ public class ModelClassifyController {
@ApiOperation("右侧子类详情列表") @ApiOperation("右侧子类详情列表")
@GetMapping("/subclassDetailsList") @GetMapping("/subclassDetailsList")
public ResponseVO subclassDetailsList(@RequestParam int currentPage, public ResponseVO subclassDetailsList(@RequestParam int currentPage,
@RequestParam int pageSize, @RequestParam int pageSize,
@RequestParam(required = false, defaultValue = "") String parentGroupCode, @RequestParam(required = false,defaultValue = "") String parentGroupCode,
@RequestParam(required = false, defaultValue = "") String subclassGroupName @RequestParam(required = false,defaultValue = "") String subclassGroupName
) { ) {
return modelClassifyService.subclassDetailsList(currentPage, pageSize, parentGroupCode, subclassGroupName); return modelClassifyService.subclassDetailsList(currentPage, pageSize, parentGroupCode, subclassGroupName);
} }
...@@ -92,14 +89,25 @@ public class ModelClassifyController { ...@@ -92,14 +89,25 @@ public class ModelClassifyController {
**/ **/
@ApiOperation("删除模型分类") @ApiOperation("删除模型分类")
@PostMapping("/delete") @PostMapping("/delete")
public ResponseVO delete(@ApiParam(value = "模型分类编号") @RequestParam(required = false, defaultValue = "") String objId, public ResponseVO delete(@RequestBody ModelClassify modelClassify) {
@ApiParam(value = "模型分类编码") @RequestParam(required = false, defaultValue = "") String modelGroupCode,
@ApiParam(value = "模型分类归属公司编码") @RequestParam(required = false, defaultValue = "") String groupCompanyCode) {
Integer integer = modelClassifyService.deleteModelClassify(objId, modelGroupCode, groupCompanyCode); Integer integer = modelClassifyService.deleteModelClassify(modelClassify.getObjId(), modelClassify.getModelGroupCode(), modelClassify.getGroupCompanyCode());
if (integer.intValue() == -1) { if (integer.intValue() == -1) {
ResponseVO.ok(ResultCode.NO_DELETE); ResponseVO.ok(ResultCode.NO_DELETE);
} }
return ResponseVO.ok(integer); return ResponseVO.ok(integer);
} }
}
\ No newline at end of file /**
* 删除
*
* @return pms.ocp.model.vo.ResponseVO
* @author huxiuwu
* @date 2022/3/9
**/
@ApiOperation("删除")
@GetMapping("/delete")
public ResponseVO delete(String modelGroupCode) {
return modelClassifyService.delete(modelGroupCode);
}
}
...@@ -10,7 +10,6 @@ import lombok.Data; ...@@ -10,7 +10,6 @@ import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable; import java.io.Serializable;
import java.lang.reflect.Type;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
...@@ -99,8 +98,8 @@ public class OcpModelGroupVO implements Serializable { ...@@ -99,8 +98,8 @@ public class OcpModelGroupVO implements Serializable {
private Integer isDelete; private Integer isDelete;
@TableField(exist = false) @TableField(exist = false)
@ApiModelProperty(value = "层级") @ApiModelProperty(value = "是否拥有子类")
private int level; private boolean isHasChildren;
/** /**
* 子类集合 * 子类集合
*/ */
......
...@@ -16,10 +16,12 @@ public interface ModelClassifyService { ...@@ -16,10 +16,12 @@ public interface ModelClassifyService {
ResponseVO insert(List<ModelClassify> list); ResponseVO insert(List<ModelClassify> list);
ResponseVO subclassDetailsList(int currentPage, int pageSize, String parentGroupCode, String subclassGroupName); ResponseVO subclassDetailsList(int currentPage,int pageSize,String parentGroupCode,String subclassGroupName);
ResponseVO update(List<ModelClassify> list); ResponseVO update(List<ModelClassify> list);
ResponseVO delete(String modelGroupCode);
/** /**
* 删除模型分类 * 删除模型分类
* *
......
...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; ...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.pms.ocp.common.constants.CodeEnum; import com.pms.ocp.common.constants.CodeEnum;
import com.pms.ocp.common.utils.PageUtil; import com.pms.ocp.common.utils.PageUtil;
import com.pms.ocp.mapper.ModelClassifyMapper; import com.pms.ocp.mapper.ModelClassifyMapper;
import com.pms.ocp.model.entity.Model;
import com.pms.ocp.model.entity.ModelClassify; import com.pms.ocp.model.entity.ModelClassify;
import com.pms.ocp.model.vo.OcpModelGroupVO; import com.pms.ocp.model.vo.OcpModelGroupVO;
import com.pms.ocp.model.vo.ResponseVO; import com.pms.ocp.model.vo.ResponseVO;
...@@ -64,19 +63,20 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -64,19 +63,20 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
* @date 2022/3/9 <PageInfo<OcpModelGroupVO>> * @date 2022/3/9 <PageInfo<OcpModelGroupVO>>
**/ **/
@Override @Override
public ResponseVO subclassDetailsList(int currentPage, int pageSize, String parentGroupCode, String subclassGroupName) { public ResponseVO subclassDetailsList(int currentPage,int pageSize,String parentGroupCode,String subclassGroupName) {
//查询所有 //查询所有
List<OcpModelGroupVO> ocpModelGroupVOList = this.selectByCondition(null, null); List<OcpModelGroupVO> ocpModelGroupVOList = this.selectByCondition(null,null);
//将查询到所有数据的list转换为key为分类code,value为本身的map //将查询到所有数据的list转换为key为分类code,value为本身的map
Map<String, OcpModelGroupVO> groupByCode = ocpModelGroupVOList.stream().collect(Collectors.toMap(OcpModelGroupVO::getModelGroupCode, Function.identity(), (key1, key2) -> key2)); Map<String, OcpModelGroupVO> groupByCode = ocpModelGroupVOList.stream().collect(Collectors.toMap(OcpModelGroupVO::getModelGroupCode, Function.identity(), (key1, key2) -> key2));
//根据key获取前端传入code的对象 //根据key获取前端传入code的对象
OcpModelGroupVO ocpModelGroupVO = groupByCode.get(parentGroupCode); OcpModelGroupVO ocpModelGroupVO = groupByCode.get(parentGroupCode);
//模糊查询 //模糊查询
List<OcpModelGroupVO> dimConditionList = this.selectByCondition(null, subclassGroupName); List<OcpModelGroupVO> dimConditionList = this.selectByCondition(null,subclassGroupName);
//递归获取模糊查询后属于parentGroupCode子集 //递归获取模糊查询后属于parentGroupCode子集
List<OcpModelGroupVO> childrenList = findChildren(dimConditionList, ocpModelGroupVO, new LinkedList<>()); List<OcpModelGroupVO> childrenList = findChildren(dimConditionList, ocpModelGroupVO, new LinkedList<>());
List<OcpModelGroupVO> sortList = childrenList.stream().sorted(Comparator.comparing(OcpModelGroupVO::getGroupCtime).reversed()).collect(Collectors.toList());
PageUtil<OcpModelGroupVO> pageUtil = new PageUtil<>(); PageUtil<OcpModelGroupVO> pageUtil = new PageUtil<>();
pageUtil.pageUtil(currentPage, pageSize, childrenList); pageUtil.startPage(currentPage, pageSize, sortList);
return ResponseVO.ok(pageUtil); return ResponseVO.ok(pageUtil);
} }
...@@ -97,6 +97,20 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -97,6 +97,20 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
return ResponseVO.ok(); return ResponseVO.ok();
} }
/**
* 删除
* @return pms.ocp.model.vo.ResponseVO
* @author huxiuwu
* @date 2022/3/9
**/
@Override
public ResponseVO delete(String modelGroupCode) {
if (!ocpService.removeById(modelGroupCode)) {
return ResponseVO.error(CodeEnum.DELETE_FAIL);
}
return ResponseVO.ok();
}
/** /**
* 新增 * 新增
* *
...@@ -116,26 +130,28 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -116,26 +130,28 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
/** /**
* 获取父节点下的所有子节点放入list中 * 获取父节点下的所有子节点放入list中
* * @author huxiuwu
* @date 2022/3/9
* @param * @param
* @param * @param
* @param * @param
* @return void * @return void
* @author huxiuwu
* @date 2022/3/9
**/ **/
private List<OcpModelGroupVO> findChildren(List<OcpModelGroupVO> groupList, OcpModelGroupVO parent, List<OcpModelGroupVO> childList) { private List<OcpModelGroupVO> findChildren(List<OcpModelGroupVO> groupList, OcpModelGroupVO parent, List<OcpModelGroupVO> childList) {
for (OcpModelGroupVO vo : groupList) { for (OcpModelGroupVO vo : groupList) {
//遍历出父id等于参数的id,add进子节点集合 //遍历出父id等于参数的id,add进子节点集合
if (parent != null if (parent != null
&& parent.getModelGroupCode() && parent.getModelGroupCode()
.equals(vo.getModelGroupPcode()) .equals(vo.getModelGroupPcode())
&& !"".equals(parent.getModelGroupCode())) { && !"".equals(parent.getModelGroupCode())
//递归遍历下一级 && !parent.getModelGroupCode().equals(vo.getModelGroupCode())) {
parent.setHasChildren(true);
vo.setModelGroupPName(parent.getModelGroupName()); vo.setModelGroupPName(parent.getModelGroupName());
if (!childList.remove(vo)) { if (!childList.remove(vo)) {
childList.add(vo); childList.add(vo);
} }
//递归下一级
findChildren(groupList, vo, childList); findChildren(groupList, vo, childList);
} }
} }
...@@ -161,7 +177,8 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -161,7 +177,8 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
//得到自己的父类 //得到自己的父类
OcpModelGroupVO parent = nodeMap.get(node.getModelGroupPcode()); OcpModelGroupVO parent = nodeMap.get(node.getModelGroupPcode());
if (parent != null && (node.getModelGroupPcode().equals(parent.getModelGroupCode())) if (parent != null && (node.getModelGroupPcode().equals(parent.getModelGroupCode()))
&& (!"".equals(node.getModelGroupPcode()) || !"".equals(parent.getModelGroupCode()))) { && (!"".equals(node.getModelGroupPcode())|| !"".equals(parent.getModelGroupCode()))
&& !parent.getModelGroupCode().equals(node.getModelGroupCode())) {
//防止每次都new list或者只是使用该对象就new对象浪费内存或者覆盖上一次记录 //防止每次都new list或者只是使用该对象就new对象浪费内存或者覆盖上一次记录
if (parent.getChildrenList() == null) { if (parent.getChildrenList() == null) {
parent.setChildrenList(new LinkedList<>()); parent.setChildrenList(new LinkedList<>());
...@@ -178,24 +195,25 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -178,24 +195,25 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
} }
/** /**
* @param parent 父类 *
* @param treeNodes 需要遍历list
* @author huxiuwu * @author huxiuwu
* @date 2022/3/10 * @date 2022/3/10
* @param parent 父类
* @param treeNodes 需要遍历list
**/ **/
private void addLevel(OcpModelGroupVO parent, List<OcpModelGroupVO> treeNodes) { // private void addLevel(OcpModelGroupVO parent, List<OcpModelGroupVO> treeNodes) {
int level = parent.getLevel(); // int level = parent.getLevel();
parent.setLevel(level++); // parent.setLevel(level++);
for (OcpModelGroupVO treeNode : treeNodes) { // for (OcpModelGroupVO treeNode : treeNodes) {
if (treeNode != null && parent.getModelGroupCode().equals(treeNode.getModelGroupPcode())) { // if (treeNode != null && parent.getModelGroupCode().equals(treeNode.getModelGroupPcode())) {
addLevel(treeNode, treeNodes); // addLevel(treeNode, treeNodes);
} // }
} // }
} // }
/** /**
* 生成构造器 * 生成构造器
* * @author huxiuwu
* @date 2022/3/10
* @param searchCondition * @param searchCondition
* @return List<com.pms.ocp.model.vo.OcpModelGroupVO> * @return List<com.pms.ocp.model.vo.OcpModelGroupVO>
* @author huxiuwu * @author huxiuwu
...@@ -205,7 +223,7 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -205,7 +223,7 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
QueryWrapper<OcpModelGroupVO> queryWrapper = new QueryWrapper<>(); QueryWrapper<OcpModelGroupVO> queryWrapper = new QueryWrapper<>();
//根据是否传入搜索条件创建构造器进行查询 //根据是否传入搜索条件创建构造器进行查询
queryWrapper.eq(StringUtils.isNotEmpty(searchCondition[0]), "model_group_pcode", searchCondition[0]) queryWrapper.eq(StringUtils.isNotEmpty(searchCondition[0]), "model_group_pcode", searchCondition[0])
.like(StringUtils.isNotEmpty(searchCondition[1]), "model_group_name", searchCondition[1]).orderBy(false, false, "group_ctime"); .like(StringUtils.isNotEmpty(searchCondition[1]),"model_group_name", searchCondition[1]);
return classifyMapper.selectList(queryWrapper); return classifyMapper.selectList(queryWrapper);
} }
...@@ -223,12 +241,12 @@ public class ModelClassifyServiceImpl implements ModelClassifyService { ...@@ -223,12 +241,12 @@ public class ModelClassifyServiceImpl implements ModelClassifyService {
QueryWrapper<OcpModelGroupVO> queryWrapper = new QueryWrapper(); QueryWrapper<OcpModelGroupVO> queryWrapper = new QueryWrapper();
if (StringUtils.isNotEmpty(modelGroupCode)) { if (StringUtils.isNotEmpty(modelGroupCode)) {
queryWrapper.lambda().eq(OcpModelGroupVO::getModelGroupPcode, modelGroupCode); queryWrapper.lambda().eq(OcpModelGroupVO::getModelGroupCode, modelGroupCode);
} }
List<OcpModelGroupVO> opList = classifyMapper.selectList(queryWrapper); List<OcpModelGroupVO> opList = classifyMapper.selectList(queryWrapper);
if (opList.isEmpty()) { if (!opList.isEmpty()) {
if (StringUtils.isNotEmpty(objId)) { if (StringUtils.isNotEmpty(objId)) {
queryWrapper.lambda().eq(OcpModelGroupVO::getObjId, objId); queryWrapper.lambda().eq(OcpModelGroupVO::getObjId, objId);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment