企業(yè)客戶交互系統(tǒng)畢業(yè)論文_第1頁(yè)
已閱讀1頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  摘要</b></p><p>  在經(jīng)濟(jì)社會(huì)高速發(fā)展的今天,企業(yè)信息化已然成為當(dāng)今社會(huì)的發(fā)展潮流。企業(yè)信息化使得企業(yè)內(nèi)部人員既兼顧個(gè)人辦公效率的提高,又可以實(shí)現(xiàn)群體協(xié)同工作;通過(guò)與客戶的交流,還能實(shí)現(xiàn)迅速、全方位的信息采集、信息處理,為企業(yè)的管理和決策提供科學(xué)的依據(jù),從而使企業(yè)能夠在激烈的市場(chǎng)競(jìng)爭(zhēng)中取勝、不斷發(fā)展壯大。</p><p> 

2、 我們小組開(kāi)發(fā)的企業(yè)客戶交互系統(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ù),使用戶操作更流暢。 </p><p>  論文主要介紹了本課題的開(kāi)發(fā)背景,所要完成的功能和開(kāi)發(fā)的過(guò)程。簡(jiǎn)單介紹了開(kāi)發(fā)技巧的分析和使用,展示了在線交互模塊的功能頁(yè)面。</p><p>  關(guān)鍵詞:企業(yè);信息化;交互

3、;無(wú)刷新;Ajax</p><p><b>  ABSTRACT</b></p><p>  In today's rapid economic and social development and development trend of enterprise Informationization has become in today's soci

4、ety.Enterprise 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 a

5、nd comprehensive data collection,information processing,provide the scientific basis for management and decision-making for the enterprise,enabling en</p><p>  Our team develops enterprise customer interacti

6、on 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

7、 treatment technology,making users more fluid. </p><p>  Development background paper mainly introduces the subject,to complete the function and development process.Briefly describes the development skills o

8、f analysis and use, showing how online interactive module page.</p><p>  Keywords:enterprise; Informationization;interaction ; without refreshing; Ajax</p><p><b>  目錄</b></p>

9、<p><b>  摘要I</b></p><p>  ABSTRACTII</p><p><b>  引言1</b></p><p>  第一章 可行性分析2</p><p>  1.1 技術(shù)可行性2</p><p>  1.2 社會(huì)可行性2<

10、/p><p>  第二章 系統(tǒng)設(shè)計(jì)3</p><p>  2.1 系統(tǒng)需求分析3</p><p>  2.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)4</p><p>  2.3 系統(tǒng)預(yù)覽5</p><p>  2.4 業(yè)務(wù)流程圖5</p><p>  2.5 數(shù)據(jù)庫(kù)設(shè)計(jì)6</p><p&

11、gt;  2.5.1 實(shí)體關(guān)系圖(E-R圖)6</p><p>  2.5.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)7</p><p>  2.5.3 數(shù)據(jù)存取的實(shí)現(xiàn)8</p><p>  2.6 文件夾組織結(jié)構(gòu)9</p><p>  2.7 程序運(yùn)行環(huán)境10</p><p>  第三章 在線交互模塊設(shè)計(jì)11</p&g

12、t;<p>  3.1 在線交互模塊概述11</p><p>  3.1.1 功能簡(jiǎn)介11</p><p>  3.2 在線交互模塊技術(shù)分析11</p><p>  3.3 在線交互模塊實(shí)現(xiàn)過(guò)程11</p><p>  3.3.1 頁(yè)面設(shè)計(jì)及主要代碼實(shí)現(xiàn)11</p><p><b> 

13、 第四章 測(cè)試16</b></p><p><b>  總結(jié)20</b></p><p><b>  參考文獻(xiàn)21</b></p><p><b>  致謝22</b></p><p><b>  引言</b></p>&

14、lt;p>  一、開(kāi)發(fā)的目的和研究意義</p><p>  良好的企業(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)

15、不能充分滿足當(dāng)前的需求。新型基于Web的信息交互系統(tǒng)為解決該問(wèn)題提供了新思路。</p><p>  二、研究現(xiàn)狀及發(fā)展趨勢(shì)</p><p>  企業(yè)客戶交互系統(tǒng)建設(shè)現(xiàn)狀:重視度高 認(rèn)識(shí)不夠</p><p>  有些企業(yè)面對(duì)高價(jià)位“菜單”,不甘示弱的一味強(qiáng)調(diào)系統(tǒng)的功能全面,卻沒(méi)有考慮到企業(yè)真正的需求。甚至有的閉門(mén)造車(chē),僅根據(jù)企業(yè)內(nèi)部反饋的需求設(shè)計(jì)企業(yè)客戶交互系統(tǒng),缺乏

