天然气跟踪监管系统功能模块实现

天然气跟踪监管系统功能模块实现

    • 1. 数据库查询
    • 3. 仓库管理
    • (1)仓库查询与展示。
    • 代码说明

1. 数据库查询

救援物资跟踪监管系统的绝大部分功能都会涉及关系数据库中的业务数据,因此关系数据库的查询是本系统不可或缺的重要部分。
本系统中的数据库查询操作,前台统一采用Ajax请求,即使用jQuery()方法发送数据请求;后台则由Handler.ashx统一处理前台发送的查询数据请求,再调用QueryDataBase.cs封装的方法进行查询,即调用DataBase.cs中的方法进行数据库连接与查询,将查询结果序列化为JSON格式返回。
(1)由Handler.ashx统一处理各类查询请求,即使用ProcessRequest()方法根据查询类别进行处理,如图所示。
在这里插入图片描述

图 Handler.ashx的查询处理
(2)由QueryDataBase.cs作为查询中间层,分类封装查询方法,在其查询方法中调用DataBase.cs中的数据库连接与查询操作方法,并将结果序列化为JSON格式返回,如图所示。
在这里插入图片描述

图 QueryDataBase.cs的查询处理
(3)数据库表的查询操作最终由DataBase.cs实现,使用MySQL官方提供的MySqlClient类连接数据库并进行查询操作,如在这里插入图片描述
2. 基本功能
救援物资跟踪监管系统的基本功能,即为加载在线的互联网公共地图作为底图,在此加载天地图地图,并通过地图类型的切换列表实现天地图数据类型的切换功能,在这里插入图片描述
根据天地图在线地图服务的地址,使用Leaflet加载天地图地图,代码如下在这里插入图片描述
代码说明:天地图在线的矢量图和影像图可以使用t{0-7}.tianditu.gov.cn开头的域名进行访问,每次加载天地图时在线地图域名随机切换。该段代码将“天地图影像”与“天地图矢量”存储在同一个对象中并通过图层控件添加到地图中,加载完成后在客户端界面会有一个图层切换列表,实现“天地图影像”与“天地图矢量”的切换。
需要注意的是,为了便于系统维护,遵循W3C的界面、样式与行为分离的标准,本系统的功能实现代码编写到独立的js(map.js、tool.js)文件中,map.js是系统的主要功能内容,tool.js是封装的一些通用方法,样式代码编写到一个单独的css(style.css)文件中,在系统首页引用这3个文件。

3. 仓库管理

仓库管理,即是对仓库的信息进行查看、修改等操作。主要包含3个功能模块:
仓库查询与展示、仓库信息更新、单元信息更新,下面详细介绍这3个功能模块。

(1)仓库查询与展示。

在地图上添加多个仓库,使用聚合显示加载仓库数据,实现效果如图7-14
所示。单击仓库标注可以使地图缩放至指定级别,显示整体的仓库几何对象及仓库中的单元几何对象;单击仓库几何对象,界面左侧出现该仓库楼层工具条,实现同一个仓库不同楼层单元的切换。

当地图上添加的仓库数量较多时,通过缩放找到指定仓库会浪费大量时间,并且操作不方便,因此要添加仓库搜索功能。通过如图7-15
所示的搜索框进行模糊搜索,查询需要查看的仓库,当鼠标指针悬浮在搜索结果上时仓库标注会高亮显示(已聚类的仓库标注不会高亮显示),当单击搜索结果时地图缩放至该仓库的中心范围。

当初始化系统时,调用initSearchTool()函数,注册搜索相关的事件,搜索框下方展示搜索结果,当鼠标指针悬浮在搜索结果上时仓库标注会高亮显示,当单击搜索结果时地图缩放至该仓库的中心范围。仓库展示与搜索功能的实现代码如下:在这里插入图片描述
在这里插入图片描述

代码说明

:该搜索框可进行仓库、单个物资和多个物资内容的搜索,为搜索框注册input事件,根据输入内容的变化,发送Ajax请求到后台服务,执行Search接口并将检索到的内容返回前端显示。搜索结果使用ul标签、li标签将搜索结果以列表形式展示,li标签注册鼠标悬浮事件与鼠标单击事件,当鼠标指针悬浮在搜索结果上时高亮显示对应的标注,当单击搜索结果时地图缩放至该仓库的中心范围。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vivado初体验LED工程

文章目录 前言一、PL 和 PS二、LED 硬件介绍三、创建 Vivado 工程四、创建 Verilog HDL 文件五、添加管脚约束六、添加时序约束七、生成 BIT 文件八、仿真测试九、下载测试 前言 本节我们要做的是熟练使用 Vivado 创建工程并实现对 LED 灯控制,每秒钟控制开发板上的…

vue3中css使用script中定义的变量

