基于SSM框架的合同服务管理系统设计与实现(定稿).doc
基于SSM框架的合同服务管理系统的设计与实现摘要:当今社会,各行各业都离不开计算机软件的推广,销售,运营各方面,有些中小型企业没有技术与能力开发和维护一款软件来运营,这时催生很多软件外包公司的产生。由于软件外包服务的特定服务地位,外包公司合作的公司伙伴流动的趋势变化较大,软件外包公司对服务合同的管理与信息维护任务繁重。线下消耗的资源不断增多,服务合同软件外包的项目需求,项目制定变动性大等问题,运用线上资源可更好地管理了需求方与服务商之间的信息往来,更好管理项目的启动,运行,中止等出现的状态跟进,实现数据的实时更新性。本毕业设计针对传统的线下签约满足不了日益趋近的服务合同增量和客户需求量的问题,采用B/S开发模式,开发一个基于SSM框架的合同服务管理系统。本课题解决了传统线下合同签约流程带来的效率问题,也解决了服务合同细节变更的问题,提高了服务合同签订的效率与数据的实时更新性。系统-前端界面采用Bootstrap4框架部署,IDEA作为开发工具,使用Spring,SpringMVC和MyBatis整合的框架进行开发,数据库使用MySQL数据库。本系统实现了-合同申请,变更合同,渠道入驻,合同审批,客户合同-渠道认定,产品服务,用户反馈等功能,对服务合同线上签约的签订效率与带来客户量的效益有很大的帮助。关键词:服务合同,线上签约,MVC设计模式Design and Implementation of Contract Service Management System Based on SSM FrameworkAbstract: In today's society, more and more industry are inseparable from the promotion of computer software, sales, operation of all aspects. Because small businesses haven't the technology and ability to develop and maintain a software to operate. There are a lot of software outsourcing companies. Because of the specific service status of software outsourcing service, the trend of the flow of outsourcing company partners changes greatly. The management and information maintenance of service contract in software outsourcing companies is a heavy task. In the face of the increasing offline consumption of resources, the project demand of service contract software outsourcing, and the great variability of project formulation, the use of online resources can better manage the information flow between the demander and the service provider. At the same time, it can better manage the status follow-up of the project's startup, operation and suspension, the real-time updating of data is realized.This graduation project is aimed at the traditional offline signing can not meet the increasingly approaching service contract increment and customer demand. B/S development mode is adopted to develop a contract service management system based on SSM framework. This topic solves the efficiency problem brought by the traditional offline contract signing process, and also solves the problem of the change of service contract details, thus improving the efficiency of service contract signing and the real-time updating of data. System - front end adopts Bootstrap4 framework deployment, IDEA as a development tool, using Spring, SpringMVC and MyBatis integrated framework for development, database use MySQL database.This system realizes - contract application, change contract, channel entry, contract approval, customer contract - channel identification, product service, user feedback and other functions,it is of great help to the efficiency of online service contract signing and the benefit of customer quantity.Keywords: service contract, online contract, MVC design patternII目 录第1章 绪论11.1系统的开发背景及意义11.1.1合同服务管理系统的研究背景分析11.1.2 本课题的研究意义11.2国内外研究现状21.3系统的主要研究内容21.4系统开发环境与开发工具31.5论文结构安排3第2章 系统需求分析52.1系统的总体需求52.2系统的功能需求分析52.3 用例模型建立92.4 合同服务顺序图142.4.1 合同申请顺序图142.4.2 变更合同顺序图162.4.3 审批合同顺序图172.5 系统可行性分析182.5.1 技术可行性182.5.2 经济可行性182.5.3 操作可行性18第3章 系统设计193.1系统总体架构设计193.2 功能模块设计203.3 数据库设计22第4章 系统实现274.1合同服务客户端的实现274.1.1 首页入口功能的实现274.1.2 合同签订功能的实现284.1.3 关于我们-用户反馈功能的实现284.2合同服务管理端的实现294.2.1 管理端登陆模块的实现294.2.2 合同申请模块的实现304.2.3 审批合同模块的实现324.2.4 需求鉴定模块的实现34第5章 系统测试365.1 系统测试概述365.1.1 测试的意义365.1.2 测试的目的365.1.3 软件测试方法365.2 系统的功能测试375.2.1 合同申请功能的功能测试375.2.2 需求鉴定功能的功能测试385.2.3 审批合同功能的功能测试385.2.4 测试总结39第6章 结束语406.1 全文总结406.2 课题展望及不足40参考文献41致 谢42第1章 绪论1.1系统的开发背景及意义1.1.1合同服务管理系统的研究背景分析当今社会,许许多多的企业之间需要合作运营,成为甲方乙方的合作伙伴关系,如何保障甲方与乙方权益,需要建立的是一份合同关系。在数字化经济持续发展的今天,通讯应用十分方便,很多的线下产能转为线上产能,对企业来说,线下繁琐的合同整理无提高行政的办公效益也无法带来更多的客户量,如何将线上数据化与合同简便化,安全化,实时更新化相结合对企业之间都是非常重要的。服务合同属于无名合同,是以服务为标的的合同。区别就看合同的内容。与劳务合同区分还是明显的。技术服务合同,是指服务方以自己的技术和劳力为委托方解决特定的技术问题,而委托方接受工作成果并支付约定报酬的协议。软件外包公司本身合作伙伴周期性变化,周期服务合作服务时间变动决定了合同签订的一些周期性改动,面对客户变动大,服务合同周期性增加,服务合同从线下转为线上成为趋势所在,产品服务也可不断进行周期性的迭代完善,满足外包公司日益变化的业务需求与变化与信息的及时传递,从线下签约服务合同转变为线上签约服务合同,一来既能实现跨地区的合作,也可实现合同数据化运营,二来可为公司的开发理念做推广,提高公司的订单量,为公司承接更多业务,实现服务合同的精细化。1.1.2 本课题的研究意义传统的服务合同采用的是线下签约方式,而服务合同本身是企业之间合作项目的基本协议,软件外包公司对服务合同的管理与信息维护任务繁重,线下消耗的资源不断增多,服务合同软件外包的项目需求,项目制定期限变动性大等问题,这就为合同服务管理系统提供的无限动力。随着软件外包公司的合同伙伴增多,订单量增大,服务合同信息的变动性强问题随之产生,以技术服务合同为例,技术服务项目的名称、内容、方式、要求、合同履行的地点、期限、验收标准等本身变动性大,传统的线下服务合同无法能保证合同期间的各种数据实时更新性,甲方如果对项目需求的变动,项目交付时间的紧缩会产生甲乙双方的各种协议金额协调问题,所以本课题结合现实需求,采用SSM框架开发合同服务管理系统,用于加强公司的服务合同管理性与效率,保障服务合同的实时更新性,减少线下资源的消耗和甲乙双方对未来合同期间的摩擦导致的公司合作关系的紧张,提高服务合同管理的工作效率,减少公司的成本消耗。1.2国内外研究现状2020年3月,人力资源社会保障部办公厅印发关于订立电子劳动合同的文件,文件明确:用人单位与劳动者协商一致,可以采用电子形式订立书面劳动合同。这一文件的出台,让合同从线下转为线上签约成为有力保障。技术服务合同制度源自英美法,20世纪以后为大陆法各国所接受。一些国家的法律将其视为独立的技术合同类型,另一些国家将其与技术咨询合同视为同类,还有些国家将其作为技术转让合同的一种。在线上签约这一领域目前在电子商务中最为常见,交易双方远隔千里互不相识,甚至在整个交易过程中自始至终都不能见面,传统的线下签约方式很难在电子商务中发挥应有的作用。此时,电子签约就出现了。技术服务合同的签约亦是如此,面对线上交付项目,客户源广阔,合同服务信息的更迭,跨地区服务难度大的问题,由线下转到线上机制,运用PC端完美完成服务合同信息的实时更迭,需求与期限变动带来的一系列问题,都可运用互联网的广跨域性,实时性将甲乙双方的利益保障,市场竞争小,服务合同线上机制需求量大,将可推动技术服务行业的发展。 1.3系统的主要研究内容随着数字化经济的发展,和日益增长的业务量,传统的线下签约服务合同已不能满足企业合作间的需要。因此,软件外包公司需要一款线上管理服务合同的系统来提高公司的业务量和工作效率。本论文主要介绍运用idea 使用bootstrap和SSM框架开发一款合同服务管理平台。系统主要为软件模块,前端使用清晰整洁的操作界面,规范的流程界面,后台运用了SSM框架,整体项目的前后端连贯性强,运用了弹窗添加业务,下拉列表监听事件,保证业务的严谨性。 合同服务管理系统的总体目标是以建设覆盖全面、管理集中、分工协作的合同服务系统,集合同管理,渠道入驻,合同归档,产品更迭功能于一体。本论文的主要的研究结果如下:1、技术方面:前端运用bootstrap+html+css+JQuery部署,后端运用Spring+SpringMVC+Mybatis框架部署,数据库运用MySQL数据库部署2、业务方面:本系统是一个B/S架构的系统,经过对市场需求的分析,对系统的功能更加地有紧密型,业务性,在开发过程,运用合适的技术方法保证业务的适用性3、系统测试方面:系统开发完成后,通过整理各模块的测试用例,总结其中的不足并对其优化与完善1.4系统开发环境与开发工具开发环境运用4GB的win 10 x64操作系统,1.8版本的JDK,8.5版本的Tomcat,使用结构化查询语言进行数据库管理的MySQL,以上环境将作为合同服务管理系统的开发环境。HBuilder作为系统启动阶段的前端部署工具,后面将代码整合到IDEA的WEB-INF中,Bootstrap框架将作为前端的开发框架, 采用idea集成开发工具被作为服务器的开发工具, SSM框架将作为后端的开发框架,以上工具将作为合同服务管理系统的开发工具。1.5论文结构安排本论文一共分为五个部分,具体内容安排如下:第1章_绪论,主要论述合同服务管理系统的开发背景及意义、国内外研究现状,结合合同服务线上签约进行的研究内容等第2章_合同服务管理系统的需求分析,主要对系统的整体业务需求进行详细介绍,包括合同管理,渠道入驻等主流程业务。第3章_系统设计,主要对系统的总体架构设计,数据库设计,逻辑结构,以及部分系统功能设计进行详细介绍。第4章_系统实现,主要对系统的整体框架搭建,实现进行简单介绍,并且对部分功能实现进行讲解。第5章_系统测试与维护,主要介绍系统功能的测试用例以及对其的优化与完善。第6章_总结与展望,总结项目的业务需求以及技术的开发技术,并且指出系统的不足以及未来拓展方向。第2章 系统需求分析2.1系统的总体需求合同服务管理系统的总体目标是以建设覆盖全面、管理集中、分工协作的合同服务系统,集合同管理,渠道入驻,合同归档,产品更迭功能于一体。随着数字化经济的发展,和日益增长的业务量,传统的线下签约服务合同已不能满足企业合作间的需要。合同服务管理系统基于软件外包公司的真正业务需要,结合服务合同的特点,开发用户端和管理端。对于软件外包公司来说,服务产品的推广渠道十分重要,用户端用于软件产品的信息推广和合同的签订,并提供渠道入驻业务,用于渠道入驻可通过归属销售帮助软件外包公司的产品销售,管理端用于软件外包公司内部管理员的使用,可进行合同管理,帮助第三方客户发起SaaS申请和变更合同的需要,渠道入驻功能的开放,可帮助渠道入驻与我们服务商签约,帮助我们的销售工作,合同申请和渠道入驻采用审批流的方式进行审批,利用审批流管理,可以方便、快捷地处理企业管理事务;可以协助合同管理人员更轻松地应对日常管理事务,并提供客户合同-渠道认定模块,保证带来效益的合同实时进入渠道公司的审查绩效之中,为未来的合作发展奠定前景,并且开放合同归档,可分析各种服务类型,服务内部的占比率,为软件外包公司的服务业务趋向做数据分析,并通过产品信息发布,用户反馈功能完善业务。2.2系统的功能需求分析结合合同服务线上签订需求与市场调研的实际分析,合同服务平台应该具备两个端的入口,一个是用户端,用户端的系统功能基于用户能实时查询产品更迭的信息和为甲方合作伙伴企业或者个人开放的合同签订功能,及能对产品的需求更新和反馈其过程的遇到的意见与建议。一个是合同服务管理端,管理端的系统功能是基于软件外包公司行政人员对服务合同的管理,管理端有开放SaaS合同申请和SaaS渠道入驻,对于第三方客户的到来,管理员可帮助他们发起SaaS申请,面对服务合同的变动性大的特点,亦开放变更合同和变更渠道归属销售信息的功能,对渠道公司的评定,也开放了客户合同-渠道认定功能,用于对渠道公司的销售绩效评定,为未来的合作发展奠定前景,行政人员会对合同归档的类别进行数据化分析,为服务业务的趋向做数据分析,同时开放产品信息的实时公布,和对用户反馈的信息进行业务分析与同步。 合同服务管理端的系统功能如图2.1所示:图2.1 合同服务管理端功能图根据合同服务管理端系统功能图,可以得出主要功能模块有:1、合同管理合同管理是合同服务的主体业务,管理端的合同管理主要用于帮助第三方客户发起SaaS合同申请和合同变更,添加客户信息,变更渠道归属销售信息等操作,具体业务需求如下:(1)添加客户信息:在发起合同申请前得先添加客户信息,点击添加客户信息按钮,出现添加客户信息的弹窗,填写相关信息,例如客户的姓名,电子邮箱,电话等信息提交到系统中。(2)合同申请:合同申请发起的是客户合同,点击新增合同,通过合同三步流程添加合同相关信息,通过合同联系人模块,这里运用了邮箱认证定位客户信息,运用了当前账号的数据权限过滤,可以获取当前账号创建过的客户信息,运用下拉的监听事件会自动获取该客户的全部信息,然后补充合同的基本信息,合同附件条款,合同收件人等信息,例如项目名称,服务类型,服务内容,服务费用,违约费用,验收标准等关键信息,然后进行送审。(3)合同申请列表页:列表展示了当前账号申请的全部合同列表,可进行查看对应合同进入合同详情页,列表页拥有搜索功能和分页功能,可以对申请编号,项目名称,合同类型,申请状态进行对应搜索。(4)合同详情页:合同详情页可通过列表页的查看按钮进入,展示合同的相关信息,例如项目名称,服务内容,服务费用,验收标准等关键信息。(5)变更合同:变更合同是对原有审核成功完成的合同进行变更,对合同变更信息局限于可对服务合同的期限,服务费和服务标准,服务方式进行变更,变更流程采用了按当前账号数据权限的项目名称下拉列表监听事件获取其他信息进行修改变更。(6)变更合同列表页:变更合同列表页拥有搜索功能和分页功能,列表展示了变更合同的关键信息,例如服务费用,合同期限等关键信息,搜索功能可通过项目名称等关键信息进行搜索。2、渠道入驻(1)渠道申请:点击渠道申请按钮,进入渠道申请三步流程,填写渠道名称,开户信息,归属销售姓名,电子邮箱,电话,添加服务商及代理期限等关键信息,然后进行送审。(2)渠道归属销售信息变更:点击归属销售信息变更按钮,会弹出可修改编辑的窗口,通过当前账号下的数据权限的渠道名称下拉列表监听事件,可带出原有的该渠道公司的归属销售的信息进行变更。(3)渠道申请列表页:列表页展示当前账号下的渠道申请的合同数据,拥有搜索功能和分页功能,可以对列表中的相关数据进行筛选搜索。(4)客户合同-渠道认定:客户合同-渠道认定列表页会带出审核通过的客户合同,管理员通过渠道认定,把相关合同归属于某个渠道,增加客户合同和渠道之间的关联性。(5)客户合同-渠道认定列表页:列表页展示审核成功的客户合同,展示相关的信息,例如合同编号,项目名称等关键信息。3、审批合同:(1)客户合同的审批:管理员进入客户合同审批列表,对对应的合同信息进入详情页查看,确认合同的关键,例如服务内容,服务费用,违约费用,验收标准等关键信息,确认合同信息基本符合要求后可进行审批,给予审核通过,如果客户合同的信息不符合基本要求,将其删除,并通过备注信息发送给申请合同的账号,提示其需要注意的信息,再发起申请。(2)客户合同列表页:客户合同列表展示了全部的合同信息,可进行查看合同和删除合同,可进行搜索框对相应的合同进行搜索。(3)变更合同的审批:进入变更合同审批列表,对对应合同变更的信息进行确认,符合标准的进行审批成功,不符合标准的删除其变更合同,并在备注信息提示发起给申请人员,提示其需要注意的信息,再发起申请。(4)渠道合同的审批:进入渠道合同审批列表,对对应的渠道信息进查看,确认渠道合同的关键,例如渠道名称,开户信息等关键信息,确认渠道信息基本符合要求后可进行审批通过,如果客户合同的信息不符合基本要求,将其删除,并通过备注信息发送给申请人员的账号,提示其需要注意的信息,再发起申请。4、需求鉴定管理:进入需求鉴定管理页面,可对相应的客户合同带的需求进行查看,需求的上传是通过合同申请的流程步骤或者相应的需求上传窗口进行需求上传,需求鉴定可对应进行下载查看。5、产品更迭管理:通过在管理端发布最新的产品更迭信息,用户端可展示最新的一些产品更迭信息,用户可通过最新信息进行查看。6、公告管理:公司行政人员可以通过公告发起合同相关信息条例的调整以及一些产品服务的信息更迭,管理员可通过管理端首页公告查看,用户可通过用户端公告通知查看。 图2.2 合同服务用户端功能图如图2.2根据合同服务用户端,主要的功能模块如下:(1)登陆注册功能:用户可以注册账号,填写相关信息,例如邮箱,电话等信息进行注册,然后通过登陆页面进行登录。(2)合同签订功能:合同签订发起的是客户合同,通过合同三步流程添加合同相关信息,运用了当前账号的数据权限过滤,可以获取当前账号创建过的客户信息,运用下拉的监听事件会自动获取该客户的全部信息,然后补充合同的基本信息,合同附件条款,合同收件人等信息,例如项目名称,服务类型,服务内容,服务费用,违约费用,验收标准等关键信息,然后进行送审。(3)产品更迭查看和公告查看功能:可以通过用户端相关信息展示,实时了解到产品更迭的信息和公告信息。2.3 用例模型建立合同服务管理平台分为两个端,管理端与用户端,管理端角色主要包含行政人员、项目经理与合同审批管理员,用户端角色主要包含客户,下面列举出系统管理员的功能用例图与用户的功能用例图。 图2.3 合同管理系统管理员的功能用例图管理员角色分为软件外包公司行政人员,项目经理,合同审批管理员三种角色,拥有管理系统中对应的菜单功能,合同申请是管理端开放的通用功能,行政人员管理公告发布功能和产品更迭发布功能,项目经理管理需求鉴定功能,合同审批管理员拥有新增合同审批,变更合同审批,渠道合同审批功能,如图2.3所示。用户属于客户类型,如图2.4所示,客户拥有查看产品更迭信息,合同签订,查看公告,上传项目需求等功能。 图2.4 “客户”用例图2.3.1 合同管理管理员可帮第三方客户发起SaaS合同申请,拥有添加客户信息,合同申请,变更合同等功能。表2.1“合同管理”用例规约。表2.1 “合同管理”用例规约用例编号2-1用例名称合同管理功能描述管理员帮第三方客户发起SaaS合同管理执行者项目经理、行政人员、合同审批管理员前置条件管理员成功登录系统,进入到合同申请界面,合同申请的前提是该客户已经添加到客户表中后置条件合同申请填写信息后送审涉众利益第三方客户与服务公司的联系关系基本路径1. 管理员登陆合同服务管理系统。2. 进入合同申请菜单点击添加客户信息按钮进入编辑客户信息窗口。2.1可对相应的客户信息进行添加3. 进入合同申请菜单点击合同申请3.1基本信息的填写,在合同联系人中选定客户绑定的邮箱,将客户信息带出,填写基本的合同信息进行下一步3.2合同附件信息的填写,参照条例和本身项目需求需要,填写相应的服务费用,违约费用,服务标准,服务方式关键信息,点击下一步3.3送审页面:添加合同收件人信息,进行送审4.进入变更合同菜单点击变更合同4.1变更合同流程:在变更合同页面点击变更合同,进入变更合同界面,通过相应的项目名称选择带出原有的合同信息,有些信息可修改可修改之后再送审扩展字段列表1.项目名称 2.客户类型 3.服务内容 4.服务地点5.甲方申请人员 6.所属公司 7.申请人员地址8.申请人员邮箱 9.申请人员联系电话 10.服务费用11.违约费用 12.服务标准 13.验收方式 14.合同开始时间15、合同失效时间 16、合同收件人姓名 17、合同收件人地址18.合同收件人电话 19.申请状态 20.合同类型备注:所有合同的相关信息字段通过post请求发送到Control层业务规则1. 管理员必须先登录合同服务管理系统2. 进入合同申请页面发起合同申请备注无2.3.2 渠道入驻软件外包公司行政人员可帮第三方渠道发起SaaS渠道入驻,拥有新增渠道,渠道归属销售信息变更,客户合同-渠道认定等功能。如表2.2“渠道入驻”用例规约。表2.2 “渠道入驻”用例规约用例编号2-2用例名称渠道入驻功能描述行政人员帮第三方渠道发起SaaS渠道申请执行者行政人员前置条件行政人员成功登录系统,进入到渠道申请界面后置条件渠道申请填写信息后送审涉众利益第三方渠道与服务公司的联系关系基本路径1. 行政人员登陆合同服务管理系统。2. 进入渠道申请菜单点击新增渠道3. 新增渠道三步流程:3.1基本信息的填写,在填写基本的渠道信息和归属销售的信息进行下一步3.2合同附件信息的填写,对照相应的服务费比例和合同期限,填写相应的服务商,合同期限关键信息,点击下一步3.3送审页面:添加合同收件人信息,进行送审4. 进入渠道申请菜单点击归属销售信息变更4.1 在渠道归属销售信息变更窗口中可以通过渠道名称下拉列表选定相对应渠道进行变更,原有销售信息会被带出,根据实际情况可对归属销售信息进行变更扩展字段列表1. 渠道名称 2.渠道单位地址 3.渠道电话 4.开户名称 5.开户银行6. 银行账号 7.渠道联系人 8.渠道联系人电话 9.销售姓名 10. 销售联系电话 11.销售地址 12.服务商 13.合同开始时间14. 合同失效时间 15.合同收件人姓名 16.合同收件人地址17.合同收件人电话 18.申请状态业务规则1. 行政人员必须先登录合同服务管理系统2. 进入渠道申请页面新增渠道备注无2.3.3 合同审批在管理端的审批合同页面,合同审批管理员可以对客户合同和渠道合同进行审批。如表2.3“审批合同”用例规约。表2.3 “审批合同”用例规约用例编号2-3用例名称审批合同功能描述合同审批管理员可以对送审的合同进行审批执行者合同审批管理员前置条件合同审批管理员成功登录系统,进入到审批合同界面,审批合同的前提是客户合同已经送审成功后置条件客户合同审核成功或者驳回,删除涉众利益合同审批管理员对合同的审批基本路径1. 合同审批管理员登陆合同服务管理系统。2. 进入审批合同菜单查看合同详情3. 合同审批管理员对客户合同核对关键信息符合基本要求后,可以通过点击审核成功按钮进行审核成功,如果核对关键信息不符合基本要求后,可以填相关备注驳回合同,或者删除合同。扩展字段列表1. 项目名称 2.服务内容 3.服务费用 4.违约费用 5.服务标准 6.验收方式 业务规则1. 管理员必须先登录合同服务管理系统2. 进入合同审批页面进行审批合同备注无2.4 合同服务顺序图合同服务业务中合同申请,变更合同,审批合同为主流程业务,将对合同服务这三个主流程业务做顺序图分析。2.4.1 合同申请顺序图合同申请顺序图:(1) 管理员进入合同服务管理端的合同申请页,申请合同(2) 申请合同页面加载页面,请求服务器当前账号的邮箱认定相关数据(3) 服务器返回相关邮箱数据(4) 管理端将邮箱认证数据信息展示给管理员(5) 管理员选定某个邮箱(6) 管理端通过下拉列表监听将邮箱认定请求服务器传回客户相关信息(7) 服务器返回相应的客户信息(8) 管理端展示客户信息填充到对应的表单中(9) 管理员填写合同基本信息(10) 点击下一步将数据保存到服务器(11) 服务器将执行跳转到第二步页面(12) 管理端展示第二步页面(13) 管理员填写合同附件条款(14) 点击下一步将数据保存到服务器(15) 合同服务服务器将执行跳转第三步页面(16) 管理端展示第三步页面(17) 管理员填写合同收件人相关信息(18) 送审操作将合同数据保存并送审(19) 合同服务服务器返回int类型判断成功操作(20) 管理端展示送审成功的弹窗 图2.5 合同申请顺序图2.4.2 变更合同顺序图变更合同顺序图:(1) 管理员进入变更合同页,变更合同(2) 管理端加载页面请求相关项目名称(3) 服务器返回项目名称列表(4) 管理端展示项目名称列表给管理员(5) 管理员选定相应的项目名称(6) 管理端请求相应的合同数据(7) 服务器返回相应的合同数据(8) 管理端展示并填充相关合同数据到表单(9) 管理员修改相关合同信息(10) 进行送审操作到服务器(11) 合同服务器返回成功操作(12) 管理端提示送审成功图2.6 变更合同顺序图2.4.3 审批合同顺序图审批合同顺序图:(1) 管理员进入审批合同页面(2) 管理端请求审核成功的合同列表页(3) 合同服务服务器返回合同列表数据(4) 管理端展示合同相应列表数据(5) 管理员查看合同详情(6) 管理端传合同id到服务器请求合同相关数据(7) 合同服务服务器将相应的合同数据返回(8) 管理端展示相应合同数据(9) 管理员进入列表页,点击审核成功(10) 管理端将审核信息传至服务器(11) 合同服务服务器将合同状态返回(12) 管理端展示其合同状态审核成功图2.7 审批合同顺序图2.5 系统可行性分析2.5.1 技术可行性合同服务管理系统是以idea集成开发工具进行开发,使用SSM框架,运用面向对象程序设计Java语言。web前端与服务器进行通讯的采用ajax及form表单的格式,数据库采用MySQL及其对应插件工具Navicat Premium 12对数据库进行操作,系统开发用的服务器是Tomcat8.5,运用各项开发技术,最终实现该系统的主要功能,满足合同服务管理的需求。2.5.2 经济可行性合同服务管理系统提供一个全套软件外包公司对服务合同的管理机制,包括客户合同流程,渠道入驻流程,为公司减少人力成本,提高公司行政人员的工作效率,运用线上签约机制,解决跨地区等问题,提高客户量,为公司带来更多的业务量订单。2.5.3 操作可行性本系统界面清晰整洁,客户和渠道可根据里面的操作指引进行操作,并且有对相关信息的提示,基本满足客户和渠道的基本要求。第3章 系统设计系统设计是软件开发生命周期中不可缺少的一个步骤,本章将从系统总体架构设计、功能模块设计和数据库设计论述合同服务管理系统设计。3.1系统总体架构设计合同服务管理系统登陆成功进入管理界面,可以进行合同管理,渠道入驻,合同审批等功能,系统总体架构设计如图3.1所示。 图3.1 系统总体架构图系统采用SSM框架进行部署:(1)前端界面采用Bootstrap+html+css+JQuery部署前台页面,运用ajax进行传数据,与服务器形成数据交互。(2)后台框架在基于SSM框架的合同服务,控制层通过接收前端传过来的参数进行业务操作;服务层存放业务逻辑处理;Dao层对数据库进行数据持久化操作。(3)系统采用SSM框架进行搭建,通过ajax实现前后端的数据交互,通过Spring,SpringMVC,Mybatis实现后端的部署。3.2 功能模块设计图3.2 功能模块设计图1、登陆注册功能:用户端拥有注册和登陆功能,用户即客户或者渠道在用户端注册账号,输入基本信息,注册成功后可通过账号密码登陆软件外包合同服务用户端,管理端可供管理员登陆,登陆账号的权限由技术人员直接提供。2、修改密码功能:用户端和管理端都拥有修改密码功能,登陆进去后可以通过菜单栏点击修改密码弹窗,进行重新修改密码。3、合同管理功能:(1) 客户合同签订在用户端和管理端均有入口,客户信息需要在合同申请前点击添加客户信息进行添加,通过新增合同,完成合同申请三步流程信息填写,客户信息部分是通过邮箱认证的下拉列表监听事件获取对应客户的信息,然后填写服务费用,违约费用,服务标准等关键信息进行送审。(2) 变更合同是对原有的审核成功的合同进行变更,通过当前账号数据权限下拉项目名称,运用下拉列表监听事件带出原合同的数据进行部分数据变更然后再次进行送审。(3) 客户合同列表页,变更合同列表页可以查看当前账号申请过的合同数据,客户合同列表点击查看按钮可以查看合同的具体信息,客户合同列表页和变更合同列表页均具有搜索和分页的功能。4、渠道入驻功能(1) 新增渠道可以在渠道申请页进行发起,完成渠道信息三步信息的填写然后进行送审。变更渠道归属销售的信息可以通过渠道申请页的归属销售信息变更按钮发起,通过当前账号的数据权限过滤出的渠道名称下拉列表,运用下拉列表监听事件,可以将原有渠道的销售信息带出,修改销售信息然后进行提交。(2) 客户合同-渠道认定可以通过客户合同-渠道认定页面的列表页进行发起,客户合同-渠道认定页面是审核成功之后的客户合同进行渠道认定,点击渠道认定按钮,对相关的客户合同与渠道信息关联。5、审批合同功能在管理端的审批合同页面,管理员可以进行审批客户合同和渠道合同,核对关键信息符合基本要求后,可以通过点击审核成功按钮进行审核成功,如果核对关键信息不符合基本要求后,可以填相关备注驳回合同,并删除合同。6、需求鉴定功能客户合同的签订伴随着项目需求的上传,客户通过项目需求上传途径,在需求鉴定列表可以进行下载观看。7、产品更迭管理功能和公告管理功能管理端通过产品更迭页面更新最新的产品相关信息,会将相关信息展示在用户端页面,在用户端可以实时查看到产品的更迭信息;行政人员在管理端在公告管理页面可以发起关于业务调整的公告,管理端首页和用户端可以进行查看。3.3 数据库设计合同服务管理系统主要功能是对合同送审进度和渠道入驻流程进行管理,基于业务逻辑对数据进行操作,本系统使用MySQL数据库作为后台数据库。本节对系统用到的数据库表结构进行设计。3.3.1 表设计根据系统需求分析,系统需要建立一些数据库表来保存一些相关的信息,共12张表,如合同信息,渠道信息,客户信息,公告信息等一些数据库,如图3.3是合同表关联的表设计结构。合同表contract表与客户表、变更合同表、需求鉴定表和合同-渠道关联表具有主外键关联关系,通过con