16、有效系統(tǒng)規(guī)劃,從而降低了企業(yè)的工作效率。</p><p>  有些企業(yè)通過(guò)交互系統(tǒng)來(lái)留住大客戶,有些是用來(lái)優(yōu)化銷(xiāo)售過(guò)程及銷(xiāo)售預(yù)測(cè),有些是用來(lái)提高客戶服務(wù)的響應(yīng)速度和服務(wù)質(zhì)量。</p><p>  信息化是一個(gè)精細(xì)的過(guò)程,企業(yè)需要通過(guò)長(zhǎng)期灌輸“以客戶為中心”的管理思想,最終達(dá)到了解顧客,為不同顧客提供客戶化服務(wù),通過(guò)顧客需求滿足的最大化,以實(shí)現(xiàn)組織收益的最大化。</p><

17、;p><b>  三、開(kāi)發(fā)技術(shù)及實(shí)現(xiàn)</b></p><p>  我們采用三層架構(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ù)。</p><p>  通

18、過(guò)上網(wǎng)查資料及相關(guān)書(shū)籍資料的搜集,我們決定將系統(tǒng)分為四大模塊:用戶登錄驗(yàn)證模塊、用戶分組處理模塊、系統(tǒng)團(tuán)隊(duì)處理模塊、在線交互模塊。</p><p>  其中以在線交互模塊為核心,用戶在登錄之后便進(jìn)入在線交互的系統(tǒng)主頁(yè)面,主頁(yè)面上有進(jìn)入各個(gè)功能模塊的鏈接:發(fā)布交流、團(tuán)隊(duì)交互、文件發(fā)送、客戶留言、查看信息、移動(dòng)到...、加入團(tuán)隊(duì)、客戶組管理、客戶檢索、團(tuán)隊(duì)管理列表、系統(tǒng)管理、退出登錄。</p><

19、p>  團(tuán)隊(duì)有三人,我主要負(fù)責(zé)完成對(duì)企業(yè)客戶交互系統(tǒng)的需求分析、在線交互模塊的設(shè)計(jì)、編碼、數(shù)據(jù)庫(kù)模式分析,并由此設(shè)計(jì)了數(shù)據(jù)庫(kù)結(jié)構(gòu)和應(yīng)用程序。</p><p><b>  第一章 可行性分析</b></p><p><b>  1.1 技術(shù)可行性</b></p><p>  使用ASP.NET進(jìn)行Web開(kāi)發(fā),三層結(jié)構(gòu)是

20、最佳的開(kāi)發(fā)模式。三層結(jié)構(gòu)包括數(shù)據(jù)訪問(wèn)層(DAL)、業(yè)務(wù)邏輯層(BLL)、表示層(USL)。</p><p><b>  一、數(shù)據(jù)訪問(wèn)層</b></p><p>  數(shù)據(jù)訪問(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ù)。</p>&l

21、t;p><b>  二、業(yè)務(wù)邏輯層</b></p><p>  以萬(wàn)物邏輯層主要是針對(duì)具體問(wèn)題的操作,也可以理解成對(duì)數(shù)據(jù)層的操作,對(duì)數(shù)據(jù)業(yè)務(wù)的邏輯處理。</p><p><b>  三、表示層</b></p><p>  表示層主要表示W(wǎng)eb方式,也可以表示成WINFORM方式,Web方式也可以表示成“aspx”的方

22、式。如果邏輯層相當(dāng)強(qiáng)大和完善,無(wú)論表示層如何定義和更改,邏輯層都能完善地提供服務(wù)。</p><p>  Ajax是一種創(chuàng)建交互式網(wǎng)頁(yè)的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)。對(duì)于一個(gè)典型的Ajax應(yīng)用程序,用戶無(wú)需在不同頁(yè)面中切換,只要停留在一個(gè)頁(yè)面中,由XMLHttpRequest對(duì)象從服務(wù)器取得數(shù)據(jù),然后由JavaScript操作頁(yè)面上的元素并更新其中內(nèi)容即可。Ajax應(yīng)用程序無(wú)須客戶端進(jìn)行任何安裝部署,即可兼容地運(yùn)行于每一個(gè)主流瀏覽

23、器上。頁(yè)面和服務(wù)器間的數(shù)據(jù)交互可以通過(guò)異步傳輸來(lái)實(shí)現(xiàn),而不需要中斷用戶當(dāng)前操作。</p><p>  隨著計(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ā)接口和類庫(kù)。</p><p>&

24、lt;b>  1.2 社會(huì)可行性</b></p><p>  當(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ā)展

25、壯大。</p><p><b>  第二章 系統(tǒng)設(shè)計(jì)</b></p><p>  2.1 系統(tǒng)需求分析</p><p>  目前,絕大部分企業(yè)都實(shí)行了信息化管理,以提高企業(yè)管理水平和工作效率。于是,企業(yè)客戶交互系統(tǒng)便應(yīng)運(yùn)而生。企業(yè)中,交流的對(duì)象無(wú)非就是員工與員工間和員工與客戶間。</p><p>  本系統(tǒng)使用了Ajax

