基于Web的客户管理系统设计报告.docx

上传人:b****5 文档编号:4533924 上传时间:2022-12-01 格式:DOCX 页数:16 大小:295.68KB
下载 相关 举报
基于Web的客户管理系统设计报告.docx_第1页
第1页 / 共16页
基于Web的客户管理系统设计报告.docx_第2页
第2页 / 共16页
基于Web的客户管理系统设计报告.docx_第3页
第3页 / 共16页
基于Web的客户管理系统设计报告.docx_第4页
第4页 / 共16页
基于Web的客户管理系统设计报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

基于Web的客户管理系统设计报告.docx

《基于Web的客户管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《基于Web的客户管理系统设计报告.docx(16页珍藏版)》请在冰豆网上搜索。

基于Web的客户管理系统设计报告.docx

基于Web的客户管理系统设计报告

基于Web的客户管理系统设计报告

一、系统需求分析

随着科学技术的发展、经济水平的提升、企业管理理念和一种新经济背景下的营销理念,其核心是以客户为中心,以客户价值为导向手段的协同管理思想和效率营销方式的变化,加上一方面,很多企业在信息化方面已经做了大量工作,收到了很好的经济效益。

另一方面,一个普遍的现象是,在很多企业,销售、营销和服务部门的信息化程度越来越不能适应业务发展的需要,越来越多的企业要求提高销售、营销和服务的日常业务的自动化和科学化。

这就为客户关系管理系统应运而生的需求奠定了基础。

基于Web的应用系统功能丰富、实用、灵活性,如何合理的规划系统应用功能方案,开展以用户流程体验为核心的功能流程组织,从系统用户使用的角度出发,合理化功能流程,使系统方便、易用。

通过对WEB客户关系系统考察、分析以及实际的市场调查,并结合自己系统的特色,确定了系统当前及日后可能出现的功能需求:

(1)身份验证功能:

销售经理和客户经理经超级管理员添加后将拥有自己独立的账户每次登陆系统后台都将进行身份验证才能登陆对权限范围内的业务进行管理。

(2)栏目菜单管理:

具体操作有新建、修改、删除栏目等功能。

(3)系统查询管理:

信息查询是管理系统必不可少的功能,在系统界面进行输入查询条件,查询出来的信息可以进行查看详细,修改,删除操作。

其次,在以客户为中心,以客户价值为导向手段的协同管理思想和效率营销方式的深入现代企业,使用客户关系管理系统管理企业日常事务已成为现代企业最常用的一种方式,其中信息管理提供已经成为不可或缺的一部分内容。

建立客户信息管理系统有以下几点意义:

(1)提高服务质量:

一个好的客户管理系统,不仅大大的方便了客户,也提高了企业的经营管理水平,快速的文档处理,也使得减少了整理文档的时间,清晰准确的账单、数据表格,也是一种高档次的享受。

(2)提高工作效率:

严格的数据检查可避免手工操作的疏忽而造成的错误,减轻职工的工作压力,从而提高工作效率。

(3)全面了解客户信息:

完备的报表功能和查询功能使管理者可及时了解各部门的营业情况,加强系统管理,有利于实现企业现代化,提高各项经济指标,为企业取得良好的经济效益提供充分的保证。

(4)完善企业内部管理机制:

提供多种安全级别,保证各类数据不被无权过问的人观看和操作,提高系统的安全可靠性、维修性,保持系统的精度和性能,使之经常处于良好的技术状态,使企业充分发挥计算机管理能力、提高办公效率。

二、系统体系架构设计

系统建设的关键在于其所使用的架构。

基于浏览器B/S架构则是目前WEB应用程序的主流。

它将大量的数据处理工作交给服务器处理,无论是管理人员还是系统使用者都可以通过浏览器实现所有操作。

这种方式的优点是方便快捷,有利于系统的更新和维护。

图一为基于B/S的三层体系结构图:

B/S(Browser/Server)结构即浏览器和服务器结构。

它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。

对于B/S而言,开发、维护等几乎所有工作也都集中在服务器端,当企业对网络应用进行升级时,只需更新服务器端的软件就可以,这减轻了异地用户系统维护与升级的成本。

如果客户端的软件系统升级比较频繁,那么B/S架构的产品优势明显,所有的升级操作只需要针对服务器进行,这对那些点多面广的应用是很有价值的,例如一些招聘网站就需要采用B/S模式,客户端分散,且应用简单,只需要进行简单的浏览和少量信息的录入。

1.B/S结构的优点:

