客户关系管理系统设计_第1页
客户关系管理系统设计_第2页
客户关系管理系统设计_第3页
客户关系管理系统设计_第4页
客户关系管理系统设计_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要

随着互联网和信息技术的发展,企业在参与电子商务的过程中,最重视的

就是数据,企业间对客户的竞争就是对数据的竞争。企业在管理这些信息资源

的过程中,需要系统应用的支持,客户关系管理系统随之产生。该系统实现了

对客户信息、产品信息以及合同信息的管理和客户关怀功能,有效解决企业对

客户信息的详细记录以及后续潜在价值的分析,便于企业经营者能准确定义和

分析客户行为,更好地维护客户关系。

本系统的实现基于Java技术和JavaEE开发规范,以B/S为软件体系基础,

采取SpringBoot整合开发中使用到的各项开发技术,其中Web的请求和响应使

用实现了MVC设计模式的SpringMVC框架进行处理,后台服务器选择Tomcat,

数据库使用MySQL,ORM层的解决方案为Mybatis。

关键词:企业;数据;客户关系管理;系统

Abstract

WiththedevelopmentoftheInternetandinformationtechnology,intheprocess

ofparticipatingine-commerce,themostimportantthingisdata,andthecompetition

betweenenterprisesandcustomersisthecompetitionofdata.Intheprocessof

managingtheseinformationresources,thecompanyneedsthesupportofsystem

applications,andacustomerrelationshipmanagementsystemisborn.Thissystem

implementsthemanagementandcustomercarefunctionsofcustomerinformation,

productinformation,andcontractinformation,andeffectivelyresolvesdetailed

recordsofcustomerinformationandsubsequentanalysisofpotentialvalue,sothat

businessoperatorscanaccuratelydefineandanalyzecustomerbehavior,andbetterTo

maintaincustomerrelationships.

TheimplementationofthissystemisbasedonJavatechnologyandJavaEE

developmentspecifications,usingB/Sasthesoftwaresystemfoundation,and

adoptingvariousdevelopmenttechnologiesusedinSpringBootintegrated

development.WebrequestsandresponsesareperformedusingtheSpringMVC

frameworkthatimplementstheMVCdesignpatternProcessing,thebackground

serverselectsTomcat,thedatabaseusesMySQL,andtheORMlayersolutionis

Mybatis.

Keywords:EnterpriseDataCustomerRelationshipManagementSystem

目录

摘要I

AbstractII

第1章绪论1

1.1课题背景1

1.1.1课题研究背景1

1.1.2客户关系管理现状2

1.2目的和意义3

1.2.1课题目的3

1.2.2课题意义3

第2章可行性分析4

2.1经济可行性4

2.2技术可行性4

2.3运行可行性5

2.4开发技术介绍5

2.4.1IntelliJIDE开发工具5

2.4.2Spring与SpringBoot5

2.4.3Thymleaf模板6

2.4.4Ajax简析6

本章小结7

第3章需求分析8

3.1系统概述8

3.2功能需求分析8

3.3业务流程图设计9

3.4数据流程图设计9

3.5数据字典II

本章小结12

第4章系统设计13

4.1系统总体设计13

4.1.1软件体系结构13

4.1.2系统模块划分14

4.1.3数据库E-R图14

4.1.4数据库表设计15

4.2系统详细设计18

4.2.1功能结构描述18

本章小结20

第1章绪论

1.1课题背景

互联网是当下信息交互的主要渠道,在日常生活和商业活动中不可或缺,企

业对客户的重视就是对发展的重视,依托飞速发展的互联网和成熟的信息技术,

企业都在逐步建立专属的客户关系管理系统。

1.1.1课题研究背景

客户关系管理(CustomerRelationshipManagement,CRM)是一种企业与现有

客户及潜在客户之间关系互动的管理系统,其概念来自于管理科学。首先出现

在上世纪9()年代末期,由美国一家名为高德纳的咨询公司提出,以信息化技术

和互联网技术来协调、管理企业和客户在营销、销售及服务多方面形成的关系,

在现有的ERP概念基础上,更加强调对客户的管理。

CRM在美国的发展比较成熟,上世纪末才进入中国。在国内,CRM的相

关概念已经逐步渗透到各领域。企业在激烈的行业竞争下建立CRM,是为了将

企业投入到价格战上的精力,逐步转移到以客户为中心、提供高质量的服务管

理建设。由此在拉近企业与客户之间的距离的同时,又将潜在客户转化为签约

客户,留存签约客户,发展为忠诚客户,达到维系高品质客户的目的。实施客户

关系管理对企业发展大有裨益,在维持客户留存、提高客户满意度、发展忠实

