基于JavaEE的客戶關(guān)系管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文
《基于JavaEE的客戶關(guān)系管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文》由會員分享,可在線閱讀,更多相關(guān)《基于JavaEE的客戶關(guān)系管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)——畢業(yè)論文(34頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、聊城大學(xué)本科畢業(yè)設(shè)計(jì)本科畢業(yè)論文(設(shè)計(jì))題 目 基于JavaEE的客戶關(guān)系管理 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 專 業(yè) 軟件工程 作者姓名 學(xué) 號 單 位 聊城大學(xué) 指導(dǎo)教師 年 月 教務(wù)處編目 錄第1章 緒論21.1 系統(tǒng)開發(fā)背景21.2 系統(tǒng)開發(fā)意義2第2章 系統(tǒng)開發(fā)技術(shù)32.1 Tomcat服務(wù)器32.2 Oracle數(shù)據(jù)庫32.3 JavaEE概述42.4 SSM框架42.5 JQuery52.6 Ajax5第3章 系統(tǒng)分析與設(shè)計(jì)53.1 系統(tǒng)需求分析53.2 系統(tǒng)功能分析與描述63.2.1 管理登錄63.2.2 營銷管理63.2.3 客戶管理73.2.4 服務(wù)管理73.2.5 統(tǒng)計(jì)報(bào)表及基礎(chǔ)數(shù)據(jù)管
2、理73.3 數(shù)據(jù)庫設(shè)計(jì)83.3.1 數(shù)據(jù)庫流程圖83.3.2 主要數(shù)據(jù)表8第4章 系統(tǒng)功能模塊實(shí)現(xiàn)104.1管理登錄104.2營銷管理114.2.1 銷售機(jī)會管理114.2.2 客戶開發(fā)計(jì)劃134.3客戶管理144.3.1 客戶信息管理144.3.2 客戶流失管理164.4服務(wù)管理174.4.1 服務(wù)創(chuàng)建174.4.2服務(wù)分配174.5統(tǒng)計(jì)報(bào)表184.5.1客戶貢獻(xiàn)分析184.5.2客戶構(gòu)成分析204.6 基礎(chǔ)數(shù)據(jù)管理214.6.1 數(shù)據(jù)字典管理214.6.2 查詢產(chǎn)品信息22第5章 系統(tǒng)測試225.1 測試目的225.2 測試方法235.3 測試過程245.4 測試結(jié)果26第6章 結(jié)束語26
3、參考文獻(xiàn)27摘 要客戶是企業(yè)的的上帝,企業(yè)的客戶資源的正當(dāng)管理,是任何一個企業(yè)的生存與發(fā)展的頭等大事??蛻絷P(guān)系管理系統(tǒng)簡稱CRM,該系統(tǒng)就是應(yīng)對這一問題的而設(shè)計(jì)。CRM作為管理企業(yè)和客戶之間的業(yè)務(wù)關(guān)系的主要管理平臺,不僅僅對企業(yè)的業(yè)務(wù)關(guān)系進(jìn)行系統(tǒng)管理,還可以記錄企業(yè)同客戶之間的業(yè)務(wù)交往活動,同時可以使得客戶關(guān)系信息更加集中,管理人員可以通過分析這些客戶交易信息,更加簡捷地預(yù)測銷售業(yè)績,測量企業(yè)績效。它能更深入地挖掘橫向與縱向銷售機(jī)會,創(chuàng)造一個評估銷售流程的平臺,識別出現(xiàn)有的問題、最新的趨勢,及潛在的機(jī)會,直接或間接地增強(qiáng)了企業(yè)的盈利能力。該系統(tǒng)用JSP和Oracle數(shù)據(jù)庫實(shí)現(xiàn)了客戶信息的收集、
4、統(tǒng)計(jì)、歸類、查詢、分析、以及系統(tǒng)維護(hù)等功能。隨著計(jì)算機(jī)技術(shù)和互聯(lián)網(wǎng)的發(fā)展,它的功能將會根據(jù)實(shí)際應(yīng)用的具體情況進(jìn)行不斷的完善,以便更好應(yīng)用。本系統(tǒng)操作簡單,運(yùn)行穩(wěn)定,靈活性好,系統(tǒng)安全性系數(shù)高。關(guān)鍵詞:客戶關(guān)系;管理系統(tǒng);企業(yè);Javascript;OracleAbstractThe customer is the god of the enterprise, the proper management of the customer resources of the enterprise is the first priority of the survival and development
5、 of any enterprise.CRM is the customer relationship management system, which is designed to address this problem.CRM as a management enterprise and customer business relationship between the main management platform, system management for enterprise business relationship, not only can record compani
6、es with the customer relationship between the business activities, can make the customer relationship information more concentrated at the same time, managers can through the analysis of the clients trading information, more simple to predict sales, business performance measurement.It can be a more
7、in-depth mining horizontal and vertical sales opportunities, create a platform for evaluating sales process, to identify some problems and the latest trends, and the potential opportunities, directly or indirectly, to enhance the profitability of the enterprise.The system user Jsp and Oracle databas
8、es to implement the collection, statistics, categorization, query, analysis, and system maintenance of customer information.With the development of computer technology and the Internet, its function will be continuously improved according to the actual application, so as to better use it. This syste
9、m has simple operation, stable operation, good flexibility and high system safety. 基于JavaEE的客戶關(guān)系管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)第1章 緒論1.1 系統(tǒng)開發(fā)背景隨著市場經(jīng)濟(jì)的發(fā)展,各種企業(yè)雨后春筍迅速建立,企業(yè)之間愈發(fā)競爭激烈,同時各個企業(yè)之間信息交互增多、對不同情況的異常的解決方案,第一個是對數(shù)據(jù)的動態(tài)管理,第二個是對各種資料的靜態(tài)管理,對于一般的企業(yè)來說,它更加傾向于把各種雜亂無章的資料進(jìn)行分類管理,所以該javaEE的客戶關(guān)系管理系統(tǒng)在這種市場的沖擊下誕生了。 在信息時代的今天,各企業(yè)商家所關(guān)注的不再側(cè)重
10、于關(guān)于產(chǎn)品自身的質(zhì)量以及生產(chǎn)設(shè)備、員工素質(zhì)等方面的問題,更多的是關(guān)心自己的銷售群體即客戶群,關(guān)心他們的想法、需求和購買目的。在這樣的情形下,該系統(tǒng)產(chǎn)生了。什么是客戶的關(guān)系的管理呢?它是企業(yè)對于提高客戶對企業(yè)的滿意而展開的一項(xiàng)長期的建立企業(yè)和客戶之間關(guān)系的任務(wù)。1.2 系統(tǒng)開發(fā)意義對于一個企業(yè)來說,客戶關(guān)系的良好性至關(guān)重要,對于某些銷售型企業(yè)來說,客戶關(guān)系的重要性往往會變的更加突出,甚至可以決定該企業(yè)的生存和發(fā)展。它加強(qiáng)了潛在客戶的機(jī)會管理。杜絕了以往由于潛在客戶管理不當(dāng)而造成的損失。信息更加集中,銷售人員也更加有的放矢。通過分析這些客戶交易信息,未來交易的成功率得到了大幅的提高。隨著計(jì)算機(jī)技術(shù)
11、發(fā)展和計(jì)算機(jī)的普及,數(shù)字化網(wǎng)絡(luò)化應(yīng)用不斷擴(kuò)大,為提高工作效率人們迫切希望在利用計(jì)算機(jī)技術(shù)和網(wǎng)絡(luò)的基礎(chǔ)上,研發(fā)出客戶關(guān)系管理系統(tǒng),以減輕銷售人員的工作負(fù)擔(dān),提高其工作效率。與此同時,一個管理得當(dāng)?shù)目蛻絷P(guān)系系統(tǒng)還可以對企業(yè)的客戶和業(yè)務(wù)關(guān)系進(jìn)行存檔管理,極大程度的避免了由于銷售人員或者重要崗位領(lǐng)導(dǎo)的人事變動對企業(yè)造成客戶資源流失的致命性風(fēng)險??蛻絷P(guān)系管理強(qiáng)調(diào)以”客戶”為中心,以“銷售團(tuán)隊(duì)管理”為核心,以流程與執(zhí)行力為訴求的企業(yè)級“企業(yè)運(yùn)營管理”平臺。它的根本目的是通過不斷改善客戶關(guān)系、互動方式、資源調(diào)配等,降低運(yùn)營成本、提高企業(yè)銷售收入、客戶滿意度和員工生產(chǎn)力,同時更加簡捷地預(yù)測銷售業(yè)績,測量企業(yè)績
12、效。它能更深入地挖掘橫向與縱向銷售機(jī)會,創(chuàng)造一個評估銷售流程的平臺,識別出現(xiàn)有的問題、最新的趨勢,及潛在的機(jī)會,直接或間接地增強(qiáng)了企業(yè)的盈利能力,達(dá)到企業(yè)追求最大盈利為最終目的。CRM著眼于企業(yè)利益,同時方便了客戶。在當(dāng)今和未來的企業(yè)管理中,CRM將首當(dāng)其沖地應(yīng)用于企業(yè)的銷售、銷售組織和服務(wù)組織,給企業(yè)帶來長久增值和競爭力。第2章 系統(tǒng)開發(fā)技術(shù)2.1 Tomcat服務(wù)器 Tomcat是Apache 軟件基金會(Apache Software Foundation)的Jakarta 項(xiàng)目中的一個核心項(xiàng)目,由Apache、Sun 和其他一些公司及個人共同開發(fā)而成。由于有了Sun 的參與和支持,最新
13、的Servlet 和JSP 規(guī)范總是能在Tomcat 中得到體現(xiàn),Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 規(guī)范。因?yàn)門omcat 技術(shù)先進(jìn)、性能穩(wěn)定,而且免費(fèi),因而深受Java 愛好者的喜愛并得到了部分軟件開發(fā)商的認(rèn)可,成為目前比較流行的Web 應(yīng)用服務(wù)器。Tomcat 服務(wù)器是一個免費(fèi)的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對于一個初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)HTML(標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用)頁面的訪問請求
14、。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時,它實(shí)際上作為一個與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。2.2 Oracle數(shù)據(jù)庫ORACLE數(shù)據(jù)庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫之一。比如SilverStream就是基于數(shù)據(jù)庫的一種中間件。ORACLE數(shù)據(jù)庫是目前世界上使用最為廣泛的數(shù)據(jù)庫管理系統(tǒng),作為一個通用的數(shù)據(jù)庫系統(tǒng),它具有完整的數(shù)據(jù)管理功能;作為一個關(guān)系數(shù)據(jù)庫,它是一個完備關(guān)系的產(chǎn)品;作為分布式數(shù)據(jù)庫它實(shí)現(xiàn)
15、了分布式處理功能。但它的所有知識,只要在一種機(jī)型上學(xué)習(xí)了ORACLE知識,便能在各種類型的機(jī)器上使用它。Oracle數(shù)據(jù)庫最新版本為Oracle Database 12c。Oracle數(shù)據(jù)庫12c 引入了一個新的多承租方架構(gòu),使用該架構(gòu)可輕松部署和管理數(shù)據(jù)庫云。此外,一些創(chuàng)新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個數(shù)據(jù)庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數(shù)據(jù)和對數(shù)據(jù)分層。這些獨(dú)一無二的技術(shù)進(jìn)步再加上在可用性、安全性和大數(shù)據(jù)支持方面的主要增強(qiáng),使得Oracle數(shù)據(jù)庫12c 成為私有云和
16、公有云部署的理想平臺。2.3 JavaEE概述JavaEE是 J2EE的一個新的名稱,之所以改名,目的還是讓大家清楚J2EE只是Java企業(yè)應(yīng)用.隨著WEB和EJB容器概念誕生,使得軟件應(yīng)用業(yè)開始擔(dān)心SUN的伙伴們是否還在Java平臺上不斷推出翻新的標(biāo)準(zhǔn)框架,致使軟件應(yīng)用業(yè)的業(yè)務(wù)核心組件架構(gòu)無所適從,從一直以來是否需要EJB的討論聲中說明了這種彷徨。JavaEE是為開發(fā)企業(yè)環(huán)境下的應(yīng)用程序提供的一套解決方案,是一個開發(fā)分布式企業(yè)級應(yīng)用的規(guī)范和標(biāo)準(zhǔn)。該技術(shù)體系中包含的技術(shù)如:Servlet 、Jsp等,主要針對于Web應(yīng)用程序開發(fā)。2.4 SSM框架SSM框架集由Spring、SpringMVC
17、、MyBatis三個開源框架整合而成,常作為數(shù)據(jù)源較簡單的web項(xiàng)目的框架。對比SSH框架具有簡化開發(fā)代碼量、提高開發(fā)效率的特點(diǎn)。Spring是一個開源框架,Spring是于2003 年興起的一個輕量級的Java 開發(fā)框架,由Rod Johnson創(chuàng)建。簡單來說,Spring是一個分層的JavaSE/EEfull-stack(一站式)輕量級開源框架。具有輕量、控制反轉(zhuǎn)、面向切面、容器、架構(gòu)、MVC等特征。Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊。使用 Sp
18、ring 可插入的 MVC 架構(gòu),從而在使用Spring進(jìn)行WEB開發(fā)時,可以選擇使用Spring的SpringMVC框架或集成其他MVC開發(fā)框架,如Struts1,Struts2等。MyBatis 本是apache的一個開源項(xiàng)目iBatis, 2010年這個項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。2013年11月遷移到Github。iBATIS一詞來源于“internet”和“abatis”的組合,是一個基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objec
19、ts(DAO)2.5 JQuery簡介jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype之后又一個優(yōu)秀的JavaScript代碼庫(或JavaScript框架)。jQuery設(shè)計(jì)的宗旨是“write Less,Do More”,即倡導(dǎo)寫更少的代碼,做更多的事情。它封裝JavaScript常用的功能代碼,提供一種簡便的JavaScript設(shè)計(jì)模式,優(yōu)化HTML文檔操作、事件處理、動畫設(shè)計(jì)和Ajax交互。2.6 AjaxAJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技
20、術(shù)。AJAX = 異步 JavaScript和XML(標(biāo)準(zhǔn)通用標(biāo)記語言的子集)。AJAX 是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術(shù)。通過在后臺與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁實(shí)現(xiàn)異步更新。這意味著可以在不重新加載整個網(wǎng)頁的情況下,對網(wǎng)頁的某部分進(jìn)行更新,可使因特網(wǎng)應(yīng)用程序更小、更快,更友好。傳統(tǒng)的網(wǎng)頁(不使用 AJAX)如果需要更新內(nèi)容,必須重載整個網(wǎng)頁頁面。第3章 系統(tǒng)分析與設(shè)計(jì)3.1 系統(tǒng)需求分析CRM系統(tǒng)的宗旨是:為了滿足企業(yè)以及每個客戶的特殊需求,同每個客戶建立聯(lián)系,通過同客戶的聯(lián)系來了解客戶的不同需求,并在此基礎(chǔ)上進(jìn)行一對一個性化服務(wù)。CRM 管理系統(tǒng)通常由客戶信息管理、銷售過
21、程自動化(SFA)、營銷自動化( MA )、客戶服務(wù)與支持( CSS )管理、客戶分析( CA )系統(tǒng) 5 大主要功能模塊組成。該系統(tǒng)的應(yīng)以全方位的客戶關(guān)系管理基礎(chǔ),結(jié)合完善產(chǎn)品管理和財(cái)務(wù)管理,以及簡潔實(shí)用的辦公管理等與客戶關(guān)系維護(hù)和開發(fā)息息相關(guān)的各項(xiàng)內(nèi)容完美的融合在一起,是完全實(shí)現(xiàn)客戶、產(chǎn)品、財(cái)務(wù)、售后服務(wù)、團(tuán)隊(duì)管理、業(yè)績考核、日常辦公協(xié)同工作的管理平臺,使整個企業(yè)的客戶管理納入到統(tǒng)一的規(guī)范化管理中。系統(tǒng)基于B/S架構(gòu),用戶數(shù)不限,使用期限不限。企業(yè)內(nèi)各個部門不同崗位的管理人員分別設(shè)定不同的系統(tǒng)權(quán)限,比如普通業(yè)務(wù)員只能看到自己的客戶資料、合同訂單、應(yīng)收款、費(fèi)用等數(shù)據(jù),而銷售部門主管可以看到其
22、所屬團(tuán)隊(duì)成員的相關(guān)數(shù)據(jù),老板和銷售總監(jiān)則可以看到所有的數(shù)據(jù)。3.2 系統(tǒng)功能分析與描述系統(tǒng)主要提供管理登錄、營銷管理、客戶管理、服務(wù)管理、統(tǒng)計(jì)報(bào)表及基礎(chǔ)數(shù)據(jù)管理五項(xiàng)功能。系統(tǒng)功能用例圖如3-2-1所示:圖3-2-1 系統(tǒng)功能用例圖3.2.1 管理登錄系統(tǒng)管理員擁有查看并使用系統(tǒng)所有功能的權(quán)限,其中包括為普通用戶注冊帳號并設(shè)置其權(quán)限的功能,普通管理員只能用于部分管理功能;更改或刪除其他用戶權(quán)限的功能;刪除普通管理員的功能等。3.2.2 營銷管理營銷管理主要功能是針對指定客戶在線填報(bào)營銷策劃方案,由客戶管理部門負(fù)責(zé)人審批通過并分配給特定的業(yè)務(wù)員,業(yè)務(wù)員根據(jù)策劃方案執(zhí)行計(jì)劃,完成填報(bào)營銷結(jié)果。營銷管
23、理包括以下兩部分功能:1) 營銷機(jī)會管理用戶在營銷機(jī)會管理處可以修改或者刪除已有的營銷機(jī)會,當(dāng)然也可以創(chuàng)建新的營銷計(jì)劃,并且可以通過編號,客戶名稱以及聯(lián)系人等條件檢索已有的營銷機(jī)會,高一級的領(lǐng)導(dǎo)人員擁有更高的系統(tǒng)權(quán)限,可以對業(yè)務(wù)人員進(jìn)行營銷機(jī)會的授權(quán)。2) 客戶開發(fā)計(jì)劃用戶進(jìn)入客戶開發(fā)計(jì)劃處可以查看上級分配給自己的客戶開發(fā)計(jì)劃,并且能夠通過編號,客戶名稱以及聯(lián)系人等條件查詢已有的客戶開發(fā)計(jì)劃。用戶可以針對某一客戶開發(fā)計(jì)劃制定營銷策略,新建并執(zhí)行營銷策略,營銷策略執(zhí)行成功后保存執(zhí)行成功狀態(tài)。3.2.3 客戶管理客戶管理包括以下兩部分功能:1)客戶信息管理用戶進(jìn)入客戶信息管理頁面,可以通過ID編號
24、、客戶名稱、客戶經(jīng)理、聯(lián)系人電話等條件查詢客戶信息。針對某一客戶,可以進(jìn)行編輯客戶信息、指派聯(lián)系人、刪除用戶信息等操作,并能夠查看與該客戶的交往記錄。2)客戶流失管理用戶進(jìn)入客戶流失管理頁面,可以通過ID編號、客戶名稱等條件查詢流失客戶,流失客戶列表可以查看流失客戶信息以及狀態(tài)。針對已流失的客戶執(zhí)行確認(rèn)流失操作,針對提示流失預(yù)警的客戶可以新建暫緩流失方案暫緩客戶的流失。3.2.4 服務(wù)管理服務(wù)管理包括以下兩部分功能:1)服務(wù)創(chuàng)建用戶進(jìn)入服務(wù)創(chuàng)建頁面,可以通過設(shè)置服務(wù)類型(包括建議、舉報(bào)、投訴、咨詢)、客戶名稱、客戶單位、聯(lián)系方式、服務(wù)請求等創(chuàng)建服務(wù)。2)服務(wù)分配用戶進(jìn)入服務(wù)分配頁面,能夠通過服
25、務(wù)類型、客戶名稱、客戶單位、聯(lián)系方式、服務(wù)請求等條件查詢已創(chuàng)建的服務(wù),并能執(zhí)行將該服務(wù)分配給指定業(yè)務(wù)員工和刪除指定服務(wù)的操作。3.2.5 統(tǒng)計(jì)報(bào)表及基礎(chǔ)數(shù)據(jù)管理統(tǒng)計(jì)報(bào)表由以下功能組成:1)客戶貢獻(xiàn)分析用戶進(jìn)入客戶貢獻(xiàn)分析頁面,可以通過客戶名稱和ID編號等條件查詢客戶訂單金額等信息。2)客戶組成分析用戶進(jìn)入客戶組成分析頁面,可以通過客戶登記查詢普通客戶、合作伙伴、戰(zhàn)略合作伙伴的數(shù)量,通過信用度查詢不同信用度等級的客戶數(shù)量,通過滿意度查詢不同滿意度等級的客戶數(shù)量。基礎(chǔ)數(shù)據(jù)管理由以下功能組成:1)數(shù)據(jù)字典管理用戶進(jìn)入數(shù)據(jù)字典管理頁面,可以新建和查詢數(shù)據(jù)字典信息,并能夠通過類別、條目、值等條件查詢數(shù)據(jù)
26、字典信息。2)查詢產(chǎn)品信息用戶進(jìn)入查詢產(chǎn)品信息頁面,可以添加、編輯和刪除產(chǎn)品信息,并能夠通過名稱、型號、批次等條件查詢產(chǎn)品信息。3)查詢庫存信息用戶進(jìn)入查詢庫存信息頁面,可以添加、編輯和刪除產(chǎn)品批次信息,并能夠通過產(chǎn)品名稱、倉庫等條件查詢庫存信息。3.3 數(shù)據(jù)庫設(shè)計(jì)3.3.1 數(shù)據(jù)庫流程圖系統(tǒng)E-R圖如圖3-3-1所示:3.3.2 主要數(shù)據(jù)表(1)customer(客戶表)客戶表主要用于保存客戶信息,其結(jié)構(gòu)如表3.1所示:表3.1 customer(客戶表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號nameVARCHAR2(255)null客戶名regionVARCHAR2(
27、255)null地區(qū)manager_idNUMBERnull客戶經(jīng)理levelVARCHAR2(255)null客戶等級satifyVARCHAR2(255)null客戶滿意度creditVARCHAR2(255)null客戶信用度stateVARCHAR2(255)null客戶狀態(tài)telVARCHAR2(255)null聯(lián)系電話faxVARCHAR2(255)null客戶傳真(2)customer_drains(客戶流失表)客戶流失表主要用于保存流失客戶信息,其結(jié)構(gòu)如表3.2所示:表3.2 customer_drains(客戶流失表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序
28、號statusVARCHAR2(255)null流失狀態(tài)delayVARCHAR2(255)null暫緩流失計(jì)劃resonVARCHAR2(255)null流失原因drain_dateTIMESTAMP(6)null流失時間customer_idNUMBERnull客戶序號last_order_dateTIMESTAMP(6)null最后訂單時間(3)users(系統(tǒng)用戶表)系統(tǒng)用戶表主要用于保存系統(tǒng)用戶,其結(jié)構(gòu)如表3.3所示:表3.3 users(系統(tǒng)用戶表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號enableNUMBERnull用戶狀態(tài)nameVARCHAR2(255)
29、null用戶名passwordVARCHAR2(255)null密碼(4)sales_chance(營銷機(jī)會表)營銷機(jī)會表主要用于保存營銷機(jī)會,其結(jié)構(gòu)如表3.4所示:表3.4 sales_chance(營銷機(jī)會表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號cust_nameVARCHAR2(255)null客戶名titleVARCHAR2(255)null概要contactVARCHAR2(255)null聯(lián)系人create_byVARCHAR2(255)null創(chuàng)建人create_dateTIMESTAMP(6)null創(chuàng)建時間designeeVARCHAR2(255)nu
30、ll指派人descriptionVARCHAR2(255)null機(jī)會描述statusNUMBERnull狀態(tài)designee_dateTIMESTAMP(6)null指派時間(5)sales_plan(營銷計(jì)劃表)營銷計(jì)劃表主要用于保存營銷計(jì)劃,其結(jié)構(gòu)如表3.5所示:表3.5 sales_plan(營銷計(jì)劃表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號dateTIMESTAMP(6)null計(jì)劃實(shí)施時間to_doVARCHAR2(255)null計(jì)劃內(nèi)容resultVARCHAR2(255)null計(jì)劃執(zhí)行結(jié)果sale_chance_idNUMBERnull對應(yīng)營銷計(jì)劃序號
31、(6)orders(訂單表)訂單表主要用戶保存客戶訂單,其結(jié)構(gòu)如表3.6所示:表3.6 orders(訂單表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號customer_idNUMBERnull客戶序號dateTIMESTAMP(6)null訂單日期addressVARCHAR2(255)null地址statusVARCHAR2(255)null訂單狀態(tài)(7)product(產(chǎn)品表)產(chǎn)品表主要用于保存產(chǎn)品信息,其結(jié)構(gòu)如表3.7所示:表3.7 product(產(chǎn)品表)列名數(shù)據(jù)類型可否為空說明idNUMBERNot null序號nameVARCHAR2(255)null產(chǎn)品名稱t
32、ypeVARCHAR2(255)null產(chǎn)品型號batchVARCHAR2(255)null產(chǎn)品批次unitVARCHAR2(255)null產(chǎn)品單位priceNUMBERnull單價memoVARCHAR2(255)null備注第4章 系統(tǒng)功能模塊實(shí)現(xiàn)4.1管理登錄通過用戶提交表單的方式將用戶輸入的登錄用戶名、用戶密碼作為請求發(fā)送給對應(yīng)的Handler,對應(yīng)的Handler接收到用戶的登錄請求的數(shù)據(jù),然后從用戶表中查詢用戶的訪問請求數(shù)據(jù)是否存在,若查找結(jié)果為空,則返回當(dāng)前戶名不存;若查詢結(jié)果不為空,則當(dāng)前對象存在,然后再對用戶輸入的密碼進(jìn)行驗(yàn)證是否和數(shù)據(jù)庫中密碼字段的值相匹配,若不匹配則登錄
33、失敗,從新輸入密碼,若密碼驗(yàn)證成功,頁面跳轉(zhuǎn)到系統(tǒng)主頁并把用戶信息存到session域中。登錄界面如圖4.1所示:圖4.1 登錄界面登錄界面的核心代碼如下:RequestMapping(value=/login,method=RequestMethod.POST)public String login(RequestParam(value=name) String name,RequestParam(value=password) String password,Locale locale, HttpSession session,RedirectAttributes attributes)U
34、ser user = userService.login(name, password);if(user != null)session.setAttribute(user, user);return redirect:/success;String message = messageSource.getMessage(error.crm.user.login, null, locale);attributes.addFlashAttribute(message, message);attributes.addFlashAttribute(name, name);return redirect
35、:/index;4.2營銷管理營銷管理模塊是該系統(tǒng)的主要功能,實(shí)現(xiàn)了營銷方案的在線填報(bào)、審批、人員分配和執(zhí)行整個過程,由銷售機(jī)會管理和客戶開發(fā)計(jì)劃兩個主要功能組成。4.2.1 銷售機(jī)會管理普通用戶進(jìn)入銷售機(jī)會管理頁面,可以管理銷售機(jī)會,包括:銷售機(jī)會的新建、編輯和刪除;客戶部領(lǐng)導(dǎo)進(jìn)入銷售機(jī)會管理頁面,可以將已有的銷售機(jī)會分配給指定員工執(zhí)行。銷售機(jī)會管理頁面如圖4.2所示:圖4.2 銷售機(jī)會管理頁面銷售機(jī)會管理頁面的核心代碼如下:RequestMapping(value=/id,method=RequestMethod.PUT)public String update(SalesChance c
36、hance)chance.setStatus(1);salesChanceService.update(chance);return redirect:/chance/list;RequestMapping(value=/id,method=RequestMethod.GET)public String edit(PathVariable(value=id) long id,Map map)map.put(chance,salesChanceService.get(id);return chance/input;RequestMapping(value=/id,method=RequestMe
37、thod.DELETE)public String delete(PathVariable(value=id) long id)salesChanceService.delete(id);return redirect:/chance/list;RequestMapping(value=/,method=RequestMethod.POST)public String save(SalesChance chance,HttpSession session,RedirectAttributes attribute)User user = (User) session.getAttribute(u
38、ser);chance.setCreateBy(user);salesChanceService.save(chance);attribute.addFlashAttribute(message, 添加成功!);return redirect:/chance/list;4.2.2 客戶開發(fā)計(jì)劃用戶進(jìn)入客戶開發(fā)計(jì)劃頁面,能夠查看上級分配給自己的客戶開發(fā)計(jì)劃,并能夠針對分配給自己的客戶開發(fā)計(jì)劃添加計(jì)劃項(xiàng)并執(zhí)行,最后根據(jù)開發(fā)計(jì)劃的執(zhí)行結(jié)果設(shè)置計(jì)劃執(zhí)行成功或失敗??蛻糸_發(fā)計(jì)劃頁面如圖4.3所示:圖4.3 客戶開發(fā)計(jì)劃頁面客戶開發(fā)計(jì)劃頁面的核心代碼如下:RequestMapping(value=/lis
39、t)public String list(RequestParam(value=pageNo,required=false,defaultValue=1) Integer pageNo, RequestParam(value=pageSize,required=false,defaultValue=4) Integer pageSize, HttpServletRequest request, Map map)Page page = new Page();page.setPageNo(pageNo+);page.setPageSize(pageSize);Map params = WebUti
40、ls.getParametersStartingWith(request, search_);page = salesChanceService.getPage(page,params);map.put(page, page);String critariaStr = encodeParamWithPrefix(params,search_);map.put(critariaStr, critariaStr);return chance/list;4.3客戶管理4.3.1 客戶信息管理用戶進(jìn)入客戶信息管理頁面,可以查看所有信息并能夠按照附加條件進(jìn)行查詢,客戶信息包括聯(lián)系人、交往記錄和歷史訂單,
41、并能夠編輯和刪除客戶信息。客戶信息管理頁面如圖4.4所示:圖4.4 客戶信息管理頁面客戶信息管理頁面的核心代碼如下:RequestMapping(value=/list)public String list(RequestParam(value=pageNo,required=false,defaultValue=1) int pageNo, RequestParam(value=pageSize,required=false,defaultValue=4) int pageSize, HttpServletRequest request, Map map) Page page = new P
42、age();page.setPageNo(pageNo+);page.setPageSize(pageSize);Map params = WebUtils.getParametersStartingWith(request, search_);page = customerService.getPage(page,params);map.put(page, page);String critariaStr = encodeParamWithPrefix(params,search_);map.put(critariaStr, critariaStr);List locals = custom
43、erService.getAllKindsDicts(地區(qū));List levels = customerService.getAllKindsDicts(客戶等級);map.put(locals, locals);map.put(levels, levels);return /customer/list;4.3.2 客戶流失管理當(dāng)用戶長時間未沒有交易記錄時,用戶可以在客戶流失管理頁面查看出現(xiàn)流失預(yù)警的客戶信息,并且能夠針對提示流失預(yù)警的客戶創(chuàng)建暫緩措施??蛻袅魇Ч芾眄撁嫒鐖D4.5所示:圖4.5 客戶流失管理頁面客戶流失管理頁面的核心代碼如下:RequestMapping(value=/con
44、firm/id, method=RequestMethod.PUT)public String confirm(CustomerDrain customerDrain) drainService.updateConfirm(customerDrain);customerService.updateStatus(customerDrain.getId();return redirect:/drain/list;RequestMapping(value=/delay/)public String delay(RequestParam(value=id, required=false) long i
45、d, RequestParam(value=delay, required=false) String delay) CustomerDrain customerDrain = drainService.getById(id);String delayStr = customerDrain.getDelay();delayStr = delayStr + + delay;String split = delayStr.split();Integer count = split.length;customerDrain.setDelay(delayStr);drainService.update
46、Delay(customerDrain);return count.toString();4.4服務(wù)管理4.4.1 服務(wù)創(chuàng)建用戶進(jìn)入服務(wù)創(chuàng)建頁面,能夠針對客戶請求新建相應(yīng)服務(wù)滿足客戶的請求。服務(wù)創(chuàng)建頁面如圖4.6所示:圖4.6 服務(wù)創(chuàng)建頁面服務(wù)創(chuàng)建頁面的核心代碼如下:RequestMapping(value=/, method=RequestMethod.POST)public String save(com.atguigu.crm.entity.CustomerService custService) serviceService.save(custService);return redir
47、ect:/service/list;Insert(INSERT INTO customer_services(id, service_type, service_title, customer_id, service_state, service_request, created_id, create_date) VALUES(crm_seq.nextval,#serviceType, #serviceTitle, #customer.id, #serviceState, #serviceRequest, #createdby.id, #createDate)void save(Custome
48、rService custService);4.4.2服務(wù)分配服務(wù)分配頁面如圖4.7所示:圖4.7 服務(wù)分配頁面服務(wù)分配頁面的核心代碼如下:ResponseBodyRequestMapping(value=/dispatch)public String dispatch(RequestParam(value=serviceId, required=false) long serviceId, RequestParam(value=allotToId, required=false) long allotToId) CustomerService service = new CustomerSe
49、rvice();service.setId(serviceId);User allotTo = new User();allotTo.setId(allotToId);service.setAllotTo(allotTo);serviceService.updateAllotTo(service);return 1;4.5統(tǒng)計(jì)報(bào)表統(tǒng)計(jì)報(bào)表模塊包括客戶貢獻(xiàn)分析和客戶構(gòu)成分析。通過該功能模塊,用戶能夠查看所有用戶的訂單總金額,查看不同等級、信用度、滿意度的客戶數(shù)量等信息。4.5.1客戶貢獻(xiàn)分析客戶貢獻(xiàn)分析頁面如圖4.8所示:圖4.8 客戶貢獻(xiàn)分析頁面客戶貢獻(xiàn)分析頁面的核心代碼如下:RequestM
50、apping(value=/pay/, method=RequestMethod.GET)public String pay(RequestParam(value=pageNo, required=false, defaultValue=1) String pageNoStr, Map map, HttpServletRequest request) throws ParseException int pageNo = 1;try pageNo = Integer.parseInt(pageNoStr); catch (NumberFormatException e) Map params =
51、 WebUtils.getParametersStartingWith(request, search_);Page page = reportService.getPayPage(pageNo, 5, params);map.put(page, page);String queryString = PropertyFilter.parseParams2QueryString(params, search_);map.put(queryString, queryString);return report/pay;4.5.2客戶構(gòu)成分析客戶構(gòu)成分析頁面如圖4.9所示:圖4.9 客戶構(gòu)成分析頁面客
52、戶構(gòu)成分析頁面的核心代碼如下:RequestMapping(value=/consist, method=RequestMethod.GET)public String consist(RequestParam(value=pageNo, required=false, defaultValue=1) String pageNoStr, Map map, HttpServletRequest request) int pageNo = 1;try pageNo = Integer.parseInt(pageNoStr); catch (NumberFormatException e) Map
53、params = WebUtils.getParametersStartingWith(request, search_);Page page = reportService.getConsistPage(pageNo, 5, params);map.put(page, page);String queryString = PropertyFilter.parseParams2QueryString(params, search_);map.put(queryString, queryString);return report/consist;4.6 基礎(chǔ)數(shù)據(jù)管理基礎(chǔ)數(shù)據(jù)包括滿意度、信用度、地
54、區(qū)、客戶等級和服務(wù)類型等信息,并且用戶可以對這些信息自定義。4.6.1 數(shù)據(jù)字典管理數(shù)據(jù)字典管理頁面如圖4.10所示:圖4.10 數(shù)據(jù)字典管理頁面數(shù)據(jù)字典管理頁面的核心代碼如下:RequestMapping(value=/, method=RequestMethod.POST)public String save(Dict dict) dictsService.saveOrUpdate(dict);return redirect:/dict/list;RequestMapping(value=/id, method=RequestMethod.PUT)public String update(
55、Dict dict) dictsService.saveOrUpdate(dict);return redirect:/dict/list;4.6.2 查詢產(chǎn)品信息查詢產(chǎn)品信息頁面如圖4.11所示:圖4.11 查詢產(chǎn)品信息頁面查詢產(chǎn)品信息頁面的核心代碼如下:RequestMapping(value=/id, method=RequestMethod.PUT)public String update(Product product) productService.saveOrUpdate(product);return redirect:/product/list;RequestMapping(
56、value=/id, method=RequestMethod.DELETE)public String delete(PathVariable(id) long id) productService.delete(id);return redirect:/product/list;RequestMapping(value=/, method=RequestMethod.POST)public String save(Product product) productService.saveOrUpdate(product);return redirect:/product/list;第5章 系
57、統(tǒng)測試5.1 測試目的軟件測試是使用人工操作或者軟件自動運(yùn)行的方式來檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別的過程。它是幫助識別開發(fā)完成(中間或最終的版本)的計(jì)算機(jī)軟件(整體或部分)的正確度(correctness) 、完全度(completeness)和質(zhì)量(quality)的軟件過程;是SQA(software quality assurance)的重要子域。軟件測試的目的是為了保證軟件產(chǎn)品的最終質(zhì)量,在軟件開發(fā)的過程中,對軟件產(chǎn)品進(jìn)行質(zhì)量控制。一般來說軟件測試應(yīng)由獨(dú)立的產(chǎn)品評測中心負(fù)責(zé),嚴(yán)格按照軟件測試流程,制定測試計(jì)劃、測試方案、測試規(guī)范,實(shí)施測試,對測試記錄進(jìn)行分析
58、,并根據(jù)回歸測試情況撰寫測試報(bào)告。測試是為了證明程序有錯,而不能保證程序沒有錯誤。5.2 測試方法5.2.1人工測試的方法(1) 個人復(fù)查 個人復(fù)查是指程序員自行設(shè)計(jì)測試用例,對源代碼、詳細(xì)設(shè)計(jì)進(jìn)行仔細(xì)檢查,并記錄錯誤、不足之處等。個人復(fù)查主要包括檢查變量的正確性、檢查標(biāo)號的正確性、檢查子程序、宏、函數(shù)、常量檢查、標(biāo)準(zhǔn)檢查、風(fēng)格檢查、比較控制流、選擇、激活路徑、對照詳細(xì)說明書,閱讀源代碼和補(bǔ)充文檔等方面的測試內(nèi)容。(2) 走查 走查是指測試人員先閱讀相應(yīng)的文檔和源代碼,然后人工將測試數(shù)據(jù)輸入被測試程序,并在紙上跟蹤監(jiān)視程序的執(zhí)行情況,人工沿著程序的邏輯走查運(yùn)行一遍,跟蹤走查運(yùn)行的進(jìn)程來發(fā)現(xiàn)程序的錯誤。走查的具體測試內(nèi)容包括模塊特性、模塊接口、模塊的對外輸入或輸出、局部數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)計(jì)算錯誤、控制流錯誤、處理出錯和邊界測試等方面。(3) 會審 會審是指測試人員在會審前仔細(xì)閱讀軟件的有關(guān)資料,根據(jù)錯誤類型清單(根據(jù)以往的經(jīng)驗(yàn)、對源程序的估計(jì)等,并在以后測試中給以豐富補(bǔ)充)填寫檢測表,提出根據(jù)錯誤類型要提出的問題。會審時,由程序設(shè)計(jì)人員講解程序的設(shè)計(jì)方法,由程序編寫人員逐個講解程序代碼的編寫,測試人員需要逐個審查,提問,討論可能出現(xiàn)的
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2020高考化學(xué)熱門專題:原理綜合透題型析課件
- 現(xiàn)代中國的教育說課稿課件
- 蒸餾和熔點(diǎn)沸點(diǎn)的測定和溫度計(jì)的校正
- 臨時起搏器的護(hù)理
- 恒成實(shí)業(yè)網(wǎng)絡(luò)推廣方案
- 勿為小惡優(yōu)秀課件-粵教版
- 人教版初中地理七年級上冊人口與人種課件7
- 誡子書課件文檔
- 軟件測試計(jì)劃書與測試用例編寫課件
- 人教版五年級數(shù)學(xué)上冊課件3小數(shù)除法第2課時除數(shù)是整數(shù)的小數(shù)除法課件
- 太白酒2002年全國推廣營銷企劃案
- 滬教版小學(xué)語文三年級上冊《小狗杜克》課件1
- 我們的情感世界課件7-人教版
- 擔(dān)保產(chǎn)品案例講解及其風(fēng)險控制設(shè)計(jì)(含法律相關(guān)規(guī)范)
- 【部編版】四年級語文上冊《2.走月亮》ppt課件