银行发票管理系统分析与设计毕业论文.doc

上传人:哈尼dd 文档编号:3975579 上传时间:2019-10-11 格式:DOC 页数:30 大小:2MB
返回 下载 相关 举报
银行发票管理系统分析与设计毕业论文.doc_第1页
第1页 / 共30页
银行发票管理系统分析与设计毕业论文.doc_第2页
第2页 / 共30页
银行发票管理系统分析与设计毕业论文.doc_第3页
第3页 / 共30页
银行发票管理系统分析与设计毕业论文.doc_第4页
第4页 / 共30页
银行发票管理系统分析与设计毕业论文.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《银行发票管理系统分析与设计毕业论文.doc》由会员分享,可在线阅读,更多相关《银行发票管理系统分析与设计毕业论文.doc(30页珍藏版)》请在三一文库上搜索。

1、2008 届本科生毕业论文(设计) 银行发票管理系统 姓 名叶乃宝 学 号 20084070418 专 业信息管理与信息系统 指导教师王健 2012 年 5 月 25 日 I 摘 要 随着中国加入世贸组织以来,中国市场完全允许境外的外资银行进入,国内银行面 临着越来越大的压力,提高金融服务质量,成为银行发展的重要挑战之一,好的金融产 品已经成为银行发展的的重要基础,金融软件成为最有力的 IT 增长点。随着金融产品 的不断发展,其不断改变的业务需求也在发生着变化,如何面对着业务不断扩展不断改 变,成为金融软件行业面对的巨大挑战。 银行发票管理系统采用银行普遍采用的 J2EE 架构,在传统的 B/

2、S 加构基础上应该 前端流行的 AJAX 技术客户端功能,通过预定义接口实现与银行其它系统实现集成,结 合 J2EE 架构的扩展性及 SPRING 中的织入功能,完成其与综合业务系统的无缝集成, 同时达到事务管理的目的,最终形成一个具备发票入库,开具,汇总的一个综合发票管 理平台。 关键词:J2EE;B/S;SPRING;发票管理;银行 II Abstract With Chinas accession to the world trade organization, China has completely allowed the foreign Banks of outside to en

3、ter into our market. Domestic Banks are facing increasing pressure.The one of important challenges of banks development is to improve the financial service quality. Good financial products has become the important basis of the banks development and financial software has become the most powerful IT

4、growth point. With the continuous development of financial products, the changing business demand is also changing. How to face the business expanding and continually changing, become the great challenge of financial software industry. Bank of invoice management system uses J2EE that is widely used,

5、in the traditional based on B/S structure with front popular AJAX technology client function, through the predefined interface implementation intergrate with other bank systems. And combined with the J2EEs scalability of the purchase and the SPRINGs organization function, complete with its comprehen

6、sive business system of seamless integration. At the same time to the purpose of the transaction management. Finally formed an invoice management platform that could put in storage, issued a comprehensive summary of invoice. Key Words: J2EE,B/S,SPRING,INVOICE, BANK III 目目 录录 1 引 言.1 2 系统分析2 2.1 系统环境

7、调查.2 2.2 系统可行性研究.2 2.2.1 系统目标2 2.2.2 系统边界2 2.3 系统详细调查.2 2.3.1 发票业务流程分析2 2.3.2 管理需求3 2.3.3 良好的用户界面3 2.3.4 业务流程图3 2.4 系统逻辑模型提出.5 2.4.1 数据流程图5 3 系统设计7 3.1 系统环境.7 3.1.1 系统开发环境及平台 .7 3.1.2 系统运行环境7 3.1.3 系统技术简介7 3.2 系统概要设计.10 3.2.1 系统总体结构图10 3.2.2 系统 IPO 图 11 3.3 系统详细设计.12 3.3.1 系统部分 E-R 图.12 3.3.2 数据库设计1