客户的同时,也对客户收益和潜在收益产生积极的影响。

在当前市场竞争环境下,企业需要考虑如何充分依赖自身优势,制定有效、

符合自身的客户资源管理策略并实施,如何去争取到更多的客户,留存有价值

的信息资源。国内多数企业已经意识到客户信息资源的重要性,逐步转变以客

户为主体,重视落实客户信息的完善工作。以此提供给客户富有创新性的新式

营销服务。这不仅是客户对企业所提供新型服务方式和高品质服务质量的期盼,

也是企业内部重视客户服务,增强服务意识、水平和能力的具体体现。

推行客户关系管理系统的运行,是为了帮助企业建立以客户为中心的服务

管理,增强对客户的服务意识和水平,提高企业内部工作效率。企业可借助该

管理系统实现营销、服务、产品、合同等环节在内的业务流程自动化,通过新型

管理和技术达到企业降本增效的目的,具体到建立起一套流程化管理新模式。

以此构建出一个完善的客户关系管理系统,能全面提高企业对客户资源的管理

能力。

1.1.2客户关系管理现状

伴随移动互联网普及,客户获取产品信息方式逐渐多样化,同时也对产品

提出更高的要求。企业在传统方式上的产品竞争销售,已不能很好地应对当下

市场。所以如何准确识别客户的需求继而迅速响应,也就是引起客户兴趣最终

购买,然后提高客户的忠诚度是当下企业竞争的重心。管理客户关系是当下企

业维护客户资源的核心管理内容。使用CRM有利于解决企业在销售方面的问

题,例如:最近哪些产品畅销,这些产品的属性信息怎样,回头客数量如何,客

户群体标签是什么,流失情况如何、原因是什么等等。这些都可以通过开发一

个专门的客户关系管理系统来提供客户数据,进行收集、统计和分析,通过系

统为企业提供利用一种科学有效的方式。其中客户信息包括企业的合作伙伴、

普通客户,也包括大客户群体。使用客户关系管理系统,以客户为基石,充分利

用客户资源,以此为企业带来更大的商业价值。

从整体上看,国内客户关系管理的发展趋势,是跟随国外的发展步伐。客户

管理角度来看,以产品为中心的商业模式开始转变,都将客户视为重要资产,

对客户资料信息的统计完善工作普遍开始重视。部分企业已建立客户关系管理

系统,高效收集并管理客户的信息,企业内部间进行最大程度的共享已有资源。

系统整合以往各种分散的客户交互渠道,通过数据仓库、数据挖掘和商业智能

等技术手段,整合己有客户信息,进行分析整合,有效使用客户资源。

营销管理方面,关注焦点从单纯增加客户基础的进攻型营销上转移,在数

据库营销上的应用,从浅层次的客户基础信息支撑的浅营销,开始向客户行为

信息支撑的深度营销转型。企业都逐步建立客户参与的开放式平台。以此推动

客户沟通模式的变革。不仅仅像以前一样仅满足于倡导微笑服务,方向瞄准于

追求向客户提供更高效、准确、及时和便利的服务,提高服务水平。

销售管理方面,对一个企业来说,销售流程至关重要,支撑着企业的经济循

环。目前企业的销售管理人员,虽掌握大量销售数据,却难以进行加工整合。与

此同时,企业领导也姓以及时、准确掌握销售动态。所以积极学习先进企业销

售管理的经验,重视信息系统对销售业务的支撑,为企业领导提供决策支持。

服务管理方面,企业提高对客户服务水平,意在提高获客率、增加市场占有

率,大型企业纷纷建立了客户服务中心。在建设与运营方面,通过他建,利用其

他专业公司的先进技术、缩短工程周期;通过自营。保证用户信息安全与企业

核心业务在服务过程中的主导地位整体上逐步向以客户关怀为核心的服务理念

和机制转变。以他建自营模式的方式提升客户服务管理水平。

1.2目的和意义

客户是企业的重要资源,在当下,企业管理客户信息传统方式的方式已被抛

弃,迎合社会发展趋势,引进客户关系管理系统。良好的CRM系统在有效整合

客户资源的同时,还可以提升企业竞争力,支持企业的长久发展。

1.2.1课题目的

对企业来讲,重视客户关系管理的工作举足轻重。为了满足客户的需求,需

要明确客户意向,所以经常进行交流和记录,并在此基础上进行有针对性一对

一服务。本课题主要完成客户关系管理主题相关的研究和系统的实现,使得企

业内部对客户资源进行统一的管理.,缩短企业与客户的沟通周期,挽回流失客

