diff --git a/das/src/main/java/com/das/modules/auth/entity/SysOrg.java b/das/src/main/java/com/das/modules/auth/entity/SysOrg.java index b47663cf..1dbbe1d8 100644 --- a/das/src/main/java/com/das/modules/auth/entity/SysOrg.java +++ b/das/src/main/java/com/das/modules/auth/entity/SysOrg.java @@ -5,7 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.das.common.constant.BaseEntity; -import com.das.modules.equipment.entity.SysEquipment; +import com.das.modules.equipment.domain.vo.SysEquipmentVo; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.AllArgsConstructor; @@ -106,7 +106,7 @@ public class SysOrg extends BaseEntity { * 子设备节点 */ @TableField(exist = false) - private List equipChildren; + private List equipChildren; /** * 子设备节点 diff --git a/das/src/main/java/com/das/modules/equipment/domain/vo/SysEquipmentVo.java b/das/src/main/java/com/das/modules/equipment/domain/vo/SysEquipmentVo.java index 42f8b813..1cf7deec 100644 --- a/das/src/main/java/com/das/modules/equipment/domain/vo/SysEquipmentVo.java +++ b/das/src/main/java/com/das/modules/equipment/domain/vo/SysEquipmentVo.java @@ -1,11 +1,14 @@ package com.das.modules.equipment.domain.vo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.das.modules.equipment.entity.SysEquipment; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import java.io.Serial; import java.util.Date; +import java.util.List; /** @@ -93,4 +96,10 @@ public class SysEquipmentVo{ */ @JsonSerialize(using = ToStringSerializer.class) private Long iotModelId; + + /** + * 子设备节点 + */ + @TableField(exist = false) + private List equipChildren; } diff --git a/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java index 8df78cfe..ebd8f2dd 100644 --- a/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java +++ b/das/src/main/java/com/das/modules/equipment/mapper/SysEquipmentMapper.java @@ -20,7 +20,7 @@ public interface SysEquipmentMapper extends BaseMapper { IPage querySysEquipmentList(IPage page, @Param("info") SysEquipmentDto sysEquipmentDto); - List queryEquipmentTree(@Param("id")Long id); + List queryEquipmentTree(@Param("id")Long id); List queryInfoById (@Param("info") SysEquipmentDto sysEquipmentDto); diff --git a/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java b/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java index 691c6cef..2854c0ea 100644 --- a/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java +++ b/das/src/main/java/com/das/modules/equipment/service/impl/SysEquipmentServiceImpl.java @@ -1,30 +1,20 @@ package com.das.modules.equipment.service.impl; -import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.bean.BeanUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelReader; import com.alibaba.excel.read.metadata.ReadSheet; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.das.common.config.SessionUtil; import com.das.common.exceptions.ServiceException; import com.das.common.utils.*; -import com.das.modules.auth.domain.vo.SysUserVo; import com.das.modules.auth.entity.SysOrg; import com.das.modules.auth.mapper.SysOrgMapper; import com.das.modules.equipment.domain.dto.SysEquipmentDto; -import com.das.modules.equipment.domain.dto.SysIotModelDto; import com.das.modules.equipment.domain.excel.SheetInfoBean; import com.das.modules.equipment.domain.excel.SysEquipmentExcel; -import com.das.modules.equipment.domain.excel.SysIotModelFieldExcel; -import com.das.modules.equipment.domain.excel.SysIotModelServiceExcel; import com.das.modules.equipment.domain.vo.SysEquipmentVo; -import com.das.modules.equipment.domain.vo.SysIotModelServiceVo; -import com.das.modules.equipment.domain.vo.SysIotModelVo; import com.das.modules.equipment.entity.SysEquipment; -import com.das.modules.equipment.entity.SysIotModel; -import com.das.modules.equipment.entity.SysIotModelField; import com.das.modules.equipment.listener.ExcelListener; import com.das.modules.equipment.mapper.SysEquipmentMapper; import com.das.modules.equipment.mapper.SysIotModelMapper; @@ -34,6 +24,7 @@ import jakarta.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; @@ -42,8 +33,6 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import static com.das.modules.auth.mapper.BaseMapperPlus.log; - @Transactional(rollbackFor = Exception.class) @Service public class SysEquipmentServiceImpl implements SysEquipmentService { @@ -126,7 +115,20 @@ public class SysEquipmentServiceImpl implements SysEquipmentService { if (sysOrg == null) { throw new ServiceException("机构不存在"); } - List equipList = sysEquipmentMapper.queryEquipmentTree(sysEquipmentDto.getOrgId()); + List equipList = sysEquipmentMapper.queryEquipmentTree(sysEquipmentDto.getOrgId()); + // 根据ordId和设备编码查出对应的子设备 + List newEquipList = new ArrayList<>(); + if (!CollectionUtils.isEmpty(equipList)) { + for(SysEquipmentVo info : equipList) { + QueryWrapper queryEquipWrapper = new QueryWrapper<>(); + queryEquipWrapper.eq("parent_equipment_id", info.getId()); + queryEquipWrapper.eq("object_type", info.getObjectType()); + queryEquipWrapper.eq("org_id", sysEquipmentDto.getOrgId()); + List children = sysEquipmentMapper.selectList(queryEquipWrapper); + info.setEquipChildren(children); + newEquipList.add(info); + } + } List orgList = sysOrgMapper.queryAllOrgTree(sysEquipmentDto.getOrgId()); sysOrg.setEquipChildren(equipList); sysOrg.setOrgChildren(orgList);