APP下载

业务经理综合管理系统的开发

2018-11-06赵培

中小企业管理与科技 2018年1期
关键词:用户名管理员考试

赵培

(河北省中小企业信用担保服务中心,石家庄050000)

1 引言

随着社会经济的快速发展,企业的发展也越发壮大,在这个飞速发展的信息时代,老旧的人事管理模式已日趋落后,目前急需对企业的顶梁柱、急先锋——业务经理进行系统的信息化管理,以满足新时代对现代企业的要求。

2 需求分析

业务经理综合管理系统将业务经理的各种操作全部集中到了这一系统中,大大地提高了业务经理日常操作的方便性和高效性,不仅为业务经理提供了方便,使繁杂的书面工作变得简单有趣,也使得公司管理者可以方便地对每个业务经理的销售情况和工作进展程度进行了解,无形中为企业创造了价值。这一章将业务经理综合管理系统各个模块做一个总体的需求分析,明确所要实现的功能,确定研究的深度。

2.1 功能需求分析

业务经理综合管理系统的设计和开发,主要包括后台管理员模块和前台业务经理模块。

业务经理综合管理系统的后台管理员模块主要需完成如下几个功能:

①添加业务经理,修改业务经理信息;②查看每个业务经理的销售报告;③查看每个业务经理的工作计划;④查看编辑所有的客户信息;⑤审批业务经理的报销申请和费用申请;⑥查看各个竞争对手的状态;⑦向业务经理发送公告或通知;⑧出题对各个业务经理进行考核,查看考核结果;⑨查看所有工程信息。

业务经理综合管理系统的前台业务经理模块主要有如下功能:

①上传自己销售的报告;②上传和查看自己的工作计划;③上传、删除、修改和查询自己的客户信息;④申请报销和交际费用,查看审批状态;⑤上传竞争对手的状态;⑥上传工程信息;⑦查看系统公告;⑧参加考核,查看考试结果。

2.2 数据库需求分析

2.2.1 数据库初步设计

根据系统功能设计的要求以及数据模型的设计,数据库初步需要的存储信息如下:

业务经理信息:包括(业务经理Id、用户名、密码和成绩)等。

管理员信息:包括(管理员Id、用户名和密码)等。

客户信息:包括(客户Id、客户姓名、电话号码、手机号码、地址、客户类别)等信息。

竞争动态信息:包括(竞争动态Id、动态名称、具体竞争动态情况)等。

考试题目信息:包括(题目Id、题目名称、选项A、选项B、选项C、选项D、题目答案、答案解析)等。

答题结果信息:包括(结果ID、题目Id、答题结果)等。

交际费申请信息:包括(交际费申请ID、交际费申请名称、金额、申请业务经理、是否审批、申请时间)等。

申请报销信息:包括(申请报销ID、申请报销名称、报销类型、金额、申请用户、是否审批)等。

销售报告信息:包括(销售报告Id、销售报告名称、客户Id、商品、数量、金额、业务经理、销售日期)等。

工程信息:包括(工程ID、工程名称、开始时间、负责人)等。

工作计划:包括(计划ID、计划名称、计划内容、日期、业务经理)等。

系统公告:包括(公告Id、公告名称、公告内容、日期)等。

2.2.2 系统运行需求分析

系统要求界面友好,操作简单,响应时间短,尽量减少手工干预,能让用户选择的信息尽量不用用户输入,以提高准确率和效率。

本系统是采用MyEclipse作为前台开发工具,Tomcat作为服务器,MySQL作为后台数据库平台的业务经理综合管理系统。运行时的基本配置要求如下:

硬件环境:主机PentiumⅣ以上,内存至少1GB。

软件环境:操作平台 Windows XP、Windows7、JDK1.6、Tomcat6.0、MySQL5.5。

3 概要设计

3.1 概述

本系统的总体设计采用结构化设计方法,把一个复杂的系统分解成相对独立的若干模块,通过对模块的设计和模块之间关系的协调来实现整个软件系统的功能。

3.2 系统设计

依据前面的需求分析,本系统的用例图如下,管理员的用例图如图3.1所示。

图3.1 管理员用例图

管理员拥有上图六个功能用例:

①业务经理管理模块:该模块下有添加业务经理、编辑业务经理功能。

②申请审批模块:该模块下有查看和审批业务经理提交的各种费用申请和报销功能。