户,最大化寻求公司利益,使客户资源不会浪费得到共享,同时提升企业的管

理方式和服务质量,为企业的长久发展提供支持。

122课题意义

随着经济社会的发展,企业面临的竞争空前增大。客户信息成为行业间争

相获取的宝贵资源。伴随信息技术不断提升,企业管理方式与时俱进,围绕客

户进行产品定制销售和营销个性化服务。因此,如何在复杂的市场环境下获客

留客是需要首先考虑的问题。

CRM可以看作一个巨大的客户资源数据中心,正确的使用数据中心,进行

发掘潜在客户,将己有客户培养为忠诚客户,帮助企业稳定发展和经济增长°

在完成对客户信息池的铺垫后,CRM就可以逐步整合企业的业务流程,向企业

内业务的各个方向延伸,结合门户网站、电话和网络客服、网络销售等电子商

务内容。通过整合资源体系,提高已有资源复用率,提高员工的工作效率,促进

业务流程的自动化程度,优化资源配置,使其更为合理有效。

在销售管理环节,CRM的存在可以提醒销售跟进客户、节约销售时间、在

销售停滞时及时发现原因并改正,同时还能轻松复制销售模式,帮助企业新员

工快速上手,对于企业的销售管理环节来说,至关重要的,解决多数中小企业

在销售管理方面的困扰。同时CMR也改变了企业的传统价格战策略,树立以客

户为核心的发展理念,增强企业的服务意识,为传统企业转型提供援助支持。

第2章可行性分析

可行性分析作为系统开发初期的重要任务,通过不同的角度分析系统在各

方面是否实用、可靠,在经济上是否合理,财务上是否盈利等,为决策提供依

据。在进行系统开发前,通过前期分析,确保开发理念正确,所以可行性分析是

系统开发过程中不可缺少的一部分。

2.1经济可行性

客户关系管理系统的项目成本主要需要计算机硬件资源和开发人员完成系

统的开发、测试。当系统通过测试后,即可投入使用。而在进行系统开发编日工

作前,首先对系统技术进行选型,将技术范围领域着眼于开源、免费、易用。

最终技术选型为SpringBoot+Spring+Mybatis的组合,Web模板选择

Thymeleaf,数据库选择开源历史悠久且易用稳定的MySQL。这些技术的使用成

本都很低,因为都拥有庞大的技术社区,有一定基础后即可进入开发,有问题

时迅速定位,借助社区力量可快速解决。所以程序在开发人力、财力的要求并

不高,开发周期短,在经济方面是可行的。而系统开发完成后,若顺利投入企业

进行使用,在降低企业对客户管理沟通的成本的同时,也增加了企业的利润营

收。

2.2技术可行性

本系统实现基于B/S架构,B/S(Browser/Server)即浏览滞/服务器。使用

B/S架构是因为该结构在功能拓展和维护方面简单、方便,开发完成后只需在服

务器端部署应用,客户端可借助任意浏览器访问服务器,对该系统进行使用。

对于前端页面,只需要掌握基本的Web开发技术,搭建出页面的静态模板。

然后由后端进行系统的业务逻辑处理。后端采用Java编程语言作为基础,在熟

悉浏览器的请求响应模式后,开发过程遵循J2EE规范,即可轻松实现系统。系

统的核心技术是SpringBoot,它的作用是整合开发中使用到的其它技术:如基于

MVC设计模式的SpringMVC,还有简化JDBC的ORM层技术Mybatiso开发

工具选择InteillJIDEA。这些都是当前技术市场上非常成熟的技术,可参阅的技

术文档也非常丰富,而且它们的可用性、可靠性非常之高,在技术上没有明显

的瓶颈,技术可行性是毋庸置疑的。

2.2运行可行性

系统用户在使用本系统时,仅需在本机上安装浏览器,通过浏览器访问本

系统提供的URL地址,即可获取本系统的相关资源进行使用。从这个角度来看,

提供给系统用户的使月方式是极为简易的。而应用本身是部署在服务器端,只

要保证服务器不宕机,就可以不间断为系统用户提供服务,服务器的维护,是

需要系统的运维人员来保证的。

综上所述,在系统开发完成并部署到服务器以后,客户使用仅需通过浏览

器,服务器的维护由运维人员来负责,这样系统运行的可行性就得到保证。

2.3开发技术介绍

2.3.1IntelliJIDE集成开发环境

IntelliJIDEA是用于Java语言的集成开发环境,对Java支持极好,尤其在

智能代码助手、Junit单元测试、代码重构、审核、UI创新和主流生态支持,如

SpringoIDEA的功能简单、易用。