代码 <template><div class"box">haha</div> </template><script setup lang"ts"> const boxWidth 500px </script><style lang"scss"> .box {width: v-bind(boxWidth);height: 200px;background-c…

聚观早报 | iPhone 15系列正式发布;月饼专利申请超10000项

【聚观365】9月14日消息 iPhone 15系列正式发布 月饼专利申请超10000项 “五个女博士”自建研究院 2023中国民营企业研发十强公布 华为和小米达成全球专利交叉许可协议 iPhone 15系列正式发布 2023年苹果秋季新品发布会如期而至。发布会上&#xff0c;苹果发布了iPhone 1…

innovus: 各种padding一勺烩

我正在「拾陆楼」和朋友们讨论有趣的话题&#xff0c;你⼀起来吧&#xff1f; 拾陆楼知识星球入口 instance padding specifyInstPad $instance_name -left/-right $site_num site_num指的是padding的大小以site宽度为单位。 module padding setPlaceMode -place_global_mo…

Java版分布式微服务云开发架构 Spring Cloud+Spring Boot+Mybatis 电子招标采购系统功能清单

项目说明 随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大&#xff0c;公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境&#xff0c;最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范&#xff0c;以及审…

HNU小学期工训-STC15单片机模型大作业实验报告

STC15单片机模型大作业实验报告 全称&#xff1a;基于STC15单片机与OLED显示模块&PC端演示的多功能声光温振时钟智能手表模型 计科210X 甘晴void 202108010XXX 【请注意&#xff1a;本作业入选优秀范例&#xff0c;直接照抄源码有很大风险】 【建议理解原理之后作改动】 …

阿里云无影电脑:免费体验无影云电脑3个月

阿里云无影云电脑免费领取流程&#xff0c;免费无影云电脑配置为4核8G&#xff0c;可以免费使用3个月&#xff0c;阿里云百科分享阿里云无影云电脑&#xff08;云桌面&#xff09;免费申请入口、申请流程及免费使用限制条件说明&#xff1a; 目录 阿里云无影云电脑免费申请入…

Ansible自动化:简化你的运维任务

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

Paper Reading: RSPrompter,基于视觉基础模型的遥感实例分割提示学习

目录 简介目标工作重点方法实验总结 简介 题目&#xff1a;《RSPrompter: Learning to Prompt for Remote Sensing Instance Segmentation based on Visual Foundation Model 》&#xff0c;基于视觉基础模型的遥感实例分割提示学习 日期&#xff1a;2023.6.28 单位&#xf…

STL list

文章目录 一、list 类的模拟实现 list 是一个带头双向循环链表&#xff0c;可以存储任意类型 模板参数 T 表示存储元素的类型&#xff0c;Alloc 是空间配置器&#xff0c;一般不用传 一、list 类的模拟实现 iterator 和 const_iterator 除了下述不同外&#xff0c;其他代码基…

GPIO子系统编写LED灯的驱动、linux内核定时器

一、GPIO子系统 1.概念&#xff1a; 一个芯片厂商生产出芯片后会给linux提供一个当前芯片中gpio外设的驱动&#xff0c;我们当前只需要调用对应的厂商驱动即可完成硬件的控制。而linux内核源码中的gpio厂商驱动有很多&#xff0c;这里linux内核对厂商驱动做了一些封装&#x…

【管理运筹学】第 8 章 | 动态规划(2,动态规划的基本思想)

文章目录 引言2.2 动态规划的基本思想 写在最后 引言 承接前文&#xff0c;介绍完基本概念后&#xff0c;我们来学习动态规划的基本思想&#xff0c;用上一篇文章的最短路问题来配合说明。 2.2 动态规划的基本思想 最短路问题中的网络如下图所示&#xff0c;从 A 到 E 可以分…

零基础学前端(四)重点讲解 CSS

1. 该篇适用于从零基础学习前端的小白 2. 初学者不懂代码得含义也要坚持模仿逐行敲代码&#xff0c;以身体感悟带动头脑去理解新知识 3. 初学者切忌&#xff0c;不要眼花缭乱&#xff0c;不要四处找其它文档&#xff0c;要坚定一个教授者的方式&#xff0c;将其学通透&#xff…

SpringMVC之自定义注解

一.什么是SpringMVC之自定义注解 二.Java注解简介 Java注解分类 JDK元注解 三.自定义注解简介 自定义注解的分类 四.自定义注解的基本案例 案例一&#xff08;获取类与方法上的注解值&#xff09; 案例二&#xff08;获取类属性上的注解属性值&#xff09; 案例三&a…

MyBatis笔记

Mybatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下&#xff0c;iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到GithubiBatis一词来源于“intern…

【数据结构与算法】不就是数据结构

前言 嗨喽小伙伴们你们好呀&#xff0c;好久不见了,我已经好久没更新博文了&#xff01;之前因为实习没有时间去写博文&#xff0c;现在已经回归校园了。我看了本学期的课程中有数据结构这门课程&#xff08;这么课程特别重要&#xff09;&#xff0c;因为之前学过一点&#xf…

数据结构与算法(三)——递归

一、递归的概念 递归就是方法自己调用自己&#xff0c;每次调用时传入不同的变量。 递归有助于编程者解决复杂的问题&#xff0c;同时可以让代码变得简洁。 1.1 递归机制 递归调用规则&#xff1a; 1>当程序执行到一个方法时&#xff0c;就会开辟一个独立的空间&#xff0…

vr飞机驾驶舱模拟流程3D仿真演示加大航飞安全法码

众所周知&#xff0c;航空航天飞行是一项耗资大、变量参数很多、非常复杂的系统工程&#xff0c;因此可利用虚拟仿真技术经济、安全及可重复性等特点&#xff0c;进行飞行任务或操作的模拟&#xff0c;以代替某些费时、费力、费钱的真实试验或者真实试验无法开展的场合&#xf…

2023 Google 开发者大会:Web平台新动向

目录 前言一、Open in WordPress playground二、WebGPU三、新的核心 Web 指标INP四、Webview1、Custom Tabs2、JavaScriptEngine 五、Passkeys六、View Transitions API七、Google Chrome开发者工具优化1、覆盖HTTP的响应标头2、改变stack trance 八、Baseline总结 前言 在前不…

攻防世界-WEB-easyupload

1.新建.user.ini文件&#xff0c;内容如下 GIF89a auto_prepend_filea.jpg 2.上传该文件&#xff0c;并用burp抓包&#xff0c;将Content-Type: application/octet-stream修改为 Content-Type: image/jpg 3.放包&#xff0c;结果如下 4. 新建a.txt文件&#xff0c;内容为 GIF89…