package org.jeecg.modules.eam.service.impl;
|
|
import cn.hutool.core.collection.CollectionUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.apache.commons.lang3.StringUtils;
|
import org.apache.shiro.SecurityUtils;
|
import org.jeecg.common.constant.CommonConstant;
|
import org.jeecg.common.constant.DataBaseConstant;
|
import org.jeecg.common.system.vo.LoginUser;
|
import org.jeecg.common.util.oConvertUtils;
|
import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
|
import org.jeecg.modules.eam.constant.*;
|
import org.jeecg.modules.eam.entity.EamEquipment;
|
import org.jeecg.modules.eam.entity.EamEquipmentExtend;
|
import org.jeecg.modules.eam.mapper.EamEquipmentMapper;
|
import org.jeecg.modules.eam.request.EamEquipmentQuery;
|
import org.jeecg.modules.eam.service.IEamEquipmentExtendService;
|
import org.jeecg.modules.eam.service.IEamEquipmentService;
|
import org.jeecg.modules.eam.tree.FindsEquipmentEamCenterUtil;
|
import org.jeecg.modules.eam.tree.FindsEquipmentProductionUtil;
|
import org.jeecg.modules.eam.vo.EamEquipmentTree;
|
import org.jeecg.modules.eam.vo.EquipmentSearchResult;
|
import org.jeecg.modules.system.entity.BaseFactory;
|
import org.jeecg.modules.system.entity.BaseFactoryUser;
|
import org.jeecg.modules.system.entity.MdcProduction;
|
import org.jeecg.modules.system.service.IBaseFactoryService;
|
import org.jeecg.modules.system.service.IBaseFactoryUserService;
|
import org.jeecg.modules.system.service.IMdcProductionService;
|
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import javax.annotation.Resource;
|
import java.util.*;
|
import java.util.stream.Collectors;
|
|
/**
|
* @Description: 设备台账
|
* @Author: jeecg-boot
|
* @Date: 2025-03-19
|
* @Version: V1.0
|
*/
|
@Service
|
public class EamEquipmentServiceImpl extends ServiceImpl<EamEquipmentMapper, EamEquipment> implements IEamEquipmentService {
|
|
@Resource
|
private EamEquipmentMapper eamEquipmentMapper;
|
@Autowired
|
private IEamEquipmentExtendService equipmentExtendService;
|
@Autowired
|
private IMdcProductionService mdcProductionService;
|
@Autowired
|
private IBaseFactoryUserService baseFactoryUserService;
|
@Autowired
|
private IBaseFactoryService baseFactoryService;
|
|
@Override
|
@Transactional(rollbackFor = Exception.class)
|
@EquipmentHistoryLog(operationTag = EquipmentOperationTagEnum.ACCEPTANCE, businessTable = "eam_equipment")
|
public EamEquipment saveEquipment(EamEquipment eamEquipment) {
|
if (eamEquipment == null) {
|
return null;
|
}
|
//资产状态默认 正常
|
eamEquipment.setAssetStatus(AssetStatusEnum.NORMAL.name());
|
eamEquipment.setDelFlag(CommonConstant.DEL_FLAG_0);
|
eamEquipmentMapper.insert(eamEquipment);
|
|
//扩展表数据同步添加
|
EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend();
|
BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend);
|
eamEquipmentExtend.setMaintenanceStatus(EquipmentMaintenanceStatus.NORMAL.name());
|
eamEquipmentExtend.setRepairStatus(EquipmentRepairStatus.NORMAL.name());
|
equipmentExtendService.save(eamEquipmentExtend);
|
|
//插入设备履历 @EquipmentHistoryLog
|
return eamEquipment;
|
}
|
|
/**
|
* 台账设备编辑
|
* @param eamEquipment
|
*/
|
@Override
|
public EamEquipment updateEquipment(EamEquipment eamEquipment){
|
if (eamEquipment == null) {
|
return null;
|
}
|
eamEquipmentMapper.updateById(eamEquipment);
|
EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend();
|
BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend);
|
equipmentExtendService.updateById(eamEquipmentExtend);
|
return eamEquipment;
|
}
|
|
@Override
|
public List<EamEquipmentTree> loadTreeListByProductionIds(String ids) {
|
List<String> productionIds = Arrays.asList(ids.split(","));
|
//获取所有产线数据
|
List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(MdcProduction::getProductionOrder));
|
List<String> allProductionIds = new ArrayList<>();
|
//找到所有产线id的上级id
|
if (!productionIds.isEmpty()) {
|
for (String productionId : productionIds) {
|
this.getAllProductionIds(productionList, productionId, allProductionIds);
|
}
|
}
|
//过滤产线数据
|
List<MdcProduction> list = productionList.stream().filter((MdcProduction mdcProduction) -> allProductionIds.contains(mdcProduction.getId())).collect(Collectors.toList());
|
//组装产线设备树
|
List<EamEquipmentTree> treeList = FindsEquipmentProductionUtil.wrapEquipmentProductionTreeList(list);
|
//填充设备数据
|
fillEquipmentByProduction(treeList);
|
return treeList;
|
}
|
|
/**
|
* 获取EAM中心下的设备信息
|
* @param ids EAM中心ids
|
* @return
|
*/
|
@Override
|
public List<EamEquipmentTree> loadTreeListByEamCenterIds(String ids){
|
List<String> baseFactoryIds = Arrays.asList(ids.split(","));
|
//获取所有EAM数据
|
List<BaseFactory> baseFactoryList = baseFactoryService.list(new LambdaQueryWrapper<BaseFactory>().eq(BaseFactory::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(BaseFactory::getSorter));
|
List<String> allBaseFactoryIds = new ArrayList<>();
|
//找到所有产线id的上级id
|
if (!baseFactoryIds.isEmpty()) {
|
for (String baseFactoryId : baseFactoryIds) {
|
this.getAllBaseFactoryIds(baseFactoryList, baseFactoryId, allBaseFactoryIds);
|
}
|
}
|
//过滤EAM数据
|
List<BaseFactory> list = baseFactoryList.stream().filter((BaseFactory baseFactory) -> allBaseFactoryIds.contains(baseFactory.getId())).collect(Collectors.toList());
|
//组装EAM设备树
|
List<EamEquipmentTree> treeList = FindsEquipmentEamCenterUtil.wrapEquipmentBaseFactoryTreeList(list);
|
//填充设备数据
|
fillEquipmentByBaseFactory(treeList);
|
return treeList;
|
}
|
|
@Override
|
public IPage<EamEquipment> queryPageList(IPage<EamEquipment> page, EamEquipmentQuery eamEquipment) {
|
QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("e.del_flag", CommonConstant.DEL_FLAG_0);
|
//用户数据权限
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
if (sysUser == null) {
|
return page;
|
}
|
if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
|
//选择了设备,根据设备id过滤设备
|
List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
|
queryWrapper.in("e.equipment_code", equipArr);
|
} else {
|
//没有选择设备,根据中心过滤设备
|
List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
|
list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
|
if(!CollectionUtils.isEmpty(baseFactoryUserList)){
|
Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
|
Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
|
queryWrapper.in("e.factory_org_code", factoryCode);
|
}else {
|
return page;
|
}
|
}
|
//查询条件过滤
|
if (eamEquipment != null) {
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentCode())) {
|
queryWrapper.like("e.equipment_code", eamEquipment.getEquipmentCode());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentName())) {
|
queryWrapper.like("e.equipment_name", eamEquipment.getEquipmentName());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentImportance())) {
|
queryWrapper.eq("e.equipment_importance", eamEquipment.getEquipmentImportance());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getAssetStatus())) {
|
queryWrapper.like("e.asset_status", eamEquipment.getAssetStatus());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getTechnologyStatus())) {
|
queryWrapper.like("e.technology_status", eamEquipment.getTechnologyStatus());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getOperationSystem())) {
|
queryWrapper.like("e.operation_system", eamEquipment.getOperationSystem());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getOrgId())) {
|
//车间编码不为空
|
List<String> productIds = mdcProductionService.recursionChildren(eamEquipment.getOrgId());
|
if (CollectionUtil.isNotEmpty(productIds)) {
|
//不做筛选
|
queryWrapper.in("e.org_id", productIds);
|
}
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentCategory())) {
|
queryWrapper.like("e.equipment_category", eamEquipment.getEquipmentCategory());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getFactoryOrgCode())) {
|
queryWrapper.like("e.factory_org_code", eamEquipment.getFactoryOrgCode());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getRepairDepartOrgCode())) {
|
queryWrapper.like("e.repair_depart_org_code", eamEquipment.getRepairDepartOrgCode());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getId())) {
|
queryWrapper.eq("e.id", eamEquipment.getId());
|
}
|
//排序
|
if (StringUtils.isNotBlank(eamEquipment.getColumn()) && StringUtils.isNotBlank(eamEquipment.getOrder())) {
|
//queryWrapper.like("column", eamEquipment.getColumn());
|
String column = eamEquipment.getColumn();
|
if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) {
|
column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX));
|
}
|
if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(eamEquipment.getOrder())) {
|
queryWrapper.orderByAsc("e." + oConvertUtils.camelToUnderline(column));
|
} else {
|
queryWrapper.orderByDesc("e." + oConvertUtils.camelToUnderline(column));
|
}
|
} else {
|
queryWrapper.orderByDesc("e.create_time");
|
}
|
} else {
|
queryWrapper.orderByDesc("e.create_time");
|
}
|
|
IPage<EamEquipment> ipage = eamEquipmentMapper.queryPageList(page, queryWrapper);
|
return ipage;
|
}
|
|
@Override
|
public List<EquipmentSearchResult> asyncLoadEquipment(String keyword, Integer pageSize, String id, String factoryOrgCode) {
|
if (StringUtils.isNotBlank(id)) {
|
EamEquipment eamEquipment = eamEquipmentMapper.selectById(id);
|
if (eamEquipment != null) {
|
List<EquipmentSearchResult> resultList = new ArrayList<>();
|
resultList.add(new EquipmentSearchResult(eamEquipment));
|
return resultList;
|
}
|
}
|
IPage<EamEquipment> page = new Page<>(1, pageSize);
|
QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>();
|
//用户数据权限
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
if (sysUser == null) {
|
return Collections.emptyList();
|
}
|
if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
|
//选择了设备,根据设备id过滤设备
|
List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
|
queryWrapper.in("e.equipment_code", equipArr);
|
} else {
|
//没有选择设备,根据中心过滤设备
|
List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
|
list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
|
if(!CollectionUtils.isEmpty(baseFactoryUserList)){
|
Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
|
Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
|
queryWrapper.in("e.factory_org_code", factoryCode);
|
} else {
|
return Collections.emptyList();
|
}
|
}
|
|
if (StringUtils.isNotBlank(keyword)) {
|
queryWrapper.like("e.equipment_code", keyword);
|
queryWrapper.or().like("e.equipment_name", keyword);
|
}
|
if(StringUtils.isNotBlank(factoryOrgCode)){
|
queryWrapper.eq("e.factory_org_code", factoryOrgCode);
|
}
|
queryWrapper.eq("e.del_flag", CommonConstant.DEL_FLAG_0);
|
IPage<EamEquipment> pageResult = eamEquipmentMapper.queryPageList(page, queryWrapper);
|
if (pageResult != null && CollectionUtil.isNotEmpty(pageResult.getRecords())) {
|
List<EquipmentSearchResult> resultList = new ArrayList<>();
|
pageResult.getRecords().forEach((record) -> {
|
resultList.add(new EquipmentSearchResult(record));
|
});
|
return resultList;
|
}
|
return Collections.emptyList();
|
}
|
|
@Override
|
public EamEquipment selectByEquipmentCode(String equipmentCode) {
|
if (StringUtils.isBlank(equipmentCode)) {
|
return null;
|
}
|
QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>();
|
//用户数据权限
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
if (sysUser == null) {
|
return null;
|
}
|
if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
|
//选择了设备,根据设备id过滤设备
|
List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
|
queryWrapper.in("equipment_code", equipArr);
|
} else {
|
//没有选择设备,根据车间过滤设备
|
List<BaseFactoryUser> baseFactoryUserList = baseFactoryUserService.
|
list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId, sysUser.getId()));
|
if (!CollectionUtils.isEmpty(baseFactoryUserList)) {
|
Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
|
Set<String> factoryCodeList = baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
|
queryWrapper.in("factory_org_code", factoryCodeList);
|
} else {
|
return null;
|
}
|
|
}
|
queryWrapper.eq("equipment_code", equipmentCode);
|
queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
|
|
return eamEquipmentMapper.selectOne(queryWrapper);
|
}
|
|
/**
|
* 设备台账导出
|
* @param eamEquipment
|
* @return
|
*/
|
@Override
|
public List<EamEquipment> exportList(EamEquipmentQuery eamEquipment){
|
QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("e.del_flag", CommonConstant.DEL_FLAG_0);
|
//用户数据权限
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
if (sysUser == null) {
|
return new ArrayList<>();
|
}
|
if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) {
|
//选择了设备,根据设备id过滤设备
|
List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(","));
|
queryWrapper.in("e.equipment_code", equipArr);
|
} else {
|
//没有选择设备,根据中心过滤设备
|
List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService.
|
list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId()));
|
if(!CollectionUtils.isEmpty(baseFactoryUserList)){
|
Set<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toSet());
|
Set<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getOrgCode).collect(Collectors.toSet());
|
queryWrapper.in("e.factory_org_code", factoryCode);
|
}else {
|
return Collections.emptyList();
|
}
|
|
}
|
//查询条件过滤
|
if (eamEquipment != null) {
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentCode())) {
|
queryWrapper.like("e.equipment_code", eamEquipment.getEquipmentCode());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentName())) {
|
queryWrapper.like("e.equipment_name", eamEquipment.getEquipmentName());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentImportance())) {
|
queryWrapper.eq("e.equipment_importance", eamEquipment.getEquipmentImportance());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getAssetStatus())) {
|
queryWrapper.like("e.asset_status", eamEquipment.getAssetStatus());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getTechnologyStatus())) {
|
queryWrapper.like("e.technology_status", eamEquipment.getTechnologyStatus());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getOperationSystem())) {
|
queryWrapper.like("e.operation_system", eamEquipment.getOperationSystem());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getOrgId())) {
|
//车间编码不为空
|
List<String> productIds = mdcProductionService.recursionChildren(eamEquipment.getOrgId());
|
if (CollectionUtil.isNotEmpty(productIds)) {
|
//不做筛选
|
queryWrapper.in("e.org_id", productIds);
|
}
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getEquipmentCategory())) {
|
queryWrapper.like("e.equipment_category", eamEquipment.getEquipmentCategory());
|
}
|
if (StringUtils.isNotBlank(eamEquipment.getId())) {
|
queryWrapper.eq("e.id", eamEquipment.getId());
|
}
|
//排序
|
if (StringUtils.isNotBlank(eamEquipment.getColumn()) && StringUtils.isNotBlank(eamEquipment.getOrder())) {
|
//queryWrapper.like("column", eamEquipment.getColumn());
|
String column = eamEquipment.getColumn();
|
if (column.endsWith(CommonConstant.DICT_TEXT_SUFFIX)) {
|
column = column.substring(0, column.lastIndexOf(CommonConstant.DICT_TEXT_SUFFIX));
|
}
|
if (DataBaseConstant.SQL_ASC.equalsIgnoreCase(eamEquipment.getOrder())) {
|
queryWrapper.orderByAsc("e." + oConvertUtils.camelToUnderline(column));
|
} else {
|
queryWrapper.orderByDesc("e." + oConvertUtils.camelToUnderline(column));
|
}
|
} else {
|
queryWrapper.orderByDesc("e.create_time");
|
}
|
} else {
|
queryWrapper.orderByDesc("e.create_time");
|
}
|
return eamEquipmentMapper.queryList(queryWrapper);
|
}
|
|
@Override
|
public List<EamEquipment> selectTechnicalEquipmentList() {
|
QueryWrapper<EamEquipment> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("e.del_flag", CommonConstant.DEL_FLAG_0);
|
queryWrapper.ne("ext.technology_status", TechnologyStatusEnum.PROHIBITED.name());
|
queryWrapper.isNotNull("ext.technology_check_period");
|
queryWrapper.isNotNull("ext.next_technology_check");
|
return this.getBaseMapper().selectTechnicalEquipmentList(queryWrapper);
|
}
|
|
/**
|
* 获取所有的产线id(包含所有上级)
|
*/
|
private void getAllProductionIds(List<MdcProduction> productionList, String productionId, List<String> allProductionIds) {
|
if (!allProductionIds.contains(productionId)) {
|
allProductionIds.add(productionId);
|
}
|
for (MdcProduction mdcProduction : productionList) {
|
if (StringUtils.isEmpty(mdcProduction.getParentId())) {
|
continue;
|
}
|
if (productionId.equals(mdcProduction.getId())) {
|
if (!allProductionIds.contains(mdcProduction.getParentId())) {
|
allProductionIds.add(mdcProduction.getParentId());
|
getAllProductionIds(productionList, mdcProduction.getParentId(), allProductionIds);
|
}
|
}
|
}
|
}
|
|
/**
|
* 获取所有的产线id(包含所有上级)
|
*/
|
private void getAllBaseFactoryIds(List<BaseFactory> baseFactoryList, String baseFactoryId, List<String> allBaseFactoryIds) {
|
if (!allBaseFactoryIds.contains(baseFactoryId)) {
|
allBaseFactoryIds.add(baseFactoryId);
|
}
|
for (BaseFactory baseFactory : baseFactoryList) {
|
if (StringUtils.isEmpty(baseFactory.getParentId())) {
|
continue;
|
}
|
if (baseFactoryId.equals(baseFactory.getId())) {
|
if (!allBaseFactoryIds.contains(baseFactory.getParentId())) {
|
allBaseFactoryIds.add(baseFactory.getParentId());
|
getAllBaseFactoryIds(baseFactoryList, baseFactory.getParentId(), allBaseFactoryIds);
|
}
|
}
|
}
|
}
|
|
/**
|
* 产线设备树填充设备数据
|
*/
|
private void fillEquipmentByProduction(List<EamEquipmentTree> treeList) {
|
for (EamEquipmentTree mdcEquipmentTree : treeList) {
|
List<EamEquipment> equipmentList = eamEquipmentMapper.queryByProductionId(mdcEquipmentTree.getKey());
|
if (CollectionUtil.isNotEmpty(equipmentList)) {
|
for (EamEquipment mdcEquipment : equipmentList) {
|
EamEquipmentTree tree = new EamEquipmentTree().convert(mdcEquipment);
|
tree.setParentId(mdcEquipmentTree.getKey());
|
tree.setType(2);
|
mdcEquipmentTree.getChildren().add(tree);
|
}
|
mdcEquipmentTree.setLeaf(false);
|
}
|
if (CollectionUtil.isNotEmpty(mdcEquipmentTree.getChildren())) {
|
fillEquipmentByProduction(mdcEquipmentTree.getChildren());
|
}
|
}
|
}
|
|
/**
|
* 产线设备树填充设备数据
|
*/
|
private void fillEquipmentByBaseFactory(List<EamEquipmentTree> treeList) {
|
for (EamEquipmentTree mdcEquipmentTree : treeList) {
|
List<EamEquipment> equipmentList = eamEquipmentMapper.queryByEamCenterId(mdcEquipmentTree.getKey());
|
if (CollectionUtil.isNotEmpty(equipmentList)) {
|
for (EamEquipment mdcEquipment : equipmentList) {
|
EamEquipmentTree tree = new EamEquipmentTree().convert(mdcEquipment);
|
tree.setParentId(mdcEquipmentTree.getKey());
|
tree.setType(2);
|
mdcEquipmentTree.getChildren().add(tree);
|
}
|
mdcEquipmentTree.setLeaf(false);
|
}
|
if (CollectionUtil.isNotEmpty(mdcEquipmentTree.getChildren())) {
|
fillEquipmentByBaseFactory(mdcEquipmentTree.getChildren());
|
}
|
}
|
}
|
|
}
|