设备管理模块实现

news2025/4/4 11:23:43

文章目录

    • 1 .导航树模块的实现
    • 2. 查询定位功能的实现
    • 3. 资源管理功能的实现
    • 4. 电缆段入沟功能实现

1 .导航树模块的实现

导航树的各节点是通过Ajax 技术异步加载的,系统初始化时导航树只会加载初始的城市节点,用户根据自身需要选择相应的父节点加载其逻辑关系下的子节点。各节点的数据信息是导航树模块通过JavaScript 与业务逻辑服务通信获得的。导航树的交互操作是定义各个组织节点和实例节点的右键菜单,根据节点的定义不同,构建菜单的功能也不相同,主要是设备的查询、增加、修改及删除功能以及地图定位等与GIS 模块的交互功能。导航树功能的实现效果如图
在这里插入图片描述

public class treeService {
private String fatherid;
private String fatherLevel;
private String fatherName;
private String fatherType;
private TreeCatalogtreeDao;
private Static finalString wrongMsg =”ERROR ” J
public void initVar (String id, String n, String lev) {
if(id !=null){
String 门缸ray = id. split (-);
this. father Id = array[ 1];
this.fatherType =缸ray[O];
this. fatherLevel = lev;
this. fatherName = n;
) else {
this.father!d =
this.fatherType =
null;
null;
/骨
this. fatherLevel = null;
this. fatherName = null;

private intgetType() {
if (father Level. 呵旧ls (” none ”)){
return O;
} else {
return l;
//获取最终目录数据
public String getd ata() {
return getJsonF(). toString ();
//获取返回JSON 数据
//( { idname :’TONGXIANG ’, isParent:true, iconSkin :’city'})
public JSONArray getJsonF() {
JSONArray jsa = newJSONArray ();
intt = this. getType () ;
List< TreeCatalogRecord >aim ; I I = treeDao. getTreeCatalog();
switch(t){
caseO : aim = treeDao. getTreeCatalog() ;break;
easel aim = treeDao. getTreeCatalog(Long. parseLong(fatherld), Integer. parselnt
(fatherType));break;
default : aim = treeDao . getTreeCatalog(Long. parseLong( fatherld), Integer. parselnt
(fatherType));
for( inti= 0; i <aim. size(); ++ i) {
JSONObject jso = newJSONObject ();
jso.accumulate (飞d”, aim. get( i). get'fypeld () +-+ aim. get( i). gets国tic Id());
jso.accumulate(”name ”, aim.get(i).getName());
jso.accumulate(” isParent”, aim.get(i).getParent());
jso.accumulate (” iconSkin”, aim.get(i).getlconSki叫));
jsa. add( jso);
return jsa;


2. 查询定位功能的实现

系统需要通过导航树和搜索功能实现电力管线设备的查询和定位,实现的界面效果如图。
在这里插入图片描述
在这里插入图片描述

导航树实例节点的右键交互菜单提供设备的定位功能,通过导航树的逻辑关系查询到对应设备后可以将其定位到地图的中间突出显示。系统的搜索功能是通过G I S 服务实现的,可以通过设备名字进行模糊查询和通过设备经纬度精确查询。本系统的查询功能支持模糊查询和经纬度查询两种方式。模糊查询实现后的界面效果如图

/糊查询功能函数/
Global. locus.method. vague_search = function (text, layerlndex) {
Global. constant . searchlndex = layerlndex;
var layer;
if{layerlndex == 0) {
layer =’electrical ’,
}else{
layer =’civil_ engineering’ ,
var filter = new OpenLayers. Filter. Comparison( {
type: OpenLayers.Filter.Comparison.LIKE,
pr operty : ” name ”,//查询的字段,需要根据阁层设置
value · ” *”+ text +”*})
var filter_l_O = new Openl.ayers. Format. Filter. vl_O_O();
var temp}(}任, = new Openl.ayers. Format. 泊任』(),
var xmlPara = tempXML. write ( filter_ 1_0. write ( filter) ) ;
var dataXML = Global. locus. constant. originXML
+< wfs: QuerytypeName = ” OpenGIS : geo_’+ layer +’”〉冒
+ ” /口”//查询的阁层, 需要设置
+< wfs: Property name> OpenGIS: name </wfs : Property name >+ '/n '//查询的属性字段,需要设置
+< wfs: Property name> OpenGIS: object_ type </wfs: Property name >’
+’/ n ’//查询的属性字段,需要设置
+< wfs: Property name> OpenGIS: Static _id </wfs : Property name > ’
+’/ n ’//查询的属性字段,需要设置
+< wfs: Property name> OpenGIS: geometry_ data </wfs: Property n四e >’
+’/口’//查询的几何字段,需要设置
+ xmlPara
+</wfs: Query >『+ ” /n ”
+</wfs: GetFeature >’ J
var request = Openl.ayers. Request . POST ( {
url :”http ://”+ Global. option . ip + ” : 8081/geoserver/wfs” ,
data : data泊忆,
callback : Global. locus. meth od. vague_search_handler
, ) }



在这里插入图片描述
除了模糊查询,系统还需要实现经纬度查询功能,在查询框中输入经度和纬度值,可实
现经纬度查询功能,实现效果如图所示,经纬度查询的关键代码如

/ 幡按经纬度查询功能铃/
Global.locus . method.cr_ search =function (text}{
var values = text. split(,);
if (values . length!== 2) {
Plugins. dialog. show( {
’ title ’ : ’错误信息’,
’ text , : ’请按照x,y 的形式输入’
},{
’ s 由mit ’ : function ( e) {
Plugins. dialog . remove();
., ) }
values = null;
} else {
values[ 0] = parseFloat( values[ 0]);
values[ 1] = parseFloat( values[ 1]);
if ( isNaN( values[ 0]) 1 1 isNaN( values[ 1])) {
Plugins . dialog. show( {
’ title ,:’错误信息’,
’ text': '输入的x,y 必须是数字’
},{
’ submit' function (e){
Plugins.dialog.remove();
., ) }
values = null;
} else {
var foundPosition = new OpenLayers. LonLat( values[ 0], values[ 1]) . transform(
new OpenLayers. Projection(”EPSG:4326),
Global. locus. map. getProjectionObject()
Global. locus. map . setCenter( foundPosition, Global. constant . zoomLevel);
3.

3. 资源管理功能的实现

资源管理模块需要管理电气设备、土建设备、业务图图形等所有资源的属性和空间数据,其中资源管理模块的空间数据管理在表现层通过OpenLayers 接口利用Geo Server 服务实现,资源管理属性数据的管理通过调用服务器端的各种Action 接口实现。资源管理模块主要包括设备的查询、增加、修改以及删除操作,可以在导航树模块上选择相应的节点进行

在这里插入图片描述
资源管理的操作,也可以在地图进行交互操作时进行资源管理。下面以电缆段的查询操作
为例,介绍资源管理模块的详细实现流程。当资源管理模块的查询接口被调用时,系统与业
务逻辑服务通信获得设备的信息,然后在前台以对话框的形式显示,资源管理模块与业务逻
辑服务的时序图如图

在这里插入图片描述

4. 电缆段入沟功能实现

电缆段入沟操作是电力管线管理的必要流程之一,系统通过电缆段人沟可以建立电缆
段和管沟段之间的逻辑关系。实现人沟功能的界面如图所示,
在这里插入图片描述

系统通过导航树右键交互菜单请求电缆段人沟,在GIS 地图中可视化选择人沟的管沟段。入沟完成后, GIS 服务可以重新渲染电缆段在地图上的走向和位置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/684836.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Flink安装与编程实践

系列文章目录 Ubuntu常见基本问题 Hadoop3.1.3安装&#xff08;单机、伪分布&#xff09; Hadoop集群搭建 HBase2.2.2安装&#xff08;单机、伪分布&#xff09; Zookeeper集群搭建 HBase集群搭建 Spark安装和编程实践&#xff08;Spark2.4.0&#xff09; Spark集群搭建 文章目…

mongoDB相关知识

目录 常用操作删除数据库 启动问题集如何远程访问mongDB数据库由于widows安全策略&#xff0c;linux访问不到windows的mongDB 常用操作 删除数据库 windows下mongDB通过下面命令行进入 D:\mongodb\mongodb-win32-x86_64-2008plus-ssl-3.6.23-8-gc2609ed3ed\bin>mongod.exe…

Unity开发前的一些建议1_设置脚本的编码格式,设置IDE的编码格式

Unity开发前的一些建议1_设置脚本的编码格式&#xff0c;设置IDE的编码格式 乱码之后是是不可以撤回的哦。 这么做的理由&#xff0c;Unity右侧的Inspector面板看代码是UTF-8格式的。可以在Inspector中速览代码&#xff0c;且如果修改IDE&#xff0c;UTF-8比其他编码格式用的…

K8S复习

本文原文出自本人自己复习时整理&#xff0c;原文非常系统&#xff0c;建议拜师#yyds干货盘点# 手把手教你玩转 Kubernete 集群搭建(03)_wzlinux的博客-CSDN博客 1.docker的优势 在某一段时期内&#xff0c;大家一提到 Docker&#xff0c;就和容器等价起来&#xff0c;认为 Doc…

【架构】后端服务架构高性能设计方法

文章目录 前言1、无锁化1.1、串行无锁1.2、结构无锁 2、零拷贝2.1、内存映射2.2、零拷贝 3、序列化3.1、分类3.2、性能指标3.3、选型考量 4、池子化4.1、内存池4.2、线程池4.3、连接池4.4、对象池 5、并发化5.1、请求并发5.2、冗余请求 6、异步化6.1、调用异步化6.2、流程异步化…

【跟晓月学数据库】使用MySQLdump 对数据导入导出

前言 大家好&#xff0c;我是沐风晓月&#xff0c;今天给大家介绍MySQLdump的数据导出导入&#xff0c;希望对你有用。 &#x1f3e0;个人主页&#xff1a;我是沐风晓月 &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是沐风晓月&#xff0c;阿里云社区专家博主&…

vue3+antd-design-vue+vite项目总结

代码热更新能力失效&#xff0c;每次都需要手动刷新&#xff0c;开发体验极差 1、先看看是否开启了热更新 2、再看看引入模块文件名是否正确。当前的项目部分人可以更新&#xff0c;部分不能&#xff0c;所以和1没什么关系&#xff0c;网上搜索发现vite对文件名大小写十分敏感&…

2-3查找树

2-3查找树 为了保证查找树的平衡性&#xff0c;我们需要一些灵活性&#xff0c;因此在这里我们允许树中的一个结点保存多个键。确切的说&#xff0c;我 们将一棵标准的二叉查找树中的结点称为2-结点(含有一个键和两条链)&#xff0c;而现在我们引入3-结点&#xff0c;它含有两…

Java版本企业招投标采购管理系统源码 +支持二开+spring cloud

一、立项管理 1、招标立项申请 功能点&#xff1a;招标类项目立项申请入口&#xff0c;用户可以保存为草稿&#xff0c;提交。 2、非招标立项申请 功能点&#xff1a;非招标立项申请入口、用户可以保存为草稿、提交。 3、采购立项列表 功能点&#xff1a;对草稿进行编辑&#x…

如何访问NetApp E系列存储的CLI命令行

NetApp存储的E系列&#xff08;e-series&#xff09;是收购LSI存储而来的&#xff0c;所以这个产品的install base&#xff0c;也就是安装量其实是很大的&#xff0c;因为早期LSI的商业模式就是OEM&#xff0c;给很多的IT公司做过OEM&#xff0c;比较典型的就是IBM的早期的DS存…

我想搭建一个商城?有哪些流程?

近年来&#xff0c;我国电子商务发展迅速。淘宝、京东、亚马逊等一大批电子商务巨头受到越来越多消费者的青睐。互联网普及率大大提高&#xff0c;消费者也逐渐形成了网上购物的习惯。在支付体验、物流服务和售后服务不断提升的过程中&#xff0c;越来越多的消费者依赖网络购物…

保险信创 数据领航|GBASE南大通用亮相2023年保险行业信息技术应用创新大会

2023年6月&#xff0c;2023年保险行业信息技术应用创新大会在京召开&#xff0c;会议重点围绕保险核心业务系统的改造及终端的选型和应用展开探讨学习&#xff0c;分享行业成功实践经验&#xff0c;着力解决行业信创发展痛点难点&#xff0c;助力行业加快信创生态建设&#xff…

Linux用户权限和认证

linux公钥登录 useradd test -m -g root创建名为test的用户&#xff0c;生成相应目录&#xff0c;同时加入root组passwd test重置密码 分配test用户sudo权限&#xff0c;sudo vim etc/sudoers 编辑SSH文件 vim /etc/ssh/sshd_config PermitRootLoginyes改为no关闭ROOT登录…

基于全卷积神经网络(FCN)实现图像分割

目录 1、作者介绍2、网络及数据集介绍2.1 FCN算法2.2 VOC_2012数据集2.3 制作自己的语义分割数据集2.3.1 标注方式一&#xff1a;多边形标注2.3.1.1 labelMe安装与数据标注2.3.1.2 数据格式转换2.3.1.3 数据集分类 2.3.2 标注方式二&#xff1a;像素级涂抹 3、基于RESNet50骨干…

Linux 学习记录39(C高级篇)

Linux 学习记录39(C高级篇) 本文目录 Linux 学习记录39(C高级篇)一、gdb调试工具1. gdb工具的使用 二、枚举类型 enum1. 定义 三、Makefile1. 什么是makefile2. 什么是Make3. Make用途4. Makefile的工作过程(1. Makefile分步编译的目的 5. Makefile的语法规则6. Makefile变量的…

【unity每日一记】那些动作基础你还记得吗—移动和旋转相关

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;uni…

农村电商APP软件开发 电商新农村紧跟时代脚步

互联网技术的深入发展让电子商务走向了高潮&#xff0c;不过在一些交通闭塞的乡村地区&#xff0c;电商发展还处于初期阶段。大量农产品从生产到流通渠道的变革&#xff0c;让互联网农产品成为新型农业发展的重要手段&#xff0c;不仅增加了农业产值提高了农民收入&#xff0c;…

《kafka 核心技术与实战》课程学习笔记(六)

生产者消息分区机制原理剖析 为什么分区&#xff1f; Kafka 有主题&#xff08;Topic&#xff09;的概念&#xff0c;它是承载真实数据的逻辑容器&#xff0c;而在主题之下还分为若干个分区&#xff0c;也就是说 Kafka 的消息组织方式实际上是三级结构&#xff1a;主题 - 分区…

[CKA]考试之四层负载均衡service

由于最新的CKA考试改版&#xff0c;不允许存储书签&#xff0c;本博客致力怎么一步步从官网把答案找到&#xff0c;如何修改把题做对&#xff0c;下面开始我们的 CKA之旅 题目为&#xff1a; Task 重新配置一个已经存在的front-end的deployment&#xff0c;在名字为nginx的容…

spring boot 整合EasyPoi导入导出,下载模版功能

引入依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.5.RELEASE</version><relativePath/> <!-- lookup parent from repository --></…