电子看板接口修改

This commit is contained in:
cwchen 2025-06-10 15:25:44 +08:00
parent 88a83cd868
commit f4b5519c06
5 changed files with 140 additions and 27 deletions

View File

@ -91,12 +91,12 @@ public interface DigitalSignageDao {
/** /**
* 查询索道口中转点索道终点数据 * 查询索道口中转点索道终点数据
* @param vo * @param id
* @return List<CablewaTransPointVo> * @return List<CablewaTransPointVo>
* @author cwchen * @author cwchen
* @date 2025/5/20 16:08 * @date 2025/5/20 16:08
*/ */
List<DigitalSignageVo.CablewaTransPointVo> getCablewaTransPointVos(DigitalSignageVo.CablewaTransVo vo); List<DigitalSignageVo.CablewaTransPointVo> getCablewaTransPointVos(Long id);
/** /**
* 基础浇筑-ABCD腿完成情况 * 基础浇筑-ABCD腿完成情况
@ -106,4 +106,22 @@ public interface DigitalSignageDao {
* @date 2025/5/20 16:46 * @date 2025/5/20 16:46
*/ */
List<DigitalSignageVo.TowerPouringVo> getTowerPourings(DigitalSignageVo.TowerInfoVo vo); List<DigitalSignageVo.TowerPouringVo> getTowerPourings(DigitalSignageVo.TowerInfoVo vo);
/**
* 查询公路
* @param dto
* @return Object
* @author cwchen
* @date 2025/6/10 15:14
*/
List<DigitalSignageVo.HighwayVo> getHighways(QueryParamDto dto);
/**
* 查询千张场地
* @param dto
* @return Object
* @author cwchen
* @date 2025/6/10 15:14
*/
List<DigitalSignageVo.AThousandFieldsVo> getAThousandFieldsList(QueryParamDto dto);
} }

View File

@ -48,21 +48,25 @@ public class DigitalSignageVo {
*/ */
private int num7; private int num7;
/** /**
* 架线完成 * 架线施工
*/ */
private int num8; private int num8;
/** /**
* 附件安装 * 架线施工完成
*/ */
private int num9; private int num9;
/** /**
* 未开始 * 附件安装
*/ */
private int num10; private int num10;
/** /**
* 索道运输 * 未开始
*/ */
private int num11; private int num11;
/**
* 索道运输
*/
private int num12;
} }
@Data @Data
@ -163,6 +167,57 @@ public class DigitalSignageVo {
private List<CablewaTransPointVo> cablewaTransPointVoList; private List<CablewaTransPointVo> cablewaTransPointVoList;
} }
@Data
public static class HighwayVo {
private Long id;
/**
* 索道所在杆塔位置
*/
private String towerName;
/**
* 长度km
*/
private String cablewayLength;
/**
* 百度地图经度
*/
private String baiduLon;
/**
* 百度地图-纬度
*/
private String baiduLat;
/**
* 宽度
*/
private String cablewayWidth;
private List<CablewaTransPointVo> cablewaTransPointVoList;
}
@Data
public static class AThousandFieldsVo {
private Long id;
/**名称*/
private String name;
/**
* 长度km
*/
private String cablewayLength;
/**
* 宽度
*/
private String cablewayWidth;
private List<CablewaTransPointVo> cablewaTransPointVoList;
}
/** /**
* 索道运输-索道口中转口索道终点 * 索道运输-索道口中转口索道终点
* */ * */
@ -237,15 +292,20 @@ public class DigitalSignageVo {
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date time7; private Date time7;
/** /**
* 架线施工完成日期 * 架线施工日期
*/ */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date time8; private Date time8;
/** /**
* 附件安装日期完成日期 * 架线施工完成日期
*/ */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date time9; private Date time9;
/**
* 附件安装日期完成日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date time10;
/** /**
* 是否存在跨越 1.存在 0.不存在 * 是否存在跨越 1.存在 0.不存在
@ -255,11 +315,6 @@ public class DigitalSignageVo {
* 杆塔完成进度 1.协调完成 2.基础开挖 3.基础开挖完成 4.基础浇筑 5.基础浇筑完成 6.铁塔组立 7.铁塔组立完成 8.架线施工完成 9.附件安装完成 * 杆塔完成进度 1.协调完成 2.基础开挖 3.基础开挖完成 4.基础浇筑 5.基础浇筑完成 6.铁塔组立 7.铁塔组立完成 8.架线施工完成 9.附件安装完成
*/ */
private int towerProgress; private int towerProgress;
/**
* 基础浇筑-ABCD腿 完成情况
* */
private List<TowerPouringVo> towerPouringVos;
} }
@Data @Data

