毕业设计(论文)-通用CRM系统的设计与实现.doc_第1页
毕业设计(论文)-通用CRM系统的设计与实现.doc_第2页
毕业设计(论文)-通用CRM系统的设计与实现.doc_第3页
毕业设计(论文)-通用CRM系统的设计与实现.doc_第4页
毕业设计(论文)-通用CRM系统的设计与实现.doc_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

本 科 毕 业 设 计 (论 文)通用CRM系统的设计与实现The Design and Implementation of common CRM Systems全套设计加扣3012250582 学 院: 计算机工程学院 专业班级: 网络工程 网络102 学生姓名: 学 号: 指导教师: 2014年6月淮海工学院本科生毕业设计(论文)诚信承诺书 1.本人郑重地承诺所呈交的毕业设计(论文),是在指导教师的指导下严格按照学校和学院有关规定完成的。2.本人在毕业设计(论文)中引用他人的观点和参考资料均加以注释和说明。3.本人承诺在毕业设计(论文)选题和研究过程中没有抄袭他人研究成果和伪造相关数据等行为。4.在毕业设计(论文)中对侵犯任何方面知识产权的行为,由本人承担相应的法律责任。 毕业设计(论文)作者签名: 年 月 日毕业设计(论文)中文摘要通用CRM系统的设计与实现摘 要:CRM的概念提出已经很长时间了,目前国内外的市场上也已经有众多企业投身于CRM系统的研究与开发工作中。当下市场上的主流CRM系统大多是根据大中型企业的业务需求特别定制而成,系统的差异性较大。随着信息化社会进程的到来,国内的很多中小型企业迅速崛起,这些企业需要一个投入成本少,具备通用性的客户资源管理系统。本系统以客户信息为主线,通过分析和调研,集成了基本的客户信息管理以及分布统计功能,以此来帮助中小企业高效,快捷的实现客户资源管理。本系统使用Java EE技术,B/S的构架模式和Oracle数据库管理系统来开发,主要服务于企业销售和产品部门的工作人员,以他们的业务需求为原点,简化操作过程,设计了客户管理,订单管理,分析统计,以灵活实用的操作方式来实现企业的需求。关键词:客户资源管理;Java EE;B/S;Oracle毕业设计(论文)外文摘要The Design and Implementation of common CRM SystemsAbstract:The concept of CRM has been proposed a long time, the current domestic market also has a number of companies engaged in research and development CRM system. Current mainstream CRM systems on the market are mostly custom-made according to business needs and medium-sized enterprises, large differences in the system. With the advent of the information society processes, domestic rapid rise of many small and medium enterprises, these enterprises require a small investment costs, with the versatility of customer resource management systems. The main line customer information system, through analysis and research, integration of basic customer information management and distribution of statistical functions, in order to help SMEs efficient and fast realization of customer resource management. The system uses the Java EE technology, B/ S architecture model and Oracle database management system to develop, primarily serving the corporate sales staff and product sectors to their business needs as the origin, simplify the process of operation, designed the customer management, order management, statistical analysis, flexible and practical way to achieve the operating needs of the enterprise.Keywords: Customer Resource Management;Java EE;B/S;Oracle目 录1绪论11.1 课题的研究背景与意义11.2 问题的定义及内容简介11.3 问题的调研21.4 可行性分析21.5 论文各章简介32 需求分析42.1 业务流分析42.2 数据流分析42.3 数据字典73系统设计103.1 系统总体功能结构103.2 系统数据模型设计113.3 开发环境与运行环境设计184 客户信息管理模块设计194.1 客户信息管理模块的体系结构设计194.2 添加客户模块的详细设计204.3 客户信息修改模块的详细设计214.4 客户信息删除模块的详细设计224.5 客户信息查看模块的详细设计224.6 客户订单生成模块的详细设计234.7 客户查询模块的详细设计244.8 此模块遇到的问题及解决方案255 销售管理模块设计265.1 销售管理模块的体系结构设计265.2 销售管理模块的详细设计275.3 产品添加模块的详细设计285.4 产品编辑模块的详细设计295.5 产品删除模块的详细设计295.6 产品信息查询模块的详细设计305.7 此模块遇到的问题及解决方案316 统计分析模块设计326.1 统计分析模块的体系结构设计326.2 行业类别统计模块的详细设计336.3 客户级别统计模块的详细设计346.4 员工业绩统计模块的详细设计356.5 此模块遇到的问题及解决方案367 职工管理模块设计377.1 职工管理模块的体系结构设计377.2 职工管理的详细设计378 系统评价398.1 系统特色/优点介绍398.2 系统存在的不足与改进方案39结 论40致 谢41参 考 文 献42淮海工学院二一四届本科毕业设计(论文) 第 45 页 共 42页1绪论1.1 课题的研究背景与意义现代企业每天都必须面对各种变化。企业的生存环境在变、客户的需求在变、新的竞争对手不断出现、技术也不断更新换代有人说:唯一不变的就是变化本身。如何提高企业对外界变化的反应速度和应变能力,是每个企业领导者都面临的难题。而CRM是一个用来获取、保持以及增加可获利客户的方法和过程,是公司或者企业利用IT和互联网技术实现对客户的整合营销,是“以客户为主要核心”的企业营销的技术实现和管理实现。同时,CRM也是一种以信息技术为手段,对客户资源进行集中管理的经营策略,该策略的顺利实施需要相关CRM软件的支持。企业的最终目的是追求利益最大化,而进行客户关系管理是实现上述目的的重要手段,而CRM系统的应用是在立足企业利益的同时方便了客户,提高客户满意度。在现代化企业管理中,CRM将首当其冲的被应用于企业的销售、销售组织和服务组织,以此来提高企业的长久增值和核心竞争力。伴随着公司或企业与客户之间沟通方式的不断增多,CRM系统势必会在建立长久稳定的合作关系方面显示出其优越性并且发挥更大的作用。社区化的运用所造就的必然结果就是大量的信息汇聚,而CRM系统便会成为信息的汇聚地。能够抓住这一机遇并有效利用CRM系统这一点发展趋势的公司或者企业将会从中获得较大优势,这些公司或者企业能够将所有原本分散的环节汇聚在一起,以此来与所有客户建立起紧密而有效的合作关系。除此之外,通过将企业客户数据集中化,公司还可以为客户提供更周到的服务和更具有针对性的解决方案。1.2 问题的定义及内容简介本次毕业设计主要设计的是一个客户资源管理系统,为公司的销售及产品部员工所开发,是方便公司或者企业管理客户的有效工具。本系统基于Windows 7平台,使用Myeclipse进行开发,使用了Oracle 10g数据库服务器。系统主要包括客户管理,销售管理、员工管理、系统设置这4个功能:(1) 客户管理:客户信息的维护是由公司销售部的员工来完成的,因此此功能只有销售部职工登录后才可以进行操作。客户和员工之间存在对应关系,某一员工添加的客户只有该员工或其上级对其具有操作权限。员工可以根据客户需求下订单,订单生成后会发送给产品部职员,有他们呢负责处理订单。 (2)销售管理:销售管理是由公司产品部的员工来完成的,因此此功能只有产品部职工登陆后才可以进行操作。该模块主要是处理由销售部员工提交过来的订单。部门员工根据订单去查询相应产品的库存数量,根据库存数量处理订单并修改订单的状态。(3)员工管理:员工管理主要是由总经办职工来负责处理的。因此此功能只有总经办职工登陆后才可以进行操作。该模块主要是用来管理公司职工的信息,其中包括了公司所有部门的职工,业务人员可在此对公司职工的个人信息进行维护。(4)系统设置:系统设置主要是由系统管理员来操作维护的。该模块主要用于维护职工在本系统中的角色和权限,包括用户所属部门和登录系统的密码。1.3 问题的调研在进行本次毕业设计之前,我在实习单位江苏金士通信息技术有限公司充分调研了公司所开发过得客户管理系统的相关项目,了解了一些在开发过程中可能遇到的问题和技术方面将会面临的难题。初次之外,我与导师进行了及时的沟通,充分征求了导师的意见,将当前市面上现行的主流CRM系统进行了分析和参考,提取其中的共同点,将其进行研究和分析,给设计课题中的通用性提出了明确的定义和解释:通用即提取出主流系统的共同点,做到广泛适用。给出这一定以后,我又分析了其中的所涉及的各模块之间的业务关联性,对其中模糊不清的业务逻辑和行业概念进行了查询和咨询。最后,我构思出了系统的整体框架图并分析了其可行性。1.4 可行性分析系统可行性分析主要从以下几个方面展开:本次设计课题提出的问题是否能解决、现有的技术框架或编程语言能否完成这个系统、研发本系统所耗费的代价是否合理、能否在指定的时间段内完成本系统的开发工作、系统的操作方式是否能够适应公司或企业员工的计算机操作水平,系统所能带来的效益等问题。归结到底,可行性分析可分为四点分析:技术可行性,经济可行性,操作可行性和法律可行性。具体分析如下: (1)技术可行性CRM系统的开发与设计的设计主要使用的是java EE技术。软件方面,CRM系统的开发与设计需要的软件环境都已具备,数据库服务器则有Oracle,都能够处理大量数据,并保持数据的完整性并提供许多高级管理功能。其灵活性、安全性和易用性为数据库编程提供了良好的条件,系统的软件开发平台已可行。硬件方面,该系统对硬件的要求不高,按照当前硬件行业的发展,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,其硬件平台完全能满足此网站的需要。 (2)经济可行性此次研究的是用的开发环境和工具都是免费版本或开源项目,系统实现只需要一台具备以上环境和工具的pc即可,其他相关费用如参考资料费等开销都不是太多,经济可行性完全满足。 (3)操作可行性本CRM系统的整体设计过程中,采取了较为人性化的界面设计,系统健壮性较强,系统与用户之间的数据交互操作方便简洁。对于使用该系统的操作人员计算机水平要求低,绝大多数操作者能很快的熟悉这个系统的使用方法。对于使用该系统的一般用户来说,不需要掌握过多的计算机水平,可以轻松便捷的体验系统所提供的各项基本服务。因此,本系统有着非常大的操作可行性。 (4)法律可行性本系统所使用的所有开发软件都是开源或者免费工具,均未涉及任何法律问题。该系统由本人亲自设计开发而成,不存在任何法律上的侵权行为,与他人无利益上的冲突,故无须承担任何法律责任,所以从法律方面上看,研发该系统是完全可行的。1.5 论文各章简介第1章为绪论部分,这部门主要叙述了该课题研的研究背景与意义、问题的定义及内容简介、问题的调研以及可行性分析。第2章主要叙述了系统的需求分析,其中包括业务流分析、数据流分析以及数据字典三个部分。第3章主要叙述了系统总体设计,其中包括该系统的总体功能结构、该系统的数据模型设计(比如数据E-R图、数据关系模式、数据关系表),系统开发环境与运行环境设计。第4章主要叙述了客户信息管理模块的设计,其中包括客户记录添加设计、客户信息修改设计、客户记录删除设计、此模块遇到的问题及其解决方案。第5章主要叙述了销售管理模块的设计,其中包括产品订单添加设计、产品订单处理设计、产品记录删除设计、产品记录查询设计、此模块遇到的问题及其解决方案。第6章主要叙述了统计分析管理模块的设计,其中包括按照行业类别统计设计、按照客户类别统计设计、按照职工业绩统计设计、此模块遇到的问题及其解决方案。第7章主要叙述了职工管理模块的设计,其中包括职工的增加、删除、修改等功能的设计。第8章为结论部分,其中包括该系统的主要特色及优点的介绍,目前该系统还存在的不足与改进方案,结论。 最后包括致谢、参考资料等内容的介绍。2 需求分析2.1 业务流分析本系统是根据企业或公司日常的客户信息处理过程来进行的客户资源管理。日常客户信息处理流程如图2-1所示。图2-1 系统业务流图2.2 数据流分析该系统的主要功能是帮助公司或企业进行客户资源的管理,主要包括客户信息的维护、与客户之间的业务往来、客户分布情况的统计等。因此,整个系统的业务流如下:首先是各职能部门的员工使用自己的账号和密码登陆该系统,系统根据登陆职工在该系统中的角色和权限自动加载其所属业务模块。销售部职工拥有客户管理模块,产品部职工拥有销售管理模块,总经办职工在拥有前两个模块的基础上,还拥有职工管理和统计分析模块。各部门的业务模块对应着不同的功能,具备权限的职工可根据自己的角色进行相应的操作,系统会记录每一位登陆系统进行操作的职工身份。通过前期对该系统的需求分析,确定了该系统的功能模块,主要分为三大功能模块。该系统的数据流图如图2-2所示:图2-2 系统数据流图客户管理的数据流如图2-3所示。图2-3 客户信息管理模块数据流图 订单管理的数据流如图2-4所示。图2-4 订单信息管理模块数据流图职工管理的数据流如图2-5所示。图2-5 职工管理模块数据流图产品管理的数据流如图2-6所示。图2-6产品管理模块数据流图 按行业类别统计的数据流如图2-7所示。图2-7 按行业类别统计模块数据流图按客户级别统计的数据流如图2-8所示。图2-8 按客户级别统计模块数据流图2.3 数据字典该系统的主要功能是帮助公司或企业进行客户资源的管理,其中包含了客户管理、订单管理、职工管理等模块,其中客户管理模块所涉及的业务逻辑复杂,数据表众多,因此在数据字典里共定义了14张数据表,分别是:客户表、客户类型表、部门表、功能菜单表、功能菜单组表、行业类别表、订单表、订单状态表、产品表、产品编号表、角色表、角色功能对应表、职工表、自动编号表。主要数据流描述如下:(1)职员信息表 表名:客户信息表 描述:记录客户的详细信息定义:客户详细信息表=客户编号(自动生成)+客户名称+客户所在地址+客户办公电话+客户传真+客户邮编+客户邮箱+联系人姓名+联系人性别+联系人部门+联系人职位+联系人生日+联系人办公电话+联系人个人电话+联系人QQ+联系人Email+联系人地址+联系人兴趣爱好+客户级别+客户所属行业+创建人备注位置:数据库表(2)客户类型表 表名:客户类型表 描述:记录客户的级别定义:客户类型表=类别编号+类别名称备注位置:数据库表(3)部门表表名:部门表 描述:记录职工所属的部门定义:部门表=部门编号+部门名称备注位置:数据库表(4)功能表 表名:功能表 描述:记录该系统所有的功能菜单定义:功能表=功能编号+功能名称+功能URL链接+所属菜单组备注位置:数据库表(5)功能菜单组表表名:功能菜单组表描述:记录该系统所有的功能菜单组定义:功能菜单组表=组编号+组名称备注位置:数据库表(6)行业类别表表名:行业类别表描述:记录客户所属的行业类别定义:行业类别表=行业编号+行业名称备注位置:数据库表(7)订单表表名:订单表描述:记录所有订单信息定义:订单表=订单编号+客户编号+客户名称+产品编号+产品类别+订购数量+订购时间+订单状态+负责人备注位置:数据库表(8)订单状态表表名:订单状态表描述:记录订单最新的状态定义:订单状态表=状态编号+状态名称备注位置:数据库表(9)产品表表名:产品表 描述:记录当前产品的库存信息定义:产品表=产品编号+产品数量+产品名称+所属类别备注位置:数据库表(10)产品编号表表名:产品编号表 描述:存储产品最新编号定义:产品编号表=id号+最新编号备注位置:数据库表(11)角色表表名:角色表描述:记录系统角色定义:角色表=角色编号+角色名称+所属部门备注位置:数据库表(12)角色功能对应表表名:角色功能对应表描述:记录角色和每个角色拥有的功能定义:角色功能对应表=角色ID号+功能ID号备注位置:数据库表(13)职工表表名:职工表描述:记录所有职工信息定义:职工表=职工编号+职工姓名+职工性别+办公电话+移动电话+登录名+登录密码+用户角色+所属部门备注位置:数据库表(14)自动编号表表名:自动编号表描述:记录系统的所涉及的自动生成的编号定义:自动编号表=ID号+当前最新编号备注位置:数据库表3系统设计3.1 系统总体功能结构完成对通用CRM系统功能划分和数据需求分析之后,系统可以分为4个模块:客户信息管理模块、销售管理模块、决策分析模块、系统设置模块。系统功能图如图3-1所示:权限分配CRM系统客户管理销售管理决策分析系统设置员工个人客户部门客户订单管理销售统计客户信息统计销售信息统计员工管理图3-1 通用CRM系统功能图(1)客户管理:客户信息的维护是由公司销售部的员工来完成的,因此此功能只有销售部职工登录后才可以进行操作。客户和员工之间存在对应关系,某一员工添加的客户只有该员工或其上级对其具有操作权限。员工可以根据客户需求下订单,订单生成后会发送给产品部职员,有他们呢负责处理订单。 (2)销售管理:销售管理是由公司产品部的员工来完成的,因此此功能只有产品部职工登陆后才可以进行操作。该模块主要是处理由销售部员工提交过来的订单。部门员工根据订单去查询相应产品的库存数量,根据库存数量处理订单并修改订单的状态。(3)员工管理:员工管理主要是由总经办职工来负责处理的。因此此功能只有总经办职工登陆后才可以进行操作。该模块主要是用来管理公司职工的信息,其中包括了公司所有部门的职工,业务人员可在此对公司职工的个人信息进行维护。(4)系统设置:系统设置主要是由系统管理员来操作维护的。该模块主要用于维护职工在本系统中的角色和权限,包括用户所属部门和登录系统的密码。3.2 系统数据模型设计3.2.1 数据概念结构设计E-R图依据上面的数据流分析,系统主要有以下实体:客户、客户信息表、订单、订单信息表、产品、产品信息表、职工、职工信息表、功能信息表、角色功能对应表、功能菜单组表。它们之间的关系用E-R表示,如图3-2所示:图3-2系统E-R图系统各实体E-R图(部分):(1)企业职工信息实体如图3-3所示:图3-3 企业职工信息实体(2)客户信息实体如图3-4所示:图3-4客户信息实体(3)订单信息实体如图3-5所示: 图3-5订单信息实体(4)产品信息实体如图3-6所示: 图3-6产品信息实体(5)功能信息实体如图3-7所示: 图3-7功能信息实体(6)其他实体如图3-8所示:图3-8其他实体3.2.2 数据逻辑结构设计关系模式根据上述E-R图,可以得到系统关系模式如下:(1)客户表customer(客户编号num,客户名称 name,客户地址 address,客户电话 phone,客户传真 fax,客户邮编 zipcode,客户邮箱 Email,联系人姓名 contactName,联系人性别 contactGender,联系人部门 contactdepartment,联系人职位 contactposition,联系人生日 contactbirthday,联系人办公电话contactofficephone,联系人个人电话 contactmobilephone,联系人QQ contactQQ,联系人Email contactemail,联系人地址 contactadress,联系人兴趣爱好 contactinterest,客户级别 customertype,客户所属行业 industrytype,创建人 staff)(2)客户类型表customertype(类别编号 id,类别名称 typename )(3)部门表department(部门编号 id,部门名称name)(4)功能表function(功能编号 id,功能名称 name,功能URL链接 url,所属菜单组 functiongroup)(5)功能菜单组functiongroup(组编号 id,组名称 name)(6)行业类型表industrytype(行业编号 id,行业名称 industryname)(7)订单表orderform(订单编号 num,客户编号 customerNum,客户名称 customerName,产品编号 productNum,产品类别 industrytype,订购数量 count,订购时间 data,订单状态 orderstatu,负责人 staff)(8)订单状态表orderstatu(状态编号 id,状态名称 statuname)(9)产品表product(产品编号 num,产品数量 count,产品名称 name,所属类别 industrytype)(10)产品编号表productautonum(记录编号id号,最新编号 currentnum)(11)角色表 role(角色编号 roleid,角色名称 rolename,所属部门 department)(12)角色功能对应表 rolefunction(记录编号 id,角色ID号 id,功能ID号 functionId)(13)职工表 staff(职工编号 num,职工姓名 name,职工性别 gender,办公电话 officephone,移动电话 mobilephone,登录名 loginname,登录密码 password,用户角色 role,所属部门 department)(14)自动编号表 autonum(记录ID号 id,当前最新编号 currentNum )说明:逻辑结构设计中,下划线表示该数据项为当前数据表的主关键字,波浪线表示该数据项为当前数据表的外关键字。3.2.3 数据逻辑结构设计关系表结合以上描述的数据关系模式来进行数据库表的设计工作。在Oracle 10g数据库服务器下创建名为UniversalCrm的数据库,其中共包含了14张数据表:客户表(customer)、客户类型表(customertype)、部门表(department)、功能菜单表(function)、功能菜单组表(functiongroup)、行业类别表(industrytype)、订单表(orderform)、订单状态表(orderstatu)、产品表(product)、产品编号表(productautonum)、角色表(role)、角色功能对应表(rolefunction)、职工表(staff)、自动编号表(autonum)。关系表和结构如下表所示:表3-1 customer(客户信息表)序号列名字段类型长度标识主键是否空说明1CustomerNumnumber20是NID号(客户编号)2CustomerNamevarchar50N客户名称3CustomerAdressvarchar50客户地址4CustomerPhonevarchar20客户电话5CustomerFaxvarchar20客户传真6CustomerZipCodevarchar10客户邮编7CustomerEmailvarchar20客户邮箱8CustomerWebsitevarchar20客户网站9BankNamevarchar50开户行10BankAccountvarchar20银行账号11VATNumbervarchar20增值税号12CashAccountvarchar20现金账号13ContactNamevarchar10N联系人姓名14ContactGendervarchar5N联系人性别15ContactDepartmentvarchar20联系人部门16ContactPositionvarchar20联系人职务17ContactBirthdayvarchar10联系人生日18ContactOfficePhonevarchar20联系人办公电话19ContactMobilePhonevarchar20联系人移动电话20ContactQQvarchar20联系人QQ号码21ContactEmailvarchar20联系人邮箱22ContactAdressvarchar50联系人地址23ContactInterestvarchar20联系人爱好24Remarkvarchar100备注25IndustryTypenumber10外键N行业类别26CustomerTypenumber10外键N客户类别27ChangerNumber10外键N负责人表3-2 customertype表(客户类型表)序号列名字段类型长度标识主键是否空说明1CustomerNumnumber20是NID号(类别编号)2namevarchar50N类别名称表3-3 deparment表(部门表)序号列名字段类型长度标识主键是否空说明1departmentNumnumber10是NID号(部门编号)2namevarchar50N部门名称表3-4 function表(功能表)序号列名字段类型长度标识主键是否空说明1functionNumnumber10是NID号(功能编号)2namevarchar50N功能名称3urlvarchar50N功能链接url4functiongroupnumber10外键所属功能组表3-5 functiongroup表(功能菜单组表)序号列名字段类型长度标识主键是否空说明1groupNumnumber10是NID号(组编号)2namevarchar50N组名称表3-6 industrytype表(行业类别表)序号列名字段类型长度标识主键是否空说明1typenumnumber10是NID号(行业编号)2namevarchar50N行业名称表3-7 orderform表(订单表)序号列名字段类型长度标识主键是否空说明1numnumber10是NID号(订单编号)2customernumnumber10外键N客户编号3customernamevarchar10外键N客户名称4Productnumnumber10外键N产品编号5productnamenumber10外键N产品名称6buycountnumber10N订购数量7buydatadateN订购时间8orderstatunumber10外键N订单状态9changernumber10外键N负责人表3-8 orderstatu表(订单状态表)序号列名字段类型长度标识主键是否空说明1numnumber10是NID号(状态编号)2statunameVarchar50N状态名称表3-9 product表(产品表)序号列名字段类型长度标识主键是否空说明1numnumber10是NID号(产品编号)2nameVarchar50N产品名称3countnumber10N产品数量4industrytypenumber10外键N所属类别表3-10 productautonum表(产品编号表)序号列名字段类型长度标识主键是否空说明1idnumber10是NID号2numnumber10N最新编号表3-11 roles表(角色表)序号列名字段类型长度标识主键是否空说明1idnumber10是NID号(角色编号)2namevarchar50N角色名称3Departmentnumber10外键N所属部门表3-12 rolefunction表(角色功能对应表)序号列名字段类型长度标识主键是否空说明1idnumber10是NID号(角色id号)2functionidnumber10外键N功能id号表3-13 staff表(职工表)序号列名字段类型长度标识主键是否空说明1numnumber10是NID号(职工编号)2namevarchar50N职工姓名3gendervarchar2N职工性别4officephonevarchar20办公电话5mobilephonevarchar20移动电话6loginnamevarchar20N登录名称7passwordvarchar20N密码8rolenumber10外键N用户角色9departmentnumber10外键N所属部门表3-14 autonum表(自动编号表)序号列名字段类型长度标识主键是否空说明1idnumber10是NID号2numnumber10N最新编号3.3 开发环境与运行环境设计3.3.1 开发环境设计该系统是基于web的通用CRM系统。是为了方便中小型企业对客户资源的管理。为了适应大众公司或企业的使用,系统使用b/s模型,采用MyEclipse作为开发工具,使用了当前web开发中较为主流的Java EE的开发技术,数据库采用了使用于中小型企业的Oracle 10g的数据库服务器进行数据存储功能。Jsp是由Sun Microsystems公司倡导、众多软件开发公司参与一起研发、建立的一种动态网页技术标准。3.3.2 运行环境设计本系统运行所需要的硬件环境和软件环境如下:l 硬件环境(1) 一台当前市面上标准配置或以上的服务器,具体配置如下:Intel 处理器 ;2G以上内存;16G以上硬盘;以太网网卡。(2) 网络连接所需的常用硬件设备。l 软件环境(1)操作系统:Micorsoft Windows sever 操作系统(2)开发工具:MyEclipse(3)数据库:Oracle 10g(4)浏览器:本系统可以适配当前市面上的任何一款浏览器,在系统的实际开发、调试以及后期测试过程中,本人使用的是google chrome浏览器以及搜狗高速浏览器。4 客户信息管理模块设计4.1 客户信息管理模块的体系结构设计4.1.1 客户信息管理模块的功能简介客户信息的维护是由公司销售部的员工来完成的,因此此功能只有销售部职工登录后才可以进行操作。客户和员工之间存在对应关系,某一员工添加的客户只有该员工或其上级对其具有操作权限。员工可以根据客户需求下订单,订单生成后会发送给产品部职员,有他们呢负责处理订单。这个模块共有客户添加,客户信息修改,客户信息删除,客户详细信息查看、客户订单生成五个子功能。模块功能图如图4-1所示:图4-1 客户信息管理模块功能图4.1.2 客户信息管理模块的模块流程图客户信息管理模块流程图如图4-2所示:图4-2 客户信息管理模块流程图4.2 添加客户模块的详细设计4.2.1 添加客户模块的界面设计添加客户模块是登录该系统的销售部职工所具备的功能,其中客户信息分为三个部分,分别是客户信息、联系人信息、客户类别。客户信息模块中包含了客户编号、名称、地址、电话、传真、邮编、邮箱;联系人信息模块包含了姓名、性别(默认男)、供职部门、职务、办公电话、移动电话、QQ号码、电子邮箱、生日、爱好、备注;客户类别模块包含了行业类别、客户类别。客户和当前登录系统的员工之间是存在对应关系的,因此,添加客户时负责人默认为执行当前操作的员工,添加时间默认为当前时间。客户编号在数据库表中作为主要关键字而存在的,故该模块中的客户编号由系统自动生成,操作员不可对其进行编辑操作。 添加页面设计如下图4-3所示:图4-3 客户添加界面4.2.2 添加职工模块的逻辑设计 添加客户时由页面表单将操作员输入的用户提交给后台所定义的customer对象,该模块的核心代码如图4-4所示 图4-4 客户添加核心代码4.3 客户信息修改模块的详细设计4.3.1 客户信息修改模块的界面设计客户信息修改模块是将客户信息从数据库中读取出来对其中的一些信息进行编辑,编辑完成后将数据库中的数据进行更新。该模块中的客户编号同样是不能进行编辑的,其他信息均可以进行修改。客户信息修改模块的界面设计如图4-5所示。 图4-5 客户信息修改页面4.3.2 职工信息修改模块的逻辑设计对客户信息进行编辑时需要经过两部操作,首先需要根据客户编号从数据库中去获取客户的详细信息,第二步操作是将更新后的客户信息重新加入到数据库中去,简单来说,就是查询和更新,核心代码如图4-6和图4-7所示。图4-6 客户信息修改第一步核心代码图4-7 客户信息修改第二步核心代码4.4 客户信息删除模块的详细设计4.4.1 客户信息修改模块的界面设计客户信息删除模块是根据客户编号来完成的,当页面上选中某一客户后,系统会自动获取其编号,当操作员选择删除操作后,系统将会完成该客户的删除任务,如图4-8所示:图4-8 客户信息删除页面4.4.2 客户信息删除模块的逻辑设计删除用户信息是首先获取当前选中客户的客户编号,确认删除后调用CustomerCLAction中的delete()方法来完成删除操作;4.5 客户信息查看模块的详细设计4.5.1 客户信息查看模块的界面设计本系统的客户信息查看模块是分为两部分进行的,用户可以在登录系统在客户信息列表的页面上直观的查看客户的主要信息,其中包括客户编号、客户名称、客户地址、联系人姓名、性别、部门、联系方式、行业类别、客户类别。具体如图4-9所示:图4-9 客户信息查看页面如果当前页面所显示的客户信息不能够满足当前用户的需要,用户可以选中想要查看的客户,点击上方的详情菜单便可以查看客户详细信息,具体如图4-10所示:图4-10 客户信息详情页面4.5.2 客户信息查看模块的逻辑设计客户信息查看模块主要是查询customer数据表中和用户角色相符合的所有记录,并且根据客户编号显示客户的详细信息。这部分的实现所涉及的知识点及逻辑相对复杂一点,需要多个连接查询语句,同时需要注意到有关分页的相关知识点。主要逻辑顺序分为以下几点:(1) 获取当前登录系统的用户user;(2) 查询customer表中与user相关的客户记录Rs;(3) 统计Rs的总数,计算分页总数;(4) 分页显示客户信息中的主要信息;(5) 当用户点击详情按钮后,获取当前选中项的客户编号;(6) 根据客户编号查询Customer表中具体的客户信息;(7) 将客户详细信息通过set()、get()方法注入到页面的Customer对象中;4.6 客户订单生成模块的详细设计4.6.1 客户订单生成模块的界面设计本系统的客户订单生成模块是根据前期调研分析中中小型企业或公司业务流程中的一个基本点,同时也是该系统中客户管理模块和销售管理模块之间联系的桥梁。系统用户选中需要下单的客户后,点击下单按钮后弹出新增订单页面,具体如图4-11所示:图4-11 新增订单页面新增订单时系统会自动获取当前选中的客户编号,除此之外,系统会自动生成订单编号,这两个编号都是不可编辑的。用户需要首先选择产品类别,获取产品类别后,系统会自动去加载product表中属于该类别的所有商品并动态的添加在页面的产品名称下拉列表中。用户选择产品并填写订购数量后便可以提交订单。4.6.2 客户订单生成模块的逻辑设计客户订单生成模块主要是对数据库中orderform、industrytype、product三张表的操作,由于涉及到连接查询,业务逻辑处理稍显复杂。主要逻辑顺序分为以下几个步骤:(1) 获取当前选中的客户编号;(2) 系统自动生成订单编号;(3) 用户点击产品类别后去查询industrytype表,获取所有数据并显示在页面的下拉列表中;(4) 根据用户选择的产品类别去查询product表中属于该类别的产品名称并在页面的下拉列表中显示;(5) 将用户提交的订单信息保存至数据库中的orderform表中;该模块涉及的核心代码如图4-12和图4-13所示:图4-12 动态加载产品名称的核心代码图4-13 添加订单的核心代码4.7 客户查询模块的详细设计4.7.1 客户查询模块的界面设计客户查询是方便系统使用者对客户信息进行管理的模块。当系统中客户记录较多的时候,系统使用者在查看某一用户或者某一类用户时需要多次的翻页操作,同时需要

温馨提示

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

评论

0/150

提交评论