|
@@ -1,13 +1,17 @@
|
|
package cn.cslg.pas.service.impl;
|
|
package cn.cslg.pas.service.impl;
|
|
|
|
|
|
|
|
+import cn.cslg.pas.common.model.PersonnelVO;
|
|
import cn.cslg.pas.common.model.dto.*;
|
|
import cn.cslg.pas.common.model.dto.*;
|
|
import cn.cslg.pas.common.model.vo.PathStructureNameVO;
|
|
import cn.cslg.pas.common.model.vo.PathStructureNameVO;
|
|
import cn.cslg.pas.common.model.vo.StructurePictureVO;
|
|
import cn.cslg.pas.common.model.vo.StructurePictureVO;
|
|
import cn.cslg.pas.common.model.vo.StructureVO;
|
|
import cn.cslg.pas.common.model.vo.StructureVO;
|
|
|
|
+import cn.cslg.pas.common.utils.CacheUtils;
|
|
import cn.cslg.pas.common.utils.FileUtils;
|
|
import cn.cslg.pas.common.utils.FileUtils;
|
|
|
|
+import cn.cslg.pas.common.utils.SecurityUtils.LoginUtils;
|
|
import cn.cslg.pas.domain.Structure;
|
|
import cn.cslg.pas.domain.Structure;
|
|
import cn.cslg.pas.domain.asso.AssoStructurePicture;
|
|
import cn.cslg.pas.domain.asso.AssoStructurePicture;
|
|
import cn.cslg.pas.exception.XiaoShiException;
|
|
import cn.cslg.pas.exception.XiaoShiException;
|
|
|
|
+import cn.cslg.pas.mapper.AssoStructurePatentMapper;
|
|
import cn.cslg.pas.mapper.AssoStructurePictureMapper;
|
|
import cn.cslg.pas.mapper.AssoStructurePictureMapper;
|
|
import cn.cslg.pas.mapper.StructureMapper;
|
|
import cn.cslg.pas.mapper.StructureMapper;
|
|
import cn.cslg.pas.service.IStructureService;
|
|
import cn.cslg.pas.service.IStructureService;
|
|
@@ -37,6 +41,9 @@ import java.util.stream.Collectors;
|
|
public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure> implements IStructureService {
|
|
public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure> implements IStructureService {
|
|
private final StructureMapper structureMapper;
|
|
private final StructureMapper structureMapper;
|
|
private final AssoStructurePictureMapper assoStructurePictureMapper;
|
|
private final AssoStructurePictureMapper assoStructurePictureMapper;
|
|
|
|
+ private final AssoStructurePatentMapper assoStructurePatentMapper;
|
|
|
|
+ private final CacheUtils cacheUtils;
|
|
|
|
+ private final LoginUtils loginUtils;
|
|
private final FileUtils fileUtils;
|
|
private final FileUtils fileUtils;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -49,11 +56,6 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
public void addNew(StructureAddNewDTO structureAddNewDTO, List<MultipartFile> files) {
|
|
public void addNew(StructureAddNewDTO structureAddNewDTO, List<MultipartFile> files) {
|
|
log.info("开始处理【新增架构】的业务,参数为:{}, {}", structureAddNewDTO, files);
|
|
log.info("开始处理【新增架构】的业务,参数为:{}, {}", structureAddNewDTO, files);
|
|
|
|
|
|
- //取出DTO中父级id,若父级id为null则表示该架构为第1级架构,手动给其父级id设为0
|
|
|
|
- if (structureAddNewDTO.getParentId() == null) {
|
|
|
|
- structureAddNewDTO.setParentId(0);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
Integer parentId = structureAddNewDTO.getParentId();
|
|
Integer parentId = structureAddNewDTO.getParentId();
|
|
String structureName = structureAddNewDTO.getStructureName();
|
|
String structureName = structureAddNewDTO.getStructureName();
|
|
//检查名称是否被占用(检查当前架构父级下是否有同名架构)
|
|
//检查名称是否被占用(检查当前架构父级下是否有同名架构)
|
|
@@ -68,6 +70,12 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
//DTO对象赋值给实体类
|
|
//DTO对象赋值给实体类
|
|
Structure structure = new Structure();
|
|
Structure structure = new Structure();
|
|
BeanUtils.copyProperties(structureAddNewDTO, structure);
|
|
BeanUtils.copyProperties(structureAddNewDTO, structure);
|
|
|
|
+
|
|
|
|
+ PersonnelVO personnelVO = cacheUtils.getLoginUser(loginUtils.getId());
|
|
|
|
+ structure
|
|
|
|
+ .setCreatePersonId(personnelVO.getId())
|
|
|
|
+ .setCreatePersonName(personnelVO.getName());
|
|
|
|
+
|
|
//数据入架构表(此时数据暂不含路径path)
|
|
//数据入架构表(此时数据暂不含路径path)
|
|
log.info("数据入架构表");
|
|
log.info("数据入架构表");
|
|
int rows = structureMapper.insert(structure);
|
|
int rows = structureMapper.insert(structure);
|
|
@@ -139,10 +147,16 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
throw new XiaoShiException(message);
|
|
throw new XiaoShiException(message);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //获取该架构原父级id和原路径
|
|
Integer oldParentId = queryResult.getParentId();
|
|
Integer oldParentId = queryResult.getParentId();
|
|
String oldPath = queryResult.getPath();
|
|
String oldPath = queryResult.getPath();
|
|
|
|
+ //获取DTO中该架构当前父级id和父路径
|
|
Integer newParentId = structureUpdateDTO.getParentId();
|
|
Integer newParentId = structureUpdateDTO.getParentId();
|
|
|
|
+ String parentPath = structureUpdateDTO.getParentPath();
|
|
|
|
+ String newPath = parentPath + "," + structureId;
|
|
|
|
+ //获取DTO中该架构当前名称
|
|
String newStructureName = structureUpdateDTO.getStructureName();
|
|
String newStructureName = structureUpdateDTO.getStructureName();
|
|
|
|
+
|
|
//检查名称是否被占用(检查当前尝试修改的架构父级下是否有同名架构)
|
|
//检查名称是否被占用(检查当前尝试修改的架构父级下是否有同名架构)
|
|
log.info("检查名称是否被占用(检查当前尝试修改的架构父级下是否有同名架构)");
|
|
log.info("检查名称是否被占用(检查当前尝试修改的架构父级下是否有同名架构)");
|
|
int count = structureMapper.countByparentIdAndStructureName(newParentId, newStructureName, structureId);
|
|
int count = structureMapper.countByparentIdAndStructureName(newParentId, newStructureName, structureId);
|
|
@@ -155,42 +169,29 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
//DTO对象赋值给实体类
|
|
//DTO对象赋值给实体类
|
|
Structure structure = new Structure();
|
|
Structure structure = new Structure();
|
|
BeanUtils.copyProperties(structureUpdateDTO, structure);
|
|
BeanUtils.copyProperties(structureUpdateDTO, structure);
|
|
- String parentPath = structureUpdateDTO.getParentPath();
|
|
|
|
- if (parentPath == null) {
|
|
|
|
- parentPath = "0";
|
|
|
|
- }
|
|
|
|
|
|
|
|
- //该架构新的path路径
|
|
|
|
- String newPath = parentPath + "," + structureId;
|
|
|
|
//如果新路径和原路径不一样,则表示架构更换了父级
|
|
//如果新路径和原路径不一样,则表示架构更换了父级
|
|
if (!oldParentId.equals(newParentId)) {
|
|
if (!oldParentId.equals(newParentId)) {
|
|
structure.setParentId(newParentId);
|
|
structure.setParentId(newParentId);
|
|
structure.setPath(newPath);
|
|
structure.setPath(newPath);
|
|
- }
|
|
|
|
-
|
|
|
|
- //架构表修改数据
|
|
|
|
- log.info("架构表修改数据");
|
|
|
|
- int rows = structureMapper.update(structure);
|
|
|
|
- if (rows != 1) {
|
|
|
|
- String message = "修改架构失败,服务器忙请稍后再次尝试!";
|
|
|
|
- log.info("{}", message);
|
|
|
|
- throw new XiaoShiException(message);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //如果当前修改的架构更换了父级,则要将当前架构下所有子级架构的路径也都更新
|
|
|
|
- if (!oldParentId.equals(newParentId)) {
|
|
|
|
|
|
+ //还要将当前架构下所有子级架构的路径也都更新
|
|
//根据当前架构原来的路径查询所有子级架构
|
|
//根据当前架构原来的路径查询所有子级架构
|
|
- List<StructureVO> structures = structureMapper.selectByFindInSetPath(oldPath);
|
|
|
|
|
|
+ log.info("根据当前架构原来的路径查询所有子级架构");
|
|
|
|
+ List<StructureVO> structures = structureMapper.selectByFindInSetPath(structureId + "");
|
|
for (StructureVO n : structures) {
|
|
for (StructureVO n : structures) {
|
|
|
|
+ //如果是当前修改的架构则跳过当前遍历
|
|
|
|
+ if (n.getId().equals(structureId)) {
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
String path = n.getPath();
|
|
String path = n.getPath();
|
|
- //从当前架构(即它们的父级架构)的原来的路径的长度的位置处截取后面路径
|
|
|
|
|
|
+ //从它的父级架构路径(即当前修改的架构)的原来的路径的长度的位置处截取后面路径
|
|
String behindString = path.substring(oldPath.length());
|
|
String behindString = path.substring(oldPath.length());
|
|
path = newPath + behindString;
|
|
path = newPath + behindString;
|
|
n.setPath(path);
|
|
n.setPath(path);
|
|
Structure structure2 = new Structure();
|
|
Structure structure2 = new Structure();
|
|
BeanUtils.copyProperties(n, structure2);
|
|
BeanUtils.copyProperties(n, structure2);
|
|
log.info("修改当前已更换父级的架构的子级架构路径path");
|
|
log.info("修改当前已更换父级的架构的子级架构路径path");
|
|
- rows = structureMapper.update(structure2);
|
|
|
|
|
|
+ int rows = structureMapper.update(structure2);
|
|
if (rows != 1) {
|
|
if (rows != 1) {
|
|
String message = "修改架构失败,修改当前已更换父级的架构的子级架构路径path失败,服务器忙请稍后再次尝试!";
|
|
String message = "修改架构失败,修改当前已更换父级的架构的子级架构路径path失败,服务器忙请稍后再次尝试!";
|
|
log.info("{}", message);
|
|
log.info("{}", message);
|
|
@@ -199,6 +200,15 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //架构表修改数据
|
|
|
|
+ log.info("架构表修改数据");
|
|
|
|
+ int rows = structureMapper.update(structure);
|
|
|
|
+ if (rows != 1) {
|
|
|
|
+ String message = "修改架构失败,服务器忙请稍后再次尝试!";
|
|
|
|
+ log.info("{}", message);
|
|
|
|
+ throw new XiaoShiException(message);
|
|
|
|
+ }
|
|
|
|
+
|
|
//架构图片关联表删除数据(若有原有图片被删除)
|
|
//架构图片关联表删除数据(若有原有图片被删除)
|
|
//根据架构id查询出所有原有图片
|
|
//根据架构id查询出所有原有图片
|
|
log.info("根据架构id查询出所有原有图片");
|
|
log.info("根据架构id查询出所有原有图片");
|
|
@@ -217,7 +227,6 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
}
|
|
}
|
|
//图片id集合去重,保留下来的即被删除的图片id
|
|
//图片id集合去重,保留下来的即被删除的图片id
|
|
oldPictureIds.removeAll(newOldPictureIds);
|
|
oldPictureIds.removeAll(newOldPictureIds);
|
|
-
|
|
|
|
if (oldPictureIds.size() > 0) {
|
|
if (oldPictureIds.size() > 0) {
|
|
log.info("架构图片关联表删除数据");
|
|
log.info("架构图片关联表删除数据");
|
|
rows = assoStructurePictureMapper.deleteByIds(oldPictureIds);
|
|
rows = assoStructurePictureMapper.deleteByIds(oldPictureIds);
|
|
@@ -262,17 +271,26 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
@Override
|
|
@Override
|
|
public StructureVO query(StructureQueryPageDTO structureQueryPageDTO) {
|
|
public StructureVO query(StructureQueryPageDTO structureQueryPageDTO) {
|
|
log.info("开始处理【查询架构树】的业务,参数为:{}", structureQueryPageDTO);
|
|
log.info("开始处理【查询架构树】的业务,参数为:{}", structureQueryPageDTO);
|
|
- StructureVO structureVO = new StructureVO();
|
|
|
|
//从DTO中取出产品id、架构id
|
|
//从DTO中取出产品id、架构id
|
|
Integer productId = structureQueryPageDTO.getProductId();
|
|
Integer productId = structureQueryPageDTO.getProductId();
|
|
Integer structureId = structureQueryPageDTO.getStructureId();
|
|
Integer structureId = structureQueryPageDTO.getStructureId();
|
|
- if (structureId == null) {
|
|
|
|
- structureId = 0;
|
|
|
|
- }
|
|
|
|
String structureName = structureQueryPageDTO.getStructureName();
|
|
String structureName = structureQueryPageDTO.getStructureName();
|
|
|
|
+
|
|
|
|
+ //查询出当前架构信息
|
|
|
|
+ StructureVO structureVO = null;
|
|
|
|
+ if (structureId == 0) {
|
|
|
|
+ structureVO = new StructureVO();
|
|
|
|
+ } else {
|
|
|
|
+ structureVO = structureMapper.getStandardAndPictureById(structureId);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //以下代码表示查询所有架构的路径和路径拼接成的架构名称并封装成map集合,从map集合中取值为后面给每一个架构的pathName中文路径赋值
|
|
|
|
+ HashMap<String, String> map = getStructureIdAndStructureNameMap(productId);
|
|
|
|
+
|
|
|
|
+ //以下代码表示若架构名称structureName有值则要根据架构名称模糊查询树,若架构名称structureName为null则表示查询了所有架构(不受影响)
|
|
LambdaQueryWrapper<Structure> wrapper = new LambdaQueryWrapper<>();
|
|
LambdaQueryWrapper<Structure> wrapper = new LambdaQueryWrapper<>();
|
|
if (structureName != null) {
|
|
if (structureName != null) {
|
|
- wrapper.like(Structure::getStructureName, structureQueryPageDTO.getStructureName());
|
|
|
|
|
|
+ wrapper.like(Structure::getStructureName, structureName);
|
|
}
|
|
}
|
|
List<Structure> structures = this.list(wrapper);
|
|
List<Structure> structures = this.list(wrapper);
|
|
List<Integer> ids = structures.stream().map(Structure::getId).collect(Collectors.toList());
|
|
List<Integer> ids = structures.stream().map(Structure::getId).collect(Collectors.toList());
|
|
@@ -291,8 +309,9 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
);
|
|
);
|
|
}
|
|
}
|
|
);
|
|
);
|
|
|
|
+ //若ids.size == 0,则表示根据名称模糊查询不到数据,则直接返回空structureVO
|
|
if (ids.size() != 0) {
|
|
if (ids.size() != 0) {
|
|
- diGui(structureVO, structureId, productId, ids);
|
|
|
|
|
|
+ diGui(structureVO, map, structureId, productId, ids);
|
|
}
|
|
}
|
|
return structureVO;
|
|
return structureVO;
|
|
}
|
|
}
|
|
@@ -300,26 +319,28 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
/**
|
|
/**
|
|
* 查询所有架构的路径和路径拼接成的架构名称
|
|
* 查询所有架构的路径和路径拼接成的架构名称
|
|
*
|
|
*
|
|
|
|
+ * @param queryPathStructureNameDTO 数据DTO对象
|
|
* @return 返回查询到的数据
|
|
* @return 返回查询到的数据
|
|
*/
|
|
*/
|
|
@Override
|
|
@Override
|
|
- public List<PathStructureNameVO> queryPathStructureName(Integer productId) {
|
|
|
|
- log.info("开始处理【查询所有架构路径和路径架构名称】的业务,参数为:{}", productId);
|
|
|
|
|
|
+ public List<PathStructureNameVO> queryPathStructureName(QueryPathStructureNameDTO queryPathStructureNameDTO) {
|
|
|
|
+ log.info("开始处理【查询所有架构路径和路径架构名称】的业务,参数为:{}", queryPathStructureNameDTO);
|
|
|
|
+ Integer productId = queryPathStructureNameDTO.getProductId();
|
|
|
|
+ Integer structureId = queryPathStructureNameDTO.getStructureId();
|
|
|
|
|
|
ArrayList<PathStructureNameVO> pathStructureNames = new ArrayList<>();
|
|
ArrayList<PathStructureNameVO> pathStructureNames = new ArrayList<>();
|
|
|
|
|
|
log.info("根据产品id查询所有架构数据");
|
|
log.info("根据产品id查询所有架构数据");
|
|
- List<StructureVO> structures = structureMapper.selectAllByProductId(productId);
|
|
|
|
- //map存储所有架构id(key)和架构名称(value)
|
|
|
|
- HashMap<String, String> map = new HashMap<>();
|
|
|
|
- for (StructureVO structure : structures) {
|
|
|
|
- Integer structureId = structure.getId();
|
|
|
|
- String structureStrId = structureId + "";
|
|
|
|
- String structureName = structure.getStructureName();
|
|
|
|
- map.put(structureStrId, structureName);
|
|
|
|
|
|
+ HashMap<String, String> map = getStructureIdAndStructureNameMap(productId);
|
|
|
|
+ List<StructureVO> structures;
|
|
|
|
+ //若有架构id则只查该架构底下的树,若没有架构id则查整棵产品的架构树
|
|
|
|
+ if (structureId == null) {
|
|
|
|
+ structures = structureMapper.selectAllByProductId(productId);
|
|
|
|
+ } else {
|
|
|
|
+ structures = structureMapper.selectAllByStructureId(structureId);
|
|
}
|
|
}
|
|
-
|
|
|
|
for (StructureVO structure : structures) {
|
|
for (StructureVO structure : structures) {
|
|
|
|
+ Integer id = structure.getId();
|
|
String path = structure.getPath();
|
|
String path = structure.getPath();
|
|
//path = path.substring(path.indexOf(",") + 1);
|
|
//path = path.substring(path.indexOf(",") + 1);
|
|
String[] pathSplit = path.split(",");
|
|
String[] pathSplit = path.split(",");
|
|
@@ -331,6 +352,7 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
builder.append(structureName).append("/");
|
|
builder.append(structureName).append("/");
|
|
}
|
|
}
|
|
PathStructureNameVO pathStructureNameVO = new PathStructureNameVO()
|
|
PathStructureNameVO pathStructureNameVO = new PathStructureNameVO()
|
|
|
|
+ .setId(id)
|
|
.setPath(path)
|
|
.setPath(path)
|
|
.setPathStructureName(builder + "");
|
|
.setPathStructureName(builder + "");
|
|
pathStructureNames.add(pathStructureNameVO);
|
|
pathStructureNames.add(pathStructureNameVO);
|
|
@@ -357,19 +379,17 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
}
|
|
}
|
|
|
|
|
|
ArrayList<Integer> structureIds = new ArrayList<>();
|
|
ArrayList<Integer> structureIds = new ArrayList<>();
|
|
- structureIds.add(id);
|
|
|
|
- //根据架构路径查询其所有子级架构
|
|
|
|
- String path = queryResult.getPath();
|
|
|
|
- log.info("根据架构路径查询其所有子级架构");
|
|
|
|
- List<StructureVO> structures = structureMapper.selectByFindInSetPath(path);
|
|
|
|
|
|
+ //根据架构id查询其包括其所有子级架构
|
|
|
|
+ log.info("根据架构id查询其包括其所有子级架构");
|
|
|
|
+ List<StructureVO> structures = structureMapper.selectByFindInSetPath(id + "");
|
|
for (StructureVO structure : structures) {
|
|
for (StructureVO structure : structures) {
|
|
- Integer childStructureId = structure.getId();
|
|
|
|
- structureIds.add(childStructureId);
|
|
|
|
|
|
+ Integer structureId = structure.getId();
|
|
|
|
+ structureIds.add(structureId);
|
|
}
|
|
}
|
|
|
|
|
|
//架构和专利关联表删除数据
|
|
//架构和专利关联表删除数据
|
|
log.info("架构和专利关联表删除数据");
|
|
log.info("架构和专利关联表删除数据");
|
|
- assoStructurePictureMapper.deleteByIds(structureIds);
|
|
|
|
|
|
+ assoStructurePatentMapper.deleteByStructureIds(structureIds);
|
|
|
|
|
|
//架构和图片关联表删除数据
|
|
//架构和图片关联表删除数据
|
|
log.info("架构和图片关联表删除数据");
|
|
log.info("架构和图片关联表删除数据");
|
|
@@ -377,23 +397,46 @@ public class StructureServiceImpl extends ServiceImpl<StructureMapper, Structure
|
|
|
|
|
|
//架构表删除数据
|
|
//架构表删除数据
|
|
log.info("架构表删除数据");
|
|
log.info("架构表删除数据");
|
|
- int rows = structureMapper.deleteByIds(structureIds);
|
|
|
|
|
|
+ structureMapper.deleteByIds(structureIds);
|
|
|
|
|
|
log.info("删除架构完成");
|
|
log.info("删除架构完成");
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
//递归组装架构树集合
|
|
//递归组装架构树集合
|
|
- //递归组装架构树集合
|
|
|
|
- private void diGui(StructureVO structureVO, Integer structureId, Integer productId, List<Integer> ids) {
|
|
|
|
|
|
+ private void diGui(StructureVO structureVO, HashMap<String, String> map, Integer structureId, Integer productId, List<Integer> ids) {
|
|
List<StructureVO> structureVOs = structureMapper.selectByParentIdAndProductId(structureId, productId, ids);
|
|
List<StructureVO> structureVOs = structureMapper.selectByParentIdAndProductId(structureId, productId, ids);
|
|
if (structureVOs != null) {
|
|
if (structureVOs != null) {
|
|
structureVO.setChildren(structureVOs);
|
|
structureVO.setChildren(structureVOs);
|
|
|
|
+ //给架构的路径名称pathName进行拼接赋值
|
|
|
|
+ String path = structureVO.getPath();
|
|
|
|
+ if (path != null && !path.equals("")) {
|
|
|
|
+ String[] pathSplit = path.split(",");
|
|
|
|
+ StringBuilder builder = new StringBuilder();
|
|
|
|
+ for (int i = 1; i < pathSplit.length; i++) {
|
|
|
|
+ String structureName = map.get(pathSplit[i]);
|
|
|
|
+ builder.append(structureName).append("/");
|
|
|
|
+ }
|
|
|
|
+ structureVO.setPathName(builder + "");
|
|
|
|
+ }
|
|
for (StructureVO n : structureVOs) {
|
|
for (StructureVO n : structureVOs) {
|
|
structureId = n.getId();
|
|
structureId = n.getId();
|
|
- diGui(n, structureId, productId, ids);
|
|
|
|
|
|
+ diGui(n, map, structureId, productId, ids);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private HashMap<String, String> getStructureIdAndStructureNameMap(Integer productId) {
|
|
|
|
+ List<StructureVO> structures = structureMapper.selectAllByProductId(productId);
|
|
|
|
+ //map存储所有架构id(key)和架构名称(value)
|
|
|
|
+ HashMap<String, String> map = new HashMap<>();
|
|
|
|
+ for (StructureVO structure : structures) {
|
|
|
|
+ Integer structureId = structure.getId();
|
|
|
|
+ String structureStrId = structureId + "";
|
|
|
|
+ String structureName = structure.getStructureName();
|
|
|
|
+ map.put(structureStrId, structureName);
|
|
|
|
+ }
|
|
|
|
+ return map;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|