8、2 3.3.3 用户交互界面设计15 3.3.4 部分模块配置21 3.4 系统测试.23 结 论24 参考文献 .25 致 谢26 1 1 引引 言言 发票是财务收支的法定凭证,是会计核算的原始凭证,是税务稽查的重要依据。目 前许多企业中发票的管理及打印还是采用人工处理模式,不但效率低下,而且导致企业 的内控存在风险。 本系统可以帮助提高发票管理效率,控制管理中存在的风险。 银行发票管理信息系统会记录每一张销货发票的状态、流向以及开具在发票上的客 户信息、货品信息等各项主要信息内容,直到发票存根的回收和存放,并能够对所开具 发票进行鸟瞰式的统计分析,实现横向有效集成,纵向层层渗透,为实现数据

9、统计,以 及监测发票的整个生命周期提供有力的保障,从而实现对发票进行全生命周期管理的目 标。发票管理人员也可以随时查阅纳入本系统管理的发票信息,监控发票资源的使用情 况,跟踪管理发票资源在整个生命周期内的状态变化,准确掌握各个开票点的各类发票 使用情况,并以此为依据更好地对发票资源进行管理。 2 2 系统分析 2.1 系系统统环环境境调调查查 系统环境初步调查主要采用方式:主要通过在网上查询一些类似的银行发票及票据 管理系统的需求情况,以及银行机构设置,了解他们的信息需求。经网上查询,了解到 类似农村信息社的基本情况如下: 农村信用合作社是银行类金融机构,与其它银行不同的是的构成上是以由农民入

10、股 组成,实行入股社员民主管理,主要为入股社员服务的合作金融组织,是经中国人 民银行依法批准设立的合法金融机构。信联社与单个信用社的关系,就相当于总行 与支行的关系。农村信用社的管理权归省政府,省政府又成立了省联社,省联社管 着县联社。 银行可通过发票管理系统能够对所开具发票进行鸟瞰式的统计分析,实现横向有 效集成,纵向层层渗透,为实现数据统计,以及监测发票的整个生命周期提供有力的保 障,从而实现对发票进行全生命周期管理的目标。 2.2 系系统统可可行行性性研研究究 2.2.1 系统目标 银行发票管理部门可以通过发票管理系统可以方便地进行发票的入库操作,领用及 跟踪,同时与其发生的经济业务关联

11、,可供财务人员及销售人员进行对照查阅。 2.2.2 系统边界 银行发票管理系统覆盖了银行发票所有相关的操作,包括相关不同类型发票的领用, 开具以及发票使用的统计报表生成。同时对于发票管理系统的权限设计,用户,操作员 的权限分配,机构设置等。 2.3 系系统统详详细细调调查查 2.3.1 发票业务流程分析 发票入库,出库,在途,经过领用的发票同步的综合业务系统中去。同时在进入入 库,出库时先进行申请单的填写,经上级主管部门同意审批后方可进行。同时可进行发 票状态的查询,及其相关的业务。 3 2.3.2 管理需求 可以对机构进行自定义操作,形成树状结构。可以进行管理员的分配,及其对发票 管理中的增

12、加,修改,删除,查询等各个权限的设置。 2.3.3 良好的用户界面 快速的反应时间,方面部署和使用,易于掌握。 2.3.4 业务流程图 对系统的详细调查是指对原企业的业务流程的调查,以及对其信息的流动作出适当 的分析。通过业务流程图来描述管理业务活动,进行规范划说明。 1登录:用户向操作员提供自己的信息,操作员通过查询档案,比对信息验证是否 能够进行相关操作。业务流程图如图 2-1 所示: 图 2-1 用户登录业务流程示意图 2操作员进行添加职工信息 。业务流程图如图 2-2 所示: 图 2-2 系统管理员创建系统职工业务流程示意图 4 3管理员从职工中添加一些操作员用于操作管理发票。业务流程

13、图如图 2-3 所示: 图 2-3 系统管理员创建操作员业务流程示意图 4管理员添加部门信息,如果管理员有此权限添加,则可以进行如上图 2-3 中添加 职工信息的业务流程图,同样,管理员添加信用联社分社等分支机构也是如上业务流程 进行。 5发票入库管理:即经库管理员审批后进行入库操作,即输入发票的起始编号,结 束编号,发票类型等来进行发票的入库。业务流程图如图 2-4 所示: 图 2-4 系统管理员入库业务流程示意图 6发票领用:即当发生经济业务时,需要从库管理员那里领取发票的行为,同时表 明经济业务,金额等业务信息。业务流程图如图 2-5 所示: 图 2-5 发票领用业务流程示意图 5 2.