IntelliJIDEA的每个细节设计都是为了最大限度提升使用者的开发效率。比

如智能静态代码分析、符合人体工程学的设计、代码结构一键格式、文件搜索

框、智能重构代码,使用IDEA让开发不仅高效,而且还有令人愉悦的编程体

验JDEA高级搜索强大在于,当它为源代码编制索引之后,在全局搜索条件下,

为每个上下文中提供相关建议,不仅快速而且智能,这样的功能非常实用:除

此之外,IDEA还有即时和巧妙的一键模板,对于重复的代码,可以自定义模板

来减少工作量。

2.3.2Spring与SpringBoot

Spring是一个轻量级控制反转和面向切面的容器框架。是J2EE企业级

开发中非常庞大的生态圈。Spring提供的功能口,控制反转的含义是,需要

对象时不会主动创建,而是由一个容器进行对象创建工作的管理,同时也包

含了对象间的依赖管理,对象间的依赖关系也由容器负责。面向切面是一种

抽象的编程思想,对公共功能复用。可以通过预编译方式,或者运行期代理

思想来增强程序功能,让代码在运行期进行更强大的功能提供。通过这种方

式,可以对系统中公共的业务逻辑,进行抽取分离,降低各部分间的耦合

度。缩短开发时间的前提下,提高程序的可维护性与重用性。

当前互联网技术更新迭代迅速,但Spring生命力顽强,Spring生态在后

端技术中占有较大一部分,基于Spring发展出来的SpringBool,是整合整

个Spring家族的重要助手,它采用了“约定优于配置”的思想,通过特定

的配置方式,即可轻松完成各技术间的无缝连接适配和生命周期管理。同时

基于注解的方式,又极大地简化了Spring的开发。SpringBoot有着开箱即

用的特点,当在开发过程中需要新技术的加入,只需以声明式编程方式即可

完成,大大简化了开发过程中复杂的配置工作以及依赖的管理工作。

2.3.3Thymleaf模板

Thymeleaf与JSP(JavaServerPage)一样同属模板引擎,对服务器没有强

依赖,直接适用于浏览器,以及现代服务器端如TomcatsJetty等。但Themleaf

模板不依赖于网络环境,在无网络环境中也可运行,与静态HTML页面无异,

而且完全不需要启动Web应用,但JSP就做不到这一点。Thymeleaf模板支

持HTML原型,所以可以给开发流程带来原生优雅且自然的HTML模板,同

时也可以作为静态原型工具。

Thymeleaf模板是不依赖于标签库的,这意味着它是对原生HTML在服

务器端的增强,可以在接受HTML的地方进行修改和展示,所以Thymeleaf

可以在浏览器环境的支持下,即点即用。因为它遵守HTML原型的约定,所

以可以在HTML标签里增加额外的属性,达到在模板上渲染后端数据的展示

方式,开发过程中只需进行相应的替换即可,极大的提高了开发效率。总的

来说,浏览器解释HTML时会忽略未定义的标签属性,所以Thymeleaf的模

板可以静态地运行。

2.4.4Ajax简析

Ajax是一种Web开发技术,特点是运行网页在不重新加载的前提下,便

能更新部分资源。传统B/S工作模型是基于request(请求)/response(响应)的,

每次需要Web资源时,就会发起一个新的请求,接收到响应时,浏览器会根

据接收到的资源,重新渲染整个页面。如果某些资源在请求前后从未改变,

那么传统的工作模式还是会让整个网页重新加载,这样产生了资源浪费的现

象。而Ajax则很好的避免了上述现象,它主要使用到JavaScript中核心对象

XMLHttp请求对象,基于此对象向服务器发起清求时,网页不会阻塞用户的

输入操作。这样就避免了重新请求整体Web资源,而与Web服务器交换数

据,即在不需要重新刷新整个页面的同时,实现局部刷新的效果。

使用Ajax的最大优点,就是能避免对多数相同的资源进行重复请求。可

以让页面更为迅捷地响应用户的操作,让应用程序体积变得更小、响应变得

更快,这样就提高资源重复利用率。同时Ajax是基于标准化并被广泛支持的

技术,意味着Ajax在浏览器上是提供直接运行支持的。

但Ajax也并非完美,Ajax也难以避免一些已知的安全弱点,诸如著名的

XSS跨站点脚步攻击、SQL注入攻击等待。使用Ajax意味着与后台数据直接

建立了一个通道,后台的逻辑有被反推理的风险,开发者不可避免地向外界

展现出一些数据和系统逻辑。

本章小结

本章首先对系统的可行性进行讨论分析,主要是经济可行性和技术可行性,