View File

@ -24,5 +24,8 @@ public class ProTreeVo {
private String lat; private String lat;
/**工程概况*/
private String projectOverview;
private List<ProTreeVo> children; private List<ProTreeVo> children;
} }

View File

@ -74,7 +74,7 @@ public class DigitalSignageServiceImpl implements DigitalSignageService {
vo = Optional.ofNullable(dao.getTowerProgressNum(dto)).orElseGet(DigitalSignageVo.TowerProgressNumVo::new); vo = Optional.ofNullable(dao.getTowerProgressNum(dto)).orElseGet(DigitalSignageVo.TowerProgressNumVo::new);
// 查询索道运输数量 // 查询索道运输数量
int num = dao.getRopewayTransNum(dto); int num = dao.getRopewayTransNum(dto);
vo.setNum11(num); vo.setNum12(num);
} catch (Exception e) { } catch (Exception e) {
log.error(e.toString(),e); log.error(e.toString(),e);
} }
@ -100,27 +100,35 @@ public class DigitalSignageServiceImpl implements DigitalSignageService {
List<DigitalSignageVo.CablewaTransVo> cablewaTransVos = Optional.ofNullable(dao.getCablewaTrans(dto)).orElseGet(ArrayList::new); List<DigitalSignageVo.CablewaTransVo> cablewaTransVos = Optional.ofNullable(dao.getCablewaTrans(dto)).orElseGet(ArrayList::new);
if(CollectionUtils.isNotEmpty(cablewaTransVos)){ if(CollectionUtils.isNotEmpty(cablewaTransVos)){
for (DigitalSignageVo.CablewaTransVo vo : cablewaTransVos) { for (DigitalSignageVo.CablewaTransVo vo : cablewaTransVos) {
List<DigitalSignageVo.CablewaTransPointVo> cablewaTransPointVos = Optional.ofNullable(dao.getCablewaTransPointVos(vo)).orElseGet(ArrayList::new); List<DigitalSignageVo.CablewaTransPointVo> cablewaTransPointVos = Optional.ofNullable(dao.getCablewaTransPointVos(vo.getId())).orElseGet(ArrayList::new);
vo.setCablewaTransPointVoList(cablewaTransPointVos); vo.setCablewaTransPointVoList(cablewaTransPointVos);
} }
} }
// 查询杆塔数据 // 查询杆塔数据
List<DigitalSignageVo.TowerInfoVo> towerInfoVos = Optional.ofNullable(dao.getTowersInfo(dto)).orElseGet(ArrayList::new); List<DigitalSignageVo.TowerInfoVo> towerInfoVos = Optional.ofNullable(dao.getTowersInfo(dto)).orElseGet(ArrayList::new);
for (DigitalSignageVo.TowerInfoVo vo : towerInfoVos) {
if(vo.getTowerProgress() == 3){
List<DigitalSignageVo.TowerPouringVo> towerPouringVos = Optional.ofNullable(dao.getTowerPourings(vo)).orElseGet(ArrayList::new);
vo.setTowerPouringVos(towerPouringVos);
}
}
// 查询交叉跨越信息 // 查询交叉跨越信息
List<DigitalSignageVo.SpanInfoVo> spanInfoVo = Optional.ofNullable(dao.getSpanInfoVos(dto)).orElseGet(ArrayList::new); List<DigitalSignageVo.SpanInfoVo> spanInfoVo = Optional.ofNullable(dao.getSpanInfoVos(dto)).orElseGet(ArrayList::new);
for (DigitalSignageVo.SpanInfoVo vo : spanInfoVo) { for (DigitalSignageVo.SpanInfoVo vo : spanInfoVo) {
Optional<DigitalSignageVo.TowerInfoVo> first = towerInfoVos.stream().filter(towerInfoVo -> towerInfoVo.getId().equals(vo.getId())).findFirst(); Optional<DigitalSignageVo.TowerInfoVo> first = towerInfoVos.stream().filter(towerInfoVo -> towerInfoVo.getId().equals(vo.getId())).findFirst();
vo.setTowerInfoVo(first.get()); vo.setTowerInfoVo(first.get());
} }
// 查询公路
List<DigitalSignageVo.HighwayVo> highwayList = Optional.ofNullable(dao.getHighways(dto)).orElseGet(ArrayList::new);
for (DigitalSignageVo.HighwayVo highwayVo : highwayList) {
List<DigitalSignageVo.CablewaTransPointVo> pointVos = Optional.ofNullable(dao.getCablewaTransPointVos(highwayVo.getId())).orElseGet(ArrayList::new);
highwayVo.setCablewaTransPointVoList(pointVos);
}
// 查询千张场地
List<DigitalSignageVo.AThousandFieldsVo> aThousandFieldsList = Optional.ofNullable(dao.getAThousandFieldsList(dto)).orElseGet(ArrayList::new);
for (DigitalSignageVo.HighwayVo highwayVo : highwayList) {
List<DigitalSignageVo.CablewaTransPointVo> pointVos = Optional.ofNullable(dao.getCablewaTransPointVos(highwayVo.getId())).orElseGet(ArrayList::new);
highwayVo.setCablewaTransPointVoList(pointVos);
}
map.put("cablewaTransVos", cablewaTransVos); map.put("cablewaTransVos", cablewaTransVos);
map.put("towerInfoVos", towerInfoVos); map.put("towerInfoVos", towerInfoVos);
map.put("spanInfoVos", spanInfoVo); map.put("spanInfoVos", spanInfoVo);
map.put("highwayList", highwayList);
map.put("aThousandFieldsList", aThousandFieldsList);
} catch (Exception e) { } catch (Exception e) {
log.error(e.toString(),e); log.error(e.toString(),e);
} }