26、無(wú)刷新處理技術(shù),在不中斷用戶操作的情況下,完成頁(yè)面和服務(wù)器的數(shù)據(jù)交互。用戶在交流時(shí)可以發(fā)送文件、留言;可以一對(duì)一交流,也可以組團(tuán)一起討論。</p><p>  對(duì)于不同的角色,可使用的功能不同。如群團(tuán)隊(duì)創(chuàng)建者可以創(chuàng)建團(tuán)隊(duì)、添加客戶、將客戶移動(dòng)到其他系統(tǒng)分組中、刪除團(tuán)隊(duì)。</p><p>  只要是登錄的用戶,都可以查看各人的信息,還可查看或刪除自己的談話記錄、收到文件、留言等。個(gè)人用戶可以

27、申請(qǐng)加入團(tuán)隊(duì)。</p><p>  系統(tǒng)管理員負(fù)責(zé)管理系統(tǒng),只能發(fā)送文件給客戶及員工,不可參與交流。超級(jí)管理員可參與一對(duì)一的交流,還增加了特別的客戶組:好友及同事分組。</p><p>  下面將具體分析在線交互模塊。此模塊分為系統(tǒng)主頁(yè)顯示、一對(duì)一交互處理、團(tuán)隊(duì)交互處理、文件發(fā)送四個(gè)功能:</p><p><b>  一、系統(tǒng)主頁(yè)顯示</b>&

28、lt;/p><p>  此頁(yè)面顯示的是整個(gè)系統(tǒng)的主頁(yè)面,用戶需登錄驗(yàn)證方可載入顯示。</p><p>  框架左側(cè)為系統(tǒng)客戶組,顯示用戶名稱。</p><p>  右側(cè)分為三個(gè)框架,最上方為供用戶選擇的使用功能的選項(xiàng);中間顯示交流信息;最底層為用戶信息輸入框。</p><p>  二、一對(duì)一交互處理 </p><p>  

29、此頁(yè)面是用戶與用戶單獨(dú)交流的頁(yè)面,員工和客戶交流就比較適合此功能頁(yè)面。</p><p>  此頁(yè)面的使用需用戶登錄,并且在頁(yè)面右上方將顯示用戶數(shù)據(jù),若用戶尚未進(jìn)行交互,則數(shù)據(jù)顯示為空;若用戶正在進(jìn)行交互,則顯示該用戶正在交互的對(duì)象的名稱。</p><p>  交流時(shí)先選擇交互對(duì)象,輸入并發(fā)表交互消息,顯示最新交互消息的發(fā)送者、接收者、時(shí)間、內(nèi)容。</p><p>&

30、lt;b>  三、團(tuán)隊(duì)交互處理</b></p><p>  此頁(yè)面是整個(gè)團(tuán)隊(duì)進(jìn)行交流的頁(yè)面,用戶先登錄,然后進(jìn)入團(tuán)隊(duì)交互界面,選擇所要進(jìn)入的團(tuán)隊(duì),顯示所進(jìn)團(tuán)隊(duì)名稱、用戶名稱、在線用戶。</p><p>  用戶在消息輸入框中輸入并發(fā)表交互消息,顯示最新交互消息的發(fā)送者、團(tuán)隊(duì)編號(hào)、發(fā)送時(shí)間及發(fā)送內(nèi)容。</p><p><b>  四、文件發(fā)

31、送</b></p><p>  此頁(yè)面是用戶間發(fā)送文件的頁(yè)面,用戶驗(yàn)證登錄后,選擇文件傳送對(duì)象,并顯示好友名稱。</p><p>  選擇要傳送的文件并發(fā)送,若發(fā)送成功,則顯示文件名、發(fā)送者、接收者、文件地址、文件類型、文件大小、文件發(fā)送時(shí)間;若發(fā)送失敗,則顯示發(fā)送失敗的原因。</p><p>  2.2 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)</p><

32、p>  由于企業(yè)客戶交互系統(tǒng)是一個(gè)企業(yè)與其客戶交互的一個(gè)平臺(tái),非企業(yè)內(nèi)部人員或客戶是不可進(jìn)入系統(tǒng)的,故對(duì)于系統(tǒng)的使用首先要登錄驗(yàn)證,然后進(jìn)入系統(tǒng)主頁(yè),選擇使用功能。我們使用了框架結(jié)構(gòu),將功能導(dǎo)航置于一特定框架中,如同菜單欄一樣,無(wú)論客戶進(jìn)入到哪個(gè)功能頁(yè),都可見(jiàn)到,因此,不用再另外做一鏈接返回到系統(tǒng)主頁(yè)。發(fā)布交流的設(shè)計(jì)目的是讓倆用戶單獨(dú)討論事宜;團(tuán)隊(duì)交互的設(shè)計(jì)目的是方便一個(gè)群體一起討論相關(guān)事宜;文件發(fā)送的設(shè)計(jì)是方便用戶之間相互傳送非