(1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。

(2)业务扩展简单方便,通过增加网页即可增加服务器功能。

(3)维护简单方便,只需要改变网页,即可实现所有用户的同步更新。

2.系统开发平台:

本系统选择的开发平台是:

WAMP(Windows/Apache/Mysql/PHP),Windows下的Apache+Mysql+PHP,一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。

目前有不少AMP(Apache\MySQL\PHP)的集成软件,可以让我们一次安装并设置好。

这对于不熟悉AMP的用户来说,好处多多。

使用AMP集成软件的优点:

 

(1)可避免由于缺乏AMP的知识,而无法正确设置环境;

  

(2)可快速安装并设置好AMP环境,让我们直接开始真正感兴趣的软件,如xoops;

(3)可方便的搭建测试环境,对于测试“是AMP环境问题,还是XOOPS造成的问题”很有帮助,采用排除法即可。

三、数据库设计

(1)数据库开发平台选择:

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。

MySQL关系型数据库使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。

(2)管理工具:

NavicatforMySQL是一套专为MySQL设计的高性能数据库管理及开发工具。

它可以用于任何版本3.21或以上的MySQL数据库服务器,并支持大部份MySQL最新版本的功能,包括触发器、存储过程、函数、事件、视图、管理用户等。

包括客户基本信息、服务信息、客户活动等信息。

客户表的基本结构

序号

字段名

数据类型

大小

默认值

允许为空

唯一

主键

自增

描述

1

cust_no

char

17

客户编号

2

cust_name

varchar

100

客户名称

3

cust_region

money

11

地区

4

cust_manager_id

varchar

50

0

客户经理编号

5

cust_manager_name

Varchar

50

客户经理名字

6

cust_level

int

客户等级

7

cust_level_label

varchar

50

客户等级标签

8

cust_satisfy

int

客户满意度

9

cust_credit

int

客户信用度

10

cust_addr

varchar

300

客户地址

11

cust_zip

varchar

10

邮编

12

cust_tel

varchar

50

电话

13

cust_fax

varchar

50

传真

14

cust_website

varchar

50

网址

15

cust_licence_no

varchar

50

营业执照注册号

16

cust_chieftain

varchar

50

法人

17

cust_bankroll

bigint

注册资金

18

cust_turnover

bigint

年营业额

19

cust_bank

varchar

200

开户银行

20

cust_bank_account

varchar

50

银行账户

21

cust_local_tax_no

varchar

50

地税登记号

22

cust_national_tax_no

varchar

50

国税登记号

23

cust_status

varchar

2

客户状态

服务表的基本结构

序号

字段名

数据类型

大小

默认值

允许为空

唯一

主键

自增

描述

1

svr_id

bigint

系统变量

2

svr_type

varchar

50

服务类型

3

svr_title

varchar

50

服务标题

4

svr_cust_no

varchar

17

服务客户编号

5

svr_cust_name

varchar

50

服务客户名称

6

svr_status

varchar

10

服务状态

7

svr_request

varchar

text

服务请求

8

svr_create_id

bigint

创建者id

9

svr_create_by

varchar

50

创建人

10

svr_create_date

datetime

创建日期

11

svr_due_id

bigint

分配给id

12

svr_due_to

varchar

50

分配给谁

13

svr_due_date

datetime

分配时间

14

svr_deal

varchar

text

服务处理

15

svr_deal_id

bigint

处理人id

16

svr_deal_by

varchar

50

处理人

17

svr_deal_date

datetime

处理日期

18

svr_result

varchar

500

处理结果

19

svr_satisfy

int

满意度

客户活动表的基本结构

序号

字段名

数据类型

大小

默认值

允许为空

唯一

主键

自增

描述

1

atv_id

bigint

活动编号

2

atv_cust_no

varchar

17

客户编号

3

atv_cust_name

varchar

50

客户名称

4

atv_date

datetime

活动日期

5

atv_place

varchar

200

活动地址

6

atv_title

varchar

500

活动主题

7

atv_desc

varchar

text

后期合作情况

四、系统目录结构设计

图一

图二

其中:

子目录CSS用来存放所有层叠样式表,用来统一控制整个系统的样式;

子目录JS用来存放系统中使用的javascript代码;

子目录PIC用来存放系统中使用的图片;

子目录database用来存放系统数据库的备份;

文件add.php实现客户信息添加功能;

文件browse.php实现客户信息浏览功能;

文件edit.php实现客户信息编辑与修改功能;

文件delete.php实现客户信息删除功能;

文件search.php实现客户信息查询功能;

五、系统功能设计

本模块主要是对客户进行的评价,包括五个子模块。

信息采集入库模块完成各三级指标原始数据的自动采集(通过正则匹配实现)与基本处理(计算各三级指标原始得分),并存入数据库。

指标管理模块主要利用层次分析法计算确定评价指标体系权重,并进行管理维护。

(1)浏览功能:

数据库技术是实现动态网页技术的必要手段,浏览者看到的内容实际上就是数据库中的数据。

在进行页面显示时,浏览器将数据库内容进行了转换,数据库在此过程中起着一个中间媒介的作用。

数据库设计的基本要求是保证数据的完整性和一致性。

(2)查询功能:

该主界面主要实现了整个系统操作功能的调用操作,并且显示当前的登录用户名。

在帮助菜单中有对该系统的操作说明以及关于程序的信息。

系统还添加了一个系统时间,方便客户合理安排时间。

(3)添加功能:

当有新的用户需要注册系统会员,其客户信息需要立即添加到系统中去以方便客户信息的科学有效地管理,即使更新等工作的开展,因此作为客户信息管理系统添加客户信息的功能非常重要,本系统当然也不例外,当要加入新的客户信息时,我们只要将相关的客户信息填写完毕,主要包括用户ID、客户姓名、用户性别、出生年月、备注等。

(4)删除功能:

该功能主要是为了方便管理而设置的,即有些客户已退出本系统,因此要将其相关信息从客户信息体统中删除,与修改客户信息相同,在删除之前要先进行搜索,当所找信息确认无误时,点击“删除”按钮就可以将信息删除了。

(5)修改功能:

修改用户信息功能主要是针对客户信息的变动来设计的,比如办公电话、邮箱、通讯地址的变动,我们都会重新进行登记,及时更新以便做好对客户信息的有效管理。

在实现该步骤的时候要先进行搜索,因此修改是对搜索功能延伸,搜索到了原先的客户信息之后进行重新登记,然后点击“确定”按钮就可以将客户信息进行保存了。

六、系统实现

1.登陆功能

使用者在浏览器中输入http:

//localhost:

8080/CustomerRMS/login.action便可进入

图4.1

图4.2

publicclassLoginAction{

privateStringusrName;//登陆账号

privateStringusrPassword;//密码

privateSysUserBizsubiz;

publicStringexecute()throwsException{

SysUseruser=subiz.login(usrName,usrPassword);

if(user!

=null){

ActionContext.getContext().getSession().put("user",user);

return"success";

}else{

return"error";

}}}

publicclassSysUserBiz{

publicSysUserlogin(StringusrName,StringusrPassword){

SysUseruser=null;

Stringhql="selectsufromSysUserassuwheresu.usrName='"+usrName+"'andsu.usrPassword='"+usrPassword+"'";

Listlist=sysuserDao.list(hql);

if(list!

=null&&list.size()>0){

user=(SysUser)list.get(0);

}

returnuser;}}

index.jsp

error.jsp

2.查询功能

publicclassAssignSalesUserAction{

privatelongchcDueId;

privateStringchcDueTo;

privateStringchcDueDate;

privateStringchcStatus;

privateSalesMBizsmbiz;

privateSysUserBizsubiz;

privateSalChancechance=newSalChance();

privateSysUseruser;

publicStringexecute()throwsException{

Dated=newDate();

SimpleDateFormatsf=newSimpleDateFormat("yyyy-MM-ddhh:

mm:

ss");

user=subiz.getSysUserById(chcDueId);

SalChancechancetemp=smbiz.getChanceById(chance.getChcId());

chancetemp.setChcDueId(chcDueId);

chancetemp.setChcDueTo(user.getUsrName());

chancetemp.setChcCreateDate(sf.format(d));

chancetemp.setChcStatus("已指派");//"2"为已指派

smbiz.updateChance(chancetemp);

return"success";

}

}

--跳转-->

sale/dev_detail.jsp

3.添加功能

当有新的用户需要注册系统会员,其客户信息需要立即添加到系统中去以方便客户信息的科学有效地管理,即使更新等工作的开展,因此作为客户信息管理系统添加客户信息的功能非常重要,本系统当然也不例外,当要加入新的客户信息时,我们只要将相关的客户信息填写完毕,主要包括用户ID、客户姓名、用户性别、出生年月、备注等。

publicclassEditBasDictAction{

privateLongdictId;

privateStringdictType;

privateStringdictItem;

privateStringdictValue;

privateBooleandictIsEditable;

privateBasDictplan=newBasDict();

publicStringexecute()throwsException{

BasDictddict=basbiz.getBasDictById(dictId);

ddict.setDictIsEditable(plan.getDictIsEditable());

ddict.setDictItem(plan.getDictItem());

ddict.setDictType(plan.getDictType());

ddict.setDictValue(plan.getDictValue());

basbiz.updateBasDict(ddict);

return"ww";}}

listbasdict.action?

flag=1

iftest="dictIsEditable==true">

dictId=

propertyvalue="dictId"/>');"title="编辑"src="images/bt_edit.gif"class="op_button"/>

if>

4.删除功能

该功能主要是为了方便管理而设置的,即有些客户已退出本系统,因此要将其相关信息从客户信息体统中删除,与修改客户信息相同,在删除之前要先进行搜索,当所找信息确认无误时,点击“删除”按钮就可以将信息删除了。

publicclassEditPasswordAction{

privateLongusrId;

privateSysUseruser=newSysUser();

privateStringusrPassword1;

privateStringusrName;

publicStringexecute()throwsException{

SysUseruser=(SysUser)ActionContext.getContext().getSession().get("user");

booleanflag=subiz.CheckPasswordByName(user.getUsrName(),usrPassword1);

HttpServletResponsersp=ServletActionContext.getResponse();

rsp.setCharacterEncoding("gbk");

PrintWriterprint=rsp.getWriter();

if(!

flag){

print.write("");

}else{

user.setUsrPassword(usrPassword2);

subiz.updateUser(user);

print.write("");

}

returnnull;//由于是Ajax

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

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1