得出的结论是:不论是经济方面还是技术方面,都能得到满足。其中在技术可

行性方面,就系统的技术选型进行探讨。最后介绍了开发系统涉及到的相关前

后端技术。

第3章需求分析

需求分析的目的是,在系统开发前对系统的所有需求和功能进行一个总体

的设计研究,了解系统设计涉及的工具、模块以及开发过程中存在的问题可能

性,规避掉一定的风险,确保系统能够按时的完成的同时,质量又得到保证。

3.1功能需求分析

需求分析是软件开发中必不可少的步骤,对系统功能的实现以及系统整体架

构的实现有重大的意义,不仅明确使用方对系统的需求,也能帮助开发人员理

解所开发系统的功能,更准确地编程实现。

通过实现本系统,可以应用计算机对客户信息进行管理,有着方便、便捷的

特点。为企业提供一个系统而又全面的公司管理平台,公司内部人员可以实现

对客户、产品、合同的录入,相对于传统人工管理方式,使用系统对这些信息资

源进行统一管理的好处有:随时查找、快速检索、存储信息容量大、更加可靠、

更加保密等等。系统管理能够很好地改善客户关系管理工作的质量和效率,也

是客户关系管理走向科学化、规范化、信息化管理的重要条件和前提。系统用

户在登录系统后,可以选择不同的功能模块进行操作。核心功能是对客户信息

的管理,对客户的信息进行详细记录。在合同管理中,可以根据产品与客户录

入新的合同。在客户管理列表可以查看每个系统用户录入的客户,让所有客户

称为共享资源,这样既避免了客户资源的浪费,又在很大程度对客户进行统一

管理。客户关怀功能可以拉近企业与客户的关系,提升服务质量。本系统可以

提高公司管理客户的效率,提高服务品质,为公司追求最大化利益。

3.2系统概述

本系统主要包含以下几个模块以及功能简述:

1.登录模块:是使用系统的界面入口,同时校验系统用户

2.系统用户管理模块:增加新用户,管理系统用户

3.客户信息管理模块:添加和维护客户的信息

4.客户信息查询模块:查询现有客户信息

5.客户关怀功能模块:发送短信、邮件,客户生日提醒

6.产品信息管理模块:添加和维护产品信息

7.联络管理模块:添加和管理对客户的联络记录

8.合同管理模块:合同的新建和删除

3.3业务流程图设计

系统的用户必须先登录成功后才能使用,用户角色分为管理员、业务经理

和销售人员。主要的业务部分包括对客户的追踪,产品的管理和销售合同的签

订。由销售人员获取客户信息后,将客户信息添加到客户信息表中;对客户进

行跟进、联络;产品信息由管理员录入系统后即可向客户发起销售,随之建立

合同。在各阶段可以根据信息记录,整理形成报表。系统业务流程图如图3-1所

力、O

图3-1业务流程图

3.4数据流程图设计

数据流程图是一种对信息系统进行全面描述的工具,使用少量符号,简洁

展现出信息在系统中的储存、流动。它具有很好的概括性和抽象性。概括性是

指将业务流程与系统包含的信息相互联系起来,最终通过计算机完成信息处理;

抽象性的主要的表现是理清系统内的业务关系分界,关注数据的流动和存储。

数据流图是逻辑系统的图形化表示,表示系统逻辑模型的常用工具,图中不

直接体现任何具体物理元素,仅体现信息在系统中流转和处理。因此,它是需

求分析师与客户进行交流的有效工具。在本系统中,客户与企业业务之间的描

述就是以数据流程图的形式体现。通过数据流程图,可以更清晰的认识到客户

与业务之间的逻辑关系。系统的数据顶层流程图如图32所示,系统的一层数

据流程图如图3-3所示。

梢售人员

T—

——

—►

,订单合同表TP0

客户一销售报表T

业务经理

产品信息表T-合同统计表,

产品管理

产品出库表T客户关系管理系统

售.

财务部门

图3-2顶层数据流图

Fl合同单表

D3订单合同,

图3-3系统一层数据流图

3.5数据字典

数据字典类似于汉语词典,通过目录对应每个章节,是数据目录和数据访

问的对应关系。通俗的说,数据流图数据的定义和数据的解释的集合就是数据

字典。根据本系统的情况,数据库表定义如表3-1所示。

表3-1客户关系管理系统数据库表定义表

表名称表描述

users系统用户信息表

customers客户信息表

product产品信息表

contacts联络信息表

contract合同信息表

log日志信息表

系统的数据项定义表如表3-2所示

表3-2数据项定义表

数据项编号数据项名称描述

S1销售人员管理客户信息和产品销售