33、文字類文件。具體功能結(jié)構(gòu)設(shè)計(jì)見(jiàn)圖2-1所示。</p><p>  圖2-1 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)</p><p><b>  2.3 系統(tǒng)預(yù)覽</b></p><p>  根據(jù)上面的功能結(jié)構(gòu)設(shè)計(jì),規(guī)劃出了系統(tǒng)主頁(yè)(如圖2-2所示),當(dāng)用戶登錄驗(yàn)證后即可進(jìn)入到系統(tǒng)主頁(yè),自行選擇各個(gè)功能模塊的鏈接,進(jìn)入相應(yīng)的功能頁(yè)面。</p><p

34、><b>  圖2-2系統(tǒng)主頁(yè)</b></p><p><b>  2.4 業(yè)務(wù)流程圖</b></p><p>  每一個(gè)系統(tǒng)都有自己的業(yè)務(wù)流程,我們小組根據(jù)需求分析和功能設(shè)計(jì)規(guī)劃出了企業(yè)交互系統(tǒng)運(yùn)行的業(yè)務(wù)流程,如圖2-3所示:</p><p><b>  2.5 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p

35、><p>  通過(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)完成整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)。</p><p>  2.5.1 實(shí)體關(guān)系圖(E-R圖)</p><p>  在線交互模塊涉及到的管理對(duì)象有5個(gè):系統(tǒng)用戶、系統(tǒng)團(tuán)隊(duì)、

36、系統(tǒng)文件發(fā)送、團(tuán)隊(duì)交互、用戶交互,每個(gè)對(duì)象需關(guān)注的重點(diǎn)屬性分別如圖2-4、圖2-5、圖2-6、圖2-7、圖2-8所示:</p><p>  每個(gè)表都與此表有關(guān)聯(lián),根據(jù)用戶編號(hào)可提取到用戶的用戶名。</p><p>  與系統(tǒng)用戶表有關(guān)聯(lián),根據(jù)用戶編號(hào)提取用戶信息</p><p>  與系統(tǒng)用戶表存在聯(lián)系,根據(jù)用戶編號(hào)提取用戶名稱。</p><p&

37、gt;  與系統(tǒng)用戶表和系統(tǒng)團(tuán)隊(duì)表有關(guān)聯(lián),根據(jù)用戶編號(hào)能提取用戶名稱,根據(jù)團(tuán)隊(duì)編號(hào)能提取團(tuán)隊(duì)名稱。</p><p>  與系統(tǒng)用戶表有關(guān)聯(lián),根據(jù)用戶編號(hào)提取用戶名稱。</p><p>  2.5.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p>  這一階段是邏輯實(shí)現(xiàn)階段,需注意如何使用三大范式約束邏輯設(shè)計(jì),一般遵循3個(gè)原則即可:</p><p>  

38、一、每個(gè)字段都必須是不可再分的;</p><p>  二、非主鍵字段必須完全依賴該主鍵;</p><p>  三、有關(guān)鍵關(guān)系的表使用主外鍵聯(lián)系起來(lái)。</p><p>  最終形成翻譯后的數(shù)據(jù)庫(kù)關(guān)系圖,如圖2-9所示:</p><p>  2.5.3 數(shù)據(jù)存取的實(shí)現(xiàn)</p><p>  每個(gè)功能的數(shù)據(jù)存取實(shí)現(xiàn)方式是一樣的

39、,只需寫(xiě)一個(gè)功能模塊的實(shí)現(xiàn)代碼,剩下的功能模塊在其基礎(chǔ)上改動(dòng)表名稱和表中字段即可。以下寫(xiě)的是文件發(fā)送模塊的數(shù)據(jù)存取實(shí)現(xiàn)方式。</p><p><b>  一、數(shù)據(jù)庫(kù)的連接</b></p><p>  .NET與數(shù)據(jù)庫(kù)SQL Server 2005連接寫(xiě)在數(shù)據(jù)庫(kù)訪問(wèn)層中,身份認(rèn)證寫(xiě)在配置文件中,便于管理且安全性高。</p><p>  strin

40、g connectionString = ConfigurationManager.ConnectionString</p><p>  ["SQLCONNECTIONSTRING"].ConnectionString;</p><p>  SqlConnection con = new SqlConnection(connectionString);</p>

41、;<p><b>  二、數(shù)據(jù)的取出</b></p><p>  數(shù)據(jù)的取出以關(guān)鍵字SELECT來(lái)實(shí)現(xiàn),以下是讀取已發(fā)送文件的信息的實(shí)現(xiàn)方式:</p><p>  string cmdText = "SELECT [File].*,S.Username AS SenderName,R.Username AS ReceiverName"

