基于WEB银行柜员管理系统.doc_第1页
基于WEB银行柜员管理系统.doc_第2页
基于WEB银行柜员管理系统.doc_第3页
基于WEB银行柜员管理系统.doc_第4页
基于WEB银行柜员管理系统.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于WEB的银行柜员系统摘 要 随着社会经济的发展,以及数字生活的逐步渗透,人们的金融意识、科技意识己经有了很大的提高。如何为用户提供更加便捷、更加周到的服务已经成为各大银行竞争的焦点。更加快捷的银行系统是当下的迫切需要。本系统是基于WEB的银行系统,采用分布式部署,高度解耦的方式。本系统实现基本的开户,取款,存款,转账,查询,挂失,解挂等功能,采用ORACLE技术对业务逻辑在ORACLE存储过程中进行,更加安全可靠。最后结合系统开发阶段和调试阶段发现的问题,提出了系统需要完善的地方,总结了开发此系统所取得的经验。关键字银行业务核心记账 JMS通信The bank teller system based on WEBAbstract With the development of society and economy, as well as digital life gradually, peoples financial awareness, consciousness of science and technology has been greatly improved. How to provide users with more convenient, more attentive service has become a major focus of the bank competition. More efficient banking system is the current urgent need. The system is based on the WEB bank system, adopting distributed deployment, altitude decoupling approach. The system to achieve the basic account, withdrawals, deposits, transfers, query, report the loss, solution of hanging and other functions, the use of ORACLE technology in business logic in the ORACLE stored procedure, more safe and reliable. Finally, system development and debugging phase found problems, put forward a system needs to be perfected, summarized the development of this system gained experience.Key Words: Banking businessKey account JMS communication1绪论1.1 引言随着社会经济的发展,以及数字生活的逐步渗透,人们的金融意识、科技意识己经有了很大的提高。如何为用户提供更加便捷、更加周到的服务已经成为各大银行竞争的焦点。但如今银行储蓄系统工作效率比较低,越来越不能满足广大人民群众的需求,人们希望可以更方便更省时更省力的办理储蓄的相关业务。可是现如今的银行储蓄系统工作效率低,越来越不能满足广大人民群众的需要,人们希望能更方便更省时就可以办理储蓄业务。而如今计算机网络的高速发展及普及度的进一步加强,越来越多的人希望通过在家实现存取款或是通过上网实现网上银行的功能等。在这样的趋势下,明显可以看出现今的银行储蓄系统不能够满足人们日益增长的需求,为提高该银行的存取款工作效率,降低工作的人力、物力开支,提高工作的准确性、正确性,并且便于用户信息存取,需要建立一个新的、高效的、方便的、互联的银行系统。 特别是银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件系统来实现快速、有效、准确、安全的处理银行事物。 随着这些问题的出现,银行的管理模式也要随着时代不断发展进步,为实现人们方便省时的办理银行储蓄业务,亟待开发一个银行系统来缓解甚至解决这些问题。1.2 选题背景及研究内容1.2.1课题背景据调查研究,国外系统已经支持大集中模式的系统建设、产品开发和统一的客户服务,以客户为中心的设计理念,将客户信息作为独立的系统模块,设计专门的客户服务系统对客户信息进行专门的管理;参数化驱动的产品开发,将市场上成熟的业务产品按基本要素进行抽象,提取相同的部分作为参数,通过参数配置进行新产品的定制;提供多渠道全方位的个性化服务,丰富服47西安工业大学毕业设计(论文)务内容,提升服务质量,满足客户的个性化需求;724小时全天候服务,通过系统的结构化设计,避免服务渠道的冲突;适应业务分析和管理决策需求,通过完整记录的客户信息和产品信息,为银行的分析、决策系统提供强有力的数据支持;在产品、客户、账户、交易等各个层面实现集成的、业务模块间交叉的风险管理和监控。 但国内产品主要符合国内银行的实际情况,开发过程通常采用原型开发,用户在项目开发是,就对系统有了初步的认识。能够很好的使用国内现有业务,但对未来可能发展的银行业务的支持能力较弱。另外,国内产品的文档质量不高产品化程度较弱,给产品的学习、维护和升级带来了不方便。随着中国金融市场的开放,和国际金融体接轨。对于成立时间较晚的股份制银行,竞争压力大,对发展新型业务需求强烈,会选用国外成熟的核心业务产品,能够较好的满足未来银行业务发展的要求。因此国内必须在学习国外先进技术之外,提升自己的核心系统。1.2.2课题研究内容本系统研究的是基于WEB的银行柜员系统,根据现在商业银行的规定,采用分布式的方式进行系统分析和设计。从而提高银行柜员的操作效率,并更加方便的对银行的账务系统进行很好的控制,并对多个服务进行拆分,达到每个数据的交互到达原子性。这提高系统的本身性能,达到交易量大,执行速度高,出错率低的原则。本课题有三个应用组成,分别为Teller(页面的展示层),ESB(负责路由转发),SYMBOLS(主要处理银行系统的账务)。功能模块:开户,存款,取款,转账,挂失,解挂,冻结账户,解冻账户。查询账户信息。2 银行柜员系统介绍2 银行柜员系统介绍2.1系统描述 银行系统是一款含有数据库的软件系统,通过网络将各个客户端连接起来,可以为银行提供一体化的办公,管理,业务更改,业务办理,业务查询功能,并为银行客户提供各种查询的操作2.2 用户特点基本要求:使用本系统的用户为银行职员(普通职员、行长、出纳、贷款审批员、贷款发放员、信用卡审批员、信用卡客服工作人员、数据操作员、系统管理员等),该部分用户能熟练操作计算机,至少具一定的计算机应用水平,用户对柜面平台系统的使用频度为8小时/天,但是其他时间银行系统仍需要正常运行,提供给用户ATM存取款功能的系统的工作强度应达到7*24小时,并且保证几乎0%的故障率。具体使用要求: 银行系统管理员(包括系统管理员和行长):具有较高的的管理水平和计算机操作水平,能够熟练进行鼠标、键盘操作。管理银行系统的业务员的相关信息,并且拥有对于银行核心业务如利率调整等进行修改和审批的权限。 银行系统工作人员(包括出纳、贷款审批员、贷款发放员、信用卡审批员、信用卡客服工作人员、数据操作员):具有较高的业务水平和教育水平,可以在7天的培训中掌握银行系统的操作方法。管理银行顾客的相关信息,并且为银行顾客提供创建帐号、存款、取款、办理信用卡、贷款、开通网上银行、贷款审批、信用卡审批等服务。 银行客户:可以清楚描述自己的业务需求,或者有一定的文化基础、可以利用网络浏览器直接登录网上银行,修改自己的密码,并查询自己的相关交易信息,进行查询、转账操作,进行网上消费。西安工业大学毕业设计(论文)2.3业务流程系统业务流程:1. 银行有多个分支机构。每个分支机构位于一个特定的城市,由唯一的名字标识。银行监控每个分支机构的资产。2. 银行的客户由个人的ID号来标识。银行需存储每个客户的姓名及家庭地址。客户可以有账户,并且可以贷款。3. 银行员工也由银行给他们设置特定的Emloyee_ID来标识。银行管理机构存储每个员工的姓名、电话号码、家庭住址,月薪等个人信息。银行还需知道员工开始工作日期,由此可以推知员工的雇用期。4. 银行提供两种账户:支票账户和储蓄账户。账户可以由两个或两个以上的客户共有,一个客户也可以同时拥有多个账户。每个账户被赋予唯一的账号。银行记录每个账户的余额及创建时间,最近访问时间。另外每个储蓄存款账户有其利率,而每个支票账户尤其透支额。5. 每笔贷款由某个分支机构发放,能被一个或多个人共有。一笔贷款用一个唯一的贷款号标识。银行需要知道每笔贷款的金额以及逐步支付的情况。记录每次付款的的时间及金额。6. 银行还可以有关于某一天或某一段时间内银行的业务情况的记录,即全部客户和银行之间的交易记录,每条记录以唯一的流水号标识。2.4 开发原则1. 统一帐薄,所有帐务集中到后台主机处理。2. 综合柜员,大量采用集成交易。3. 可扩展性,系统设计模块化,接口标准化,扩展灵活、方便。4. 可维护性,大量采用自动生成工具,开发、维护简单。5. 可隔离性,各业务子系统围绕一个核心,相对独立;各交易围绕业务子系统,互不影响。3 银行柜员系统需求分析3银行柜员系统需求分析3.1系统概述综合业务管理平台采用B/S架构,分布式进行部署。用户可通过局域网内的PC机采用浏览器的方式访问系统。通过管理不用的数据源,管理平台可以进入不同的交易界面。平台主要功能是处理和管理业务平台的数据、系统配置、人员、业务交易等。本系统分为三个应用:Teller端,ESB服务路由,SYMBOLS核心记账。Teller端:实现对柜员输入数据的接收,并将数据通过socket发送到ESB。客户端是通过采集键盘消息、规定格式组包、建立连接服务器、断开连接等,实现对客户输入数据的接收,并将数据通过socket发送到ESB,可轻松实现查询、添加、修改、删除等功能。ESB端:企业服务总线,主要包括两个服务:原子服务和组合服务。接受到Teller端发送的数据,根据所接受的数据组合功能模块,并把需要的操作发给Bankcore。主要功能点:与前台挂接、与后台挂接、与第三方业务连接。SYMBOLS端:系统的核心,是系统的核心模块,其中包括以Oracle数据库位核心的核心数据库系统。该银行系统的绝大多数业务都要经过此核心模块的处理,所以要求该模块要具有极高的安全性能。本部分功能概要是接受消息队列传过来的消息,然后经过对消息的解析在得到相应的操作信息后由控制过程块对数据库进行操作。在操作完成后返回操作结果。核心业务系统被视为客户为中心的,集成了交易处理、产品创新、客户关系管理、风险管理和资本配置等多种应用组群的系统。3.2系统架构图西安工业大学毕业设计(论文)IE DBTellerSYMBOLSESBTomcatServlet1Servlet2Servlet3.Do serviceDo SUBservice1Do SUBservice2Do SUBservice3MQProcplsqlJAVA水电公司DBDB12313124567891011A服务原子服务组合服务服务码MQB步骤说明:(以水电公司缴纳水电费为例)1. 用户先通过输入IP地址、端口号进入登录系统,系统根据用户的权限显示相对应的用户权限的界面,然后用户通过IE界面进行缴纳水电费业务的操作,该消息通过Socket发送给Tomcat服务器进行编译,并发送一个服务码。2. Tomcat通过Sevlet对该消息进行编译,然后将编译的文件报文通过socket发送给ESB服务器。3. ESB服务器在收到该请求消息后,根据服务码将组合服务分解成SUBservice1 、SUBservice2、SUBservice3三种原子服务,执行该服务中的子服务SUBservice1进行存款,将存款请求通过Socket发送到消息请求队列。4. 服务端监听到消息请求队列的请求后,将请求消息从消息队列中提取出来。5. 对消息进行解析,并通过PL/SQL工具对数据库进行操作,由A变成B,并将结果返回;6. 将服务端操作结果返回给消息响应队列;7. subservice1监听到消息响应队列中返回的存款消息8. subservice2通过通知水电公司该用户已经进行缴纳水费;9. 水电公司给subservice2返回确认信息;10. (冲正服务):用户取消缴费,将冲正消息发送到消息队列;11. (冲正服务):处理完成冲正消息后,消息响应队列返回冲正结果给ESB中的subservice3;12. ESB将操作结果通过socket发送给Telller端;13. Teller将操作结果显示到界面上。3.3 功能需求 3.3.1 功能模块图分配权限系统用户是否登录操作模块中的数据查看基本数据客户操作权限管理员用户权限银行工作人员权限操作所有模块开户、销户存款、取款贷款是否分配分配签到、签退信息查询修改日终中间业务挂失解挂3.3.2 功能模块说明 签到/签退柜员在打开IE进入柜员签到界面后,需输入柜员信息进行签到操作,如输入自己专属的:机构编号、网点编号、柜员帐号、密码等并点击“签到”,签到完成之后才可以进行如存款、取款、转账、挂失、开户和销户等其他的各种银行业务的操作。柜员完成当天的业务,即移交平帐报告及交易清单后,必须返回到初始界面上进行签退操作,柜员在返回IE进入柜员签退界面后,仍需输入柜员信息,如输入自己的:机构编号、网点编号、柜员帐号、密码等并点击“签退”,签退完成之后该柜员当天的工作才真正结束,当确认所有的柜员完成签退操作后,该银行才正式打烊结束当天的营业。 存款/取款存款/取款:在账户存在的前提下,给客户提供存款业务和取款业务,这些都是在客户已经拥有了账户之后所能办理的业务。而根据客户的这些不同的需要,银行就开设了几类账户,如存款一般是储蓄账户,取款和存款同时有的一般为支票账户。 开户/销户开户、销户是银行的基本功能。客户无论是存款、取款还是贷款都必须有一个银行的账户。客户到银行建立账户,需本人身份证,电话号码和现住地址。根据客户的信息帮客户建立银行账户,并将数据存入数据库。当客户不需要银行账户时,可以帮客户进行账户注销服务。账户进行注销前必须保证账户余额为0。同时数据库里面的有关信息也会被停用。销户管理实现将银行客户所开立的网上银行账户进行注销,其信息将被删除,将不能再用这个卡办理业务。 贷款贷款业务又分为签约、发放、回收三个子业务。银行给客户提供贷款业务,首先银行根据客户申请贷款的资料判断客户是否为黑名单之内,根据客户贷款数目分析是否有偿还能力,和用户签订贷款合约。合约的内容包括贷款种类、币种、用途、数额、利率、期限和还款方式等内容,合约签完之后,银行即会一定期限内向贷款人根据合约内容发放贷款,之后,借款人必须在规定的时间内返还贷款以及利息。 信息查询查询是指用户从系统中查找出自己所要的数据信息。用户输入查询条件,系统会将符合这些条件的数据反映给用户。 中间业务是指银行在一般不需要动用自己或较少动用自己的资金的情况下,不以业务中的债权或债务人身份,而是以中间人的身份参与业务,替客户办理收付或其他委托事项,为客户提供各类金融服务并收取手续费的业务。涉及前台、esb、后台,其中后台系统实现各种基本数据的收集、存储,ESB完成统计和分析等功能,前台系统直接在农行的营业网点向客户提供多种不同种类的服务。 日终在执行了日终后,要对每个用户的账户金额进行利息计算,然后把执行消息通过TELLER,ESB,最后传送到COREDB中,进行用户账户信息的更改 挂失当用户丢失卡后,需要尽快挂失,使信用卡都会暂时处于无效状态,及时制止银行卡被盗刷,控制风险,减少银行卡遗失。挂失一般都要提书面挂失申请,需要到银行柜台去办理,在办理正式挂失后,应注意挂失生效时间和账户的资金变动情况。持卡人不承担挂失正式生效后背冒用的损失金额。 解挂当用户再次找到信用卡后,可以解除信用卡的挂失状态,使账户变为有效。信用卡解挂也必须到银行柜台处办理。如果正式挂失一段时间后,仍未找到信用卡,则可以重新办卡。4 银行柜员系统设计4银行柜员系统设计4.1 系统设计原则银行柜员系统设计的应遵循下面的原则:(1)功能齐全,安全稳定,可靠性高;(2)操作简便,运用灵活,实时性强,准确性高;(3)系统要具有海量的存储空间和快速的交换速度,自动及时地备份数;(4)对数据有多重保护措施,要有断电保护和异常情况的及时处理;(5)系统的安全保密性高,能防止非法的访问;(6)输入数据简单方便,提供实时帮助功能,输入数据既有安全保护,也可动态修改;(7)输出的数据格式符合标准要求,输出操作简洁快速,输出数据要提供纸质和电子报表,输出的数据能以与其它软件相兼容的格式导出。(8)要求系统在出现故障时能尽口丁能给出较为明确的出错提不及解决方法,系统应具有必要的错误保护机制。(9)统一帐薄,所有帐务集中到后台主机处理。(10) 综合柜员,大量采用集成交易。(11) 可扩展性,系统设计模块化,接口标准化,扩展灵活、方便。(12)可维护性,大量采用自动生成工具,开发、维护简单。(13)可隔离性,各业务子系统围绕一个核心,相对独立;各交易围绕业务子系统,互不影响。西安工业大学毕业设计(论文)4.2 数据库设计4.2.1 设计原则与约束 (1)数据库SID是唯一标志数据库的符号,命名长度不能超过10个字符。 (2)数据库连接类型选择采用MTS类型。 (3)为了使数据库能够正确支持多国语言,必须配置合适的数据库字符集,采用UTF8字符集。 (4)在Oracle10G数据库中,设计Undo表空间取代以前版本的回滚段表空间。 Undo表空间大小的设计规范由以下公式计算:Undospace = UR * UPS *db_block_size+ 冗余量UR:表示在undo中保持的最长时间数(秒),由数据库参数UNDO_RETENTION值决定。UPS:表示在undo中,每秒产生的数据库块数量。在数据库中保留2小时的回退数据,假定每小时产生200个数据库块。则Undospace = 2 * 3600 * 200 * 4K = 5.8G(5)数据库临时段表空间根据实际生产环境情况调整其大小,表空间属性为自动扩展。(6)数据库临时段表空间根据实际生产环境情况调整其大小,表空间属性为自动扩展。4.2.2 数据库表设计原则标准化和规范化 数据的标准化有助于消除数据库中的数据冗余。标准化有好几种形式,但Third Normal Form(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好平衡。简单来说,遵守3NF 标准的数据库的表设计原则是:“One Fact in One Place”即某个表只包括其本身基本的属性,当不是它们本身所具有的属性时需进行分解。表之间的关系通过外键相连接。它具有以下特点:有一组表专门存放通过键连接起来的关联数据,即:表内的每一个值都只能被表达一次。表内的每一行都应该被唯一的标识(有唯一键)。表内不应该存储依赖于其他键的非键信息。命名规范不同的数据库产品对对象的命名有不同的要求,因此,数据库中的各种对象的命名、后台程序的代码编写应采用大小写敏感的形式,各种对象命名长度不要超过30个字符,这样便于应用系统适应不同的数据库。数据的一致性和完整性实体完整性:主键参照完整性:父表中删除数据:级联删除;受限删除;置空值父表中插入数据:受限插入;递归插入父表中更新数据:级联更新;受限更新;置空值DBMS对参照完整性可以有两种方法实现:外键实现机制(约束规则)和触发器实现机制。用户定义完整性:NOT NULL;CHECK;触发器数据库表空间设计原则表空间大小定义原则:当表空间大小小于操作系统对最大文件限制时,表空间由一个文件组成。如果表空间大小大于操作系统对最大文件限制时,该表空间由多个数据文件组成,表空间的总大小为估算为:Tablespace + sum (数据段+索引段)*150%。表空间扩展性设计原则:表空间数据文件采用自动扩展的方式,扩展容量快大小按2的整数倍(1M、2M、4M、8M、16M、32M、64M)进行扩展,创建表空间时尽量采用nologing选项。表空间的最大限制一般采用unlimited,除非确切知道表空间数据文件的最大使用范围。(一般windows 位系统的文件最大,位的unix系统系统文件最大G,也要注意文件格式设定的文件大小),建议最大为2G。表空间采用local管理方式。4.2.3 安全设计管理默认用户在生产环境中,必须严格管理sys和system用户,必须修改其默认密码,禁止用该用户建立数据库应用对象。删除或锁定数据库测试用户scott。数据库级用户权限设计必须按照应用需求,设计不同的用户访问权限。包括应用系统管理用户,普通用户等,按照业务需求建立不同的应用角色。用户访问另外的用户对象时,应该通过创建同义词对象synonym进行访问。角色与权限确定每个角色对数据库表的操作权限,如创建、检索、更新、删除等。每个角色拥有刚好能够完成任务的权限,不多也不少。在应用时再为用户分配角色,则每个用户的权限等于他所兼角色的权限之和。应用级用户设计应用级的用户帐号密码不能与数据库相同,防止用户直接操作数据库。用户只能用帐号登陆到应用软件,通过应用软件访问数据库,而没有其它途径操作数据库。用户密码管理用户帐号的密码必须进行加密处理,确保在任何地方的查询都不会出现密码的明文。4.2.4 数据库逻辑设计 本系统分为三个应用,对应有三个数据库(Teller,ESB,SYMBOLS)。 TELLER业务 ESB端:SYMBOLS端:4.2.5 数据库物理设计 teller 设计.1 柜员信息表表名 power_user序号字段名字段类型字段说明字段描述1idvarchar(16)主键柜员编号2usernamevarchar(50)柜员名字3passwordvarchar(50)not null登陆密码4ch_namevarchar(15)中文名字5en_namevarchar(15)英文名字6cellphonevarchar(50)电话7inusechar(50)登录状态.2 角色表表名power_role序号字段名字段类型字段说明字段描述1idvarchar(16)主键角色编号2parentidvarchar(50)not null父类编号3namevarchar(50)角色名称4descriptvarchar(16)not null角色描述5inusevarchar(20)角色状态.3 功能表表名power_function序号字段名字段类型字段说明字段描述1idvarchar(16)主键角色编号2namevarchar(50)not null功能服务名称3descriptvarchar(50)功能描述4menu_or_eventvarchar(16)not null菜单事件5inusevarchar(20)角色状态.4 用户角色表表名power_userroleref序号字段名字段类型字段说明字段描述1useridvarchar(16)外键用户编号2roleidvarchar(50)外键角色编号.5 菜单信息表 表名power_menu序号字段名字段类型字段说明字段描述1idvarchar(16)主键用户编号2parentidvarchar(50)父类编号3namevarchar(30)菜单名称4descriptvarchar(50)描述5urlvarchar(20)菜单路径.6 功能菜单对照表表名power_functionmenuref序号字段名字段类型字段说明字段描述1functionidivarchar(10)主键,外键功能编号2menuidvarchar(10)主键,外键菜单编号.7 角色功能对照表表名power_rolefunctionref序号字段名字段类型字段说明字段描述1roleidvarchar(10)主键,外键角色编号2functionidvarchar(10)主键,外键功能编号.8 机构信息表表名teller_organ序号字段名字段类型字段说明字段描述1idvarchar(10)主键机构编号2namevarchar(20)机构名称3addressvarchar(50)机构地址4parentidvarchar2(10)父类编号5statevarchar2(2)机构状态6org_levelvarchar2(2)机构级别.9 网点信息表表名teller_netpoint序号字段名字段类型字段说明字段描述1idvarchar(10)主键网点编号2namevarchar(20)网点名称3addressvarchar(50)网点地址4statevarchar2(2)网点状态.10 机构网点对照表表名teller_organnetpointref序号字段名字段类型字段说明字段描述1orgidvarchar(10)外键机构编号2netidvarchar(10)外键网点编号.11 网点柜员对照表表名teller_organnetpointref序号字段名字段类型字段说明字段描述1netidvarchar(10)外键网点编号2telleridvarchar(10)外键柜员编号.12 柜员签到表表名teller_register_out序号字段名字段类型字段说明字段描述1idvarchar(10)主键编号2orgidvarchar(10)外键机构编号3netidvarchar(10)外键网点编号4telleridvarchar(10)外键柜员编号5workdayvarchar(8)工作日期6statevarchar(2)状态.13 柜员流水信息表表名teller_sequence序号字段名字段类型字段说明字段描述1sequence_novarchar(10)主键流水号2esb_sequence_novarchar(10)esb流水号3serviceidvarchar(10)服务编号4amtvarchar(17)交易金额5cruennt_accountvarchar(17)当前账户余额6target_acountvarchar(17)目标账户余额7workdayvarchar(8)交易日期8detail_timevarchar(14)交易时间9telleridvarchar(10)柜员编号10is_sendvarchar(2)是否发送11reserve_statevarchar(2)是否冲正12is_succesvarchar(2)是否成功 esb设计.1 esb参数表表名esb_param序号字段名字段类型字段说明字段描述1param_idvarchar(10)主键参数编号2param_namevarchar(20)参数名称3param_typevarchar(2)参数类型4param_valuevarchar(10)参数值.2 服务定义表表名esb_param序号字段名字段类型字段说明字段描述1service_idvarchar(10)主键服务码2service_classsvarchar(20)服务类3service_methodvarchar(20)服务方法.3 esb流水表表名running_esb序号字段名字段类型字段说明字段描述1running_timevarchar(14)主键运行时间2workdayvarchar(8)日期3crennt_timevarchar(14)当前时间running_frontvarchar(14)运行前流水号running_backvarchar(14)运行后流水号service_idvarchar(10)服务码4amtvarchar(17)交易金额5cruennt_accountvarchar(17)当前账户余额6target_acountvarchar(17)目标账户余额10send_statevarchar(2)发送状态11return_statevarchar(2)返回状态12reverse_statevarchar(2)冲正状态 symbols 设计.1 科目定义表表名core_productdefine序号字段名字段类型字段说明字段描述1product_idvarchar(10)主键产品编号2product_namevarchar(20)产品名称3ratevarchar(9)利率4basedayvarchar(9)基本天数5credittypevarchar(2)产品类型6ccyvarchar(6)币种7product_statevarchar(2)产品状态.2 服务定义表名service序号字段名字段类型字段说明字段描述1service_idvarchar(10)主键服务码2service_classvarchar(20)服务类3service_methodvarchar(20)服务方法.3 账户信息表表名core_accounting_entry序号字段名字段类型字段说明字段描述1idvarchar(10)主键序号2runningvarchar(20)流水号3subject_idvarchar(10)科目编号4workdayVarchar(8)工作日期5FlagVarchar(2)标记6AccountVarchar(19)账户7CcyVarchar(3)币种.4 账户交易表表名core_account_msg序号字段名字段类型字段说明字段描述1Msg_numbervarchar(19)帐号2Msg_namevarchar(20)账户名称3Msg_type varchar(2)消息类型4Msg_balanceVarchar(17)账户余额5Msg_stateVarchar(2)状态6Msg_pwdVarchar(20)账户密码7currnet_timeVarchar(14)当前时间8Product_idVarchar(10)产品编号9IntegalVarchar(17)积分.5 客户信息表表名core_customer_msg序号字段名字段类型字段说明字段描述1Msg_numbervarchar(19)帐号2Msg_namevarchar(20)账户名称3sex varchar(2)性别4NationVarchar(10)种族5BirthdayVarchar(14)出生日期6Phone_numberVarchar(11)联系电话7BodyidVarchar(30)身份证号8AdressVarchar(50)地址9Cur_timeVarchar(14)当前时间.6 核心交易流水表名core_customer_msg序号字段名字段类型字段说明字段描述1Msg_numbervarchar(19)帐号2Msg_namevarchar(20)账户名称3sex varchar(2)性别4NationVarchar(10)种族5BirthdayVarchar(14)出生日期6Phone_numberVarchar(11)联系电话7BodyidVarchar(30)身份证号8AdressVarchar(50)地址9Cur_timeVarchar(14)当前时间.7 核心参数表名core_param序号字段名字段类型字段说明字段描述1Param_idvarchar(10)主键参数编号2Param_namevarchar(20)参数名称3Param_typevarchar(2)参数类型4Param_valueVarchar(17)参数值5Msg_stateVarchar(2)状态6Msg_pwdVarchar(20)账户密码7currnet_timeVarchar(14)当前时间8Product_idVarchar(10)产品编号9IntegalVarchar(17)积分4.3系统功能模块设计 系统功能模块设计分为两部分,一部分是应用模块设计,另一部分则是业务功能模块设计。4.3.1应用模块设计介绍本系统TELLER应用,ESB应用,SYMBOLS应用。 TELLER应用设计Teller端主要是实现对柜员输入数据的接收,并将数据通过socket发送到ESB。客户端是通过采集键盘消息、规定格式组包、建立连接服务器、断开连接等,实现对客户输入数据的接收,并将数据通过socket发送到ESB,可轻松实现查询、添加、修改、删除等功能。Teller端实现了页面的展示。1.输入界面:2.根据用户名,密码经过权限角色验证成功后登录到主页3.柜员登录系统后,进行签到。只有签到后才能进行正常的交易。此时柜员就可以进行营业工作了。 ESB应用设计ESB:企业服务总线,主要包括两个服务:原子服务和组合服务。接受到Teller端发送的数据,根据所接受的数据组合功能模块,并把需要的操作发给Bankcore。主要功能点:与前台挂接、与后台挂接、与第三方业务连接。详细描述:(1) ESB从teller端获取服务码到ESB,在ESB端进行服务判断。(2) 如果是原子服务则直接传递服务码到SYMBOLS。(3) 如果是组合服务则拆分成原子服务,进行传递。(4) 执行操作。(5) 记录流水。(6) ESB到SYMBOLS通信使用JMS SYMBOLS应用设计SYMBOLS是系统的核心,是系统的核心模块,所有的账务处理都在此应用。其中包括以Oracle数据库位核心的核心数据库系统。该银行系统的绝大多数业务都要经过此核心模块的处理,所以要求该模块要具有极高的安全性能。本部分功能概要是接受消息队列传过来的消息,然后经过对消息的解析在得到相应的操作信息后由控制过程块对数据库进行操作。在操作完成后返回操作结果。核心业务系统被视为客户为中心的,集成了交易处理、产品创新、客户关系管理、风险管理和资本配置等多种应用组群的系统。4.3.2 业务功能模块设计 开户.1 界面.2 流程图ieTomcatservletProcPl/sqlJAVA请求消息队列返回消息队列Teller ESBCoreBankTeller DBESB DBCore DB服务码 (13)(11)(12)(14).3 具体描述(1)柜员将开户客户的信息录入系统后,点击提交,填入的信息通过socket通道传到Teller端,调用对应的servlet方法 ;(2)调用存储过程在teller端的数据库中记流水;(3)再将开户的信息通过socket管道传到ESB端;(4)调用存储过程在ESB端的数据库中记录流水,ESB通过调用存储过程接收到的开户的交易码对照拆分表,判断开户服务为原子服务,则不用拆分;(5)将开户需要调用的存储过程传到请求消息队列;(6)再将请求消息队列中的消息传到CoreBank端,被java类接收,通过调用存储过程记录流水;(7)执行存储过程查看用户的状态,进行开户交易;(8)通过执行存储过程修改数据库中的账户信息表中账户的状态,调用存储过程填写凭证表,执行完后再调用存储过程修改流水状态;(9)将结果返回消息队列;(10)从返回消息队列返回到ESB端;(11)通过调用存储过程修改流水状态;(12)将结果通过socket管道返回到teller端;(13)通过调用存储过程修改流水状态;(14)将最终结果通过http的形式返回到ie界面显示。 存款主要处理用户的账户存入功能。.1 界面.2 流程图.3 具体描述 记流水:获取页面信息调用存储过程往表里添加数据系统时间,系统流水号,状态,工作日交易码。 发送数据到ESB端 修改流水:得到ESB端发过来的数据调用存储过程根据流水号修改表它的状态为成功并将数据发送到IE端。 记流水:ESB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论