NS-EMS能源管理系统软件概要设计说明书(联动平台)
NS-EMS能源管理系统软件 V1.3 概要设计说明书(业务联动平台)目 录1、引言11.1编写目的11.2背景11.3定义11.4参考资料12、总体设计22.1需求规定22.1.1功能边界22.1.2非功能性要求22.2设计原则22.3功能设计22.3.1功能清单22.3.2服务模块设计43、软件运行平台83.1服务器配置83.2工作站配置93.3数据库环境93.4软件开发平台93.5编程语言93.6接口技术94、接口设计94.1实现技术94.2数据分类94.3接口定义105、数据库表105.1推送用户表(TB_EMS_NOTIFYRECIPIENT)105.2推送用户邮件和手机附属信息表(TB_EMS_NOTIFYRECIPIENTINFO)105.3报表推送用户映射表(TL_EMS_REPORTNOTIFYRECIPIENT)115.4告警推送用户映射表(TL_EMS_ALARMNOTIFYRECIPIENT)115.5短信历史记录表(TE_SMSRECORD)115.6邮件历史记录表(TE_MAILRECORD)126、开发规范126.1代码编写规范126.2文档输出规范12 NS-9000V1.30平台功能 概要设计说明书V1.001 、引言1.1 编写目的本文档是对EMS V1.3通知平台进行详细分析和讨论后得出的。通过本概要设计说明书,可以了解到用推送服务的设计思路及流程。本文档面向的读者是:NS-EMS V1.3能源管理系统软件的开发人员、测试人员、项目经理等。1.2 背景根据公司业务发展需要、各部门收集来的需求,为公司市场推广提供支撑,需要在EMS V1.3 系统中添加告警、报告、报表的推送服务,整合原有功能(报告、报表生成服务;业务告警服务;短信邮件发送服务)形成通知平台。1.3 定义下表列出本报告中专门术语的定义、英文缩写词的原词组和意义、项目组内达成一致意见的专用词汇,同时继承全部的先前过程中定义过的词汇。词汇名称词汇含义备注有状态告警有状态告警是区分无状态告警的,无状态告警是事件告警,开关量的分开与闭合都会产生告警信息,而有状态告警分开与闭合是同一条告警1.4 参考资料编号资料名称说明1NS-EMS能源管理系统软件 V1.3 需求规格说明书(告警、报表、报告推送服务)第 12 页 2 、总体设计2.1 需求规定2.1.1 功能边界1. 详细阐述软件功能;2. 提供软件内部接口,提高软件代码的重用性与可扩展性;3. 提供公共接口,给js页面调用。4.2.1.2 非功能性要求1、对于一些公共的、经常使用的代码或函数,避免频繁复制,可封装成公共类或库;2、代码中做好注释,避免无用注释的出现,以增加可维护性;3、尽量减少人工配置,增加默认属性,以增强易用性;4、代码中尽量使用标准STL的内容,以增加系统可移植性;5、做系统设计时,尽量考虑以前老版本的功能,以增加系统的兼容性。2.2 设计原则为了软件能适应未来几年的现场需要,通用数据配置模块应该根据实际需要保持一定的可扩展性、可复用性。第一、采用复用技术。 第二、底层业务模块相对独立,统一接口,做到高内聚、低耦合。第三、数据库设计留有扩充字段。2.3 功能设计2.3.1 功能清单 通知平台包括3个服务,既告警推送服务、报告报表推送服务、短信邮件发送服务。告警推送服务功能清单见2.3.1.1章节;报告报表推送服务功能清单见2.3.1.2章节;短信邮件发送服务现已开发完成,具体架构见下图:通知平台告警推送服务短信邮件发送服务报告报表推送服务读取通知平台配置功能获取告警信息功能读取通知平台配置功能报告报表自动生成功能存储告警推送信息功能发送告警、报告报表推送信息功能业务告警服务报告报表生成功能蓝色:新加紫色:已有存储报告报表推送信息功能 2.3.1.1 报告、报表推送1、支持对单个报表、报告向一个或组对象做自动推送;2、支持以邮件的方式推送报表、报告,邮件模板可使用配置文件,使用通配符方式来替换相关内容;3、配置管理(1)在B/S后台配置页面进行配置;(2)在页面上可配置推送的用户姓名、用户组、推送方式(邮件方式)、邮件地址(可配置多个)。(3)可配置不同的报表、报告类型推送给不同的人群;4、推送内容报表、报告以附件方式发送,默认以报表、报告的文件名作为邮件标题及内容;5、推送服务在生成报表、报告的时候,根据报告报表模板ID与待发送人的对应关系,推送报表报告。2.3.1.2 告警推送1、支持对单个告警向一个或组对象做自动推送。2、支持短信、邮件方式进行推送,推送方式在B/S页面上配置;邮件、短信的模板可使用配置文件,使用通配符方式来替换相关内容;3、权限管理告警自动推送的设置需要特殊的权限设置,仅拥有告警管理人员权限或者系统管理员权限可操作。4、配置管理(1)在B/S后台配置页面进行配置。(2)在页面上可配置推送的用户姓名、用户组、推送方式(短信方式、邮件方式)、手机号码(可配置多个)、邮件地址(可配置多个)。(3)可配置不同的告警类型推送给不同的人群5、推送内容默认以告警内容作为短信、邮件的推送内容,以告警内容作为邮件的标题。6、推送服务生成告警的时候,根据告警项与待发送人的对应关系,推送告警。2.3.2 服务模块设计2.3.2.1 报告、报表推送1. 配置管理通过在Web页面进行推送人员的增删改查,同时配置报告报表模板与推送人员的对应关系。2. 推送内容在报表生成软件目录下的ReportGeneration.exe.config文件中进行报告报表推送邮件的标题与内容的配置。Mail_Push_Title_Statement为邮件标题模板,其中0为报告报表名称的占位符;Mail_Push_Content_Template为邮件内容模板,其中0为报告报表名称的占位符;Mail_Push_Title_Report为邮件附件名称模板,其中0为报告报表名称的占位符。如下图:3. 推送服务当不同模板类型的报告报表自动生成时,查询报告报表的模板类型是否需要发送,如果是,则通过查询找到推送的人员信息,同时将信息写入平台TE_MAILRECORD数据表中,等待平台TSSmsServiceU.exe程序将邮件发送。流程图:N开始配置报表模板配置模板生成策略服务判断是否到达生成时间配置用户与推送报表的关联Y开启ReportGenerate服务配置推送用户信息结束根据生成策略生成对应报表或报告将待推送的信息写入TE_MAILRECORD,等待平台推送服务根据报告报表类型判断是否推送Y2.3.2.2 告警推送1. 配置管理:通过Web端在表TL_EMS_ALARMNOTIFYRECIPIENT中配置告警项、推送方式与推送接收人的对应关系。2. 推送内容:在NS-9000安装文件夹下parameter/ TSSmsService.ini配置,;告警推送配置ALARMPUSHCONFIG;告警推送短信内容模板;第一个参数是设备名称;第二个参数是告警的日期;第三个参数是告警内容SMS_Push_Template=你好!设备%s,%s,%s; 告警推送邮件标题模板;第一个参数是设备名称;第二个参数是告警的日期Mail_Push_Title_Template=你好!设备%s在%s生成告警; 告警推送邮件内容模板;第一个参数是设备名称;第二个参数是告警的日期;第三个参数是告警内容Mail_Push_Content_Template=设备%s,%s,%s3. 告警推送服务a)TSServer有新告警生成时,判断是否为有状态告警,状态告警则将告警信息转译到TSAlarmServer模块;b)在TSAlarmServer服务中调用告警推送服务PushAlarm.dll接口PushAlarmItem(const AlarmItemDef &alarm,sourceType sourceFrom),参数为转译后的告警信息。c)告警推送服务接受到告警信息后,从告警推送用户映射表(TL_EMS_ALARMNOTIFYRECIPIENT)中读取相关配置,根据配置信息决定是否推送告警,如果该条告警的告警项在配置表中,则根据配置信息将告警设备,告警内容,告警日期按模板SMS_Push_Template或Mail_Push_Title_Template及Mail_Push_Content_Template存入表TE_SMSRECORD或TE_MAILRECORD中,由TSSmsServiceU服务完成告警推送。流程图:N读取开始告警生成有状态告警YN转译到TSAlarmServer告警项是否配置推送调用告警推送服务PushAlarmDll.dll接口PushAlarmItem(const AlarmItemDef &alarm, sourceType sourceFrom)Y将告警信息按模板及配置关系存入TE_SMSRECORD或TE_MAILRECORD表中TL_EMS_ALARMNOTIFYRECIPIENT表中的配置信息TSSmsServiceU完成告警推送结束添加到无状态告警表中中3 、软件运行平台3.1 服务器配置服务器CPU: 双核 2.0服务器内存: 4G服务器硬盘: 1T操作系统Windows Server 20083.2 工作站配置服务器CPU:1GHz以上服务器内存: 2G服务器硬盘: 500G操作系统/WIN7/XP3.3 数据库环境(1) SQL Server 2005 SP33.4 软件开发平台(2) Microsoft Visual Studio 20083.5 编程语言(3) 应用服务模块:C/C+3.6 接口技术DLL动态库接口技术4 、接口设计4.1 实现技术编写语言:C+接口技术:Windows动态库DLL数据交互:管道消息4.2 数据分类数据来源:数据库表4.3 接口定义l 打开实时数据管道AFX_EXT_APIHANDLEWINAPIOpenRealDataPipe(BOOLbRetry = TRUE);l SQL语句执行接口AFX_EXT_APIvoid* WINAPIGetMessage_RecordOfSql_Ext(HANDLEhPipe,C
收藏
编号:344297495
类型:共享资源
大小:195.91KB
格式:DOC
上传时间:2023-02-14
7
金贝
- 关 键 词:
-
NS
EMS
能源
管理
系统软件
概要
设计
说明书
联动
平台
- 资源描述:
-
NS-EMS能源管理系统软件 V1.3 概要设计说明书
(业务联动平台)
目 录
1 、引言 1
1.1 编写目的 1
1.2 背景 1
1.3 定义 1
1.4 参考资料 1
2 、总体设计 2
2.1 需求规定 2
2.1.1 功能边界 2
2.1.2 非功能性要求 2
2.2 设计原则 2
2.3 功能设计 2
2.3.1 功能清单 2
2.3.2 服务模块设计 4
3 、软件运行平台 8
3.1 服务器配置 8
3.2 工作站配置 9
3.3 数据库环境 9
3.4 软件开发平台 9
3.5 编程语言 9
3.6 接口技术 9
4 、接口设计 9
4.1 实现技术 9
4.2 数据分类 9
4.3 接口定义 10
5 、数据库表 10
5.1 推送用户表(TB_EMS_NOTIFYRECIPIENT) 10
5.2 推送用户邮件和手机附属信息表(TB_EMS_NOTIFYRECIPIENTINFO) 10
5.3 报表推送用户映射表(TL_EMS_REPORTNOTIFYRECIPIENT) 11
5.4 告警推送用户映射表(TL_EMS_ALARMNOTIFYRECIPIENT) 11
5.5 短信历史记录表(TE_SMSRECORD) 11
5.6 邮件历史记录表(TE_MAILRECORD) 12
6 、开发规范 12
6.1 代码编写规范 12
6.2 文档输出规范 12
NS-9000V1.30平台功能 概要设计说明书V1.00
1 、引言
1.1 编写目的
本文档是对EMS V1.3通知平台进行详细分析和讨论后得出的。通过本概要设计说明书,可以了解到用推送服务的设计思路及流程。
本文档面向的读者是:NS-EMS V1.3能源管理系统软件的开发人员、测试人员、项目经理等。
1.2 背景
根据公司业务发展需要、各部门收集来的需求,为公司市场推广提供支撑,需要在EMS V1.3 系统中添加告警、报告、报表的推送服务,整合原有功能(报告、报表生成服务;业务告警服务;短信邮件发送服务)形成通知平台。
1.3 定义
下表列出本报告中专门术语的定义、英文缩写词的原词组和意义、项目组内达成一致意见的专用词汇,同时继承全部的先前过程中定义过的词汇。
词汇名称
词汇含义
备注
有状态告警
有状态告警是区分无状态告警的,无状态告警是事件告警,开关量的分开与闭合都会产生告警信息,而有状态告警分开与闭合是同一条告警
1.4 参考资料
编号
资料名称
说明
1
NS-EMS能源管理系统软件 V1.3 需求规格说明书(告警、报表、报告推送服务)
第 12 页
2 、总体设计
2.1 需求规定
2.1.1 功能边界
1. 详细阐述软件功能;
2. 提供软件内部接口,提高软件代码的重用性与可扩展性;
3. 提供公共接口,给js页面调用。
4.
2.1.2 非功能性要求
1、对于一些公共的、经常使用的代码或函数,避免频繁复制,可封装成公共类或库;
2、代码中做好注释,避免无用注释的出现,以增加可维护性;
3、尽量减少人工配置,增加默认属性,以增强易用性;
4、代码中尽量使用标准STL的内容,以增加系统可移植性;
5、做系统设计时,尽量考虑以前老版本的功能,以增加系统的兼容性。
2.2 设计原则
为了软件能适应未来几年的现场需要,通用数据配置模块应该根据实际需要保持一定的可扩展性、可复用性。
第一、采用复用技术。
第二、底层业务模块相对独立,统一接口,做到高内聚、低耦合。
第三、数据库设计留有扩充字段。
2.3 功能设计
2.3.1 功能清单
通知平台包括3个服务,既告警推送服务、报告报表推送服务、短信邮件发送服务。
告警推送服务功能清单见2.3.1.1章节;报告报表推送服务功能清单见2.3.1.2章节;短信邮件发送服务现已开发完成,具体架构见下图:
通知平台
告警推送服务
短信邮件发送服务
报告报表推送服务
读取通知平台配置功能
获取告警
信息功能
读取通知平台配置
功能
报告报表自动生成功能
存储告警推送信息功能
发送告警、报告报表推送
信息功能
业务告警
服务
报告报表生成功能
蓝色:新加
紫色:已有
存储报告报表推送
信息功能
2.3.1.1 报告、报表推送
1、支持对单个报表、报告向一个或组对象做自动推送;
2、支持以邮件的方式推送报表、报告,邮件模板可使用配置文件,使用通配符方式来替换相关内容;
3、配置管理
(1)在B/S后台配置页面进行配置;
(2)在页面上可配置推送的用户姓名、用户组、推送方式(邮件方式)、邮件地址(可配置多个)。
(3)可配置不同的报表、报告类型推送给不同的人群;
4、推送内容
报表、报告以附件方式发送,默认以报表、报告的文件名作为邮件标题及内容;
5、推送服务
在生成报表、报告的时候,根据报告报表模板ID与待发送人的对应关系,推送报表报告。
2.3.1.2 告警推送
1、支持对单个告警向一个或组对象做自动推送。
2、支持短信、邮件方式进行推送,推送方式在B/S页面上配置;邮件、短信的模板可使用配置文件,使用通配符方式来替换相关内容;
3、权限管理
告警自动推送的设置需要特殊的权限设置,仅拥有告警管理人员权限或者系统管理员权限可操作。
4、配置管理
(1)在B/S后台配置页面进行配置。
(2)在页面上可配置推送的用户姓名、用户组、推送方式(短信方式、邮件方式)、手机号码(可配置多个)、邮件地址(可配置多个)。
(3)可配置不同的告警类型推送给不同的人群
5、推送内容
默认以告警内容作为短信、邮件的推送内容,以告警内容作为邮件的标题。
6、推送服务
生成告警的时候,根据告警项与待发送人的对应关系,推送告警。
2.3.2 服务模块设计
2.3.2.1 报告、报表推送
1. 配置管理
通过在Web页面进行推送人员的增删改查,同时配置报告报表模板与推送人员的对应关系。
2. 推送内容
在报表生成软件目录下的ReportGeneration.exe.config文件中进行报告报表推送邮件的标题与内容的配置。
Mail_Push_Title_Statement为邮件标题模板,其中{0}为报告报表名称的占位符;Mail_Push_Content_Template为邮件内容模板,其中{0}为报告报表名称的占位符;Mail_Push_Title_Report为邮件附件名称模板,其中{0}为报告报表名称的占位符。
如下图:
3. 推送服务
当不同模板类型的报告报表自动生成时,查询报告报表的模板类型是否需要发送,如果是,则通过查询找到推送的人员信息,同时将信息写入平台TE_MAILRECORD数据表中,等待平台TSSmsServiceU.exe程序将邮件发送。
流程图:
N
开始
配置报表模板
配置模板生成策略
服务判断是否到达生成时间
配置用户与推送报表的关联
Y
开启ReportGenerate服务
配置推送用户信息
结束
根据生成策略生成对应报表或报告
将待推送的信息写入TE_MAILRECORD,等待平台推送
服务根据报告报表类型判断是否推送
Y
2.3.2.2 告警推送
1. 配置管理:
通过Web端在表TL_EMS_ALARMNOTIFYRECIPIENT中配置告警项、推送方式与推送接收人的对应关系。
2. 推送内容:在NS-9000安装文件夹下parameter/ TSSmsService.ini配置,
;告警推送配置
[ALARMPUSHCONFIG]
;告警推送短信内容模板
;第一个参数是"设备名称"
;第二个参数是"告警的日期"
;第三个参数是"告警内容"
SMS_Push_Template="你好!设备%s,%s,%s"
;
; 告警推送邮件标题模板
;第一个参数是"设备名称"
;第二个参数是"告警的日期"
Mail_Push_Title_Template="你好!设备%s在%s生成告警"
; 告警推送邮件内容模板
;第一个参数是"设备名称"
;第二个参数是"告警的日期"
;第三个参数是"告警内容"
Mail_Push_Content_Template="设备%s,%s,%s"
3. 告警推送服务
a)TSServer有新告警生成时,判断是否为有状态告警,状态告警则将告警信息转译到TSAlarmServer模块;
b)在TSAlarmServer服务中调用告警推送服务PushAlarm.dll接口PushAlarmItem(const AlarmItemDef &alarm,sourceType sourceFrom),参数为转译后的告警信息。
c)告警推送服务接受到告警信息后,从告警推送用户映射表(TL_EMS_ALARMNOTIFYRECIPIENT)中读取相关配置,根据配置信息决定是否推送告警,如果该条告警的告警项在配置表中,则根据配置信息将告警设备,告警内容,告警日期按模板SMS_Push_Template或Mail_Push_Title_Template及Mail_Push_Content_Template存入表TE_SMSRECORD或TE_MAILRECORD中,由TSSmsServiceU服务完成告警推送。
流程图:N
读取
开始
告警生成
有状态告警
Y
N
转译到TSAlarmServer
告警项是否配置推送
调用告警推送服务PushAlarmDll.dll接口PushAlarmItem(const AlarmItemDef &alarm, sourceType sourceFrom)
Y
将告警信息按模板及配置关系存入TE_SMSRECORD或TE_MAILRECORD表中
TL_EMS_ALARMNOTIFYRECIPIENT表中的配置信息
TSSmsServiceU完成告警推送
结束
添加到无状态告警表中中
3 、软件运行平台
3.1 服务器配置
服务器CPU:
≥ 双核 2.0
服务器内存:
≥ 4G
服务器硬盘:
≥ 1T
操作系统
Windows Server 2008
3.2 工作站配置
服务器CPU:
1GHz以上
服务器内存:
≥ 2G
服务器硬盘:
≥ 500G
操作系统
/WIN7/XP
3.3 数据库环境
(1) SQL Server 2005 SP3
3.4 软件开发平台
(2) Microsoft Visual Studio 2008
3.5 编程语言
(3) 应用服务模块:C/C++
3.6 接口技术
DLL动态库接口技术
4 、接口设计
4.1 实现技术
编写语言:C++
接口技术:Windows动态库DLL
数据交互:管道消息
4.2 数据分类
数据来源:数据库表
4.3 接口定义
l 打开实时数据管道
AFX_EXT_APIHANDLEWINAPIOpenRealDataPipe(BOOLbRetry = TRUE);
l SQL语句执行接口
AFX_EXT_APIvoid* WINAPIGetMessage_RecordOfSql_Ext(HANDLEhPipe,C
展开阅读全文
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。