③考试管理模块:用于管理员出题、查看考试结果和清空成绩功能。

④客户管理模块:管理员查看所有客户的详细信息,对客户信息进行增加、删除、修改和模糊查询。

⑤信息浏览模块:查看业务经理上传的销售报告、工作计划、竞争动态和工程信息。

⑥系统公告模块:向业务经理发布公告,删除公告。

业务经理的用例图如图3.2所示。

图3.2 业务经理用例图

业务经理具有六种功能用例:

①销售报告管理:上传销售报告和查看所有自己上传的报告。②工作计划管理:查看今日计划,上传当日的工作计划。③客户管理:查看业务经理自己的客户,修改和删除客户信息,模糊查询客户信息,新增客户类别,新增客户等。④日常事务管理:行程报销,查看审批状态,申请交际费,查看交际费审批状态。⑤工程信息管理:添加工程信息。⑥其它功能:上传竞争动态,查看系统公告,参加考试和查看考试答案。

3.3 数据库设计

根据前面的需求分析和概要设计,现将数据表的逻辑结构即数据结构表描述如下:

数据库名称为salesmanms。其中包括客户类别、竞争动态、客户、考试结果、交际费申请、系统公告、工作计划、工程信息、行程报销、销售报告、考试题目、业务经理等12个数据表。

3.4 设计应用原理

为了项目开发的快捷方便并且具有较强的可扩展性,本管理系统集成使用了Struts 2、JFreeChart和Spring框架来实现MVC架构。

