信息化企业合同管理系统的设计与实现
作者: 赵文博 赵西香 许永正
摘要:文章研究了基于Spring Cloud框架的信息化企业合同管理系统的设计与实现。该系统具有完备的合同管理功能模块,实现了信息化企业合同的全生命周期管理,提升了信息化企业合同管理效率和能力。系统采用MyBatis框架和达梦数据库,确保系统稳定运行和数据安全。同时,系统支持国产化软硬件环境,实现自主可控。
关键词:Spring Cloud;MyBatis;达梦数据库;国产化;自主可控
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2025)01-0068-05 开放科学(资源服务) 标识码(OSID) :
0 引言
21世纪以后,随着计算机网络技术的快速发展、数字化技术的日益成熟,企业网络信息技术办公依赖性加大。因此,如何更好地利用先进技术,促进企业长期高效发展,成为企业发展规划中不可忽视的重要课题。同时,在现代企业的经营管理中,合同管理工作也是关键的一环。有效加强合同管理工作,对于企业平稳发展至关重要,对有效提高企业效率举足轻重。但是在信息化企业的合同管理传统工作中,存在以下问题:
随着信息化进程的加快,企业对合同管理系统提出了更高的要求。传统合同管理模式存在灵活性差、成本高、数据孤岛、技术依赖和安全隐患等问题,严重制约了企业效率和发展。本文基于Spring Cloud、My⁃Batis和达梦数据库,设计并实现了一套信息化企业合同管理系统,旨在提升合同管理效率,解决数据孤岛问题,并实现技术自主可控,最终促进企业可持续发展,具体问题如下:
1) 灵活性差:其他合同管理系统可能无法较快实现企业复杂多变的业务需求,后期应用扩展、升级难度较大,系统性能无法充分发挥,用户功能使用受限。
2) 成本较高:企业关注的信息缺乏有效信息化手段,仅通过传统报表获取相应数据,导致企业部门间合作不紧密、不协调,业务流程的管控以及监管力度差、信息整合获取能力不足等问题的产生,使得企业办公成本上升、运营效率下降、企业办公成本越来越高等问题日益突出,企业部门之间的协作不紧密、协调性差。
3) 数据孤岛:一方面企业各部门所注重的信息缺乏有效的集成管理手段,仅通过传统报表的方式获取相应数据,导致企业部门间合作不紧密协调,业务流程管控及监管力度差、信息整合获取能力不足等问题的产生;另一方面,其他合同管理系统与不同系统之间无法实现数据共享以及集成。这些问题最终导致企业办公成本越来越高、经营效益越来越低、经营风险越来越大,企业的办公成本越来越高、经营效益越来越差。
4) 技术依赖:其他合同管理系统可能无法实现与国产数据库的适配,无法在完全国产化的环境进行稳定运行,不具有自主可控的能力,被国外技术卡住脖颈。
5) 安全隐患:其他合同管理系统可能不存在数据存储、数据备份、数据容灾等相关机制,系统数据的安全性存在严重隐患。
本文旨在以企业合同管理现状为出发点,以先进的管理理念为基础,结合实际贸易企业管理和业务部门运行情况,借助Spring Cloud框架、MyBatis框架和达梦数据库对企业合同管理系统进行架构分析。解决灵活性差、成本高、数据孤岛、技术依赖和安全隐患等问题,充分提升信息化企业的生存能力。
1 相关技术
1.1 Spring Cloud 框架
Spring Cloud 是一个有序的框架集合,利用SpringBoot的开发便捷性,简化了诸如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等分布式系统基础设施的开发。这些基础设施可以采用SpringBoot的开发风格,一键式开机,一键式部署[1]。为信息化企业合同管理系统开发提供了简单易懂、易配置、易维护的分布式开发工具包。开发者可以根据项目需求,选择和组合相应的组件,快速构建出适合项目需求的基础运营框架,其生成的Spring应用程序可以独立运行于操作系统之外[1]。
简单地说,Spring Cloud框架为系统开发提供了强大的后端支持,充分利用了其优势,使信息化企业的合同管理系统具有更高的安全性、敏捷性和可扩展性。
1.2 MyBatis 框架
MyBatis[2]是一个开源的Java持久层框架。它支持自定义SQL、存储过程和高级映射,是一种半自动化的ORM实现,能够建立实体类和SQL语句之间的映射关系[2]。它避免了几乎所有JDBC代码和参数的人为设定,也避免了对结果集的检索[2]。MyBatis 可与Spring等框架无缝整合,提供更加便捷的数据库操作方法,供Java开发者使用[2]。具有完全定制的映射机制,可以在SQL、存储过程和其他高级分类之间快速创建实体类和SQL语句之间的依赖关系,并且相互映射。这是一种半自动的对象关系映射(Object/RelationMapping,简称ORM) 实现,ORM随着面向对象的软件开发技术的发展而产生[3]。
总之,MyBatis是实现信息化企业合同管理系统数据存储、数据容灾、数据备份的基础,是一座牢固的桥梁,它连接着应用代码和达梦数据库。
1.3 达梦数据库
达梦数据库融合当前先进的技术理念和主流数据库产品的优势,在多样化架构、支持超大规模并发交易处理和交易-分析混合业务处理、动态分配计算资源等方面进行了大规模改进,包括灵活性、易用性、可靠性和高安全性等特性,充分满足不同场景需求的分布式、弹性计算和云计算优势。从而实现更加精细化的资源利用,降低投入成本。完成国产化适配,使一个数据库满足用户多种需求,让用户能更加专注于业务发展。达梦数据库是信息化企业合同管理系统建设过程中不可或缺的工具,是实现国产自主可控的关键组成部分。
2 系统需求分析
实现合同全生命周期管理,具有系统管理、用户登录、合同起草、合同审核、签约、合同管理、合同分析等功能模块,系统功能模块如表1所示。
用户用例图如图1所示。
3 系统的功能框架与架构
3.1 系统功能框架
通过对信息化企业合同管理系统用户需求的层层分析,对系统进行设计。系统基本可分为用户登录模块、系统管理模块和业务管理模块三大关键模块。用户登录是数据源头,提供用户的基础信息、角色以及权限等信息,用于支撑系统管理模块、业务管理模块,系统功能架构图如图2所示。
用户登录模块:用户登录模块是用户与系统交互的门户,用于实现用户的登录和退出登录,是用户登录、退出时发起请求的操作入口。
系统管理模块是信息化企业合同管理系统运行与维护的重要支撑部分,包含了系统的用户管理、角色管理、用户群管理、权限管理、菜单管理及日志管理等功能。系统管理员通过系统管理模块实现对系统的监控、监管、维护,及时发现处理系统异常或故障,从而保障系统平稳运行。
业务管理模块是信息化企业合同管理系统的核心部分,是系统主要功能及服务内容所在。该模块在用户具体需求的基础上进行设计与实现,符合用户的业务流程,如合同起草、合同审核、合同签署、合同变更、合同分析等。
3.2 系统框架设计
以Node.js为开发环境的信息化企业合同管理系统,是JavaScript的服务器端运行环境,使JavaScript脱离浏览器的限制,运行在服务器之中。与PHP、Python 等语言一样可以进行服务器端程序的开发[4]。Node.js 是一个开源的、跨平台的JavaScript运行环境,用于在服务器端运行JavaScript代码。它使得信息化企业合同管理系统可以使用JavaScript来编写服务器端应用程序,从而简化了开发过程,提高了开发效率[4]。系统在服务端、前端、数据库之间产生交互。前端获取和展示用户信息、合同信息等数据,通过URL接口地址将传入参数传递给服务器,服务器根据传入参数了解前端要获取的数据内容,然后去数据库查询并获取数据,最后将所需数据返回前端,前端即可顺利获取数据,进行相应的页面展示。系统架构图如图3所示。
4 系统设计
4.1 云计算技术在系统中的应用设计
应用云计算技术,搭建私有云,将人员数据、合同数据计算处理程序分解成无数个小程序,然后通过多部服务器组成的系统进行处理和分析这些小程序,得到结果并返回,实现系统的高可用性、可扩展性。具体实现方式为:当涉及HTTP网络请求的处理时,开发者拥有多样的选择[5]。用户在信息化企业合同管理系统登录界面输入用户名、密码等登录验证信息,点击“登录”按钮后,前端发送HTTP请求,携带用户名、密码等参数调用login()方法,从而将用户名、密码等参数数据发送到服务端。后端向数据库发送数据请求,查看达梦数据库的用户表中是否存在与之匹配的用户名和密码。如用户名与密码不符或查询不到用户名,则出现前端提示登录失败的情况;如果用户名和密码匹配,系统会跳转到首页,此时即登录成功。用户登录时序图如图4所示。
4.2 大数据技术在系统中的应用设计
通过大数据存储与管理,使用存储器将用户起草信息采集到的数据存储起来,建立相应的数据库,并进行管理和调用。解决复杂结构化、半结构化和非结构化大数据管理与处理技术。借助可靠的分布式文件系统(DFS) 、能效优化的存储、计算融入存储、大数据的去冗余及高效低成本的大数据存储技术,进行合同数据分析和预测。当使用者在新创建合同时,在合同起草模块点击“新建”按钮,填写合同信息后,点击“存储”按钮,调用Save()方法,同时将数据发送至后端,由后端调用数据库,将数据信息记录到达梦数据库的CM_RECORD数据表中,提示保存成功。返回的数据呈现在合同起草界面。
合同起草保存功能是信息化合同管理系统至关重要的功能,用户可在系统上起草保存合同信息,以便随时掌握自己所起草的合同信息。合同起草模块- 保存时序图如图5所示。
4.3 其他技术在系统中的应用设计
通过大数据存储与管理,使用存储器将用户起草信息采集到的数据存储起来,建立相应的数据库,并进行管理和调用。解决复杂结构化、半结构化和非结构化大数据管理与处理技术。借助可靠的分布式文件系统(DFS) 、能效优化的存储、计算融入存储、大数据的去冗余及高效低成本的大数据存储技术,进行合同数据分析和预测。当使用者在新创建合同时,在合同起草模块点击“新建”按钮,填写合同信息后,点击“存储”按钮,调用Save()方法,同时将数据发送至后端,由后端调用数据库,将数据信息记录到达梦数据库的CM_RECORD数据表中,提示保存成功。返回的数据呈现在合同起草界面。
合同起草保存功能是信息化合同管理系统至关重要的功能,用户可在系统上起草保存合同信息,以便随时掌握自己所起草的合同信息。合同起草模块- 保存时序图如图5所示。
4.3 其他技术在系统中的应用设计
用户访问信息化企业合同管理系统的合同分析界面,在搜索框中输入合同信息和用户信息后,点击回车键或“搜索”按钮,调用CMSearch()方法,将输入信息发送到系统服务端进行校验,查看数据库是否存在相关数据。如果没有,则校验失败,返回提示信息;若搜索到相关资料,则在合同分析的前端界面返回相关资料并显示。
搜索功能是信息化企业合同管理系统至关重要的功能,用户可通过输入合同信息、人员信息等查询到所需查看的合同,从而进一步了解企业合同签订情况。合同分析模块-搜索时序图如图6所示。
4.4 达梦数据库在系统中的应用设计
选用8.0版本,支持国产化、自主可控的使用需求,根据系统架构等信息,基于达梦数据库架构。
1) 通过自动故障切换,事务级读写负载分离,可调整读写分配比例,实现性能在读多写少业务场景下的数据库读写分离;通过事务级读写负载分离,实现数据存储过程的读写分离。