S2业务经理负责客户的订单合同

S3财务部门负责销售订单的结算

S4客户客户实体

P1合同管理客户购买的产品形成的合同

P2客户管理客户信息的添加和维护

P3销售管理产品销售记录的管理

P4联络管理对客户联络记录的管理

P5结算管理对销售订单进行结算

P6产品管理添加产品信息和维护

F1客户信息单客户相关信息

F2销售订单客户购买的产品订单

F3订单合同客户购买的产品形成的合同

F4产品信息单产品的信息,如名称、价格等

本章小结

本章首先介绍了系统的各个模块及功能。其次进行相应的功能需求分析,

明确此系统的功能,以绘制业务流程图和数据流程图的方式体现。进一步产生

数据字典。工欲善其事,必先利其器,有了以上的产物,在今后系统的开发过程

中,可以帮助开发人员按照既定计划有条不紊的进行。

第4章系统设计

经历过完善的需求分析,软件系统必须实现的功能己确定。之后的工作就是

针对需求进行系统功能设计。

4.1系统总体设计

4.1.1软件体系结构

本系统软件体系结构基于B/S实现,使用SSM(SpringMVC>SpringsMybatis)

架构,选择SpringBoot管理整合开发中涉及到的技术。SSM三大框架是表示层、

业务逻辑层和数据持久层之间进行交互通信的解决方案。其中SpringMVC负责

前端页面到服务器请求的拦截和服务器对请求处理结果的响应。Mybatis负责把

系统与数据库建立起连接,发送SQL给数据库执行,并处理执行结果。而Spring

则是协调系统中各部分的关系。

在表示层中,页面的交互是基于各静态HTML页面,使用Thymleaf模板引

擎进行渲染实现的。HTTP请求在Web页面中发起,然后会被服务器拦截进行

处理,生成对应的响应结果并返回,被模板引擎渲染后将页面和数据展示给系

统用户。持久层由Mybatis提供服务的支持,基于Mybatis编写Dao接口和对应

的XML文件,Mybatis会在运行时根据接口和配置文件,由动态代理生成相应

的代理类和对象,会进行相应方法的调用,至此,Java类与MySQL数据库之间

才能进行通信。最后,Spring负责了三大框架的管理任务。整个系统流程体系图

如图4-1所示。

图4-1系统流程体系图

4.1.2系统模块划分

系统模块划分,是在程序开发之前所须的必要的步骤,经过系统模块划分

之后,可以明确每个模块的具体功能,编码时可以更加迅速的理清思路。系统

功能模块图如图4-2所示。

图4-2功能模块图

合同信息管理数据分析

4.1.3数据库E.R图

E-R图,也称实体-联系图,用于描述数据库中表关系的图形,能够以直观

的方式反馈系统各个表之间的联系以及相互作用的关系,提供展示实体类型、

属性和关系的方法,用以表达宏观世界的理念模型。

E-R图是描述现实世界关系概念模型的有效方法。是表示概念关系模型的

一种方式。通过不同的图形表示不同的内容,可以让开发人员更加直观的看出

每个表之间拥有的对应关系,让开发过程更加顺利,不会因为考虑关系而去花

费时间,提高工作效率直观的展示了系统数据库中的各个表之间相互抵用和联

系的关系,同时要分析出是否有多余的联系,确定系统没有冗余,提高系统效

率,是程序设计的基础。它的核心思想就是利用实体,实体的属性以及实体之

间的关系来表示数据库系统的结构,下图可以清楚的看到系统涉及的表以及表

之间的关联关系。系统E・R图如图4-3所示。

图4-3E-R图

4.1.4数据库表设计

结合系统前期需求分析,得到客户关系管理系统的实际数据库模型。系统

数据库中各个表的设计结果和说明如下所示,每个表格对应数据库内一张表。

系统用户表:存储系统用户的基本信息。主要包括以下字段:ID、用户名、

密码、性别、出生年月日、角色、账号状态。系统用户修改信息就是对该表进行

操作,详情如表41所示。

表4-1系统用户表

列名数据类型长度允许空是否主键说明

user_idInt11否是主键自增1D

user_namevarchar20否否用户名

续表4-1

passwordvarchar20否否密码

sexvarchar2否否性别

birthdaytimestamp11否否生日

role_idint11否否角色

statusintII否否账号状态

客户信息表:由系统用户录入,存储客户的基本信息。主要包括以下字段:

主键ID、客户姓名、生日、客户所属类型、客户所在公司的信息等。系统功能

模块的核心就是管理客户信息,操作客户信息就是对该表进行操作,详情如表

4-2所示。