14、4 系系统统逻逻辑辑模模型型提提出出 2.4.1 数据流程图 1用户登录:即用户通过操作员的编号,及其设定的密码输入后传递给后台进行验 证,通过比对账号密码信息,如果正确则返回主界面进行操作,如果错误,则返回登录 界面重新进行输入验证。数据流图如图 2-6 所示: 图 2-6 用户登录数据流程图 2职工管理:即操作员登录后先通过验证权限,然后进行员工的添加,信息的修改, 删除,查询等操作。如果没有此权限,则不能进行操作。数据流图如图 2-7 所示: 图 2-7 超级管理员添加职工信息数据流程图 3操作员管理:超级管理员可以添加操作员,其中操作员是从职工中选择的,然后 成为操作员,最后为操作员赋

15、一定的权限操作该系统。此部分涉及到操作员的启用,添 加,修改,删除(数据流图同图 2-6)。 4部门管理:对于银行内部的机构可以进行对应的添加,修改,删除等的管理,可 以方便的统计发票对应的部门,操作员所在的部门(数据流图同图 2-6)。 5机构管理:管理银行内部的省级联社,县联社等机构添加,修改等(数据流图同 图 2-6)。 6 6发票管理:发票的入库,领用,根据入库的发票开始结束编号进行入库操作,对 于领用流程,则根据经济业务信息填写生成发票领用后的信息。数据流图如图 2-8 所示: 图 2-8 管理员进行发票领用,发票入库数据流程图 7 3 系系统统设设计计 3.1 系系统统环环境境 3

16、.1.1 系统开发环境及平台 开发环境:Microsoft Windows7 开发环境要求:JDK1.6;JRE6 开发工具:eclipse3.7;maven2 数据库:oracle10g 中间件:tomcat6.0 开发语言:Java; 开发框架:freemarker+struts2+spring3.0+mybatis3.0+guice 字符编码:utf-8; 3.1.2 系统运行环境 Redhat 5 Oracle10g Weblogic10.3 3.1.3 系统技术简介 本系统主要是的计算机语言有 freemarker、javaScript、css、java、ajax、jquery。下

17、面就其中几项进行介绍。 1freemarker 介绍 FreeMarker 是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯 Java 编写,FreeMarker 被设计用来生成 HTML Web 页面,特别是基于 MVC 模式的应用程 序,虽然 FreeMarker 具有一些编程的能力,但通常由 Java 程序准备要显示的数据,由 FreeMarker 生成页面,通过模板显示准备的数据,FreeMarker 不是一个 Web 应用框架, 而适合作为 Web 应用框架一个组件,FreeMarker 与容器无关,因为它并不知道 HTTP 或 Servlet;FreeMarker 同样可

18、以应用于非 Web 应用程序环境,FreeMarker 更适合作为 Model2 框架(如 Struts)的视图组件,你也可以在模板中使用 JSP 标记库。 2Ajax 介绍 Ajax 即异步 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术。 Ajax 的核心是 JavaScript 对象 XmlHttpRequest。该对象在 Internet Explorer 5 中首次引入, 它是一种支持异步请求的技术。简而言之,XmlHttpRequest 使您可以使用 JavaScript 向 服务器提出请求并处理响应,而不阻塞用户。Ajax 技术之主要目的在于局部交换客

19、户 8 端及服务器之间的数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。通过 AJAX,因 特网应用程序可以变得更完善,更友好。 3Jquery 框架介绍 对于 web 前端开发来说,越来越多人使用 JS 框架来实现效果,其中以 jQuery 框架 的使用最普遍。jQuery 是一种让开发和设计者在他们的网页中添加交互内容的工具,它 的核心命令让你在网页中定位或创建对象并对之进行操作,它事实上是一种更容易使用 的 JavaScript,可以不必强迫页面刷新而对页面进行各种操作。 4guice 介绍 Guic