42、</p><p>  + " FROM [File]"</p><p>  + " INNER JOIN [User] AS S ON S.ID=[File].Sender"</p><p>  + " INNER JOIN [User] AS R ON R.ID=[File].Receiver"</

43、p><p>  + " WHERE [File].Receiver=@UserID ORDER BY </p><p>  CreateDate DESC"; </p><p><b>  三、數(shù)據(jù)的存入</b></p><p>  數(shù)據(jù)的存入用關(guān)鍵字INSERT INTO,以下是添加已發(fā)送文件信息到

44、數(shù)據(jù)庫(kù)表(File)中的實(shí)現(xiàn)方式:</p><p>  string cmdText = "INSERT INTO [File](Name,Sender,Receiver,Url,Type,Size,CreateDate)VALUES(@Name,@Sender,@Receiver,@Url,@Type,@Size,GETDATE())";</p><p>  ///根

45、據(jù)表中字段先后順序逐行添加</p><p>  SqlCommand cmd = new SqlCommand(cmdText,con);</p><p>  cmd.Parameters.Add("@Name",SqlDbType.VarChar,200);</p><p>  cmd.Parameters.Add("@Sender&

46、quot;,SqlDbType.Int,4);</p><p>  cmd.Parameters.Add("@Receiver",SqlDbType.Int,4);</p><p>  cmd.Parameters.Add("@Url",SqlDbType.VarChar,255);</p><p>  cmd.Paramet

47、ers.Add("@Type",SqlDbType.VarChar,50);</p><p>  cmd.Parameters.Add("@Size",SqlDbType.Int,4);</p><p>  cmd.Parameters[0].Value = name;</p><p>  cmd.Parameters[1].

48、Value = sender;</p><p>  cmd.Parameters[2].Value = receiver;</p><p>  cmd.Parameters[3].Value = url;</p><p>  cmd.Parameters[4].Value = type;</p><p>  cmd.Parameters[5]

49、.Value = size;</p><p>  int result = -1;</p><p>  2.6 文件夾組織結(jié)構(gòu)</p><p>  每一個(gè)項(xiàng)目都有合理的組織結(jié)構(gòu),如圖2-10所示是我們所做系統(tǒng)的組織結(jié)構(gòu)。App_Code文件夾中放的是公共類及其視圖;App_Data文件夾中存放的是數(shù)據(jù)庫(kù)文件;App_Themes文件夾中放的是關(guān)于主題文件,即對(duì)前臺(tái)的

50、設(shè)計(jì);Caboodle文件夾中存放的是團(tuán)隊(duì)處理的文件;Files文件夾中存放用戶發(fā)送過(guò)的文件;Hailfellow文件夾中存放的是用戶分組的文件;UserInfo文件夾中放的是用戶信息類的文件。</p><p>  圖2-10文件夾組織結(jié)構(gòu)</p><p>  2.7 程序運(yùn)行環(huán)境</p><p>  系統(tǒng)開(kāi)發(fā)平臺(tái):Microsoft Visual Studio 2

51、010。</p><p>  數(shù)據(jù)庫(kù)管理系統(tǒng):Microsoft SQL Server 2005。</p><p>  系統(tǒng)開(kāi)發(fā)語(yǔ)言:C#。</p><p>  運(yùn)行環(huán)境:Microsoft.NET Framework SDK v4.0。</p><p>  第三章 在線交互模塊設(shè)計(jì)</p><p>  3.1 在線交

52、互模塊概述</p><p>  3.1.1 功能簡(jiǎn)介</p><p>  在線交互模是整個(gè)系統(tǒng)的核心,系統(tǒng)用戶可以和系統(tǒng)內(nèi)其他用戶進(jìn)行在線及時(shí)交互,進(jìn)一步實(shí)現(xiàn)企業(yè)信息化。</p><p>  用戶在登錄之后便進(jìn)入在線交互的系統(tǒng)主頁(yè)面,主頁(yè)面上有進(jìn)入各個(gè)功能模塊的鏈接:發(fā)布交流(即一對(duì)一交互)、團(tuán)隊(duì)交互、文件發(fā)送、客戶留言、查看信息、移動(dòng)到…、加入團(tuán)隊(duì)、客戶組管理、客

53、戶檢索、團(tuán)隊(duì)管理列表、系統(tǒng)管理、退出登錄。</p><p>  根據(jù)用戶身份的不同,可使用的功能也不同。</p><p>  3.2 在線交互模塊技術(shù)分析</p><p>  整個(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)容。