表4-2客户信息表

列名数据类型长度允许空是否主键说明

customcr_idInt11否是主键自增1D

cust_namevarchar50否否客户姓名

cust_typeInt11否否公司类型

cust_backgroundIntII否否公司背景

listedvarchar10否否是否上市

reg_capitalInt11否否注册资本

year_salesInt11是否年销售额

entp_scaleInt11是否企业规模

urlvarchar50是否常用邮箱

zip_codevarchar15是否邮政编码

addressvarchar50是否公司地址

main_productsvarchar200是否主营产品

niajor_servicesvarchar200是否主营服务

statusvarchar10否否客户状态

user_idInt11否否录入人id

create_timetimestampII否否创建时间

birthtimestamp11是否出生年月

产品信息表:由系统用户录入,存储经营产品的基本信息。主要包括以下字

段:产品ID主键、产品名称、产品编号、产品的单价、产品描述和产品备注。

系统的产品功能模块中,维护产品信息就是对该表进行操作,详情如表4-3所

刀、O

表4-3产品信息表

列名数据类型长度允许空是否主键说明

product_idht11否是主键自增】D

product_namevarchar32否否产品名称

producl_numbervarchar32是否产品编号

pricevarchar32是否单价

descriptionvarchar256是否产品描述

remarksvarchar256是否备注

联络信息表:由系统用户录入,存储联络客户的信息。主要包括以下字段:

ID、客户ID、客户的部门、职位、客户的联系方式和创建时间以及其他信息。

修改联络信息就是对该表进行操作,详情如表44所示。

表4-4联络信息表

列名数据类型长度允许空是否主键说明

cont_idInt11否是主键自增1D

cust_idInt11否否客户ID

cont_deptvarchar50否否客户部门

cont_positionvarchar50否否客户职位

cont_telephonevarchar20是否客户电话

cont_mobilevarchar20否否手机号

cont_cmailvarchar50是否邮箱

cont_qqvarchar20是否QQ号

tech_degreevarchar20是否技术程度

more_infbvarchar200是否其他信息

create_limetimestamp11是否创建时间

合同信息表:由系统用户录入,存储与客户签约合同的信息。主要包括以下

字段:ID、合同名称、编号、客户ID、产品ID、总价、生效日期和合同描述。

建立和删除合同信息就是对该表进行操作,详情如表4-5所示。

表4-5合同信息表

列名数据类型长度允许空是否主键说明

contract_idInt11否是主键自增1D

contract_numbervarchar32否否合同编号

contract_namevarchar32否否合同名称

custonier_idInt11否否签约客户ID

product_idInt11否否签约产品1D

续表4-5

product_numbervarchar32否否签约产品数量

|price_countvarchar32否否总价

effective_datetimestamp11否否生效日明

contract_descriptionvarchar256是否合同描述

日志信息表:由系统用户录入,存储与客户签约日志的信息。主要包括以下

字段:ID、客户ID、日志标题、描述和创建日期。管理日志信息就是对该表进

行操作,详情如表4-6所示。

表4-6日志信息表

列名数据类型长度允许空是否主键说明

log_idInt11否是主键自增】D

cust_idvarchar50否否客户ID

titlevarchar200否否日志标题

descInt11是否日志描述

create_timetimestamp11是否创建日期

4.2系统详细设计

系统的详细设计包括功能模块设计和数据库表设计。系统功能模块设计将系

统分为若干个子系统,便于对各个系统进行技术设计和评估。也是为了划分出

各功能模块,使客户关系管理系统脉络更为清晰,设计出能最大限度满足目的

的新系统,同时也有利于后续开发实现。

4.2.1功能结构描述

系统的核心功能模块有以下几点:

登录:该模块是系统所有用户的使用基础,只有登录后才可进行其他模

块的操作。进行登录拦截,主要是为了保护系统后台的信息。各模块的信息

管理包括系统用户信息、客户信息、产品信息、合同信息等系统功能模块。

系统用户登录后即可进行相应功能模块的信息维护。客户关怀:客户生日提

醒、发送短信以及邮件。添加系统用户的功能流程图如图4-4所示。

开始

新增

系统用户

提示用户名已存在,用户名

不可使用/是否已存在{提示两次密码

不一致

两次输入密码

是否一致

r是

添加成功

结束

图4-4新增用户功能流程图

删除信息的功能流程图如图4-5所示

开始)

选择要

删除信息

删除成功

图4-5删除信息功能流程图

本章小结

本章首先介绍了系统总体设计,包括软件体系结构和系统模块划分,大致

介绍了系统设计的三层架构和对应的解决方案,绘制了系统的功能模块图和E-

