企業(yè)客戶(hù)交互系統(tǒng)畢業(yè)論文.doc_第1頁(yè)
企業(yè)客戶(hù)交互系統(tǒng)畢業(yè)論文.doc_第2頁(yè)
企業(yè)客戶(hù)交互系統(tǒng)畢業(yè)論文.doc_第3頁(yè)
企業(yè)客戶(hù)交互系統(tǒng)畢業(yè)論文.doc_第4頁(yè)
企業(yè)客戶(hù)交互系統(tǒng)畢業(yè)論文.doc_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余20頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院 畢業(yè)設(shè)計(jì)報(bào)告 摘要在經(jīng)濟(jì)社會(huì)高速發(fā)展的今天,企業(yè)信息化已然成為當(dāng)今社會(huì)的發(fā)展潮流。企業(yè)信息化使得企業(yè)內(nèi)部人員既兼顧個(gè)人辦公效率的提高,又可以實(shí)現(xiàn)群體協(xié)同工作;通過(guò)與客戶(hù)的交流,還能實(shí)現(xiàn)迅速、全方位的信息采集、信息處理,為企業(yè)的管理和決策提供科學(xué)的依據(jù),從而使企業(yè)能夠在激烈的市場(chǎng)競(jìng)爭(zhēng)中取勝、不斷發(fā)展壯大。我們小組開(kāi)發(fā)的企業(yè)客戶(hù)交互系統(tǒng)是基于Web的信息交互系統(tǒng),系統(tǒng)采用SQL Server 2005來(lái)設(shè)計(jì)數(shù)據(jù)庫(kù),用三層架構(gòu)技術(shù)為后臺(tái)維護(hù)提供方便,同時(shí)使用了Ajax無(wú)刷新處理技術(shù),使用戶(hù)操作更流暢。 論文主要介紹了本課題的開(kāi)發(fā)背景,所要完成的功能和開(kāi)發(fā)的過(guò)程。簡(jiǎn)單介紹了開(kāi)發(fā)技巧的分析和使用,展示了在線(xiàn)交互模塊的功能頁(yè)面。關(guān)鍵詞:企業(yè);信息化;交互;無(wú)刷新;AjaxABSTRACTIn todays rapid economic and social development and development trend of enterprise Informationization has become in todays societyEnterprise information allows companies improve the efficiency of both internal staff to combine personal Office,collaborative work groups can be achieved through communication with customers,but also to make rapid and comprehensive data collection,information processing,provide the scientific basis for management and decision-making for the enterprise,enabling enterprises to win in the fierce market competition,will continue to grow Our team develops enterprise customer interaction system is a Web-based information exchange system, the system uses SQL Server 2005 to design database,using the three-tier technology to facilitate background maintenance,at the same time using Ajax without refreshing treatment technology,making users more fluid Development background paper mainly introduces the subject,to complete the function and development processBriefly describes the development skills of analysis and use, showing how online interactive module pageKeywords:enterprise; Informationization;interaction ; without refreshing; Ajax目錄摘要IABSTRACTII引言1第一章 可行性分析21.1 技術(shù)可行性21.2 社會(huì)可行性2第二章 系統(tǒng)設(shè)計(jì)32.1 系統(tǒng)需求分析32.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)42.3 系統(tǒng)預(yù)覽52.4 業(yè)務(wù)流程圖52.5 數(shù)據(jù)庫(kù)設(shè)計(jì)62.5.1 實(shí)體關(guān)系圖(E-R圖)62.5.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)72.5.3 數(shù)據(jù)存取的實(shí)現(xiàn)82.6 文件夾組織結(jié)構(gòu)92.7 程序運(yùn)行環(huán)境10第三章 在線(xiàn)交互模塊設(shè)計(jì)113.1 在線(xiàn)交互模塊概述113.1.1 功能簡(jiǎn)介113.2 在線(xiàn)交互模塊技術(shù)分析113.3 在線(xiàn)交互模塊實(shí)現(xiàn)過(guò)程113.3.1 頁(yè)面設(shè)計(jì)及主要代碼實(shí)現(xiàn)11第四章 測(cè)試16總結(jié)20參考文獻(xiàn)21致謝2221引言一、開(kāi)發(fā)的目的和研究意義良好的企業(yè)信息化建設(shè)不僅能夠改變企業(yè)商業(yè)模式、經(jīng)營(yíng)模式,降低經(jīng)營(yíng)成本,同時(shí)能夠幫助企業(yè)優(yōu)化管理、提高工作效率。隨著電子計(jì)算技術(shù)和互聯(lián)網(wǎng)技術(shù)的發(fā)展,企業(yè)信息交互的方式和手段不斷發(fā)生新的變革。以互聯(lián)網(wǎng)技術(shù)為基礎(chǔ)的信息交互方式代替?zhèn)鹘y(tǒng)交互方式成為企業(yè)改善管理、提高工作效率的利器。但隨著企業(yè)網(wǎng)不斷發(fā)展和壯大,企業(yè)信息交互的需求也在不斷變化,現(xiàn)有交互方式已經(jīng)不能充分滿(mǎn)足當(dāng)前的需求。新型基于Web的信息交互系統(tǒng)為解決該問(wèn)題提供了新思路。二、研究現(xiàn)狀及發(fā)展趨勢(shì)企業(yè)客戶(hù)交互系統(tǒng)建設(shè)現(xiàn)狀:重視度高 認(rèn)識(shí)不夠有些企業(yè)面對(duì)高價(jià)位“菜單”,不甘示弱的一味強(qiáng)調(diào)系統(tǒng)的功能全面,卻沒(méi)有考慮到企業(yè)真正的需求。甚至有的閉門(mén)造車(chē),僅根據(jù)企業(yè)內(nèi)部反饋的需求設(shè)計(jì)企業(yè)客戶(hù)交互系統(tǒng),缺乏有效系統(tǒng)規(guī)劃,從而降低了企業(yè)的工作效率。有些企業(yè)通過(guò)交互系統(tǒng)來(lái)留住大客戶(hù),有些是用來(lái)優(yōu)化銷(xiāo)售過(guò)程及銷(xiāo)售預(yù)測(cè),有些是用來(lái)提高客戶(hù)服務(wù)的響應(yīng)速度和服務(wù)質(zhì)量。信息化是一個(gè)精細(xì)的過(guò)程,企業(yè)需要通過(guò)長(zhǎng)期灌輸“以客戶(hù)為中心”的管理思想,最終達(dá)到了解顧客,為不同顧客提供客戶(hù)化服務(wù),通過(guò)顧客需求滿(mǎn)足的最大化,以實(shí)現(xiàn)組織收益的最大化。三、開(kāi)發(fā)技術(shù)及實(shí)現(xiàn)我們采用三層架構(gòu)和Ajax無(wú)刷新處理技術(shù)開(kāi)發(fā)本項(xiàng)目。前臺(tái)使用Visual Studio 2010編程語(yǔ)言,后臺(tái)使用強(qiáng)大的數(shù)據(jù)庫(kù)軟件SQL Server2005。利用了.NET框架功能,可使用簡(jiǎn)化 ASP Web 應(yīng)用程序和 XML Web Services 開(kāi)發(fā)的關(guān)鍵技術(shù)。通過(guò)上網(wǎng)查資料及相關(guān)書(shū)籍資料的搜集,我們決定將系統(tǒng)分為四大模塊:用戶(hù)登錄驗(yàn)證模塊、用戶(hù)分組處理模塊、系統(tǒng)團(tuán)隊(duì)處理模塊、在線(xiàn)交互模塊。其中以在線(xiàn)交互模塊為核心,用戶(hù)在登錄之后便進(jìn)入在線(xiàn)交互的系統(tǒng)主頁(yè)面,主頁(yè)面上有進(jìn)入各個(gè)功能模塊的鏈接:發(fā)布交流、團(tuán)隊(duì)交互、文件發(fā)送、客戶(hù)留言、查看信息、移動(dòng)到、加入團(tuán)隊(duì)、客戶(hù)組管理、客戶(hù)檢索、團(tuán)隊(duì)管理列表、系統(tǒng)管理、退出登錄。團(tuán)隊(duì)有三人,我主要負(fù)責(zé)完成對(duì)企業(yè)客戶(hù)交互系統(tǒng)的需求分析、在線(xiàn)交互模塊的設(shè)計(jì)、編碼、數(shù)據(jù)庫(kù)模式分析,并由此設(shè)計(jì)了數(shù)據(jù)庫(kù)結(jié)構(gòu)和應(yīng)用程序。第一章 可行性分析1.1 技術(shù)可行性使用ASP.NET進(jìn)行Web開(kāi)發(fā),三層結(jié)構(gòu)是最佳的開(kāi)發(fā)模式。三層結(jié)構(gòu)包括數(shù)據(jù)訪(fǎng)問(wèn)層(DAL)、業(yè)務(wù)邏輯層(BLL)、表示層(USL)。一、數(shù)據(jù)訪(fǎng)問(wèn)層數(shù)據(jù)訪(fǎng)問(wèn)層主要是對(duì)原始數(shù)據(jù)(數(shù)據(jù)庫(kù)或者文本文件等存放數(shù)據(jù)的形式)的操作層,而不是指原始數(shù)據(jù),也就是說(shuō),對(duì)數(shù)據(jù)的操作,而不是數(shù)據(jù)庫(kù)的操作,其功能時(shí)為業(yè)務(wù)邏輯層或表示層提供數(shù)據(jù)服務(wù)。二、業(yè)務(wù)邏輯層以萬(wàn)物邏輯層主要是針對(duì)具體問(wèn)題的操作,也可以理解成對(duì)數(shù)據(jù)層的操作,對(duì)數(shù)據(jù)業(yè)務(wù)的邏輯處理。三、表示層表示層主要表示W(wǎng)eb方式,也可以表示成WINFORM方式,Web方式也可以表示成“aspx”的方式。如果邏輯層相當(dāng)強(qiáng)大和完善,無(wú)論表示層如何定義和更改,邏輯層都能完善地提供服務(wù)。Ajax是一種創(chuàng)建交互式網(wǎng)頁(yè)的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。對(duì)于一個(gè)典型的Ajax應(yīng)用程序,用戶(hù)無(wú)需在不同頁(yè)面中切換,只要停留在一個(gè)頁(yè)面中,由XMLHttpRequest對(duì)象從服務(wù)器取得數(shù)據(jù),然后由JavaScript操作頁(yè)面上的元素并更新其中內(nèi)容即可。Ajax應(yīng)用程序無(wú)須客戶(hù)端進(jìn)行任何安裝部署,即可兼容地運(yùn)行于每一個(gè)主流瀏覽器上。頁(yè)面和服務(wù)器間的數(shù)據(jù)交互可以通過(guò)異步傳輸來(lái)實(shí)現(xiàn),而不需要中斷用戶(hù)當(dāng)前操作。隨著計(jì)算機(jī)的廣泛應(yīng)用和軟件技術(shù)的發(fā)展,不同的操作系統(tǒng)、開(kāi)發(fā)平臺(tái)、運(yùn)行框架、開(kāi)發(fā)技術(shù)的不兼容性日益突出,給開(kāi)發(fā)人員帶來(lái)很大麻煩,甚至已經(jīng)嚴(yán)重影響到軟年技術(shù)的發(fā)展。微軟公司借助.NET框架將Windows下各種應(yīng)用程序開(kāi)發(fā)有機(jī)的集成起來(lái),為開(kāi)發(fā)人員提供統(tǒng)一的開(kāi)發(fā)接口和類(lèi)庫(kù)。1.2 社會(huì)可行性當(dāng)前進(jìn)入信息化社會(huì),企業(yè)間競(jìng)爭(zhēng)激烈,企業(yè)要想提高自身競(jìng)爭(zhēng)力,就必須提高辦公效率。而企業(yè)信息化的實(shí)現(xiàn)能使企業(yè)內(nèi)部人員能夠方便快捷地共享、交流信息,高效地協(xié)同工作,既兼顧個(gè)人辦公效率的提高,又可以實(shí)現(xiàn)群體協(xié)同工作;同時(shí)又能實(shí)現(xiàn)迅速、全方位的信息采集、信息處理,為企業(yè)的管理和決策提供科學(xué)的依據(jù),從而使企業(yè)能夠在激烈的市場(chǎng)競(jìng)爭(zhēng)中取勝、不斷發(fā)展壯大。第二章 系統(tǒng)設(shè)計(jì)2.1 系統(tǒng)需求分析目前,絕大部分企業(yè)都實(shí)行了信息化管理,以提高企業(yè)管理水平和工作效率。于是,企業(yè)客戶(hù)交互系統(tǒng)便應(yīng)運(yùn)而生。企業(yè)中,交流的對(duì)象無(wú)非就是員工與員工間和員工與客戶(hù)間。本系統(tǒng)使用了Ajax無(wú)刷新處理技術(shù),在不中斷用戶(hù)操作的情況下,完成頁(yè)面和服務(wù)器的數(shù)據(jù)交互。用戶(hù)在交流時(shí)可以發(fā)送文件、留言;可以一對(duì)一交流,也可以組團(tuán)一起討論。對(duì)于不同的角色,可使用的功能不同。如群團(tuán)隊(duì)創(chuàng)建者可以創(chuàng)建團(tuán)隊(duì)、添加客戶(hù)、將客戶(hù)移動(dòng)到其他系統(tǒng)分組中、刪除團(tuán)隊(duì)。只要是登錄的用戶(hù),都可以查看各人的信息,還可查看或刪除自己的談話(huà)記錄、收到文件、留言等。個(gè)人用戶(hù)可以申請(qǐng)加入團(tuán)隊(duì)。系統(tǒng)管理員負(fù)責(zé)管理系統(tǒng),只能發(fā)送文件給客戶(hù)及員工,不可參與交流。超級(jí)管理員可參與一對(duì)一的交流,還增加了特別的客戶(hù)組:好友及同事分組。下面將具體分析在線(xiàn)交互模塊。此模塊分為系統(tǒng)主頁(yè)顯示、一對(duì)一交互處理、團(tuán)隊(duì)交互處理、文件發(fā)送四個(gè)功能:一、系統(tǒng)主頁(yè)顯示此頁(yè)面顯示的是整個(gè)系統(tǒng)的主頁(yè)面,用戶(hù)需登錄驗(yàn)證方可載入顯示??蚣茏髠?cè)為系統(tǒng)客戶(hù)組,顯示用戶(hù)名稱(chēng)。右側(cè)分為三個(gè)框架,最上方為供用戶(hù)選擇的使用功能的選項(xiàng);中間顯示交流信息;最底層為用戶(hù)信息輸入框。二、一對(duì)一交互處理 此頁(yè)面是用戶(hù)與用戶(hù)單獨(dú)交流的頁(yè)面,員工和客戶(hù)交流就比較適合此功能頁(yè)面。此頁(yè)面的使用需用戶(hù)登錄,并且在頁(yè)面右上方將顯示用戶(hù)數(shù)據(jù),若用戶(hù)尚未進(jìn)行交互,則數(shù)據(jù)顯示為空;若用戶(hù)正在進(jìn)行交互,則顯示該用戶(hù)正在交互的對(duì)象的名稱(chēng)。交流時(shí)先選擇交互對(duì)象,輸入并發(fā)表交互消息,顯示最新交互消息的發(fā)送者、接收者、時(shí)間、內(nèi)容。三、團(tuán)隊(duì)交互處理此頁(yè)面是整個(gè)團(tuán)隊(duì)進(jìn)行交流的頁(yè)面,用戶(hù)先登錄,然后進(jìn)入團(tuán)隊(duì)交互界面,選擇所要進(jìn)入的團(tuán)隊(duì),顯示所進(jìn)團(tuán)隊(duì)名稱(chēng)、用戶(hù)名稱(chēng)、在線(xiàn)用戶(hù)。用戶(hù)在消息輸入框中輸入并發(fā)表交互消息,顯示最新交互消息的發(fā)送者、團(tuán)隊(duì)編號(hào)、發(fā)送時(shí)間及發(fā)送內(nèi)容。四、文件發(fā)送此頁(yè)面是用戶(hù)間發(fā)送文件的頁(yè)面,用戶(hù)驗(yàn)證登錄后,選擇文件傳送對(duì)象,并顯示好友名稱(chēng)。選擇要傳送的文件并發(fā)送,若發(fā)送成功,則顯示文件名、發(fā)送者、接收者、文件地址、文件類(lèi)型、文件大小、文件發(fā)送時(shí)間;若發(fā)送失敗,則顯示發(fā)送失敗的原因。2.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)由于企業(yè)客戶(hù)交互系統(tǒng)是一個(gè)企業(yè)與其客戶(hù)交互的一個(gè)平臺(tái),非企業(yè)內(nèi)部人員或客戶(hù)是不可進(jìn)入系統(tǒng)的,故對(duì)于系統(tǒng)的使用首先要登錄驗(yàn)證,然后進(jìn)入系統(tǒng)主頁(yè),選擇使用功能。我們使用了框架結(jié)構(gòu),將功能導(dǎo)航置于一特定框架中,如同菜單欄一樣,無(wú)論客戶(hù)進(jìn)入到哪個(gè)功能頁(yè),都可見(jiàn)到,因此,不用再另外做一鏈接返回到系統(tǒng)主頁(yè)。發(fā)布交流的設(shè)計(jì)目的是讓倆用戶(hù)單獨(dú)討論事宜;團(tuán)隊(duì)交互的設(shè)計(jì)目的是方便一個(gè)群體一起討論相關(guān)事宜;文件發(fā)送的設(shè)計(jì)是方便用戶(hù)之間相互傳送非文字類(lèi)文件。具體功能結(jié)構(gòu)設(shè)計(jì)見(jiàn)圖2-1所示。加入團(tuán)隊(duì)移動(dòng)到查看信息文件發(fā)送客戶(hù)組管理客戶(hù)檢索團(tuán)隊(duì)管理列表系統(tǒng)管理退出登錄團(tuán)隊(duì)交互發(fā)布交流客戶(hù)留言登錄驗(yàn)證是否登錄系統(tǒng)主頁(yè)否圖2-1 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)2.3 系統(tǒng)預(yù)覽根據(jù)上面的功能結(jié)構(gòu)設(shè)計(jì),規(guī)劃出了系統(tǒng)主頁(yè)(如圖2-2所示),當(dāng)用戶(hù)登錄驗(yàn)證后即可進(jìn)入到系統(tǒng)主頁(yè),自行選擇各個(gè)功能模塊的鏈接,進(jìn)入相應(yīng)的功能頁(yè)面。圖2-2系統(tǒng)主頁(yè)2.4 業(yè)務(wù)流程圖每一個(gè)系統(tǒng)都有自己的業(yè)務(wù)流程,我們小組根據(jù)需求分析和功能設(shè)計(jì)規(guī)劃出了企業(yè)交互系統(tǒng)運(yùn)行的業(yè)務(wù)流程,如圖2-3所示:登錄驗(yàn)證附加處理輸出提示用戶(hù)檢索退出系統(tǒng)加入團(tuán)隊(duì)用戶(hù)詳情用戶(hù)分組用戶(hù)列表文件/留言系統(tǒng)主頁(yè)系統(tǒng)管理圖2-3 企業(yè)客戶(hù)交互系統(tǒng)業(yè)務(wù)流程數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)2.5 數(shù)據(jù)庫(kù)設(shè)計(jì)通過(guò)前面的信息收集,系統(tǒng)的需求基本可以確定,接下來(lái)就要分析需要管理的對(duì)象、屬性及對(duì)象間的關(guān)系。按照數(shù)據(jù)庫(kù)設(shè)計(jì)的一般步驟:收集信息,標(biāo)識(shí)系統(tǒng)要管理的對(duì)象,分析各個(gè)對(duì)象需要關(guān)注的屬性,標(biāo)識(shí)對(duì)象間聯(lián)系和依賴(lài)性來(lái)完成整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)。2.5.1 實(shí)體關(guān)系圖(E-R圖)在線(xiàn)交互模塊涉及到的管理對(duì)象有5個(gè):系統(tǒng)用戶(hù)、系統(tǒng)團(tuán)隊(duì)、系統(tǒng)文件發(fā)送、團(tuán)隊(duì)交互、用戶(hù)交互,每個(gè)對(duì)象需關(guān)注的重點(diǎn)屬性分別如圖2-4、圖2-5、圖2-6、圖2-7、圖2-8所示:系統(tǒng)用戶(hù)信息表圖2-4系統(tǒng)用戶(hù)信息實(shí)體E-R圖照片用戶(hù)標(biāo)識(shí)別名用戶(hù)密碼注冊(cè)時(shí)間用戶(hù)郵箱用戶(hù)編號(hào)用戶(hù)名簽名每個(gè)表都與此表有關(guān)聯(lián),根據(jù)用戶(hù)編號(hào)可提取到用戶(hù)的用戶(hù)名。圖2-5系統(tǒng)團(tuán)隊(duì)信息實(shí)體E-R圖系統(tǒng)團(tuán)隊(duì)信息表團(tuán)隊(duì)編號(hào)編號(hào)團(tuán)隊(duì)簡(jiǎn)介用戶(hù)編號(hào)團(tuán)隊(duì)名稱(chēng)與系統(tǒng)用戶(hù)表有關(guān)聯(lián),根據(jù)用戶(hù)編號(hào)提取用戶(hù)信息 系統(tǒng)發(fā)送文件信息表發(fā)送者文件發(fā)送時(shí)間文件類(lèi)型文件大小文件名用戶(hù)編號(hào)文件地址接收者圖2-6系統(tǒng)發(fā)送文件信息實(shí)體E-R圖 與系統(tǒng)用戶(hù)表存在聯(lián)系,根據(jù)用戶(hù)編號(hào)提取用戶(hù)名稱(chēng)。團(tuán)隊(duì)交互信息表用戶(hù)編號(hào)發(fā)送者交互內(nèi)容團(tuán)隊(duì)編號(hào)發(fā)送時(shí)間圖2-7團(tuán)隊(duì)交互信息實(shí)體E-R圖與系統(tǒng)用戶(hù)表和系統(tǒng)團(tuán)隊(duì)表有關(guān)聯(lián),根據(jù)用戶(hù)編號(hào)能提取用戶(hù)名稱(chēng),根據(jù)團(tuán)隊(duì)編號(hào)能提取團(tuán)隊(duì)名稱(chēng)。用戶(hù)編號(hào)用戶(hù)交互信息表發(fā)送者交互內(nèi)容接收者發(fā)送時(shí)間圖2-8用戶(hù)交互信息實(shí)體E-R圖與系統(tǒng)用戶(hù)表有關(guān)聯(lián),根據(jù)用戶(hù)編號(hào)提取用戶(hù)名稱(chēng)。2.5.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)這一階段是邏輯實(shí)現(xiàn)階段,需注意如何使用三大范式約束邏輯設(shè)計(jì),一般遵循3個(gè)原則即可:一、每個(gè)字段都必須是不可再分的;二、非主鍵字段必須完全依賴(lài)該主鍵;三、有關(guān)鍵關(guān)系的表使用主外鍵聯(lián)系起來(lái)。最終形成翻譯后的數(shù)據(jù)庫(kù)關(guān)系圖,如圖2-9所示:圖2-9數(shù)據(jù)庫(kù)關(guān)系圖2.5.3 數(shù)據(jù)存取的實(shí)現(xiàn)每個(gè)功能的數(shù)據(jù)存取實(shí)現(xiàn)方式是一樣的,只需寫(xiě)一個(gè)功能模塊的實(shí)現(xiàn)代碼,剩下的功能模塊在其基礎(chǔ)上改動(dòng)表名稱(chēng)和表中字段即可。以下寫(xiě)的是文件發(fā)送模塊的數(shù)據(jù)存取實(shí)現(xiàn)方式。一、數(shù)據(jù)庫(kù)的連接.NET與數(shù)據(jù)庫(kù)SQL Server 2005連接寫(xiě)在數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)層中,身份認(rèn)證寫(xiě)在配置文件中,便于管理且安全性高。string connectionString = ConfigurationManager.ConnectionStringSQLCONNECTIONSTRING.ConnectionString;SqlConnection con = new SqlConnection(connectionString);二、數(shù)據(jù)的取出數(shù)據(jù)的取出以關(guān)鍵字SELECT來(lái)實(shí)現(xiàn),以下是讀取已發(fā)送文件的信息的實(shí)現(xiàn)方式:string cmdText = SELECT File.*,S.Username AS SenderName,R.Username AS ReceiverName+ FROM File+ INNER JOIN User AS S ON S.ID=File.Sender+ INNER JOIN User AS R ON R.ID=File.Receiver + WHERE File.Receiver=UserID ORDER BY CreateDate DESC; 三、數(shù)據(jù)的存入數(shù)據(jù)的存入用關(guān)鍵字INSERT INTO,以下是添加已發(fā)送文件信息到數(shù)據(jù)庫(kù)表(File)中的實(shí)現(xiàn)方式:string cmdText = INSERTINTO File(Name,Sender,Receiver,Url,Type,Size,CreateDate)VALUES(Name,Sender,Receiver,Url,Type,Size,GETDATE();/根據(jù)表中字段先后順序逐行添加SqlCommand cmd = new SqlCommand(cmdText,con);cmd.Parameters.Add(Name,SqlDbType.VarChar,200);cmd.Parameters.Add(Sender,SqlDbType.Int,4);cmd.Parameters.Add(Receiver,SqlDbType.Int,4);cmd.Parameters.Add(Url,SqlDbType.VarChar,255);cmd.Parameters.Add(Type,SqlDbType.VarChar,50);cmd.Parameters.Add(Size,SqlDbType.Int,4);cmd.Parameters0.Value = name;cmd.Parameters1.Value = sender;cmd.Parameters2.Value = receiver;cmd.Parameters3.Value = url;cmd.Parameters4.Value = type;cmd.Parameters5.Value = size;int result = -1;2.6 文件夾組織結(jié)構(gòu)每一個(gè)項(xiàng)目都有合理的組織結(jié)構(gòu),如圖2-10所示是我們所做系統(tǒng)的組織結(jié)構(gòu)。App_Code文件夾中放的是公共類(lèi)及其視圖;App_Data文件夾中存放的是數(shù)據(jù)庫(kù)文件;App_Themes文件夾中放的是關(guān)于主題文件,即對(duì)前臺(tái)的設(shè)計(jì);Caboodle文件夾中存放的是團(tuán)隊(duì)處理的文件;Files文件夾中存放用戶(hù)發(fā)送過(guò)的文件;Hailfellow文件夾中存放的是用戶(hù)分組的文件;UserInfo文件夾中放的是用戶(hù)信息類(lèi)的文件。圖2-10文件夾組織結(jié)構(gòu)2.7 程序運(yùn)行環(huán)境系統(tǒng)開(kāi)發(fā)平臺(tái):Microsoft Visual Studio 2010。數(shù)據(jù)庫(kù)管理系統(tǒng):Microsoft SQL Server 2005。系統(tǒng)開(kāi)發(fā)語(yǔ)言:C#。運(yùn)行環(huán)境:Microsoft.NET Framework SDK v4.0。第三章 在線(xiàn)交互模塊設(shè)計(jì)3.1 在線(xiàn)交互模塊概述3.1.1 功能簡(jiǎn)介在線(xiàn)交互模是整個(gè)系統(tǒng)的核心,系統(tǒng)用戶(hù)可以和系統(tǒng)內(nèi)其他用戶(hù)進(jìn)行在線(xiàn)及時(shí)交互,進(jìn)一步實(shí)現(xiàn)企業(yè)信息化。用戶(hù)在登錄之后便進(jìn)入在線(xiàn)交互的系統(tǒng)主頁(yè)面,主頁(yè)面上有進(jìn)入各個(gè)功能模塊的鏈接:發(fā)布交流(即一對(duì)一交互)、團(tuán)隊(duì)交互、文件發(fā)送、客戶(hù)留言、查看信息、移動(dòng)到、加入團(tuán)隊(duì)、客戶(hù)組管理、客戶(hù)檢索、團(tuán)隊(duì)管理列表、系統(tǒng)管理、退出登錄。根據(jù)用戶(hù)身份的不同,可使用的功能也不同。3.2 在線(xiàn)交互模塊技術(shù)分析整個(gè)系統(tǒng)采用框架頁(yè)面設(shè)計(jì)并應(yīng)用到了主題樣式 ,通過(guò)框架可使用簡(jiǎn)化 ASP Web 應(yīng)用程序和 XML Web Services 開(kāi)發(fā)的關(guān)鍵技術(shù)。在整個(gè)系統(tǒng)的大框架不變的情況下,改動(dòng)子框架內(nèi)容。這樣一來(lái),整個(gè)系統(tǒng)頁(yè)面看上去就整齊劃一,不顯雜亂。模塊設(shè)計(jì)采用了創(chuàng)建交互式網(wǎng)頁(yè)的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)Ajax無(wú)刷新技術(shù)處理,當(dāng)用戶(hù)在交流時(shí),頁(yè)面和服務(wù)器間的數(shù)據(jù)交互可以通過(guò)異步傳輸來(lái)實(shí)現(xiàn),而不需要中斷用戶(hù)當(dāng)前操作。3.3 在線(xiàn)交互模塊實(shí)現(xiàn)過(guò)程 3.3.1 頁(yè)面設(shè)計(jì)及主要代碼實(shí)現(xiàn)框架設(shè)計(jì):框架左側(cè)為系統(tǒng)客戶(hù)組,顯示用戶(hù)名稱(chēng)。右側(cè)分為三個(gè)框架,最上方為供用戶(hù)選擇的使用功能的選項(xiàng);中間顯示交流信息;最底層為用戶(hù)信息輸入框。源代碼如下:導(dǎo)航鏈接、文件發(fā)送、發(fā)布交流、團(tuán)隊(duì)交互的頁(yè)面設(shè)計(jì)分別見(jiàn)以下圖3-1、圖3-2、圖3-3、圖3-4:圖3-1導(dǎo)航鏈接圖3-2文件發(fā)送文件發(fā)送是用戶(hù)之間發(fā)送一些圖片、文檔、文件夾等之類(lèi)的功能項(xiàng),為避免ASPX頁(yè)面中的完整回發(fā)并且只更新部分頁(yè)面,頁(yè)面的設(shè)計(jì)使用了UpdatePanel控件,使用時(shí)還需添加ScriptManager控件作為一個(gè)容器。當(dāng)UpdatePanel內(nèi)的某個(gè)控件產(chǎn)生到服務(wù)器回發(fā)時(shí),只會(huì)刷新UpdatePanel里面的內(nèi)容。該模塊主要實(shí)現(xiàn)代碼為:protected void btnCommit_Click(object sender,EventArgs e) /判斷上載文件的內(nèi)容是否為空if(fuFile.HasFile = false | fuFile.PostedFile.ContentLength 0)lbMessage.Text = 恭喜您,發(fā)送文件( + oldFileName + )給 + lbUsername.Text + 成功。;catch(Exception ex) /顯示錯(cuò)誤信息lbMessage.Text = 上載文件錯(cuò)誤,錯(cuò)誤原因?yàn)椋?+ ex.Message;return;圖3-3發(fā)布交流發(fā)布交流是用戶(hù)之間一對(duì)一交流的功能項(xiàng),頁(yè)面的設(shè)計(jì)中也用到了UpdatePanel控件及ScriptManager控件,當(dāng)聊天消息發(fā)出后,只需要刷新消息顯示框的內(nèi)容即可,而ScriptManager控件是客戶(hù)端頁(yè)面和服務(wù)器之間的橋梁,管理腳本資源,負(fù)責(zé)部分頁(yè)面更新,故選用此控件。模塊主要實(shí)現(xiàn)代碼為:private void ShowMessageData() /構(gòu)建聊天的消息,用戶(hù)選擇一個(gè)聊天對(duì)象,只可在消息輸入框中輸入文字信息,不可添加諸如圖片之類(lèi)的非文字信息StringBuilder sbMessage = new StringBuilder();foreach(DataRowView row in dv) /設(shè)置一條消息string singleMessage = rowSenderName.ToString() + 在 + rowCreateDate.ToString() + 發(fā)表:n;singleMessage += + rowBody.ToString() + n;sbMessage.Append(singleMessage);/顯示聊天消息,用戶(hù)所發(fā)表的聊天消息可在消息輸入框上方的消息先是框中看到tbChatMessage.Text = sbMessage.ToString();protected void btnCommit_Click(object sender,EventArgs e) /發(fā)送消息,所發(fā)送的消息存放在我的談話(huà)記錄中,用戶(hù)可自行查看、刪除MessageForSingle message = new MessageForSingle();if(message.AddMessage(tbMessage.Text,userID,fellowID) 0) /重新顯示消息ShowMessageData();圖3-4團(tuán)隊(duì)交互團(tuán)隊(duì)交互是一個(gè)團(tuán)體交流的功能項(xiàng),當(dāng)消息發(fā)出后只需要更新消息顯示框的內(nèi)容,不需要刷新整個(gè)頁(yè)面,所以,在頁(yè)面設(shè)計(jì)時(shí)也選用了UpdatePanel控件和ScriptManager控件。其功能相當(dāng)于QQ上的群聊,主要實(shí)現(xiàn)代碼為:private void ShowMessageData(int caboodleID) /構(gòu)建聊天的消息,用戶(hù)可選擇加入一個(gè)團(tuán)隊(duì),在消息輸入框中只可輸入文字消息,不可輸入諸如圖片之類(lèi)的非文字信息StringBuilder sbMessage = new StringBuilder();foreach(DataRowView row in dv) /設(shè)置一條消息,從數(shù)據(jù)庫(kù)中獲取相關(guān)數(shù)據(jù)String singleMessage = rowSenderName.ToString() + 在 + rowCreateDate.ToString() + 發(fā)表:n; singleMessage += + rowBody.ToString() + n; sbMessage.Append(singleMessage);/顯示聊天消息,用戶(hù)所發(fā)表的聊天消息可在消息輸入框上方的消息先是框中看到 tbChatMessage.Text = sbMessage.ToString();protected void btnCommit_Click(object sender,EventArgs e) /發(fā)送消息,所發(fā)送的消息存放在我的談話(huà)記錄中,用戶(hù)可自行查看、刪除MessageForCaboodle message = new MessageForCaboodle();if(message.AddMessage(tbMessage.Text,userID,caboodleID) 0) /重新顯示消息ShowMessageData(caboodleID);第四章 測(cè)試本測(cè)試將項(xiàng)目加入到Visual Studio 2010中,并配以數(shù)據(jù)庫(kù)SQL Server 2005進(jìn)行對(duì)模塊功能的測(cè)試,以不同的身份登錄,權(quán)限也不同,使用的功能就有所區(qū)別。本測(cè)試將三種身份都測(cè)試了,測(cè)試中每種身份都有選擇交互對(duì)象和不選擇交互對(duì)象兩種方式,每種方式中都列出了預(yù)期的輸出結(jié)果和測(cè)試時(shí)實(shí)際輸出結(jié)果,以作對(duì)照,如表4-1所示:一、以超級(jí)管理員身份dorient登錄:不選擇交互對(duì)象:測(cè)試數(shù)據(jù):消息輸入框中輸入Hello!預(yù)期輸出結(jié)果:測(cè)試輸出結(jié)果:消息輸入框中留有預(yù)發(fā)送“Hello!”,發(fā)送按鈕不可用,只可查看“我的談話(huà)記錄”,進(jìn)入其他功能頁(yè)面后,按鈕均不可用。消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,下拉菜單中可選內(nèi)容,確定按鈕顯示可用狀態(tài),當(dāng)單擊該按鈕時(shí),提示出錯(cuò),錯(cuò)誤信息為:“輸入字符串的格式不正確”。選擇文件發(fā)送頁(yè)面,發(fā)送按鈕呈不可用狀態(tài)。選擇交互對(duì)象User9:測(cè)試數(shù)據(jù):選擇發(fā)布交流頁(yè)面,消息框中輸入“hello,朋友!”,文件發(fā)送頁(yè)面選擇發(fā)送文件1.jpg預(yù)期輸出結(jié)果:實(shí)際輸出結(jié)果:發(fā)布交流頁(yè)面彈出消息提示窗口:“恭喜您,發(fā)送信息給User9成功”,消息顯示框中顯示消息:“dorient在2011/12/1 11:01:03發(fā)表hello,朋友!”消息框中粘貼非文字類(lèi)文件,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“輸入字符串的格式不正確”;選擇團(tuán)隊(duì)交互頁(yè)面,確定按鈕不可用;選擇文件發(fā)送頁(yè)面,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載文件的內(nèi)容為空,請(qǐng)重新選擇!”;單擊瀏覽按鈕選擇要發(fā)送的文件1.jpg,單擊發(fā)送按鈕,顯示消息:恭喜您發(fā)送文件(1.jpg)給User9成功。再選擇同樣的文件(1.jpg),單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載的文件已存在,請(qǐng)重新選擇!”;同時(shí)選擇多個(gè)文件上載,提示錯(cuò)誤信息:“文件上載錯(cuò)誤,錯(cuò)誤信息為:選擇文件錯(cuò)誤”。選擇發(fā)布交流頁(yè)面,消息框中輸入“hello,朋友!”單擊發(fā)送按鈕,彈出消息提示窗口“恭喜您,發(fā)送信息給User9成功”,消息顯示框中顯示消息:“dorient在2011/12/1 11:01:03發(fā)表hello,朋友!”消息框中粘貼非文字類(lèi)文件,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“輸入字符串的格式不確”;選擇團(tuán)隊(duì)交互頁(yè)面,下拉菜單中無(wú)可選內(nèi)容,確定按鈕顯示可用狀態(tài),當(dāng)單擊該按鈕時(shí),提示出錯(cuò),錯(cuò)誤信息為:“輸入字符串的格式不正確”;選擇文件發(fā)送頁(yè)面,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載文件的內(nèi)容為空,請(qǐng)重新選擇!”;單擊瀏覽按鈕選擇要發(fā)送的文件1.jpg,單擊發(fā)送按鈕,顯示消息:恭喜您發(fā)送文件(1)給User9成功。再選擇同樣的文件1.jpg,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載的文件已存在,請(qǐng)重新選擇!”;同時(shí)選擇多個(gè)文件上載,提示錯(cuò)誤信息:“文件上載錯(cuò)誤,錯(cuò)誤信息為:選擇文件錯(cuò)誤”。二、以admin登錄:不選擇交互對(duì)象:測(cè)試數(shù)據(jù):消息輸入框中輸入Hello!預(yù)期輸出結(jié)果:實(shí)際輸出結(jié)果:消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;進(jìn)入其他功能頁(yè)面后,按鈕均不可用。消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,下拉菜單中無(wú)可選內(nèi)容,確定按鈕顯示可用狀態(tài),當(dāng)單擊按鈕時(shí),提示出錯(cuò),錯(cuò)誤信息為:“輸入字符串的格式不正確”。選擇文件發(fā)送頁(yè)面,發(fā)送按鈕呈不可用狀態(tài)。選擇交互對(duì)象User11:測(cè)試數(shù)據(jù):消息輸入框中輸入Hello!文件發(fā)送選擇ab.txt預(yù)期輸出結(jié)果:實(shí)際輸出結(jié)果:消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,確定按鈕不可用。選擇文件發(fā)送頁(yè)面,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載文件的內(nèi)容為空,請(qǐng)重新選擇!”;單擊瀏覽按鈕選擇要發(fā)送的文件abtxt,單擊發(fā)送按鈕,顯示消息:恭喜您發(fā)送文件(abtxt)給User11成功。再選擇同樣的文件abtxt,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載的文件已存在,請(qǐng)重新選擇!”;同時(shí)選擇多個(gè)文件上載,提示錯(cuò)誤信息:“文件上載錯(cuò)誤,錯(cuò)誤信息為:選擇文件錯(cuò)誤”。消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,下拉菜單中無(wú)可選容,確定按鈕顯示可用狀態(tài),當(dāng)單擊該按鈕時(shí),提示出錯(cuò),錯(cuò)誤信息為:“輸入字符串的格式不正確”。選擇文件發(fā)送頁(yè)面,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載文件的內(nèi)容為空,請(qǐng)重新選擇!”;單擊瀏覽按鈕選擇要發(fā)送的文件abtxt,單擊發(fā)送按鈕,顯示消息:恭喜您發(fā)送文件(ab)給User11成功。再選擇同樣的文件abtxt,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載的文件已存在,請(qǐng)重新選擇!”;同時(shí)選擇多個(gè)文件上載,提示錯(cuò)誤信息:“文件上載錯(cuò)誤,錯(cuò)誤信息為:選擇文件錯(cuò)誤”。三、以普通用戶(hù)身份User9登錄:不選擇交互對(duì)象:測(cè)試數(shù)據(jù):消息輸入框中輸入Hello!預(yù)期輸出結(jié)果:實(shí)際輸出結(jié)果:消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,確定按鈕不可用。選擇文件發(fā)送頁(yè)面,發(fā)送按鈕呈不可用狀態(tài)。消息輸入框中留有預(yù)發(fā)送消息“Hello!”,發(fā)送按鈕不可用;選擇團(tuán)隊(duì)交互頁(yè)面,下拉菜單中無(wú)可選內(nèi)容,確定按鈕顯示可用狀態(tài),當(dāng)單擊該按鈕時(shí),提示出錯(cuò),錯(cuò)誤信息為:“輸入字符串的格式不正確”。選擇文件發(fā)送頁(yè)面,發(fā)送按鈕呈不可用狀態(tài)。選擇交互對(duì)象User5:測(cè)試數(shù)據(jù):發(fā)布交流消息框中輸入“goodafternoon,dear friend!”,團(tuán)隊(duì)交互消息輸入框中輸入:“123ewe斯蒂芬”,文件發(fā)送頁(yè)面選擇文件360.exe預(yù)期輸出結(jié)果:實(shí)際輸出結(jié)果: 發(fā)布交流頁(yè)面,彈出消息提示窗口:“恭喜您,發(fā)送信息給“User5”,消息顯示框中顯示消息:“User9在2011/12/1 15:20:42發(fā)表goodafternoon,dear friend!”消息框中粘貼非文字類(lèi)文件,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“輸入字符串的格式不正確”;選擇團(tuán)隊(duì)交互頁(yè)面,在下拉菜單中選擇團(tuán)隊(duì):User5,在消息輸入框中輸入:“123ewe斯蒂芬”,消息顯示框中顯示消息內(nèi)容:“User9在2011/12/1 15:21:50發(fā)表123ewe斯蒂芬”。消息框中粘貼非文字類(lèi)文件,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“輸入字符串的格式不正確”;選擇文件發(fā)送頁(yè)面,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載文件的內(nèi)容為空,請(qǐng)重新選擇!”;單擊瀏覽按鈕選擇要發(fā)送的文件360.exe,單擊發(fā)送按鈕,顯示消息:恭喜您發(fā)送文件(360.exe)給User5成功。再選擇同樣的文件360.exe,單擊發(fā)送按鈕,提示錯(cuò)誤信息:“上載的文件已存在,請(qǐng)重新選擇!”;同時(shí)選擇多個(gè)文件上載,提示錯(cuò)誤信息:“文件上載錯(cuò)誤,錯(cuò)誤信息為:選擇文件錯(cuò)誤”。發(fā)布交流頁(yè)面,彈出消息提窗口:“恭喜您,發(fā)送信息給“User5”,消息顯示框中顯示消息:“User9在2011/12/1 15:20:42發(fā)表goodafternoo

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論