20、e 是 Google 开发的一个轻量级,基于 Java5(主要运用泛型与注释特性)的依 赖注入框架(IOC)。Guice 非常小而且快。Guice 是类型安全的,它能够对构造函数,属 性,方法(包含任意个参数的任意方法,而不仅仅是 setter 方法)进行注入。guice 简单 超轻量级的 DI 框架效率是 spring 的 100 倍,Spring 使用 XML 使用将类与类之间的关 系隔离到 xml 中,由容器负责注入被调用的对象,而 guice 将类与类之间的关系隔离到 Module 中,声名何处需要注入,由容器根据 Module 里的描述,注入被调用的对象,使 用 Annotation

21、 使用支持自定义 Annotation 标注,对于相同的接口定义的对象引用,为它 们标注上不同的自定义 Annotation 注释,就可以达到同一个类里边的同一个接口的引用, 注射给不同的实现,在 Module 里用标注做区分,灵活性大大增加。 5mybatis 介绍 MyBatis 的前身就是 iBatis 。是一个数据持久层框架。MyBatis 是支持普通 SQL 查 询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和 参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始 映射,将接口和 Java 的 POJOs(

22、Plain Old Java Objects,普通的 Java 对象)映射成数据 库中的记录。每个 MyBatis 应用程序主要都是使用 SqlSessionFactory 实例的,一个 SqlSessionFactory 实例可以通过 SqlSessionFactoryBuilder 获得。SqlSessionFactoryBuilder 可以从一个 xml 配置文件或者一个预定义的配置类的实例获得。用 xml 文件构建 SqlSessionFactory 实例是非常简单的事情。推荐在这个配置中使用类路径资源 (classpath resource),但你可以使用任何 Reader 实例,包

23、括用文件路径或 file:/开头的 url 创建的实例。MyBatis 有一个实用类 Resources,它有很多方法,可以方便地从类路 径及其它位置加载资源。 6struts2 介绍 Struts2 的简单处理流程如下:浏览器发送请求中心处理器根据 struts.xml 文件查找 对应的处理请求的 Action,WebWork 的拦截器链自动对请求应用通用功能,如果 Struts.xml 文件中配置 Method 参数,则调用 Method 参数对应的 Action 类中的 Method 9 方法,否则调用通用的 Execute 方法来处理用户请求,将 Action 类中的对应方法返回的 结

24、果响应给浏览器,其在 MVC 模式中起到的作用是 control 的作用,即控制。 7maven2 工具 对第三方依赖库进行统一的版本管理。只要用了 Maven2 就不用再为每个项目复制 spring.jar 和 hibernate.jar 了,Maven2 会在你需要的时候,自动把这些第三方依赖库找到, 你需要编译,Maven2 就把这些 jar 包放到 classpath 里,你需要打包,Maven2 就帮你把 需要的 jar 包都复制到 WEB- INF/lib/目录下。统一项目的目录结构。可以保证所有项目 的目录结构都是一样的,目录结构统一的好处就是,你要找源代码就去 src/main

25、/java/下, 你要找需要放到 classpath 下的资源,就去 src/main/resources/下,你要找单元测试对应的 代码和资源,就去 src/test/下。每个目录下放什么东西,程序编译,发布的时候,每个 目录起什么作用都很清楚明了,不会出现打开项目找不到要找的文件的情况。统一软件 构建阶段 Maven2 把软件开发的过程划分成了几个经典阶段,比如你先要生成一些 java 代码,再把这些代码复制到特定位置,然后编译代码,复制需要放到 classpath 下的资 源,再进行单元测试,单元测试都通过了才能进行打包,发布。以前使用 Ant,最令人 头疼的就是要为不同的项目写很多 b

26、uild.xml 脚本,而且这些脚本还不太通用,现在我 们可以使用 Maven2 提供的这些经典构建阶段,让每个项目就经过相同的步骤,从源代 码一步一步变成可以部署的成品。如果想要什么附加功能,把对应的插件绑定到一个构 建阶段上,那么到了执行这个构建阶段的时候,就会执行绑定的插件了。支持多种插件 在 http:/ http:/mojo.codehaus.org/上可以找到大量的 Maven2 插件, 通过这些插件可以完成多种多样的扩展功能。不过,如果比插件的易用性,Ant 的插件 实际上更简单方便,与之相比,在 Maven2 中配置插件的步骤太复杂了,既要配置 groupId 和 artifa