54、這樣一來(lái),整個(gè)系統(tǒng)頁(yè)面看上去就整齊劃一,不顯雜亂。</p><p>  模塊設(shè)計(jì)采用了創(chuàng)建交互式網(wǎng)頁(yè)的網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)Ajax無(wú)刷新技術(shù)處理,當(dāng)用戶在交流時(shí),頁(yè)面和服務(wù)器間的數(shù)據(jù)交互可以通過(guò)異步傳輸來(lái)實(shí)現(xiàn),而不需要中斷用戶當(dāng)前操作。</p><p>  3.3 在線交互模塊實(shí)現(xiàn)過(guò)程 </p><p>  3.3.1 頁(yè)面設(shè)計(jì)及主要代碼實(shí)現(xiàn)</p><

55、p>  框架設(shè)計(jì):框架左側(cè)為系統(tǒng)客戶組,顯示用戶名稱。</p><p>  右側(cè)分為三個(gè)框架,最上方為供用戶選擇的使用功能的選項(xiàng);中間顯示交流信息;最底層為用戶信息輸入框。源代碼如下:</p><p>  <frameset id="Default" rows="64,*" frameborder="0" border

56、="0" framespacing="0"></p><p>  <frame id="Header" name="Header" src="Header.aspx" scrolling="auto" noresize></frame></p>&l

57、t;p>  <frameset id="Main" cols="164,*" rows="*" border="0" framespacing="0"></p><p>  <frame name="User" src="Hailfellow/Fellow.as

58、px" scrolling="auto" frameborder="0" noresize></frame></p><p>  <frame name="Desktop" scrolling="auto" src="Desktop.aspx" frameborder="

59、0" noresize></frame></p><p>  </frameset></p><p>  </frameset></p><p>  導(dǎo)航鏈接、文件發(fā)送、發(fā)布交流、團(tuán)隊(duì)交互的頁(yè)面設(shè)計(jì)分別見(jiàn)以下圖3-1、圖3-2、圖3-3、圖3-4:</p><p>  文件發(fā)送是用戶之間發(fā)

60、送一些圖片、文檔、文件夾等之類的功能項(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)代碼為:</p><p>  protected void btnCommit_Click(object sen

61、der,EventArgs e)</p><p>  { ///判斷上載文件的內(nèi)容是否為空</p><p>  if(fuFile.HasFile == false || fuFile.PostedFile.ContentLength <= 0)</p><p><b>  {</b></p><p>  lb

62、Message.Text = "上載文件的內(nèi)容為空,請(qǐng)重新選擇文件!";</p><p><b>  return;</b></p><p><b>  }</b></p><p>  ///獲取上載文件的屬性,如類型、大小、名稱等,上載的文件類型及大小不限,但只能同時(shí)上載一個(gè)文件</p>

63、<p>  string type = fuFile.PostedFile.ContentType;</p><p>  int size = fuFile.PostedFile.ContentLength;</p><p>  string oldFileName = Path.GetFileNameWithoutExtension(fuFile.PostedFile.Fil

64、eName);</p><p>  ///創(chuàng)建基于時(shí)間的文件名稱</p><p>  string fileName = AjaxInstantMessagingSystem.CreateDateTimeString();</p><p>  string extension = Path.GetExtension(fuFile.PostedFile.FileNam

65、e);</p><p>  ///構(gòu)建保存文件位置的路徑</p><p>  string url = "Files/" + fileName + extension;</p><p>  ///映射為物理路徑</p><p>  string fullPath = Server.MapPath(url);</p&g

66、t;<p>  ///判斷文件是否存在,對(duì)同一個(gè)發(fā)送對(duì)象不可發(fā)送兩次相同的文件</p><p>  if(System.IO.File.Exists(fullPath) == true)</p><p><b>  {</b></p><p>  lbMessage.Text = "上載的文件已經(jīng)存在,請(qǐng)重新選擇文件!&

67、quot;;</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  try</b></p><p>  { ///上載文件</p><p>  fuFile.SaveAs(fullPa

68、th);</p><p>  ASPNETAJAXWeb.AjaxInstantMessaging.File file = new ASPNETAJAXWeb.AjaxInstantMessaging.File();</p><p>  ///添加到數(shù)據(jù)庫(kù)中,文件上載后會(huì)保存到我的已發(fā)送文件中,用戶可自行可以查看、刪除</p><p>  if(file.AddFi

69、le(oldFileName,userID,fellowID,url,type,size) > 0)</p><p><b>  {</b></p><p>  lbMessage.Text = "恭喜您,發(fā)送文件(" + oldFileName + ")給" + lbUsername.Text + "成功。&q

70、uot;;</p><p><b>  }</b></p><p><b>  }</b></p><p>  catch(Exception ex)</p><p>  { ///顯示錯(cuò)誤信息</p><p>  lbMessage.Text = "上載文件錯(cuò)

71、誤,錯(cuò)誤原因?yàn)椋?quot; + ex.Message;</p><p><b>  return;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  發(fā)布交流是用戶之間一對(duì)一交流的功能項(xiàng),頁(yè)面的設(shè)計(jì)中也用到了Updat

