配色: 字号:
XX智慧社区融合服务门户详细设计
2022-12-22 | 阅:  转:  |  分享 
  
社区融合服务门户详细设计XX有限公司目 录1 引言31.1 编写目的(Purpose)31.2 读者对象(Reader)31.3 项目背景(Background of Project)31.4 编写原则(Rule)31.5 定义(Definitions)41.6 参考资料(Reference)41.7 变更历史(Change History)42 需求说明52.1 总体描述52.1.1 概述52.1.2 系统目标52.1.3 系统结构设计要求52.1.4 假设和约束62.2 功能需求概述82.2.1 统一身份认证82.2.2 内容管理82.2.3 个性化版面92.3 安全要求概述92.4 接口要求概述92.5 性能要求概述92.6 其他需求概述102.6.1 用户使用建议102.6.2 系统部署建议113 系统处理流程设计113.1 业务流程设计114 技术方案设计124.1 系统体系结构设计124.1.1 总体配置流图134.1.2 功能点设计介绍134.2 系统功能结构设计235 数据库设计235.1 结构设计235.2 安全性设计285.2.1 总体要求285.2.2 详细要求286 应用系统设计296.1 功能模块设计(功能、表单、流程、程序处理说明、其它说明)296.1.1 门户定义296.1.2 门户元素406.1.3 基础数据管理656.1.4 权限体系管理836.2 公用构件设计1116.2.1 统一身份认证1117 接口设计1147.1 内部接口设计1147.2 外部接口设计1148 系统维护设计1158.1 日常维护设计1158.1.1 组织机构管理模块1158.1.2 用户管理模块1158.1.3 权限管理模块1168.2 容错设计1188.2.1 出错信息1188.2.2 补救措施119引言编写目的(Purpose)为了确保“XX区智慧社区融合服务门户”的建设中开发工作能够按时、高效的完成并稳定的正式上线运营。本文将对本系统中所有技术实现进行详细的描述,同时也是对需求分析与概要设计的具体技术实现。读者对象(Reader)本文档的读者对象为项目经理、系统架构师、系统研发人员、系统甲方、监理单位。项目背景(Background of Project)XX区作为安徽省唯一一个区级单位(全省共有三市一区)被认定为第一批国家智慧城市试点城区。开展了“XX市XX智慧校园”、“XX市XX智慧社区”、“XX市XX智慧医疗”、“XX市XX智慧政务”和“XX市XX智慧旅游”等方面的建设方案和规划。智慧城市建设将推动XX区集约、智能、绿色、低碳的新型城镇化发展,对拉动内需,带动产业转型升级具有非常重要的意义。“XX市XX智慧社区融合服务门户”作为智慧社区的重要组成部分,为智慧社区各子系统提供统一展示整合的平台。编写原则(Rule) 需要遵循的原则。 统一规划、统一设计思想、统一信息交换标准,统一技术规范。 采用开放式系统、最大限度地保护原有资源、并立足长远发展。 应用系统工程的方法,根据实际业务需要,最优化地重组业务处理流程。 应用成熟的先进技术实施系统 。 统一组织,分层建设,注重实效。定义(Definitions)J2EE:基于java的企业级应用解决方案;MVC:Model-View-Control:程序设计模式,业务层,表现层,控制层分开,各司其职;Action:Strusts1或Strust2的控制器,完成控制层的功能;Service:服务层,完成业务层的逻辑处理;DAO:数据访问对象,支撑服务层完成数据存取;Hibernate:java的ormap解决方案;工作流:使得业务http://baike.baidu.com/view/460072.htm过程的部分或整体在http://baike.baidu.com/view/3314.htm计算机中得以模拟和实现的计算机技术。参考资料(Reference)《【招标文件】XX市智慧XX》《【投标文件】XX市智慧XX》《【XX市XX区智慧社区】社区行政服务中心管理系统需求分析说明书》变更历史(Change History)序号人员日期变更详情需求说明总体描述概述智慧社区融合服务门户旨在为用户提供一个集中的入口,通过该入口可以获得几乎所有的信息和服务。其内容主要包括统一身份认证系统、内容管理、界面个性化管理、基础数据管理、权限体系管理。系统目标通过统一身份认证系统提供单点登录功能,用户只需登录融合服务门户即可访问其集成的所有业务子系统。系统结构设计要求1、组件原则基于当前流行的组件技术,将具有同类功能的JAR包,以组件的方式提供业务系统使用,实现了系统的易维护性和可扩展性。3、通用性原则采用全新的通用设计理念,在不修改程序代码的前提下,系统从空间图形数据库到属性数据库以及系统的业务逻辑均可以进行扩充,从而保证业务需求即使发生了变化,系统都可以进行自由扩展。4、扩展性原则遵循组件管理原则,充分考虑其可扩充性,采用面向对象的软件工程技术,将应用管理平台抽象化、参数化,尽可能地应付各种业务变化,有利于系统升级、功能的扩展与延伸。5、安全性原则遵循严格的安全管理机制和权限控制机制,采用统一的单点登录方式对用户身份进行验证;此外由于采用组件与业务系统分离的方案,导致系统具有安全隐患,因此通过口令验证与服务绑定的方式解决这一问题。6、开放性原则遵循标准的接口规范,实现信息数据的充分共享与灵活集成;系统设计保持开放性,严格遵循相关的工业标准,以充分保障系统与其他应用系统间的无缝集成。7、实用性原则依据用户的实际需要,设计上力求结构优化、数据库管理完善、界面简单友好、使用方便、工作流程科学合理。假设和约束系统必须符合下面给出的运行环境要求,包括硬件环境,软件环境和网络环境。运行环境约束硬件要求系统运行至少需要4台服务器,两台服务器搭建数据库集群环境两台服务器搭建应用软件集群环境。基础软件要求软件系统平台设计,包括系统软件、数据库软件、中间件产品以及其他支撑软件的选型、配置。序号项目内容参数说明1操作系统安装配置安装版本Windows Server 2003 R2 Enterprise Edtion (SP2)及以上系统加固按照Windows系统加固方案进行整改,加固项目包括:更新补丁情况;系统根目录/系统目录权限;系统服务开放情况;IIS情况检查;密码策略;安全审核;缺省共享、空连接、管理共享;日志记录;帐号对所有卷的访问权限;注册表加固;其他设置。超级管理员帐户administrator更名。2数据库安装配置安装版本Oracle Database Enterprise Edition 10G3防病毒软件升级名称、版本病毒库升级统一采购杀毒软件4JDK安装版本JDK1.5.0_115TOMCAT安装版本Tomcat-6.0.166中间件应用服务器BEA Weblogic Server 9.0 Advantage7业务流程管理系统安装路径D:\说明:供系统流程配置管理使用。8其它软件UltraEdit说明:代码编辑软件。系统采用Java语言进行开发,不使用任何封闭的专用开发工具,避免由此引起的系统不兼容等问题。网络环境要求系统运行至少需要XX区政务内网、海淀政务移动网、互联网的网路环境。社区行政服务中心管理系统是在XX区政务内网运行,“政务通”通过XX区网格化移动网与系统进行连接,网上服务大厅是通过互联网为居民提供办事服务。 技术条件与限制必须采取J2EE技术,符合J2EE规范;必须采用Oracle数据库。功能需求概述统一身份认证通过融合服务门户,用户可以在局域网内或广域网内随时随地登录系统,通过统一身份认证系统验证身份后,即可进行所有权限范围内的业务处理。内容管理所有子系统所具有的功能都可以作为企业门户的内容,用户登录门户后能够处理所有系统的业务。同时,门户应能对后台各系统的功能进行整合,例如,将后台所有的待审批事项、待审批报销单、待审批人员调动审批等审批流事项,集中在流程专区,审批人可以通过流程专区直接处理所有待审批事项。个性化版面门户为用户提供与其角色所对应的服务,同时,用户可以对所提供的服务内容进行个性化的设置。例如,可以将其常用的栏目信息放置在页面首页,决策者将常用各种统计图表按专题直观地显示在自助服务中,以节省时间,提高效率。安全要求概述基于认证授权的系统访问机制;基于分权的系统访问策略;基于全程日志的系统访问痕迹留存;关键数据加密处理。接口要求概述遵守电子政务XML标准,数据采用XML进行描述。使用日志管理技术,详细记录传输过程信息。远程调用必须提供回执,以获得接口执行的结果的反馈。性能要求概述在系统建设和免维期中通过各种手段对系统进行不断的优化和调整。对于特定的业务,项目建设时在最大限度地满足业务开展要求和用户使用习惯的前提下,通过海淀区城指中心和北科光大的共同协商,制定具体的性能要求指标。系统可靠性采用大型数据库系统,对数据库记录数的增长没有限制,并且保证大容量数据的可操作性;系统不应陷入用户无法控制的状态。即使当系统容量达到和超出极限,或者由其他系统或用户造成错误输入的情况下,系统不应崩溃也不应丢失数据。系统易用性、易浏览性和可操作性系统采用多层架构的B/S结构,提供诸如确认、询问、警告、出错报告等易于觉察、易于读取的信息来服务于用户;具有严重后果的操作应当可逆;屏幕输入格式、报表和其他输入/输出宜整齐、清晰和易于浏览。系统的开放性具备标准的软件体系结构、内部和外部接口,提供多种开发工具接口,支持用户定制能力;保证系统能与其它系统进行快速、顺利的信息交换,便于系统扩展和升级。系统应用具有可扩展性,能够适应指标的变动;系统稳定、可靠;操作简便、易用,用户经过简单的培训即可学会使用;有全面的帮助系统,辅助用户学习系统的功能和实现方法。性能指标要求1.数据精确性:按照不同类别和计量单位设定数据的小数位数; 2.容量要求:采用大型数据库系统,对数据库记录数的增长没有限制,并且保证大容量数据的可操作性;3.应用:具有可扩展性,能够适应指标的变动;系统稳定、可靠;操作简便、易用,用户经过简单的培训即可学会使用;有全面的帮助系统,辅助用户学习系统的功能和实现方法;4.查询结果输出:将查询结果输出到通用的办公文件格式。5.人机界面:友好,输入输出方便;界面设计遵循人性化、简单、方便实用的原则。其他需求概述用户使用建议系统的开发不仅要提供用户所需要的功能,而且要让用户操作方便,符合用户的业务习惯,满足用户方便、高效、安全的使用要求,具体主要体现在用户操作界面以人为本的设计等方面。在使用要求方面,至少应包括:系统稳定、可靠和实用;人机界面友好、操作方便灵活,使用风格接近终端操作系统视窗,符合office软件用户习惯;具有简单明确易于理解的操作提示;功能菜单简明清晰,具有可设定的快捷键和右键菜单;业务流程简单明了,流程设计可因需而变。系统部署建议实行统一的系统管理和安全备份工作。所有软件系统部署时均要符合XX区智慧社区对上线软件的要求。系统处理流程设计业务流程设计本系统做为各个业务子系统的统一集成者,自身不包含业务处理,所有操作遵循以下通用操作流程: 技术方案设计系统体系结构设计总体配置流图功能点设计介绍Spring在这个系统里面,所有的对象都在Spring容器里面被管理,Spring框架的主要功能包括以下几个方面:IoC容器,这里使用Spring来实现反向注入并且来管理所有对象生命周期,对对象进行统一管理有如下好处:统一对象管理是Spring AOP的基础,而通过AOP我们可以比较方便的实现包括事物控制在内的多种控制。IoC可以简化一些设计模式,例如对于Logic对象,我们只要把他们实现我POJO对象就可以,无需另外编程实现Singleton和工厂类等设计模式。AOP功能,这里最主要应用是配置式Transaction Control,这样的目的是可以让开人不需要关心事物控制而把更多的注意力集中在逻辑实现上面。Spring配置式事物控制所需的配置如下: PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED PROPAGATION_REQUIRED,readOnly 另外,还可以使用AOP实现其他功能,如Log打印等等。Spring可以与Struts 2集成起来,达到配置上的统一,struts.xml里面配置的Class可以直接使用Spring 配置文件里面的Bean ID,如:... ...Spring也能和iBatis集成,Spring提供了针对iBatis的工具类:SqlMapClientDaoSupport,系统的BaseDao只需要继承SqlMapClientDaoSupport便可以直接调用其中的方法达到简化Dao层代码的目的。具体的代码请参照:BaseDaoImpl。此外,我们还可以把其他的开源框架集成到系统中,如可以和CXF Web Service和Quartz等框架集成。iBatis项目使用iBatis负责数据层的操作,包括对数据库内容的增删改查等功能。iBatis要求开发人员在配置文件里面编写自己的SQL语句,而iBatis框架会负责配置文件变量映射,SQL执行以及把返回结果映射到POJO对象中。这就说明一个方面iBatis支持的是纯粹的SQL,在SQL操作层面并不存在额外太多的性能开销,同时开发人员可以根据业务复杂度对SQL做任意调节,避免性能问题的出现。另一个,iBatis会自动映射结果集,所以在返回集有限的情况下,能够方面开发人员进行编码;在返回大数据集的情况下(如某些不适合用存储过程的定时任务),开发人员也可以直接跳过iBatis层而使用JDBC的API去进行数据库开发,从而保证速度和内存消耗。作为平台本身,也对iBatis做了部分扩展,一个是使用Spring提供的iBatis工具类,工具类会辅助处理包括配置文件初始化,数据库访问异常等等情形,从而保证开发人员只需要对数据库操作的具体业务进行编码;另一方面,现在的平台框架重写了iBatis的SqlExecutor类,这样为系统的扩展做好了准备,也就是说,系统可以在执行sql之前进行一些功能操作,如进行日志控制、修改SQL的操作。Service LayerService Layer是介于Action和Dao层的业务逻辑层。按照系统设定的开发规范来说,当Action获取传入参数以后,会调用相对应的业务逻辑Service方法去完成实际的业务逻辑操作。为了规范开发和支持可扩展性,所有的Service操作都需要先定义接口,然后才去编写具体实现方法。这样做会导致编码工作量有一定程度的增加,但这样做的好处是能够更好的规范代码格式并且为支持多实现提供基础,从而在一定程度上提高系统健壮性。Service层的所有对象的生命周期也由Spring容器管理。Struts 2与Struts相比,Struts 2的主要优点是:Struts 2的所有类都基于接口,核心独立于HTTP,它的Action是普通的POJO,这样使得整个Struts 2应用更加便于测试;另外,Struts 2对表单处理方面也有了许多改进,如:POJO表单、智能默认值、改进标签、Ajax的支持等等;Struts 2也可以与Spring无缝的继承。对其中部分单独的功能点做下介绍:Action:Struts 2中Action是核心内容,它包含了对用户请求的处理逻辑,我们也称Action为业务控制器。Struts 2中的Action采用了低侵入式的设计,Struts2不要求Action类继承任何的Struts 2的基类或实现Struts2接口,并且没有与Servlet API耦合,因此更加便于测试。在Struts 2的配置文件,我们可以之间把URL映射为Action中的具体方法,Struts 2框架会在方法之前完成数据转化,所以我们可以直接在Action层获取VO对象并开始业务逻辑的验证和操作。拦截器(interceptor):拦截器也是Struts 2的一个重要功能,Struts 2已经提供了多种功能齐全的拦截器实现,并且已经在struts-default.xml配置了拦截器。当我们需要使用的时候,只需要在自己的Struts 文件里把struts-default.xml包含进来并且定义Action的时候引用拦截器或者拦截器栈就可以了。Tiles:tiles和下面的struts-menu其实均不是struts 2的功能范畴,但他们都能够和struts 2紧密的结合起来做一些事情。Tiles的主要功能是简化Web页面的开发,提高可重用性和可扩展性;它提供了一种模版机制,模版可以定义网页布局,然后被多个页面公用。Tiles框架还允许定义可重用的Tiles组件,它可以描述一个完整的网页,也可以描述网页的局部内容。简单的Tiles组件可以被组合或扩展成为更复杂的Tiles组件。Struts Menu:主要是用来实现多种多样的菜单功能,且可以和Struts 1 和 2紧密的结合起来。另外,通过对Struts Menu权限接口的实现,可以灵活的对菜单进行权限控制。相对来说,Struts 2比Struts在设计方面更加完备,使用也更为简单,而且上手也很容易。可能熟悉它自带的struts2标签需要更多的时间,不过我们也可以使用标准的JSTL标签库。如同Struts一样,Struts2在验证方面不是特别成熟,虽然我们可以通过配置实现前后台的验证,但自动生成的Java Script脚本有时候很难完全满足页面验证的需要。在现在的项目中,我们另外引入了一个自行开发的Java Script验证库来解决这个问题。Ajax就我们现有的经验来说,我们主要是使用Prototype和jQuery这两个JS框架简化我们的Ajax开发。当然,Ajax框架相对来说还是比较多的,如DWR、Dojo、ExtJS以及其他很多框架都是可以考虑的选择。个人来说,我比较倾向于选择jQuery,相对于Dojo和ExtJS来说,JQuery更加轻量一点,但它对Ajax和DOM的封装处理能力也非常的好。对于我们现在的应用来说,并不需要非常多的页面特效功能,jQuery完全可以胜任现在的需要;另外,jQuery在社区的口碑也很好。Exception设计异常处理是程序设计和开发的重要环节,为了规范系统内异常处理的方法,防止错误的异常处理或者错误的异常处理消息,系统将采用以下异常处理设计原则。BaseException在系统级别,定义一个通用的异常父类:BaseException,下面是对BaseException类的一些介绍:BaseException是系统内容所有异常的父类,根据系统的实际需要,对BaseException进行派生形成以下子类,各个子类用来划分各种错误,以便进行分别得处理。派生异常说明DBExceptionDB操作时发生的错误SystemException系统异常WarningException警告异常LogicException业务逻辑上的错误BaseException有以下功能:在内部维持系统决定的Message ID.可以从配置文件自动的提取与Message ID绑定的Message语句,并且可以被外部所获取通过传递Message ID中设定的参数,可以对错误Message进行编辑。取得Exception的错误堆栈信息DBException负责处理SQL语句执行时的错误,包括SQL语句错误,执行SQL错误以及映射Result Set的时候出错。该异常是由DAO层产生,可以向上抛出,最后由系统处理。Sample Code: throw new DBException(messageid, [params ,] e); 说明如下:参数类型说明messageIdString配置文件中对应的message id,异常发生时,从配置文件中取得message内容,输出log或输出在页面上。paramsObject[]message id对应的message中可退换的参数eThrowable异常,通常为SQLException。SystemException此异常主要是负责处理程序自身原因发生的错误,如空指针异常,数组越界等,在各个层面都可能出现此类异常,遇到此类异常,需要向上抛出,由框架统一处理。Sample Code: throw new SystemException(messageId[, params][, e]); 说明如下:参数类型说明messageIdString配置文件中对应的message id,异常发生时,从配置文件中取得message内容,输出log或输出在页面上。paramsObject[]message id对应的message中可退换的参数eThrowable某类处理异常WarningException通常发生在业务处理层,此类异常并不会影响业务的执行,但是有必要给用户一些提示性的消息,可以向上抛出此异常,由框架在正常页面显示出一条提示信息。Sample Code: throw new SystemException(messageId[, params][, e]); 说明如下:参数类型说明messageIdString配置文件中对应的message id,异常发生时,从配置文件中取得message内容,输出log或输出在页面上。paramsObject[]message id对应的message中可退换的参数eThrowable异常,LogicException业务处理逻辑上发生的异常,主要在业务逻辑层产生,像上抛出,由框架处理。Sample Code: throw new SystemException(messageId[, params][, e]); 说明如下:参数类型说明messageIdString配置文件中对应的message id,异常发生时,从配置文件中取得message内容,输出log或输出在页面上。paramsObject[]message id对应的message中可退换的参数eThrowable异常,异常处理规则DBException主要是由框架来捕获并且处理,对于SystemException,需要在可能有问题的地方尽量捕捉,对于WarningException和LogicException,需要根据实际的逻辑处理情况进行捕捉。所有的Exception可以向上抛出,由框架统一处理。Log设计Log介绍项目应用Log可以分为以下四类:监视Log、操作Log、认证Log以及解析Log。Log的种类和目的用途关系如下:目的\log的种类监视log操作log认证log解析log错误检查?原因的特定?分析○   operation调查 ○  安全管理 ○○ 其他系统连携调查○   Debug   ○Log的种类和说明如下:Level说明ERRORApplication的一部分功能(end user进行了1个action后的一个处理、batch的1个执行单位等)不能持续动作时的情报WARN处理能够继续,但是必须提请user或者系统管理员注意的情报INFO正常运行,但是特地判断为应该向log记录的情报DEBUG程序的内部动作状态等,在系统开发时及在发生问题时用于调查的必要情报各种Log对应的Log Level定义如下:监视log操作log认证log解析logINFO以上INFOINFODEBUG以上Log使用下面就Log的使用进行一些介绍,首先,我们在com.founder.foundersc.web.framework.log里面封装了一些类,具体如下:类名说明对应ログ/说明OnlineLogLog 对象监视logOperationLogLog 对象认证logAuthLogLog 对象操作logDebugLogLog 对象解析logLogFactoryLog 工厂类产生各种Log对象LogUtilLog 工具类Log调用的共通机能各个Log的具体使用:监视Log获取方法如下:private OnlineLog onlineLog = LogFactory.getOnlineLog(xxx.class);以error为例,调用方法如下:error(Throwable cause, String userId, String msgID, Object values), 其中cause为捕获的异常,userId为当前用户的登陆ID,msgId是指在properties文件里面存放的Message对应的Key,values对应的是Porperties文件里Message里面的变量。输出形式:2009-5-14|01:16:01.707| thread-19802|ERROR|t03abcd|abcd1234|NT00011S|设定文件foundersc.properties没有找到……认证Log获取方法如下:private AuthLog authLog = LogFactory.getAuthLog(xxx.class);调用方法和输出形式与监视Log相似,不再叙述。操作Log获取方法如下:private OperationLog opeLog = LogFactory.getOperationLog(xxx.class);调用方式和输出形式与监视Log相似。解析Log获取方法如下:private DebugLog debugLog = LogFactory.getDebugLog(xxx.class);调用方法如下:debug(String yourMessage);输出形式:2006-05-30|16:39:13.807|thread-19802|DEBUG|test message注意点需要注意的是,在进行Log输出的时候,不能够把一些敏感信息:如账户,密码信息输出到Log里面,如果是在需要,可以把关键部分使用代替。系统功能结构设计数据库设计结构设计表格清单 名称代码APP_APPENTITYATTRIBUTEAPP_APPENTITYATTRIBUTEAPP_APPENTITYUIAPP_APPENTITYUIAPP_APPLICATIONADMINAPP_APPLICATIONADMINAPP_APPLICATIONFUNCPERMISSIONAPP_APPLICATIONFUNCPERMISSIONAPP_APPLICATIONGROUPAPP_APPLICATIONGROUPAPP_APPLICATIONPERMISSIONAPP_APPLICATIONPERMISSIONAPP_APPLICATIONROLEAPP_APPLICATIONROLEAPP_APPLICATIONRULEAPP_APPLICATIONRULEAPP_APPLICATIONUSERAPP_APPLICATIONUSERAPP_APPPERMISSIONCLASSAPP_APPPERMISSIONCLASSAPP_APPROLECLASSAPP_APPROLECLASSAPP_ENTITYAPP_ENTITYAPP_ENTITYUSERINTERFACEAPP_ENTITYUSERINTERFACEAPP_FUNC_PERMISSIONAPP_FUNC_PERMISSIONAPP_GROUPAPP_GROUPAPP_GROUPADMINAPP_GROUPADMINAPP_GROUPUSERAPP_GROUPUSERAPP_INTERFACEFIELDAPP_INTERFACEFIELDAPP_PERMISSIONAPP_PERMISSIONAPP_ROLEAPP_ROLEAPP_ROLEADMINAPP_ROLEADMINAPP_ROLEFUNCPERMISSIONAPP_ROLEFUNCPERMISSIONAPP_ROLEPERMISSIONAPP_ROLEPERMISSIONAPP_RULEAPP_RULEAPP_UIRIGHTFIELDAPP_UIRIGHTFIELDAPP_USERAPP_USERAPP_USERINTERFACEAPP_USERINTERFACEAPP_USERROLEAPP_USERROLEFP_PAGEFP_PAGEFP_PAGEELEMENTSFP_PAGEELEMENTSFP_PAGESTYLEFP_PAGESTYLEFP_PARAMETERFP_PARAMETERFP_PARAMETERINSTANCEFP_PARAMETERINSTANCEFP_PORTALGLABALFP_PORTALGLABALFP_PORTLETFP_PORTLETFP_PORTLETCLASSFP_PORTLETCLASSFP_PORTLETLOGINFOFP_PORTLETLOGINFOFP_PORTLETTYPEFP_PORTLETTYPEFP_RIGHTINFOFP_RIGHTINFOFP_TABFP_TABFP_TABELEMENTSFP_TABELEMENTSGROUP_POST_USER_RELATIONGROUP_POST_USER_RELATIONPOST_INFOPOST_INFOSYS_APPLICATIONSYS_APPLICATIONSYS_ATTRIBUTESETSYS_ATTRIBUTESETSYS_CLASSIFICATIONSYS_CLASSIFICATIONSYS_DUTYLEVELSYS_DUTYLEVELSYS_ENTITYATTRIBUTESYS_ENTITYATTRIBUTESYS_GROUPATTRIBUTESYS_GROUPATTRIBUTESYS_PERMISSIONATTRIBUTESYS_PERMISSIONATTRIBUTESYS_PREBUILDENTITYATTRIBUTESYS_PREBUILDENTITYATTRIBUTESYS_ROLEATTRIBUTESYS_ROLEATTRIBUTESYS_SSOSESSIONSYS_SSOSESSIONSYS_USERATTRIBUTESYS_USERATTRIBUTEUIM_ACCESSINFOUIM_ACCESSINFOUIM_CERTIFYUIM_CERTIFYUIM_SERIALNOUIM_SERIALNOUIM_SYS_ATTRIBUTEUIM_SYS_ATTRIBUTEUIM_SYS_DEPLOYUIM_SYS_DEPLOYUIM_SYS_LOGUIM_SYS_LOG安全性设计总体要求重要基础数据信息,比如使用人口等有敏感信息数据要严格保密,不可泄露;在数据交换及数据处理过程中,要确保数据的完整性和存储安全,避免出现数据丢失的情况;硬件及网络安全方面的建设应具有完备的信息安全体系,达到国家电子政务系统中的安全性标准要求,且符合“XX区智慧社区”建设中对信息安全的相关要求。详细要求要充分考虑网络的高级别、多层次的安护措施,包括备份系统、防火墙和权限设置等措施,保证数据安全。考虑系统可能出现故障时的冗余备份及软硬件恢复等急救措施,以保证网络安全性和系统稳定性。要确保授权用户的合法使用。通过相关系统软件,应设置严密的访问级别和权限控制机制,并通过数据加密、身份验证等措施来保证数据中心内部安全。应用系统设计功能模块设计(功能、表单、流程、程序处理说明、其它说明)门户定义Portal分类管理Portlet分类管理主要是用于管理Portlet的认证的,每一个Portlet的内容与门户系统可以是相同的应用,也可以是不同的应用,所以需要一个认证机制,达到portlet做为门户系统中一部分的目的。添加Portlet分类在Portlet分类管理中,点击【新增】按钮,系统将显示如下图所示界面:在窗口中输入相应的内容,点击【保存】按钮完成添加Portlet分类操作,点击【关闭】按钮则关闭当前窗口并结束添加portlet分类操作。名称:为唯一标识符。描述:该portlet分类的相关描述信息。认证方式:分类中的portlet连接其他系统模块的口令认证方式。(1)不要认证:不需要认证,直接可登陆系统(2)固定用户名口令认证:调用另一个系统的认证url,用户名字段名,口令字段名,登陆用户和登陆口令,需要通过一个固定的用户名和密码登陆系统(3)用户映射认证:调用另一个系统的认证url,用户名字段名和口令字段名,输入一次,即可通过session或者缓存直接将用户的认证信息映射过来,用户名和口令必须与当前系统用户的用户名和口令一致。(4)用户输入认证:调用另一个系统的认证url,用户名字段名和口令字段名,每次都需要用户输入认证用户名和密码。用户名和口令可以不与当前系统用户的用户名和口令一致。是否跨域:是否要做跨域认证,勾选为是,否则为否。认证地址:需要认证的URL地址。退出登陆地址:Porlet退出时要清除登陆信息的URL地址。用户名:用户要认证的登陆名。密码:用户要认证的登陆密码。用户名字段:要认证用户名所对应的字段。密码字段:要认证密码所对应的字段。修改Portlet分类在portlet分类管理中,选中需要修改的分类,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的认证方式、描述,认证url,用户名字段名和口令字段名,登陆用户和登陆口令,点击【保存】按钮完成修改portlet分类操作,点击【关闭】按钮则关闭当前窗口,结束修改portlet分类操作。删除Portlet分类在“portlet分类管理”界面上选中要删除的portlet分类,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。Portal类型管理Portlet类型管理,主要用于新建和修改Portlet的类型,Portlet可以是代码Html片段、iframe等任意类型,在下一章中新建Portlet的时候需要指定Portlet类型,这个Portlet类型就是在这里新建的。新增Portlet类型在portlet类型管理中,点击【新增】按钮,系统将显示如下图所示界面:在窗口中输入相应的内容,点击【保存】按钮完成添加Portlet类型操作,点击【关闭】按钮则关闭当前窗口并结束添加Portlet类型操作。类型名称:为唯一表示符,只能输入字母或数字。实现类:实现类的文件名称。描述:该Portlet类型的相关描述信息。修改Portlet类型在Portlet类型管理中,选中需要修改的类型,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的实现类、描述和参数列表,点击【保存】按钮完成修改Portlet类型操作,点击【关闭】按钮则关闭当前窗口结束修改Portlet类型操作。注意:1.只能修改实现类、描述和参数列表的值。2.系统自带的IFrame类型不可进行修改。设置参数新建一个Portlet类型后,可以为这个Portlet类型设置一些参数值,通过这些参数可以定制出一个这个Portlet类型的Portlet。在Portlet类型信息中,点击【参数信息】选项卡,显示参数管理界面,如下图所示:新增Portlet类型参数在“编辑Portlet类型””参数信息”界面上,点击【新增】按钮,弹出如下界面:在窗口中输入相应的内容,点击【保存】按钮完成添加Portlet类型参数操作,点击【关闭】按钮则关闭当前窗口并结束添加Portlet类型参数操作。名称:为唯一标识符。描述:该Portlet类型参数的相关描述信息。类型:该Portlet类型参数的类型。编辑类型:该Portlet类型参数的编辑类型,这里分为四种:输入框:用于填写的文本框。单选框:单选按钮类型。复选框:选择框类型。下拉框:下拉列表类型。备选值:与输入类型联合使用,文本框可以随意填写中文、英文、字母等。圆按框、选择框和下拉框,单条记录的键值中间要用逗号分隔,前面是键,后面是值,两条记录中间要用分号分隔,例如:是,1;否,2。修改Portlet类型参数在“编辑Portlet类型””参数信息”界面上,选择需要修改的参数,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的内容后,点击【保存】按钮完成修改Portlet类型-参数操作,点击【关闭】按钮则关闭当前窗口结束修改Portlet类型-参数操作。删除Portlet类型参数在“编辑Portlet类型””参数信息”界面上,选择需要修改的参数,点击【编辑】按钮,完成删除Portlet类型-参数 操作。删除Portlet类型在“portlet类型管理”界面上选中要删除的portlet类型,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。门户风格管理门户风格管理主要是用于管理整个门户的风格和样式。通过控制目标的位置达到改变风格的效果。添加门户风格在门户风格管理中,点击【新增】按钮,系统将显示如下图所示界面:在窗口中输入相应的内容,点击【保存】按钮完成添加门户风格的操作,点击【关闭】按钮则关闭当前窗口并结束添加门户风格的操作。名称:为唯一标识符。显示名称:用户选择风格时显示的风格名称。描述:该页面风格的相关描述信息。目录:该页面风格所对应在应用下的目录名称。修改门户风格在门户风格管理中,选中需要修改的风格,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的相应的内容后,点击【保存】按钮完成门户风格修改操作,点击【关闭】按钮则关闭当前窗口,结束修改门户风格操作。删除门户风格在门户风格管理界面上选中要删除的门户风格,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。门户元素Portlet管理Portlet是门户元素中的最底层元素,Portlet管理模块细分为添加、修改、设置参数值、授权、删除等功能。添加Portlet在Portlet管理页面中点击【新增】按钮,如下图所示:弹出的界面具体如下:在窗口中输入相应的内容,点击【保存】按钮完成添加Portlet操作,点击【关闭】按钮关闭当前窗口并结束添加Portlet操作。参数配置:英文名:为唯一标识符。描述:该Portlet类型的相关描述信息。标题:Portlet标题,在界面中展示在上方。展现方式:该Portlet展现方式,分为三种:嵌入:在Portlet页面展示时嵌入到主体页面中,与主体页面无缝结合。对话框:在Portlet页面展示时以对话框的形式展现。普通窗口:在Portlet页面展示时以窗口形式展现。宽度:页面展示时的宽度,可以是数字(单位为px)或者百分比的方式。高度:页面展示时的高度,可以是数字(单位为px)或者百分比的方式。支持窗口方式:该Portlet窗口方式,分为三种:正常:在界面展示时显示恢复正常化的按钮。最小化:在界面展示时显示最小化按钮。最大化:在界面展示时显示最大化 按钮。支持模式:该Portlet支持模式分为显示、编辑、配置、帮助。分类: Portlet分类中创建的分类。类型: Portlet类型中创建的类型。修改Portlet在Portlet管理页面中,选中需要修改的Portlet,点击【编辑】按钮,如下图所示:在窗口中修改相应的内容后,点击【保存】按钮完成修改portlet操作,点击【关闭】按钮关闭当前窗口并结束修改portlet操作。具体参数见添加portlet的参数配置。设置参数值在“编辑Portlet”页面中点击【参数信息】选项卡,,如下图所示:参数值与Portlet类型有关,这里设置的参数值就是Portlet类型定义的参数所匹配的值。删除Portlet在Portlet管理界面上选中要删除的Portlet,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。设置权限在Portlet管理界面上选中要授权的Portlet,点击菜单栏上的【授权】按钮,系统将显示如下图所示界面:授权用户点击页面工具栏中的【添加用户】按钮,系统将显示如下图所示界面:在界面上选中需要授权的用户,点击【分配用户】按钮即可完成用户授权的操作;支持查询用户,能快速查找到需要授权的用户。授权组织机构点击页面工具栏中的【添加组织机构】按钮,系统将显示如下图所示界面:在界面左侧选择所需授权的组织机构,并通过点击“右移”按钮,将所选组织机构移动到右侧列表框中;完成设置后,点击【保存】按钮即可完成组织机构授权的操作;点击【关闭】按钮则结束当前组织机构授权的操作。授权角色点击页面工具栏中的【添加角色】按钮,系统将显示如下图所示界面:在界面上选中需要授权的角色,点击【分配角色】按钮即可完成角色授权的操作;支持角色查询,能快速查找到需要授权的角色。授权所有用户授权所有用户可以直接点击【授给所有人】按钮,这样就把权限授给了所有用户。如下图所示:删除授权在授权管理界面上选中要删除的权限,点击菜单栏上的【移除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。Portlet查询Portlet可以根据名称和标题进行模糊查询,只需要在关键字后的文本框中填写关键字,或者通点击下拉框选中查询条件,点击【查询】按钮。如下图所示:面板管理面板分为行列面板,树形面板,面板元素中可以包含Portlet元素。添加面板在门户面板管理中,点击【新增】按钮,系统将显示如下图所示界面:在窗口中输入相应的内容,点击【保存】按钮完成添加面板操作,点击【关闭】按钮则关闭当前窗口并结束添加面板操作。面板名称:为唯一标识符,可以输入任意字符串。显示名称:用于配置后,在系统中显示的名称。描述:该面板的描述信息面板类型:行形面板:行形面板是将整个页面作为一个面板,行形面板中可以嵌套子行形面板或者树形面板,还可以通过设置面板行数和列数设置子面板在父面板的排列和位置。树形面板:树形面板是将整个页面划分为两部分,左边显示树形,在点击左边树形节点时,在右边展示其相关内容。树形面板可通过设置左部分大小、右部分大小的比例来设置相应的效果。宽度:页面展示时的宽度,可以是数字(单位为px)或者百分比的方式。高度:页面展示时的高度,可以是数字(单位为px)或者百分比的方式。行数:该属性主要与行列面板联用,行列面板的行数,只能为正整数,并且小于10。列数: 该属性主要与行列面板联用,行列面板的列数,只能为正整数,并且小于10。左边宽度:该属性主要与树形面板联用,主要是左侧树展示时的宽度,可以是数字(单位为px)或者百分比的方式。右边高度:该属性主要与树形面板联用,主要是右侧页面内容展示时的宽度,可以是数字(单位为px)或者百分比的方式。修改面板在面板管理中,选中需要修改的面板,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的相关信息,点击【保存】按钮完成修改面板操作,点击【关闭】按钮则关闭当前窗口并结束修改面板操作。删除面板 在面板管理界面上选中要删除的面板,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。设置面板元素行形面板在“面板管理”界面上选中要编辑的行形面板,点击菜单栏上的【编辑元素】按钮,系统将显示如下图所示界面。左边列出所有的元素集合,可以将创建的系统面板和Portlet分类中的Portlet直接鼠标拖动到右边的空白区域。拖动后的效果如下图所示,点击右边区域,背景变为黄色,同时上方的【设置宽度】、【设置高度】、【清除元素】按钮可用。点击【设置宽度】、【设置高度】按钮可以设定拖动过来的面板或者Portlet在页面中的展示效果。点击【清除元素】按钮可以清除当前选中的面板或者Portlet。例如:在面板属性中,设置为3行1列,则设置该面板元素时,会如下图所示:该行列面板划分为1列3行,可以分别设置隔行的元素、高度。树形面板在“面板管理”界面上选中要编辑的树形面板,点击菜单栏上的【编辑元素】按钮,系统将显示如下图所示界面。左边列出所有的元素集合,可以将创建的系统面板和Portlet分类中的Portlet选择到右边的空白区域。例如:<系统管理>就是一个树形面板,其中左边大小设置为15%,右边大小设置为85%,效果图如下图所示:面板查询面板可以根据名称和显示名称两个字段进行关键字模糊查询,只需要在关键字后的文本框中填写关键字,点击【查询】按钮。如下图所示:设置权限具体见Portalet设置权限,同上。页面管理页面元素是本门户系统中顶端的元素,它包含面板。新增页面 在门户页面管理中,点击【新增】按钮,系统将显示如下图所示界面:在窗口中输入相应的内容,选择面板,点击【保存】按钮完成添加页面操作,点击【关闭】按钮则关闭当前窗口结束添加页面操作。名称:为唯一标识符,可以输入任意字符串。显示名称:该页面在系统的中显示的名称。修改页面在页面管理中,选择要修改的页面,点击【编辑】按钮,系统将显示如下图所示界面,在修改界面中输入修改后的页面显示名称、面板,点击【保存】按钮完成修改页面操作,点击【关闭】按钮则关闭当前窗口并结束修改页面操作。删除页面 在“页面管理”界面上选中要删除的页面,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。设置权限具体见Portlet权限设置,同上。基础数据管理用户管理用户管理主要用于维护系统的用户,包括增删改查功能。在“用户管理”“组织机构树”界面中,点击需要新增用户的组织机构,在右侧显示该组织机构的用户列表,如下图所示:新增用户在“组织机构 – 用户列表”界面上,点击【新增】按钮,弹出如下图所示界面:在窗口中输入相应的内容,点击【保存】按钮完成新增用户操作,点击【关闭】按钮则关闭当前窗口并结束新增用户操作。修改用户在“组织机构- 用户列表”界面上,选择且只能选择一条需要修改的用户,点击【修改】按钮,弹出如下图所示的界面:在修改界面中输入修改后内容,点击【保存】按钮完成修改用户操作,点击【关闭】按钮则关闭当前窗口,结束修改用户操作。删除用户在“组织机构 – 用户列表”界面上,选择需要删除的用户,点击【删除】按钮,显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。用户查询在“组织机构 - 用户列表”界面中,可以根据用户名、姓名、组织机构、描述 进行模糊查询,只需要在关键字后的文本框中填写关键字,或者通点击下拉框选中查询条件,点击【查询】按钮。如下图所示:组织机构管理组织机构管理主要用于构建企业的组织架构,管理企业内的单位、部门。新增组织机构在【组织机构管理】中,点击【新增】按钮,系统将显示如下图所示界面:图1图2在窗口中输入相应的内容,点击【保存】按钮完成新增组织机构操作,点击【关闭】按钮则关闭当前窗口并结束新增组织机构操作。修改组织机构在【组织机构管理】中,选中需要修改的组织机构,点击【修改】按钮,系统将显示如下图所示界面: 在修改界面中输入修改后内容,点击【保存】按钮完成修改组织机构操作,点击【关闭】按钮则关闭当前窗口,结束修改组织机构操作。删除组织机构在【组织机构管理】界面上选中要删除的组织机构,点击菜单栏上的【删除】按钮,系统将显示如下图所示界面:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。设置成员新建一个组织机构后,可以为该组织机构设置成员。在组织机构树上,点击一个组织机构,显示“组织机构成员设置”界面,如下图所示:新增成员在“组织机构成员设置”界面上,点击【新增成员】按钮,弹出如下界面:在窗口中输入相应的内容,点击【保存】按钮完成添加组织机构成员的操作,点击【关闭】按钮则关闭当前窗口并结束添加组织机构成员的操作。分配成员在“组织机构成员设置”界面上,点击【分配成员】按钮,弹出如下界面:在以上界面中,选择需要分配的成员,点击【确定】按钮,完成分配成员的操作。删除成员在“组织机构成员设置”界面上,选中要删除的成员,点击菜单栏上的【删除】按钮,完成组织机构成员的删除操作。设置成员排序在“组织机构成员设置”界面上,选中要设置排序的成员,点击菜单栏上的【设置成员排序】按钮,弹出如下界面:图1图2在窗口中修改用户在组中的顺序,点击【保存】按钮完成设置成员排序操作,点击【关闭】按钮关闭当前窗口并结束设置成员排序操作。分配管理员在“组织机构成员设置”界面上,选中要分配管理员的组织机构,点击菜单栏上的【分配管理员】按钮,弹出如下界面:图1图2增加管理员在“分配管理员”界面上,点击【增加管理员】按钮,弹出如下界面:在以上界面中,选择需要设置的成员,点击【确定】按钮,完成增加组织机构管理员的操作。移除管理员在“分配管理员”界面上,选中需要移除的管理员,点击“移除管理员”按钮,弹出如下界面:点击【确定】按钮完成移除管理员操作,点击【取消】按钮则结束移除管理员操作。新增管理员在“分配管理员”界面上,点击【新增管理员】按钮,弹出如下界面:在窗口中输入相应的内容,点击【保存】按钮完成新增组织机构管理员的操作,点击【关闭】按钮则关闭当前窗口并结束新增组织机构管理员的操作。查询人员在“分配管理员”界面中,可以根据用户名、姓名、组织机构、描述 进行模糊查询,只需要在关键字后的文本框中填写关键字,或者通点击下拉框选中查询条件,点击【查询】按钮。如下图所示:组织机构成员查询在“组织机构成员设置”界面中,可以根据用户名、姓名、组织机构、描述 进行模糊查询,只需要在关键字后的文本框中填写关键字,或者通点击下拉框选中查询条件,点击【查询】按钮。如下图所示:组织机构分配组织机构分配主要用于分配组织机构中的子级机构 和 分配组织机构中的成员。组织机构分配在“组织机构分配”界面中,在组织机构树中,选择需要分配的组织机构,点击【确定】按钮,完成组织机构的分配操作。点击【全选中】按钮,选中组织机构树中的所有组织机构。点击【全清除】按钮,清除组织机构树中所有组织机构的选择状态。组织机构成员分配在“组织机构分配”界面中,在组织机构树中,点击需要分配成员的组织机构,右边会显示该组织机构中的成员列表,如下图所示:在“组织机构成员列表”界面中,选择需要分配的成员,点击【保存】按钮,完成组织结构成员分配的操作。权限体系管理角色管理角色管理 包括 角色类别的管理 和 角色管理 两部分功能。角色类别管理角色类别管理主要包括 角色类别的增删改操作,角色类别列表如下图所示:新增类别在“角色管理 – 角色类别列表”界面上,点击【新增】按钮,弹出如下图所示界面:在窗口中输入角色类别名称,点击【保存】按钮完成新增角色类别操作,点击【关闭】按钮则关闭当前窗口并结束新增角色类别操作。修改类别在“角色管理 – 角色类别列表”界面上,点击选中需要修改的角色类别,点击【修改】按钮,弹出如下图所示界面:图1图2在修改界面中输入修改后角色类别名称,点击【保存】按钮完成修改角色类别操作,点击【关闭】按钮则关闭当前窗口,结束修改角色类别操作。删除类别在“角色管理 – 角色类别列表”界面上,选择需要删除的角色类别,点击【删除】按钮,显示如下图所示界面:图1图2点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。角色管理角色管理主要用于维护系统中的角色,包括 角色的增删改操作,以及角色成员的分配 和 数据权限、功能权限的配置。在“角色管理”界面,角色类别列表中,选中需要维护角色的角色类别,左侧显示该类别的“角色列表”,如下图所示:新增角色在“角色类别 – 角色列表”界面上,点击【新增】按钮,弹出如下图所示界面:在窗口中输入相应内容,点击【保存】按钮完成新增角色操作,点击【关闭】按钮则关闭当前窗口并结束新增角色操作。修改角色 在“角色类别 – 角色列表”界面上,选中需要修改的角色,点击【修改】按钮,弹出如下图所示界面:在修改界面中输入修改后相应内容,点击【保存】按钮完成修改角色操作,点击【关闭】按钮则关闭当前窗口,结束修改角色操作。删除角色在“角色类别 – 角色列表”界面上,选择需要删除的角色类别,点击【删除】按钮,显示如下图所示界面:图1图2点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。角色引用 角色引用:将其他系统中设置的角色,引用到当前系统中来。在“角色类别 – 角色列表”界面上,点击【引用】按钮,弹出角色选择列表,显示如下图所示界面:在弹出的“角色列表”界面中,选择需要引用角色,点击【确定】按钮,完成角色引用的操作。成员配置在“角色类别 – 角色列表”界面上,选中需要配置角色成员的角色,点击【角色成员】按钮,弹出“角色成员分配”界面,显示如下图所示界面:图1图2 角色成员分配界面添加成员在“角色成员分配”界面上(图1),点击【增加成员】按钮,弹出如下图所示界面(图2):图1图2图2,选中需要分配的成员,点击【确定】按钮,完成角色成员分配的操作。移除成员在“角色成员分配”界面上,选中需要移除的角色成员,点击【移除成员】按钮,完成角色成员的移除操作。如下图所示界面:管理员配置具体参考 【角色成员配置】操作。数据权限配置在“角色类别 – 角色列表”界面上,选中需要配置数据权限的角色,点击【数据权限】按钮,弹出“数据权限配置”界面,显示如下图所示界面:图1图2 角色 – 数据权限配置界面权限分配在“数据权限配置”界面上(图1),点击【权限分配】按钮,弹出如下图所示界面(图2):图1图2图2,选中需要配置的数据权限,点击【确定】按钮,完成角色 – 数据权限配置的操作。权限移除在“数据权限配置”界面上,选中需要移除的数据权限,点击【权限移除】按钮,完成角色 – 数据权限配置 的移除操作。如下图所示界面:功能权限配置在“角色类别 – 角色列表”界面上(图1),选中需要配置功能权限的角色,点击【功能权限】按钮,弹出“功能权限配置”界面(图2),显示如下图所示界面:图1图2 角色 – 功能权限配置界面在功能树上,选中需要配置的功能权限,点击【确定】按钮,完成角色 – 功能权限配置操作,点击【取消】按钮则关闭当前窗口,结束角色 – 功能权限配置操作。功能权限功能权限 主要用于维护系统的功能权限 和 功能权限的角色分配。新增功能权限在“功能权限”“功能权限树”界面中,点击【新增】按钮,弹出“功能权限新增”界面,如下图所示:图1图2在窗口中输入相应内容,点击【保存】按钮完成新增功能权限操作,点击【关闭】按钮则关闭当前窗口并结束新增功能权限操作。修改功能权限在“功能权限”“功能权限树”界面中,点击选中需要修改的功能权限,点击【修改】按钮,弹出“功能权限修改”界面,如下图所示:在修改界面中输入修改后相应内容,点击【保存】按钮完成修改功能权限操作,点击【关闭】按钮则关闭当前窗口,结束修改功能权限操作。删除功能权限在“功能权限”“功能权限树”界面中,点击选中需要删除的功能权限,点击【删除】按钮,弹出删除确认对话框,如下图所示:点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。角色分配主要包括对 功能权限 角色的分配和移除操作。在“功能权限”“功能权限树”界面中,点击选中需要分配角色的功能权限,右侧显示该功能权限已分配的角色列表界面,如下图所示:角色分配在“功能权限 – 角色列表”界面上,点击【角色分配】按钮,弹出“角色列表”界面,如下图所示:在“角色列表”中,选中需要分配的角色,点击【确认】按钮,完成 功能权限的角色分配操作。角色移除在“功能权限 – 角色列表”界面上,选中需要移除的角色,点击【角色移除】按钮,完成 功能权限的角色移除操作。数据权限数据权限 包括 权限类别的管理 和 数据权限管理 两部分功能。权限类别管理权限类别类别管理主要包括 权限类别的增删改操作,数据权限类别列表如下图所示:新增类别在“数据权限 – 权限类别列表”界面上,点击【新增】按钮,弹出如下图所示界面:在窗口中输入权限类别名称,点击【保存】按钮完成新增数据权限类别操作,点击【关闭】按钮则关闭当前窗口并结束新增数据权限类别操作。修改类别在“数据权限 – 权限类别列表”界面上,点击选中需要修改的数据权限类别,点击【修改】按钮,弹出如下图所示界面:图1图2在修改界面中输入修改后权限类别名称,点击【保存】按钮完成修改数据权限类别操作,点击【关闭】按钮则关闭当前窗口,结束修改数据权限类别操作。删除类别在“数据权限 – 权限类别列表”界面上,选择需要删除的数据权限类别,点击【删除】按钮,显示如下图所示界面:图1图2点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。数据权限管理数据权限管理主要用于维护系统中的数据权限,包括 数据权限的增删改操作,以及数据权限的角色分配。在“数据权限”界面,数据权限类别列表中,选中需要维护数据权限的权限类别,左侧显示该类别的“数据权限列表”,如下图所示:新增数据权限在“数据权限类别 – 数据权限列表”界面上(图1),点击【新增】按钮,弹出如下图所示界面(图2):图1在窗口中输入相应内容,点击【保存】按钮完成新增数据权限操作,点击【关闭】按钮则关闭当前窗口并结束新增数据权限操作。修改数据权限在“数据权限类别 – 数据权限列表”界面上(图1),选中需要修改的数据权限,点击【修改】按钮,弹出如下图所示界面(图2):图1图2在修改界面中输入修改后相应内容,点击【保存】按钮完成修改数据权限操作,点击【关闭】按钮则关闭当前窗口,结束修改数据权限操作。删除数据权限在“角色类别 – 角色列表”界面上(图1),选择需要删除的角色类别,点击【删除】按钮,显示如下图所示界面:图1图2点击【确定】按钮完成删除操作,点击【取消】按钮则结束删除操作。角色分配具体参考 【5 功能权限】-【5.4角色分配】操作。公用构件设计统一身份认证登录处理验证码在登录情报输入画面显示之前在AP服务器中随机产生并保存到HTTPSESSION中,AP服务器在检验验证码后,一定要删除保存在HTTPSESSION中的验证码。SSOID是一个随机的文字串,为了避免重复,产生文字串时,将机器IP,时间放在串里面,然后进行MD5转换。退出处理同步处理接口设计内部接口设计客户端与中间层接口:通过http协议进行通讯;中间层与数据库接口:通过oracle数据访问协议进行数据传输;中间层中的Action层,Service层,DAO层之间采用spring注入机制实现对接外部接口设计N/A系统维护设计日常维护设计组织机构管理模块可以依据实际情况自定义组织架构,常用的情况一般是街道、社区与网格三级。组织机构的管理示意图如下: 通过点击左边的组织机构管理模块,右边出现了的具体管理树结构,一次包括四实采集、服务监控、街镇、网格化社会管理服务网络、网格化社会管理服务街道、网络力量、街道镇乡职能部门、城市服务管理指挥、网格化社会服务管理领导、区职能部门。通过点击各个模块,可以在右端的组织机构信息中填写详细的信息,进行修改、确认、保存。 用户管理模块用户的基本编辑功能外,还有角色、功能、数据权限等快速入口,方便在建立用户后直接配置这些参数。通过点击左边的组织机构管理模块,右边出现了的具体管理树结构,一次包括四实采集、网络化社会服务管理领导、城市服务管理指挥、街镇、区职能部门、网格化社会管理服务网格、网格化社会管理服务街道、网格力量、街道镇乡职能部门、服务监控。通过点击各个模块,可以在右端的用户管理中进行条件查询、关键字查询、可增加、查找、删除,并且还包含用户基本信息、分配角色、功能权限、数据权限、IP权限、空间权限,并以此进行保存。权限管理模块功能权限管理模块依据系统业务逻辑,自定义出相应的功能权限,并可以分配给指定的用户或角色。 通过点击左边的组织机构管理模块,右边出现了的具体管理树结构,一次包括数据中心对外接口、数据中心、数据通采集接口、人房关联接口、实有人口维护、元数据目录管理系统、元数据目录管理系统、标绘组件。通过点击各个模块,可以在右端的组织机构信息中填写详细的信息,进行修改、确认、保存。数据权限管理模块依据产品中的数据标准定义,在界面上可以分配给用户或角色对指定数据的访问权限。通过点击左边的组织机构管理模块,右边出现了的具体管理树结构,依次包括部门库、网格化基础数据台账、市级图层、数据中心统计分析、统计分析、街道分库、历史库。通过点击各个模块,可以在右端的组织机构信息中填写详细的信息,进行修改、确认、保存。 空间权限管理模块可以为用户或角色指定某个行政区划图层的数据,从而实现空间权限的配置,应用程序可以调用其API接口实现空间权限的查询。 通过点击左边的组织机构管理模块,右边出现了的具体管理树结构,包括各种角色的管理。通过点击各个模块,可以在右端的组织机构信息中填写详细的信息,进行修改、确认、保存。容错设计出错信息每一个功能的输入环节都进行了严格限制,且分布在各个类中,不允许非法数据输入。采用异常机制,每次出错能给出详细的出错信息并指导用户进行更改。服务端要做到绝对隐藏,没有出错提示。但是为了保证程序的正确性,流程中加入了大量状态检查,再遇到错误的时候能及时纠正到正确的状态中。下面列出了平台故障点及解决方案:故障点:故障点解决方案系统启动错误检查运行文件完整性。根据缺失文件提示,重新安装新版本。系统登录错误检查登录用户名、密码正确性。确认登录用户名注册到统一安全认证服务中。检查网络正确连接。检查统一安全认证服务正常。系统数据库错误检查系统数据库连接配置是否正确:包括数据库服务名、数据服务器机器名、数据库服务端口、用户名、密码。检查网络正确连接。检查防火墙端口开放1521端口。(数据库服务默认端口)确认安装Oracle9i、Oracle10g其中任一款客户端。ArcSDE空间数据库错误检查ArcSDE空间数据库连接配置是否正确:包括空间数据库服务器机器名、服务端口、用户名、密码。检查网络正确连接。检查防火墙端口开放5151端口。(ArcSDE空间数据库服务默认端口)补救措施当某些故障发生时,对系统进行及时的补救,提供如下补救措施:1、对数据丢失:采用备份数据恢复。2、对程序问题:采用打补丁的方式进行修改。详细设计 73 / 1202Sheet4