27、ctId,还要配置绑定在哪个阶段运行。不过因为 Maven2 可以把插件连同 第三方依赖一起进行统一版本管理,所以这方面也算比 Ant 有一点儿优势,至少使用时 不需要自己再去下载插件的发布包了。 8Weblogic 服务器 BEA WebLogic Server 是专门为企业电子商务应用系统开发的。企业电子商务应用 系统需要快速开发,并要求服务器端组件具有良好的灵活性和安全性,同时还要支持关 键任务所必需的扩展、性能、和高可用性。BEA WebLogic Server 简化了可移植及可扩 展的应用系统的开发,并为其它应用 系统和系统提供了丰富的互操作性。凭借其出色 的群集技术,BEA Web

28、Logic Server 拥有最高水平的可扩展 性和可用性。BEA WebLogic Server 既实现了网页群集,也实现了 EJB 组件 群集,而且不需要任何专门的 硬件或操作系统支持。网页群集可以实现透明的复制、负载平衡以及表示内容容错,如 Web 购物车;组件群集则处理复杂的复制、负载平衡和 EJB 组件容错,以及状态对象 (如 EJB 实体)的恢复。无论是网页群集,还是组件群集,对于电子商务解决方案所 10 要求的可扩展性和可用性都是至关重要的。共享的客户机/服务器和数据库连接以及数 据缓存和 EJB 都增强了性能表现。这是其它 Web 应用系统所不具备的。 3.2 系系统统概概要要

29、设设计计 3.2.1 系统总体结构图 根据系统分的结果,按照结构化的系统设计方法,发票管理信息系统从功能上可做 如下的子模块划分以 H 图如图 3-1 所示: 图 3-1 系统功能模块图 11 3.2.2 系统 IPO 图 1用户登录IPO图如图3-2所示: 系统名:银行发票管理系统制图者:yenaibao IPO图 日 期:模块名:用户登录 由下列模块调用:管理员及 操作员登录 调用下列模块: 输入:用户名,密码 处理内容:根据输入的内容,判断用户名密码是否正确,查询操作 员表进行验证 输出:用户管理界面 内部数据元素: 备注: 图 3-2 用户管理模块输入输出图 2发票管理 IPO 图如图

30、 3-3 所示: 系统名:银行发票管理系统制图者:yenaibao IPO图 日 期:模块名:发票管理 由下列模块调用:职工信息添加, 修改,删除 调用下列模块: 输入:发票起始编号,结束号, 发票类型(普通,专用) 处理内容:根据输入 的开始结束编号及类型自动生成发票信息,即 为入库操作,当领用时,对其发票状态进行修改,同时关联其具体 交易事项,当操作为汇总发票时,可以根据发生变易时间进行统计, 也可根据发票类型,交易类型进行统计。 输出:操作结果信息 图 3-3 发票管理模块输入输出图 12 3.3 系系统统详详细细设设计计 3.3.1 系统部分 E-R 图 包括 职工,部门,机构,操作员

31、,发票,发票类型。如图 3-4 所示: 职工表 状态 员工编号 证件类型 证件编号 描述 银行卡号 机构编号 部门编号备注 部门 部门编号 部门名称上级联社 所属机构名称 状态 部门管理人员 电话 部门管理人员 姓名 备注 拥有 1 M 发票 发票编号 发票代码 发票类型名称 交易事项 交易时间 交易价格 信息码 企业名称 发票类型 发票类型 发票类型编号 属于 1 1 图 3-4 系统部分 ER 图 3.3.2 数据库设计 1系统表结构关系图,如图 3-5 所示: 图 3-5 系统表结构关系图 13 2表结构如下: 表 3-1 为员工信息表,存储着员工的基本信息。 表 3-1 员工信息表 列