MVC模式(三层架构模式)(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

MVC模式的目的是实现一种动态的程式设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部份分离的同时也赋予了各个基本部分应有的功能。

MVC各部分的分工如下:

控制器(Controller)-负责转发请求,对请求进行处理。

视图(View)-界面设计人员进行图形界面设计。

模型(Model)-程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。

3.5 模块的整体结构设计

该业务经理综合管理系统可以划分为管理员子系统和业务经理子系统。

管理员子系统系统功能结构图如下图3.3所示。

图3.3 管理员子系统功能结构图

管理员子系统由业务经理管理、申请审批、考试管理、客户管理和系统公告几个模块组成。每个模块的具体功能如下:

业务经理管理模块:

①添加业务经理:添加公司中新入职的业务经理,需要输入用户名密码等个人信息。②编辑业务经理:修改每个业务经理的个人信息;删除离职的业务经理。

申请审批模块:

①未审批行程报销:显示所有没有经过审批的行程报销申请,管理员可以在此对申请进行审批。②已审批行程报销:显示所有已经通过审批的行程报销申请。③未审批交际费申请:显示所有没有经过审批的交际费申请,管理员可以在此对申请进行审批。④已审批交际费申请:显示所有已经通过审批的行程报销申请。

考试管理模块:

①考试出题:管理员进行出题,输入题目,各个选项,答案和答案解析。②所有题目:对每个题目进行修改和删除操作。③考试结果:以柱状图的形式查看每个业务经理的考试结果情况。④清空成绩:清空所有用户的成绩,以便重新进行考试。

客户管理模块:

对公司所有客户进行修改和删除操作;查找每个客户的信息,并可以进行模糊查询;按类别查询所有客户。

信息浏览模块:

①浏览业务经理上传的销售报告信息;根据业务经理查看销售报告;根据开始时间、结束时间和排序方式查询销售报告。②浏览业务经理上传的工作计划信息。③浏览业务经理上传的竞争动态信息。④浏览业务经理上传的项目信息。

系统公告模块:

①发布公告:发布公告给所有业务经理查看。②删除公告:删除错误或过时的公告。

业务经理子系统功能结构图如下图3.4所示。

图3.4 业务经理子系统功能结构图

销售报告模块:

①上传报告:上传今天的销售报告情况。②所有报告:查看所有已经提交过的报告。

工作计划模块:

①今日计划:业务经理查看自己今天上传的计划信息。②新建计划:业务经理上传自己的今日计划供管理员查看。

客户管理模块:

①客户列表:业务经理查看自己的客户信息,并可对客户信息进行修改和删除,还可以模糊查询客户信息;按类别查询客户信息。②新增客户类别:业务经理增加自己的客户类别,方便对客户进行管理。③新增客户:业务经理上传自己的客户信息。

日常事务模块:

①行程报销:向管理员申请行程报销。②报销状态:查看已申请报销的审批状态。③交际费申请:向公司申请交际费用。④交际费审批状态:查看已申请的交际费用是否通过审批。

工程信息模块:

业务经理上传工程信息,填写信息包括工程名称、开始时间和负责人等。

更多:

①竞争动态:业务经理上传竞争对手的竞争动态。②系统公告:查看管理员发送的系统公告信息。③考试:参加公司的统一考试。④查看答案:查看试题答案。⑤系统包图如下图3.5所示。

图3.5 系统包图

com.wsqy.action.admin和com.wsqy.action.user两个包分别为系统管理员和业务经理的Action层包,由JSP页面直接请求,它们两个包调用com.wsqy.service.impl包中的类,com.wsqy.service.impl包为服务层,其中的类实现com.wsqy.service包中的接口,com.wsqy.service.impl包调用com.wsqy.dao.impl包中的类,com.wsqy.dao.impl包中的类实现了com.wsqy.dao包中的接口。

4 系统测试

在测试时环境搭建如下:在MyEclipse集成开发环境中选中所要部署的项目,点击MyEclipse的部署按钮,在出现的对话框中点击add按钮,选中要部署到的Tomcat服务器,在此之前要将Tomcat集成到MyEclipse中,点击finish按钮,开发环境会自动将当前的项目部署到Tomcat指定目录中。点击运行按钮,启动Tomcat。在浏览器地址栏中输入http://localhost:8080/salesmanms进入登录页面。

我们对各模块采用单元测试的方法对每一个小的模块单元进行具体测试。

部分测试项目如下:

①登录。测试系统操作界面,内容包括用户名、密码输入和权限,合理性检查、合法性检查,系统操作界面显示控制。

②添加业务经理。测试添加新用户功能,内容包括新用户信息的输入,合理性检查,合法性检查,新用户信息入库是否正确。

③添加客户。测试客户是否可以添加成功,如果输入的客户名称已存在,是否提示用户,插入是否成功。

④查看客户。测试是否可以对客户进行模糊查询。

测试对客户的修改删除是否正确处理。

⑤参加考试。测试如果业务经理已经参加过考试,是否允许重复考试。

测试考试完成后的成绩计算是否正确。

⑥查看答案。主要测试如果业务经理没有参加过考试,是否允许查看答案。

⑦查看考试结果。测试业务经理考试结果柱状图是否显示正确。

测试结果如下:

①登录。当输入为空时,页面提示请输入用户名。当用户输入用户名1,密码1时,进入管理员界面。当用户输入用户名11,密码11时,进入业务经理界面。输入不存在的用户名时,停留在当前页面。

②添加业务经理。输入用户名密码等业务经理信息,点击按钮提交后,业务经理信息被插入到了数据库中。如果输入用户名为1,即已经存在的用户名时,页面提示用户名已存在,不能将数据插入数据库。

③添加客户。当输入客户信息点击提交后,客户信息被插入到数据库,页面跳转到客户列表界面。当输入客户的名称已经存在时,停留在当前页面,不将数据插入数据库。

④查看客户。在客户名称中输入存在的名称点击查询,可以查找出客户信息。输入部分名称,选中模糊查询框,点击查询,会查找出所有含有该部分名称的客户。当修改客户信息时,点击按钮提交后,客户信息正确存入数据库。删除客户时,客户被正确删除。

⑤参加考试。如果业务经理已经参加过考试,页面跳转到已经参加过考试的提示界面,不能重复考试。如果没有参加过,则跳转到考试页面,显示所有考题,答完题点击提交后,系统会立即计算出业务经理的成绩,并插入到数据库。

⑥查看答案。如果业务经理没有参加过考试,点击考试答案,会跳转到答题页面。如果业务经理参加过考试,都会跳转到答案页面,显示出所有题目和答案。

⑦查看考试结果。管理员点击考试结果链接,页面显示所有用户的成绩柱状图,与数据库的数据一致。

猜你喜欢

用户名管理员考试
《护士进修杂志》投稿程序
我是小小午餐管理员
《护士进修杂志》投稿程序
我是图书管理员
我是图书管理员
可疑的管理员
《护士进修杂志》投稿程序
机智的快递员
Japanese Artificial Intelligence Robotto Take Entrance Examinations
你考试焦虑吗?