R图。在系统详细设计部分,详细地将系统拆分为子系统,绘制了系统部分功能

的功能流程图,然后详细分析了数据库表的功能设计。最后结合需求构造出关

系型数据库的表。

第5章系统实现

系统实现环节的重点是使用Java语言和编程开发工具,结合编程思想对系

统各个功能模块的实现。主要任务分为:选择编程语言、选择开发工具,采用的

编程思想。

5.1首页登录的实现

系统登录界面如图5-1所示。

图5-1登录界面图

本模块是客户关系管理系统的登陆页面,对正确的用户名密码放行进入系

统同时拦截无效的用户名密码,是对系统用户身份的检验。两个文本输入框分

别记录用户名和密码参数,在点击登录后发起一个登录请求,会向目标服务器

发送一个POST请求,请求体的参数为用户名和密码,后台根据请求参数后向

数据库发起查询,数据库执行对应的SELECT语句,查询参数中的用户名加密

码在数据库中是否存在记录。如果账户名和密码都相等,则向前台返回一个登

录成功的标识,否则返回一个登录失败的标识。这些信息作为响应结果包含在

HTTP响应体中,返回至前端页面。前端页面会根据响应结果,进行登陆成功后

的跳转,以及登录失败的友好提示。登录流程如图5-2所示。

图5-2登录流程图

5.2客户信息管理的实现

5.2.1实现客户信息添加

本模块是系统的客户信息添加,客户关系管理系统的基石就在于对客户信

息的维护,添加功能作为客户信息池的入口,至关重要。由系统用户录入客户

信息,当录入完毕,点击确定时,所有的客户信息通过JavaScript转化为JSON

格式,JSON数据会包含在HTTP的POST请求体中提交。后台拦截到提交客户

信息的请求后,便去获取JSON中客户信息的参数,然后操作数据库执行一条

INSERT语句,此时,客户的信息就被保存到数据库中。添加客户信息的流程如

图5-3所示。

开始

图5-3添加客户信息流程图

5.2.2实现客户信息列表

所有的客户信息经用户录入后都保存在数据库的customers表中,客户信息

列表功能是列出所有的客户及其对应的信息,提供对应的高级搜索功能和错误

客户信息的重新编辑入口。

当点击管理客户时,会发起一个获取客户信息列表的GET请求,后台拦截

到此请求后,会通过CustomerService调用CustomerDao,执行getAHCustomers()

函数,接下来操作数据库,发起一条SELECT查询,获取客户信息表中的所有

信息,将查询到的信息在后台转化为JSON格式,然后通过HTTP响应返回至

Web页面,随之解析峋应体的JSON值,将所有打开客户信息展示到界面上。

完成客户信息列表的展示。同理,通过高级查询搜索客户信息时也会执行

SELECT,唯一的区别在于附带WHERE条件和相应的参数。这样就完成了对客

户信息的管理和维护,界面如图5-4所示。

客户关系管注浜统•dminv

UMBP-,MHW)

1»rsH»名/WW(人•・—・・・MK••食趣:--an*--•,

新meM»AMBS«eM

1WWTHMn11Mgg

“产兄瞥理2MOUOUII14dX

3M3m

.—0

4MTYW)P019IfUQC

S«»rNi20191201M1Ml

6inii“n52019I?01MgM

图5-4客户信息列表功能界面图

5.3客户生日提醒的实现

对客户进行关怀是维护客户关系的重要方式,通过对客户生日进行提醒,

让系统用户可以与客户进行相应的互动、联系,促进企业与客户的关系。

此功能的实现是基于客户信息表中客户的出生日期。当使用生日提醒功能

模块时,会基于请求/响应模型发起请求,后台操作数据库查询生日为七天内的

所有客户的信息列表,主要操作客户信息表中的birth字段,基于格式化函数,

将条件控制在七天内o核心SQL语句:select*fromcustomerswheredate_format

(birth,,%m-%d,)>=date_format(now(),,%m-%d')anddate_format(birth,'%m-%d')

<=date_format(date_add(now(),interval6day)/%m-%d')o

5.4邮件发送功能的实现

邮件发送功能,是与客户保持联系较为重要的方式。在跟进客户的过程中

针对客户意向适当调整,调整跟进沟通的内容,有针对性的进行沟通。

邮件实现是基于STMP协议,借助163邮箱进行邮件传输代理(MTAMail

TransferAgent),由代理完成最终的邮件发送。邮件发送界面图如图5-5所示。

收件人邮箱:

境:

内容:

发送

图5-5邮件发送界面图

本章小结

本章主要介绍了客户关系管理系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论