32、名数据类型长度是否为空注释 STAFF_IDVARCHAR236 否标识 STAFF_NOVARCHAR236 否编号 ID_TYPEVARCHAR236 否证件类型 ID_NOVARCHAR236 否证件编号 DESCVARCHAR260 是职位描述 CREDIT_NOVARCHAR220 否借记卡编号 ORG_NOVARCHAR236 否机构编号 DEP_NOVARCHAR236 否部门编号 STATUSVARCHAR22 否状态 FILTERVARCHAR2100 是备注 表 3-2 为操作员表,存储着操作员基础信息表。 表 3-2 操作员表 名称类型长度是否为空注释 OPER_IDVA

33、RCHAR236 否标识 OPER_NOVARCHAR236 否操作员编号 ORG_NOVARCHAR236 否机构编号 DEP_NOVARCHAR236 否部门编号 STAFF_NOVARCHAR236 否职工编号 PASSWORDVARCHAR236 否密码 表 3-3 为部门表,存储着部门基础信息表。 表 3-3 部门表 名称类型长度是否为空注释 DEP_IDVARHCAR236 否标识 DEP_NOVARHCAR236 否编号 NAMEVARHCAR220 是名称 UP_DEP_NOVARHCAR236 否上级联社编号 ORG_NOVARHCAR236 否机构编号 MANGERVARH

34、CAR220 是管理者姓名 PHONEVARHCAR212 是电话 STATUSVARHCAR22 否状态 14 FILLERVARHCAR2100 是备注 表 3-4 为组织机构表,存储着组织机构基础信息表。 表 3-4 组织机构表 ORG_IDVARHCAR236 否标识 ORG_NAMEVARHCAR220 是机构名称 ORG_NOVARHCAR236 否机构编号 ORG_PLACEVARHCAR220 是机构所在地址 FILLERVARHCAR2100 是备注 表 3-5 为发票表,存储着发票基础信息表。 表 3-5 发票表 名称类型长度是否为空注释 INVOICE_IDVARHCAR

35、236 否标识 INVOICE_NOVARHCAR236 否发票编号 INVOICE_CODEVARHCAR220 否发票代码 INVOICE_INFOCODEVARHCAR220 否发票信息代码 INVOICE_COMPANYVARHCAR220 是开票机构 INVOICE_PRICEINT5 否发票金额 INVOICE_DATAVARHCAR215 是开票日期 INVOICE_GOODSVARHCAR220 是发票交易事件 INVOICE_STATEVARHCAR22 否发票状态 INVOICE_OPER_IDVARHCAR236 否发票操作员 15 3.3.3 用户交互界面设计 1用户登

36、录页面: 如图 3-6 表示的是操作员登录界面图 图 3-6 用户登录界面图 通过输入用户名,密码,对于密码进行 md5 加密码对数据库进行查询,如果结果 数量大于 0,则为正确,即为验证通过,跳转到首页。如果不相同,则验证实现给出提 示信息,其具体实现代码如下,其中“operation.validate”为相应的 mybatis 对应的 sqlId,调用 mybatis 接口进行查询。 /* * 验证用户信息 * param operNo * param password * return */ public static boolean validate(final String oper

37、No,final String password) SuppressWarnings(“serial“) int count=ServiceContext. get(GeneralManager.class).queryData(“operation.validate“, new HashMap() put(“operNo“, operNo); put(“password“, password); ); 16 if(count0) return true; return false; 2职工管理界面 如图 3-7 表示的是职工管理界面图 图 3-7 职工管理界面图 对于职工信息进行增删改,点击

