diff --git a/src/main/java/com/bonus/digitalSignage/backstage/dao/DigitalSignageDao.java b/src/main/java/com/bonus/digitalSignage/backstage/dao/DigitalSignageDao.java index 791fc0a..bd04f5c 100644 --- a/src/main/java/com/bonus/digitalSignage/backstage/dao/DigitalSignageDao.java +++ b/src/main/java/com/bonus/digitalSignage/backstage/dao/DigitalSignageDao.java @@ -69,4 +69,13 @@ public interface DigitalSignageDao { * @date 2025/4/25 9:11 */ List getTowersInfo(QueryParamDto dto); + + /** + * 查询交叉跨越信息 + * @param dto + * @return List + * @author cwchen + * @date 2025/4/25 10:35 + */ + List getSpanInfoVos(QueryParamDto dto); } diff --git a/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/DigitalSignageVo.java b/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/DigitalSignageVo.java index 4c7e5df..b0498f5 100644 --- a/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/DigitalSignageVo.java +++ b/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/DigitalSignageVo.java @@ -1,6 +1,7 @@ package com.bonus.digitalSignage.backstage.entity.vo; import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Data; import java.util.Date; @@ -147,6 +148,7 @@ public class DigitalSignageVo { @Data public static class TowerInfoVo{ + private Long id; /**杆塔名称*/ private String towerName; /**百度经度*/ @@ -176,5 +178,41 @@ public class DigitalSignageVo { private Date time7; /**是否存在跨越 1.存在 0.不存在*/ private int existSpan; + /**杆塔完成进度 1.基础开挖 2.基础开挖完成 3.基础浇筑完成 4.铁塔组立 5.铁塔组立完成 6.架线施工完成 7.附件安装完成*/ + private int towerProgress; + } + + @Data + public static class SpanInfoVo{ + + private Long id; + + private String spanTowerName; + + private TowerInfoVo towerInfoVo; + + private String lonAndLat; + + /** + * 上层线路 + */ + private String upperLine; + /** + * 下层线路 + */ + private String lowerLine; + /** + * 交叉角度 + */ + private String intersectionAngle; + /** + * 垂直距离(m) + */ + private String verticalDistance; + /** + * 安全裕度(°) + */ + private String safetyMargin; + } } diff --git a/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/ProTreeVo.java b/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/ProTreeVo.java index 3ed16ad..59ece34 100644 --- a/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/ProTreeVo.java +++ b/src/main/java/com/bonus/digitalSignage/backstage/entity/vo/ProTreeVo.java @@ -20,5 +20,9 @@ public class ProTreeVo { private String parentId; + private String lon; + + private String lat; + private List children; } diff --git a/src/main/java/com/bonus/digitalSignage/backstage/service/impl/DigitalSignageServiceImpl.java b/src/main/java/com/bonus/digitalSignage/backstage/service/impl/DigitalSignageServiceImpl.java index 77e8959..d0c2e02 100644 --- a/src/main/java/com/bonus/digitalSignage/backstage/service/impl/DigitalSignageServiceImpl.java +++ b/src/main/java/com/bonus/digitalSignage/backstage/service/impl/DigitalSignageServiceImpl.java @@ -96,10 +96,17 @@ public class DigitalSignageServiceImpl implements DigitalSignageService { try { // 查询索道运输信息 List cablewaTransVos = Optional.ofNullable(dao.getCablewaTrans(dto)).orElseGet(ArrayList::new); - // 查询交叉跨越信息 // 查询杆塔数据 List towerInfoVos = Optional.ofNullable(dao.getTowersInfo(dto)).orElseGet(ArrayList::new); + // 查询交叉跨越信息 + List spanInfoVo = Optional.ofNullable(dao.getSpanInfoVos(dto)).orElseGet(ArrayList::new); + for (DigitalSignageVo.SpanInfoVo vo : spanInfoVo) { + Optional first = towerInfoVos.stream().filter(towerInfoVo -> towerInfoVo.getId().equals(vo.getId())).findFirst(); + vo.setTowerInfoVo(first.get()); + } map.put("cablewaTransVos", cablewaTransVos); + map.put("towerInfoVos", towerInfoVos); + map.put("spanInfoVos", spanInfoVo); } catch (Exception e) { log.error(e.toString(),e); } diff --git a/src/main/resources/mappers/backstage/DigitalSignageMapper.xml b/src/main/resources/mappers/backstage/DigitalSignageMapper.xml index 1915d1d..f1681df 100644 --- a/src/main/resources/mappers/backstage/DigitalSignageMapper.xml +++ b/src/main/resources/mappers/backstage/DigitalSignageMapper.xml @@ -8,11 +8,15 @@ SELECT DISTINCT A.* FROM ( SELECT '0' AS id, '全部工程' AS title, - null AS parentId + null AS parentId, + null AS lon, + null AS lat UNION ALL SELECT CONCAT('departId-',td.id) AS id, td2.depart_name AS title, - '0' AS parentId + '0' AS parentId, + null AS lon, + null AS lat FROM tb_project tp LEFT JOIN tb_depart td ON tp.depart_id = td.id LEFT JOIN tb_depart td2 ON td.parent_id = td2.id @@ -28,7 +32,9 @@ UNION ALL SELECT tp.id, tp.pro_name AS title, - CONCAT('departId-',depart_id) AS parentId + CONCAT('departId-',depart_id) AS parentId, + tp.lon AS lon, + tp.lat AS lat FROM tb_project tp @@ -99,14 +105,63 @@ + + diff --git a/src/main/resources/mappers/basic/TbProjectMapper.xml b/src/main/resources/mappers/basic/TbProjectMapper.xml index 5f156f2..9e3ab01 100644 --- a/src/main/resources/mappers/basic/TbProjectMapper.xml +++ b/src/main/resources/mappers/basic/TbProjectMapper.xml @@ -77,6 +77,9 @@ WHERE sd2.dict_code = 'pro_status' AND sd.del_flag = 0 ) B ON B.dict_value = tp.voltage_level where tp.is_active = '1' + and td.depart_name = #{departName} + and tp.pro_name = #{proName} + and tp.pro_status = #{proStatus}