72、ePanel控件及ScriptManager控件,當(dāng)聊天消息發(fā)出后,只需要刷新消息顯示框的內(nèi)容即可,而ScriptManager控件是客戶端頁(yè)面和服務(wù)器之間的橋梁,管理腳本資源,負(fù)責(zé)部分頁(yè)面更新,故選用此控件。模塊主要實(shí)現(xiàn)代碼為:</p><p>  private void ShowMessageData()</p><p>  { ///構(gòu)建聊天的消息,用戶選擇一個(gè)聊天對(duì)象,只可在

73、消息輸入框中</p><p>  輸入文字信息,不可添加諸如圖片之類的非文字信息</p><p>  StringBuilder sbMessage = new StringBuilder();</p><p>  foreach(DataRowView row in dv)</p><p>  { ///設(shè)置一條消息</p>

74、<p>  string singleMessage = row["SenderName"].ToString() + " 在[" + row["CreateDate"].ToString() + "]發(fā)表:\n";</p><p>  singleMessage += "  " + row[&quo

75、t;Body"].ToString() + "\n";</p><p>  sbMessage.Append(singleMessage);</p><p><b>  }</b></p><p>  ///顯示聊天消息,用戶所發(fā)表的聊天消息可在消息輸入框上方的消</p><p><b

76、>  息先是框中看到</b></p><p>  tbChatMessage.Text = sbMessage.ToString();</p><p><b>  }</b></p><p>  protected void btnCommit_Click(object sender,EventArgs e)</p>

77、;<p>  { ///發(fā)送消息,所發(fā)送的消息存放在我的談話記錄中,用戶可自行查</p><p><b>  看、刪除</b></p><p>  MessageForSingle message = new MessageForSingle();</p><p>  if(message.AddMessage(tbMessa

78、ge.Text,userID,fellowID) > 0)</p><p>  { ///重新顯示消息</p><p>  ShowMessageData();</p><p><b>  }</b></p><p><b>  }</b></p><p>  團(tuán)隊(duì)

79、交互是一個(gè)團(tuán)體交流的功能項(xiàng),當(dāng)消息發(fā)出后只需要更新消息顯示框的內(nèi)容,不需要刷新整個(gè)頁(yè)面,所以,在頁(yè)面設(shè)計(jì)時(shí)也選用了UpdatePanel控件和ScriptManager控件。其功能相當(dāng)于QQ上的群聊,主要實(shí)現(xiàn)代碼為:</p><p>  private void ShowMessageData(int caboodleID)</p><p>  { //構(gòu)建聊天的消息,用戶可選擇加入一

80、個(gè)團(tuán)隊(duì),在消息輸入框中只可</p><p>  輸入文字消息,不可輸入諸如圖片之類的非文字信息</p><p>  StringBuilder sbMessage = new StringBuilder();</p><p>  foreach(DataRowView row in dv) </p><p>  { ///設(shè)置一條消息,從

81、數(shù)據(jù)庫(kù)中獲取相關(guān)數(shù)據(jù)</p><p>  String singleMessage = row["SenderName"].ToString() + " 在[" + row["CreateDate"].ToString() + "]發(fā)表:\n"; </p><p>  singleMessage += &quo

82、t;  " + row["Body"].ToString() + "\n";</p><p>  sbMessage.Append(singleMessage);</p><p><b>  }</b></p><p>  ///顯示聊天消息,用戶所發(fā)表的聊天消息可在消息輸入框上方的消息<

83、/p><p><b>  先是框中看到</b></p><p>  tbChatMessage.Text = sbMessage.ToString();</p><p><b>  }</b></p><p>  protected void btnCommit_Click(object sender,

84、EventArgs e)</p><p>  { ///發(fā)送消息,所發(fā)送的消息存放在我的談話記錄中,用戶可自行查</p><p><b>  看、刪除</b></p><p>  MessageForCaboodle message = new MessageForCaboodle();</p><p>  if(m

85、essage.AddMessage(tbMessage.Text,userID,caboodleID) > 0)</p><p>  { ///重新顯示消息</p><p>  ShowMessageData(caboodleID);</p><p><b>  }</b></p><p><b> 

86、 }</b></p><p><b>  第四章 測(cè)試</b></p><p>  本測(cè)試將項(xiàng)目加入到Visual Studio 2010中,并配以數(shù)據(jù)庫(kù)SQL Server 2005進(jìn)行對(duì)模塊功能的測(cè)試,以不同的身份登錄,權(quán)限也不同,使用的功能就有所區(qū)別。本測(cè)試將三種身份都測(cè)試了,測(cè)試中每種身份都有選擇交互對(duì)象和不選擇交互對(duì)象兩種方式,每種方式中都列出了

87、預(yù)期的輸出結(jié)果和測(cè)試時(shí)實(shí)際輸出結(jié)果,以作對(duì)照,如表4-1所示:</p><p><b>  表4-1 功能測(cè)試</b></p><p><b>  總結(jié)</b></p><p>  經(jīng)過(guò)一個(gè)多月的緊張?jiān)O(shè)計(jì)工作,我們團(tuán)隊(duì)終于完成了預(yù)期目標(biāo)。</p><p>  文件的發(fā)送,個(gè)人及團(tuán)隊(duì)間的交流,團(tuán)隊(duì)的創(chuàng)

88、建,客戶的檢索、添加及移動(dòng),用戶信息的查看,留言系統(tǒng)等功能,不是所有用戶都可以使用的。根據(jù)身份的不同,用戶使用的功能有所限制,例如,系統(tǒng)管理員不可以參與聊天,只可以創(chuàng)建團(tuán)隊(duì)及發(fā)送文件。企業(yè)用于交流的基礎(chǔ)功能都可以實(shí)現(xiàn)。</p><p>  企業(yè)客戶交互系統(tǒng)功能不是很完善,還是存在一些問(wèn)題的。例如用戶登錄退出的時(shí)間沒(méi)有記錄,這樣就沒(méi)法判斷是否有他人非法使用用戶賬號(hào)登錄。若用戶密碼泄漏、賬號(hào)被盜取并被修改密碼,用戶就

89、無(wú)法找回賬號(hào)。發(fā)送的文件未進(jìn)行加密處理。諸如這樣的一系列安全問(wèn)題在本系統(tǒng)中未解決,今后有待完善。</p><p>  企業(yè)客戶交互系統(tǒng)有很廣闊的發(fā)展前景,例如IBM,通過(guò)提供一系列的產(chǎn)品、解決方案和高級(jí)咨詢服務(wù),幫助企業(yè)更加智慧的收集、管理、分析和利用信息。提供全新的能力,幫助企業(yè)獲取洞察、預(yù)測(cè)風(fēng)險(xiǎn),發(fā)現(xiàn)機(jī)會(huì),優(yōu)化業(yè)務(wù)流程,促進(jìn)創(chuàng)新,驅(qū)動(dòng)更快、更加智慧的決策和行動(dòng)。</p><p>  從

90、這次的畢業(yè)設(shè)計(jì)過(guò)程中,我學(xué)到了很多有用的東西。從一開(kāi)始的資料收集、技術(shù)方案的確定到編碼、測(cè)試和修改,做到了不用老師手把手教授的情況下,小組共同完成整個(gè)系統(tǒng),增強(qiáng)了我們自我學(xué)習(xí)的能力。</p><p><b>  參考文獻(xiàn)</b></p><p> ?。?](美)Imar Spaanjaars 著.劉偉琴 張格仙 譯.ASP.NET 4入門(mén)經(jīng)典 —涵蓋C#和VB.NET

91、[M].第6版.清華大學(xué)出版社,2011</p><p>  [2](美)Jacob J.Sanford 著.張?jiān)?譯.ASP.NET Web界面設(shè)計(jì)三劍客:CSS、Themes和Master Pages[M].清華大學(xué)出版社,2009</p><p> ?。?]秦婧 石葉平 等編著.精通C#與.NET 4.0數(shù)據(jù)庫(kù)開(kāi)發(fā)—基礎(chǔ)、數(shù)據(jù)庫(kù)核心技術(shù)、項(xiàng)目實(shí)戰(zhàn)[M].清華大學(xué)出版社,2011<

