1、统计分析软件详细需求讲解查询统计分析软件开发要求软件环境用途类型名称及版本开发开发工具Myeclipse6 及以上版本开发语言Java数据库设计工具Sql server2000及更高版本都要支持数据库Sql server2000及更高版本都要支持服务器tomcat6.0 、JDK1.5浏览器搜狗, ie9 及更高版本,火狐, 360生产浏览器搜狗, ie9 及更高版本,火狐, 360服务器Windows XP/7/8 windows2003windows2008 等 Windows 系列、 tomcat6.0 、JDK1.5数据库Sql server2000及更高版本都要支持其他非功能需求性能
2、需求1.响应时间: =2s2.并发支持: 10安全措施需求1.应对用户进行严格的访问控制,确保相关信息特别是重要数据信息的安全访问。2.应采用防火墙等安全保障手段进行边界保护,防止对网络和服务器的恶意攻击。质量需求1.正确性:保证交付的源码满足用户需求。2.兼容性:客户端浏览器需兼容搜狗, ie9 及更高版本,火狐, 3603.分辨率自适应4.健壮性:系统对数据的处理要求有完善的效验方式,不可以因为用户操作错误而出现程序错误。5.代码共用性 :6.可扩展性:当需求中出现页面定制无法满足的页面功能时,可以编写专门对应该需求的模块来解决这 个问题。7.系统可根据需要定制同外部系统的通讯接口:包括
3、Webservice 、数据库接口。查询对象: sql-server 数据库1.数据服务网关 :DSGComputers2.分组 :GroupInfos ;3.分支 :SubsInfos;4.门锁 :LockInfos;5.下发白名单 :Lock_DataSwitchTab;6.上传信息 :PassInfo;7.数据服务网关在线信息: HardWareEvents;8.门锁状态信息: DeviceStatusDetail;9.硬件事件类型表: DeviceEventType。主要功能1.一键统计;2.图形分析;3.获取客户数据库。数据库内目标设备1. 数据服务网关多个;2. 分组多个;3.分支
4、多个;4.门锁多个;设备关联图:说明: 1. 数据服务网关的下级只能是分组,且一个数据服务网关可以带多个分组2. 分组的下级可能是分支也可能直接就是门锁,一个分组可以带多个分支和门锁3. 分支的下级可能还是分支也可能是门锁,一个分支可以带多个分支和门锁。查询统计分析结果可 excel 导出和导入;1. 查询结果可导出 Excel 格式的文件。2. 可将 excel 格式的统计结果导入,进行显示。四、 具体需求一键查询统计1. 查询条件 :查询条件详细说明设备选择1. 整个架构树形结构显示;可任意选择树形结构内设备;2. 设备类型: 数据服务网关:显示名称( DSGComputers) 分组:显
5、示名称( GroupInfos )2分支:显示名称( SubsInfos) 门锁:显示名称( LockInfos ) 3. 默认:全部选择起始时间年、月、日、时、分、秒默认: 2015-11-01 00:00:00结束时间年、月、日、时、分、秒默认:当前时间;备注2. 查询结果 :A.门锁工作状态明细表 结果效果图如下:数 据 服 务 网 关 ID数据服务网关名称门锁ID门 锁 名最 后次 父 节 点ID最 后次 父 节 点 名 称紧 急 报 警 次 数平 均 每 天 刷 双 卡 总 数平 均 每 天 刷 巡 更 卡 总 数平 均 每 天 刷 非 法 卡 总 数平 均 每 天 刷 卡 总 数平
6、 均 每 天 使 用 常 开 常 闭 开 关 次 数平 均 每 天 锁 动 作 次 数开 门 信 号 质 量 平 均 值关 门 信 号 质 量 平 均 值等 等1名 字11门 锁11名 字12门 锁223N名 字 NN门 锁 N说明 1.选择的控件支持字段名排序;2.查询结果要有进度条;3.列行数较多,设置为可左右拖动的形式;4.可以设置每页显示多少行。默认显示 500 行。5.所涉及的次数和数值都写在配置文件内 。门锁工作状态明细查找方法如下 (每把锁都具有的工作状态 ):数据服务网关 ID、数据服务网关名字表格编号001功能描述数据服务网关 ID、数据服务网关名字3数据库表名LockInf
7、os、 GroupInfos、DSGComputer字段名LockInfos 表: LockId (锁 ID )GroupInfos 表: GroupId (分组 ID )DSGCompu ter 表:DSGid (网关 ID )、 DSGName(网关名称)查询条件说明1. 首先按查询条件中所选择的 LockId 查找相应的 GroupID;2. 根据 GroupID 在 GroupInfos 表里查找相应的 DSGid;3. 再根据 DSGid在 DSGComputer 表里查找相应的 DSGName;4. 显示相应的 DSGid和 DSGName。备注门锁 ID、门锁名字表格编号002功
8、能描述门锁 ID、门锁名字数据库表名LockInfos字段名LockInfos 表: LockId (锁 ID )、 LockName(锁名称)查询条件说明1. 在查询条件中所选择的依次查找 LockId 和 LockName;2. 显示 LockId 和 LockName。备注最后一次父节点 ID、父节点名称:表格编号003功能描述获取最后一次父节点 ID、父节点名称数据库表名DeviceEventType 、LockInfos、GroupInfos、 SubsInfos、字段名LockInfos 表: LockId (锁 ID )GroupInfos 表: GroupId (分组 ID )
9、、GroupName(分组名称)SubsInfos表 :SubId (分支 ID)、 SubName(分支名称)DeviceEventType 表 : DeviceId(设备 ID )、FatherType(父节点类型) 、FatherID(设备 ID )、MidFKID (上传数据唯一标识) 、TimeStamp (时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(MidFKID) 将 DeviceEventType 表的内容进行去重并按照 MidFKID 排正序获取最后 1 条父节点;3. 从数据库里查此字段, LockId 对应
10、 DeviceId4. 根据 FatherType 找到父节点类型(分组 / 分支)5. 再到相应类型的表( GroupInfos/SubsInfos)内根据( GroupId / SubId ) = FatherID 找 到设备名称,即( GroupName/ SubName );6. 显示父节点的 ID 和名称。备注1.FatherType、 FatherID 未保存;2. TimeStamp : DSG和 DLL 协议内有个时间簇字段,在数据库内会存储,按照这个时 间来查询门锁在线数:表格编号004功能描述查找出条件时间内每把锁的在线总数数据库表名HardWareEvents、LockI
11、nfos字段名LockInfos 表: LockId (锁 ID )HardWareEvents 表 : HWClient StatusID (状态生成时编号) 、 HW id (从属设备 ID )、HW_Type (设备类型) 、 HW_Event_Type (事件类型) 、HW_Event_Status(事件状态)、 HW Event Time (时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(HWClient_StatusID)将 HardWareEvents 表的内容进行去重;3. 然后根据 HW_Event_Time 查找
12、出条件时间内每把锁的在线总数;4. 即当满足 (LockId = HW_id ) and (HW_Type = 7) and (HW_Event_Type = 3) and ( HW Event Status = 1) 时表示门锁在线。备注事件类型: HW_Event_Type = 3(心跳) 事件状态: HW_Event_Status = 1(在线) 设备类型: HW Type = 7(公寓锁)门锁离线数:表格编号005功能描述查找出条件时间内每把锁的离线总数数据库表名HardWareEvents、LockInfos字段名LockInfos 表: LockId (锁 ID )HardWare
13、Events 表 : HWClient_StatusID (状态生成时编号) 、 HW_id (从属设备 ID )、 HW_Type (设备类型) 、 HW_Event_Type (事件类型) 、 HW_Event_Status(事件状态) 、 HW Event Time (时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(HWClient_StatusID)将 HardWareEvents 表的内容进行去重;3. 然后根据 HW_Event_Time 查找出条件时间内每把锁的离线总数;4. 即当满足 (LockId = HW_id
14、) and (HW_Type = 7) and (HW_Event_Type = 3) and ( HW Event Status = 0) 时表示门锁离线。备注事件类型: HW_Event_Type = 3(心跳) 事件状态: HW_Event_Status = 0(离线) 设备类型: HW Type = 7(公寓锁)首次工作时间:表格编号006功能描述查找出条件时间内每把锁的第一条在线数据的时间数据库表名HardWareEvents、LockInfos字段名LockInfos 表: LockId (锁 ID )HardWareEvents 表 : HWClient_StatusID (状态
15、生成时编号) 、 HW_id (从属设备 ID )、 HW_Type (设备类型) 、 HW_Event_Type (事件类型) 、 HW_Event_Status(事件状态) 、 HW Event Time (时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(HWClient_StatusID)将 HardWareEvents 表的内容进行去重;3. 然后根据 HW_Event_Time 查找出条件时间内每把锁的第一条在线数据的时间;4. 当 满 足 (LockId = HW_id ) and (HW_Type = 7) and (
16、HW_Event_Type = 3) and ( HW Event Status =1) 时表示门锁在线。备注事件类型: HW_Event_Type = 3(心跳) 事件状态: HW_Event_Status = 0(离线) 设备类型: HW_Type = 7(公寓锁) 时间格式:如: 2015-10-14 18:31:30电压值:表格编号007功能描述查找出这段时间内最后 1 条电压值数据库表名DeviceStatusDetail、 LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceStatusDetail表 :DeviceId (设备 ID )、De
17、viceType (设备类型 )、StatusKey(状 态 Key )、 RecordTime ( 时间戳)、 StatusValue Detail( 电压值 )查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 RecordTime 查找出条件时间内每把锁的最后一条电压值;3. 即当满足 (LockInfos表.LockId = DeviceStatusDetail表. DeviceId ) and (DeviceType =7) and (StatusKey = 3) 且在条件时间内最大时间的 StatusValue Detail 字段里的 值。备注状态
18、Key: StatusKey = 3(电池电压)压降:表格编号008功能描述条件时间内最大时间的电压值与最小时间的电压值的差数据库表名DeviceStatusDetail、LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceStatusDetail表 :DeviceId (设备 ID )、DeviceType (设备类型 )、StatusKey(状 态 Key )、 RecordTime ( 时间戳)、 StatusValue Detail( 电压值 )查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 RecordTime
19、 查找出条件时间内每把锁的第一条和最后一条电压值;3. 即当满足 (LockInfos表.LockId = DeviceStatusDetail表. DeviceId ) and (DeviceType =7) and (StatusKey = 3) 且在条件时间内最小时间和最大时间的 StatusValue_Detail 字 段里的 值。4. 最后将(最小时间的 StatusValue_Detail 的值 -最大时间的 StatusValue_Detail的值);5. 结果保留 1 位小数备注(说明:指令内收到的 70 代表 7V);举例: 100天内最后 1 条电压值为 75;第一条电压值
20、为 80; 压降: 8V-7.5V = 0.5V异常情况:如果最后 1条电压值 大于第一条电压值则压降为 0;电压值为 1.4V 次数:表格编号009功能描述条件时间内出现电压值为 1.4V 次数数据库表名DeviceStatusDetail、LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceStatusDetail 表: DeviceId (设备 ID )、DeviceType (设备类型) 、StatusKey(状态 Key )、 RecordTime (时间戳)、 StatusValue Detail(电压值 )查询条件说明1. 首先按查询条件中所
21、选择的 LockId 依次查找;2. 其次根据 RecordTime查找出条件时间内每把锁的电压值为 1.4V 的次数;3. 即当满足 (LockInfos 表.LockId = DeviceStatusDetail 表 . DeviceId) and (DeviceType = 7) and(StatusKey = 3) and (StatusValue Detail = 14)的总数。备注说明:指令内收到的 14 代表 1.4V,1.4V 是异常现象变更权限的次数:表格编号010功能描述条件时间变更权限的次数数据库表名Lock DataSwitchTab 、 LockInfos字段名Loc
22、kInfos 表: LockId (锁 ID )Lock_DataSwitchTab 表 :TargetId (目标 ID )、TargetType (目标类型) 、CMDID( 命 令 ID) 、MessTime (信息时间)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 MessTime 查找出条件时间内每把锁的变更权限的次数;3. 即查找出这段时间内 (LockInfos 表.LockId = Lock_DataSwitchTab 表. TargetId ) and (TargetType = 7) and CMDID=1, 8,9, 10,11,12
23、,13,14,21,22,23,36, 40, 41, 42,43,44,45, 47, 48, 49, 54,55,56, 57, 60, 61 的总数;备注1. TargetType = 7 表示公寓锁紧急报警次数:表格编号011功能描述条件时间内紧急报警次数数据库表名PassInfo、LockInfos字段名LockInfos 表: LockId (锁 ID )PassInfo 表:DeviceID (设备 ID)、 TimeStamp (时间戳)、 PassStatus(通过状态)、 MidFKID (上传数据唯一标识)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找
24、;2. 其次根据 distinct(MidFKID) 将 PassInfo表的内容进行去重;3. 根据 TimeStamp 查找出条件时间内每把锁的紧急报警的次数;4. 即查找出这段时间内 (LockInfos表 .LockId = PassInfo表 .DeviceID) and( PassStatus=24) 的总数备注紧急报警无响应次数:表格编号012功能描述条件时间内紧急报警无响应次数数据库表名DeviceEventType、LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceEventType 表: DeviceID (设备 ID )、Devic
25、eType (设备类型 )、DeviceEvent(事 件类型)、 MidFKID (上传数据唯一标识) 、 TimeStamp(时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(MidFKID) 将 DeviceEventType 表的内容进行去重;3. 根据 TimeStamp 查找出条件时间内每把锁的紧急报警无响应次数;4. 即 查 找 出 这 段 时 间 内 (LockInfos 表 .LockId = DeviceEventType 表 . DeviceID) and (DeviceType = 7) and (Device
26、Event =6)的总数备注DeviceEvent 应增加“紧急报警无响应”类型紧急报警解除次数:表格编号013功能描述条件时间内紧急报警解除次数数据库表名DeviceEventType、LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceEventType 表: DeviceID (设备 ID )、DeviceType (设备类型) 、DeviceEvent (事 件类型)、 MidFKID (上传数据唯一标识) 、 TimeStamp(时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(MidF
27、KID) 将 DeviceEventType 表的内容进行去重;3. 根据 TimeStamp 查找出条件时间内每把锁的紧急报警解除次数;4. 即 查 找 出 这 段 时 间 内 (LockInfos 表 .LockId = DeviceEventType 表 .DeviceID) and (DeviceType = 7) and ( DeviceEvent =7)的总数备注DeviceEvent 应增加“紧急报警解除”类型紧急呼叫开关长时间有效错误次数:表格编号014功能描述条件时间内紧急呼叫开关长时间有效错误次数数据库表名DeviceEventType、LockInfos字段名LockIn
28、fos 表: LockId (锁 ID )DeviceEventType 表: DeviceID (设备 ID )、DeviceType (设备类型) 、DeviceEvent (事 件类型)、 MidFKID (上传数据唯一标识) 、 TimeStamp(时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(MidFKID) 将 DeviceEventType 表的内容进行去重;3. 根据 TimeStamp 查找出条件时间内每把锁的紧急呼叫开关长时间有效错误次数;4. 即 查 找 出 这 段 时 间 内 (LockInfos 表 .L
29、ockId = DeviceEventType 表 .DeviceID) and (DeviceType = 7) and ( DeviceEvent =19)的总数备注DeviceEvent 应增加“紧急呼叫开关长时间有效错误”类型密码多次输入错误报警次数:表格编号015功能描述密码多次输入错误报警次数数据库表名DeviceEventType、 LockInfos字段名LockInfos 表: LockId (锁 ID )DeviceEventType 表: DeviceID (设备 ID )、DeviceType(设备类型) 、DeviceEvent (事 件类型)、 MidFKID (上传数据唯一标识) 、 TimeStamp(时间戳)查询条件说明1. 首先按查询条件中所选择的 LockId 依次查找;2. 其次根据 distinct(MidFKID) 将 DeviceEventType 表的内容进行去重;3. 根据 TimeStamp 查找出条件时间内每把锁的密码多次输入错误报警次数;4
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1