38、创建弹出创建职工信息框,进行输入对应的职工的 信息,点击 OK 进行保存,其具体实现代码如下:双击某一行,即选中某行的职工进行 查询 getStaff方法,然后跳出编辑界面。点击保存时,即进行 add 操作,如果其 ID 不为 空,则即为更新,如果为空,则进行保存操作。点击删除按钮时,则进行 delete 操作, 根据 ID 删除一条记录。 查询某个职工 public Staff getStaff(final String id) throws ManagerException return (Staff) this.strategy.queryList(“query.staff“,new H

39、ashedMap() put(“id“, id); ).get(0); 添加职工信息 public Staff addStaff(Staff staff) / TODO Auto-generated method stub / TODO Auto-generated method stub 17 staff.setId(UUIDGenerator.create(); this.strategy.insert(“insert.staff“, staff); return staff; 更新职工信息 public Staff updateStaff(Staff staff) throws Mana

40、gerException try this.strategy.update(“update.staff“, staff); catch (ManagerException e) / TODO Auto-generated catch block e.printStackTrace(); throw e; return staff; 删除职工信息 public void deleteStaff(final String id) throws ManagerException / TODO Auto-generated method stub / TODO Auto-generated metho

41、d stub this.strategy.delete(“delete.staff“, new HashMap() put(“id“, id); ); 3部门管理界面 如图 3-8 表示的是部门管理界面图 图 3-8 部门管理界面图 18 对于部门信息进行增删改,点击创建弹出创建部门信息框,进行输入对应的部门的 信息,点击 OK 进行保存,其具体实现代码如下:双击某一行,即选中某行的部门进行 查询 getDepartment方法,然后跳出编辑界面。点击保存时,即进行 add 操作,如果其 ID 不为空,则即为更新,如果为空,则进行保存操作。点击删除按钮时,则进行 delete 操作,根据 ID

42、 删除一条记录。 获取部门信息 public Department getDepartment(final String id) throws ManagerException return (Department) this.strategy.queryList(“query.department“, new HashedMap() put(“id“, id); ).get(0); 添加部门信息 public Department addDepartment(Department department) department.setId(UUIDGenerator.create(); thi

43、s.strategy.insert(“insert.department“, department); return department; 更新部门信息 public Department updateDepartment(Department department) throws ManagerException this.strategy.update(“update.department“, department); return department; 根据部门ID删除部门信息 public void deleteDepartment(final String id) throws

44、ManagerException this.strategy.delete(“delete.department“, new HashMap() put(“id“, id); 19 4操作员管理界面 如图 3-9 表示的是操作员管理界面图 图 3-9 操作员管理界面图 对于操作员信息进行管理,其中对于操作员的创建,其是从职工中进行选择,维持 着一个与职工表的关联,同时对其赋于密码,以便其进行系统的登录及管理。 获取操作员信息,以便用于修改 public Operator getOperation(final String id) throws ManagerException return (

45、Operator) this.strategy.queryList(“query.operation“, new HashedMap() put(“id“, id); ).get(0); 添加操作员信息 public Operator addOperation(Operator operator) operator.setId(UUIDGenerator.create(); operator.setPassword(PasswordUtil.encodePassword(operator.getPassword(),“md5“); this.strategy.insert(“insert.op

46、eration“, operator); return operator; 修改操作员信息(对密码进行md5加密) public Operator updateOperation(Operator operator) throws ManagerException operator.setPassword(PasswordUtil.encodePassword(operator.getPassword(),“md5“); this.strategy.update(“update.operation“, operator); return operator; 20 根据标识删除操作员信息 pub

47、lic void deleteOperation(final String id) throws ManagerException this.strategy.delete(“delete.operation“, new HashMap() put(“id“, id); ); 5发票管理界面 如图 3-10 表示的是发票管理界面图 图 3-10 发票管理界面图 根据标识获取发票信息 public Invoice getInvoice(final String id) throws ManagerException return (Invoice) this.strategy.queryList

48、(“query.invoice“, new HashedMap() put(“id“, id); ).get(0); 发票入库,即根据发票的开始编号,结束编号循环插入发票信息 public Invoice addInvoice(Invoice invoice,int startNo,int endNo) for(int i=startNo;i() put(“id“, id); ); 3.3.4 部分模块配置 1职工配置代码 通过guice注入实现类,达到解耦合的目的 Mybatis对应的sql语句如下: 查询职工信息 select s.staff_id,s.staff_no,s.id_type

49、,s.id_no,s.description, s.credit_no,s.status,s.filler, o.org_id,o.org_no,o.name, d.dep_id,d.dep_no,d.name from bank_staff s,bank_org o,bank_department d where s.org_no = o.org_id and s.dep_no=d.dep_id 22 and s.staff_id=#id 插入职工信息 insert into bank_staff values(#id,#staffNo,#idType,#idNo,#des ,#creditNo,#orgnization.id,#department.id,#status,#

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1