92、;/p><p> ?。?]陳志峰 黃海軍 主編.Web數(shù)據(jù)庫(kù)原理與應(yīng)用 —基于工作過(guò)程[M].清華大學(xué)出版社 北京交通大學(xué)出版社,2010</p><p> ?。?]JeffreyRichter 著.李建忠 譯..NET框架程序設(shè)計(jì)[M].清華大學(xué)出版社社,2003</p><p><b>  致謝</b></p><p>

93、  在畢業(yè)設(shè)計(jì)完成之際,我要對(duì)我的指導(dǎo)老師和大學(xué)期間教授過(guò)我的老師致以誠(chéng)摯的謝意和崇高的敬意。這兩年來(lái)老師們對(duì)我的教導(dǎo),讓我學(xué)到了很多知識(shí),并運(yùn)用這些知識(shí)完成了這次的畢業(yè)設(shè)計(jì)。在這里,要特別感謝我的指導(dǎo)老師,他科學(xué)嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、精益求精的工作作風(fēng),深深的感染和激勵(lì)著我,在他細(xì)心的指導(dǎo)下,我畢業(yè)設(shè)計(jì)逐步得到完善。</p><p>  感謝我的團(tuán)隊(duì),我們相互幫助,相互討論,有了分歧就和平的協(xié)商,避免了成員間的沖突,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論