LOGOUT

LOGIN

Sheet1

SSOID

aikmgxx9x

bcefgghjk

认证情报

浏览器

AP服务器

SSO服务器

浏览器

AP服务器

SSO服务器

提交退出请求

确认保存SSOID的COOKIE

存在吗?

退出处理错误页面

NO

YES

从COOKIE中取得SSOID

根据SSOID删除相关的认证情报

删除保存在HTTPSESSION中的认证情报和保存SSOID的COOKIE

SSOID

退出处理完成页面调用

退出完成页面

提交登录请求

取得用户名,口令,验证码

验证码正确吗?

登录失败页面

NO

YES

用户名,口令正确吗?

NO

YES

取得用户信息,生成认证情报对象,生成SSOID及保存SSOID的COOKIE

保存认证情报,设置认证情报有效期

保存认证情报和下次有效期更新时间到HTTPSESSION

SSOID,认证情报,有效时间

登录成功页面调用

登录成功页面

用户信息的取得可能要调用其他系统的API

123456.00

234567.00

123456.00

123456.00

234567.00

123456.00

认证情报Object

认证情报Object

Sheet4

LOGOUT

LOGIN

Sheet1

SSOID

aikmgxx9x

bcefgghjk

认证情报

浏览器

AP服务器

SSO服务器

浏览器

AP服务器

SSO服务器

提交退出请求

SSOID

验证码正确吗?

登录失败页面

NO

YES

用户名,口令正确吗?

NO

YES

取得用户信息,生成认证情报对象,作成SSOID

保存认证情报,设置认证情报有效期

保存认证情报和下次有效期更新时间到HTTPSESSION

SSOID,认证情报,有效时间

登录成功页面调用

登录成功页面

用户信息的取得可能要调用其他系统的API

提交登录请求

取得用户名,口令,验证码

验证码正确吗?

登录失败页面

NO

YES

用户名,口令正确吗?

NO

YES

取得用户信息,生成认证情报对象,生成SSOID及保存SSOID的COOKIE

保存认证情报,设置认证情报有效期

保存认证情报和下次有效期更新时间到HTTPSESSION

SSOID,认证情报,有效时间

登录成功页面调用

登录成功页面

用户信息的取得可能要调用其他系统的API

123456.00

234567.00

123456.00

123456.00

234567.00

123456.00

认证情报Object

认证情报Object

献花(0)
+1
(本文系通信农民工原创)