View File

@ -10,13 +10,15 @@
'全部工程' AS title, '全部工程' AS title,
null AS parentId, null AS parentId,
null AS lon, null AS lon,
null AS lat null AS lat,
'' AS projectOverview
UNION ALL UNION ALL
SELECT CONCAT('departId-',td.id) AS id, SELECT CONCAT('departId-',td.id) AS id,
td2.depart_name AS title, td2.depart_name AS title,
'0' AS parentId, '0' AS parentId,
null AS lon, null AS lon,
null AS lat null AS lat,
'' AS projectOverview
FROM tb_project tp FROM tb_project tp
LEFT JOIN tb_depart td ON tp.depart_id = td.id LEFT JOIN tb_depart td ON tp.depart_id = td.id
LEFT JOIN tb_depart td2 ON td.parent_id = td2.id LEFT JOIN tb_depart td2 ON td.parent_id = td2.id
@ -34,7 +36,8 @@
tp.pro_name AS title, tp.pro_name AS title,
CONCAT('departId-',depart_id) AS parentId, CONCAT('departId-',depart_id) AS parentId,
tp.lon AS lon, tp.lon AS lon,
tp.lat AS lat tp.lat AS lat,
tp.project_overview AS projectOverview
FROM tb_project tp FROM tb_project tp
<where> <where>
<if test="level != '1' and departs != null and departs.size() > 0"> <if test="level != '1' and departs != null and departs.size() > 0">
@ -59,7 +62,8 @@
COUNT(IF(tower_progress = 7, 1, NULL)) AS num7, COUNT(IF(tower_progress = 7, 1, NULL)) AS num7,
COUNT(IF(tower_progress = 8, 1, NULL)) AS num8, COUNT(IF(tower_progress = 8, 1, NULL)) AS num8,
COUNT(IF(tower_progress = 9, 1, NULL)) AS num9, COUNT(IF(tower_progress = 9, 1, NULL)) AS num9,
COUNT(IF(tower_progress = 0, 1, NULL)) AS num10 COUNT(IF(tower_progress = 10, 1, NULL)) AS num10,
COUNT(IF(tower_progress = 0, 1, NULL)) AS num11
FROM tb_tower WHERE pro_id = #{id} AND is_actvice = '1' FROM tb_tower WHERE pro_id = #{id} AND is_actvice = '1'
</select> </select>
<!--查询索道运输数量--> <!--查询索道运输数量-->
@ -104,7 +108,7 @@
tct.id tct.id
FROM tb_cablewa_trans tct FROM tb_cablewa_trans tct
LEFT JOIN tb_tower tt ON tct.tower_id = tt.id LEFT JOIN tb_tower tt ON tct.tower_id = tt.id
WHERE tct.pro_id = #{id} AND tct.is_active = '1' WHERE tct.pro_id = #{id} AND tct.is_active = '1' AND (tct.source_type IS NULL OR tct.source_type = '1')
</select> </select>
<!--查询杆塔数据--> <!--查询杆塔数据-->
<select id="getTowersInfo" <select id="getTowersInfo"
@ -122,6 +126,7 @@
A.time7, A.time7,
A.time8, A.time8,
A.time9, A.time9,
A.time10,
IF(B.tower_id IS NOT NULL OR B.tower_id IS NOT NULL, 1, 0) AS existSpan, IF(B.tower_id IS NOT NULL OR B.tower_id IS NOT NULL, 1, 0) AS existSpan,
tt.tower_progress AS towerProgress tt.tower_progress AS towerProgress
FROM tb_tower tt FROM tb_tower tt
@ -142,7 +147,8 @@
MAX(CASE WHEN progress_type = 6 THEN create_time END) AS time6, MAX(CASE WHEN progress_type = 6 THEN create_time END) AS time6,
MAX(CASE WHEN progress_type = 7 THEN create_time END) AS time7, MAX(CASE WHEN progress_type = 7 THEN create_time END) AS time7,
MAX(CASE WHEN progress_type = 8 THEN create_time END) AS time8, MAX(CASE WHEN progress_type = 8 THEN create_time END) AS time8,
MAX(CASE WHEN progress_type = 9 THEN create_time END) AS time9 MAX(CASE WHEN progress_type = 9 THEN create_time END) AS time9,
MAX(CASE WHEN progress_type = 10 THEN create_time END) AS time10
FROM FROM
tb_tower_progress ttp tb_tower_progress ttp
GROUP BY GROUP BY
@ -201,4 +207,27 @@
WHERE tower_id = #{id} WHERE tower_id = #{id}
ORDER BY leg ORDER BY leg
</select> </select>
<!--查询公路-->
<select id="getHighways"
resultType="com.bonus.digitalSignage.backstage.entity.vo.DigitalSignageVo$HighwayVo">
SELECT tct.cableway_length AS cablewayLength,
tt.baidu_lon AS baiduLon,
tt.baidu_lat AS baiduLat,
tt.tower_name AS towerName,
tct.cableway_length AS cablewayWidth,
tct.id
FROM tb_cablewa_trans tct
LEFT JOIN tb_tower tt ON tct.tower_id = tt.id
WHERE tct.pro_id = #{id} AND tct.is_active = '1' AND tct.source_type = '2'
</select>
<!--查询千张场地-->
<select id="getAThousandFieldsList"
resultType="com.bonus.digitalSignage.backstage.entity.vo.DigitalSignageVo$AThousandFieldsVo">
SELECT tct.cableway_length AS cablewayLength,
tct.cableway_length AS cablewayWidth,
tct.id,
tct.name
FROM tb_cablewa_trans tct
WHERE tct.pro_id = #{id} AND tct.is_active = '1' AND tct.source_type = '3'
</select>
</mapper> </mapper>