1. 程式人生 > >電力公司SMS簡訊群發平臺的設計與實現

電力公司SMS簡訊群發平臺的設計與實現

濰坊科技學院
本科畢業設計(論文)

題 目 電力公司SMS簡訊群發平臺的設計與實現
院(系)
專 業 科學與技術
學 號
學生姓名
指導教師 劉效偉
起訖日期 2015.1.11-2015.6.6
設計地點 壽光市軟體園山東濰科軟體科技有限公司

摘要
隨著通訊網路服務內容的日漸豐富,人們的通訊習慣也在發生著變化,移動通訊技術作為21世紀人類最偉大的發明之一,已經滲透到人類生活的方方面面,無時無刻不在改變著人們的生活方式和生活節奏,目前運營商除了提供最基本的語音 通話服務以外還推出了大量基於簡訊息平臺等業務。
當前,在“以客戶為中心”的經營理念大行其道的今天,很多大中型企事業都建立了以服務為目標的簡訊互動平臺,在縮短客戶距離、增強互動溝通的基礎上,大大提高了客戶的滿意度及忠誠度,這種簡訊雙向溝通的模式正受到越來越多的企事業所歡迎,由此企業簡訊應用的時代正離我們越來越近。
為此我公司與壽光市供電公司準備合作完成一套SMS平臺,通過管理系統來統一的實現簡訊群發、客戶服務。既能夠為客戶提供更優質和貼心的服務,增加客戶量;也能為公司內部提供方便,更快捷、高效的管理客戶資訊、服務資訊、報表統計等有效資料。
關鍵字:簡訊群發 多種運營商 模板靈活自由

Abstract
With the increasingly rich communication network services, people’s communication habits are changing, mobile communications technology as one of the greatest inventions of the 21st century, has penetrated into every aspect of human life, all the time does not change people’s way of life and the pace of life, the current operators in addition to providing basic services other than voice calls also introduced a large number of short-based information platform and other services.
Currently, in the “customer-centric” business philosophy popular today, many medium-sized enterprises have been established to serve as the target of SMS interactive platform, shorten the distance, on the basis of enhanced interactive communication, greatly improving the customer satisfaction and loyalty, this two-way SMS communication mode is being welcomed by more and more enterprises, thereby era enterprise messaging applications are getting closer and closer to us.
For this reason our company and power company ready to cooperate Shouguang City complete set of SMS platform, through a unified management system to implement SMS group sending, customer service. Both to provide customers with better quality and attentive service, increase customer volume; also provide convenient, fast and efficient management of customer information, service information within the company, reports, statistics and other effective data.
Keywords: SMS bulk carriers /more flexibility / freedom Templates

目 錄
第1章 緒論 1
1.1 開發背景 1
1.2 系統可行性分析 2
1.2.1 經濟可行性 2
1.2.2 技術可行性 3
1.2.3 操作可行性 3
第2章 系統理論基礎 5
2.1 開發語言 5
2.2 開發工具 7
2.3 資料庫SQL Server 2008r2 8
2.4 其他相關知識 8
第3章 系統總體分析與設計 10
3.1 系統總體分析 10
3.2 系統特點和優勢 12
4.1 系統基礎資料模組詳情介紹 14
4.1.1 開發管理員首頁 14
4.1.2 系統主要功能模組介紹 14
4.1.3 使用者管理 15
4.1.4 部門管理 16
4.1.5 角色管理 17
4.1.6 角色許可權管理 18
4.1.7 系統配置模組 21
4.2 簡訊服務業務模組的實現 21
4.2.1 簡訊群發 21
4.2.2 已發信息 23
4.2.3 未發信息 25
4.2.4 常用短語維護 25
4.2.5 短息統計模組 26
4.2.6 個人通訊錄 29
4.3 系統資料庫設計 29
4.3.1 資料庫設計 29
4.3.2 資料型別設計 29
4.3.2.1 使用者登入資料表設計 29
4.3.2.2 部門表設計 30
4.3.2.3 部門使用者表 30
4.3.2.4 角色表設計 30
4.3.2.5 角色使用者表設計 31
4.3.2.6 已發信息表設計 31
4.3.2.7 未發信息表設計 31
4.3.2.8 常用短語表設計 32
4.3.2.9 日誌表設計 32
4.3.2.10 模組表設計 32
第五章 系統除錯與測試 33
5.1 系統使用環境 33
5.2 系統除錯 34
5.3 系統測試 34
第6章 總結與展望 35
6.1 總結 35
6.1.1 系統特色與創新 35
6.1.2 系統侷限 35
6.2 展望 35
參考文獻 37

第1章 緒論
簡訊作為一種靈活方便的溝通方式,正在引起人們越來越多的注意。隨著網路技術的發展和移動資訊化時代的到來,簡訊的收發已經不再侷限於手機與手機之間簡單的資訊傳送,而通過計算機和網路收發簡訊已經成為一種必然的趨勢。尤其是通過簡訊群發平臺實現簡訊的大規模傳送,已經得到越來越多的企事業單位和商家的重視,成為其實現資訊溝通的重要方式。簡訊廣告、簡訊提醒、簡訊郵箱等業務的發展都為簡訊群發平臺提供了豐富的應用前景,手機的普及和移動通訊成本的降低更加速了這一程序。 簡訊群發是使用者通過簡訊對多個手機號碼進行組群傳送,具有速度快、蔓延性、互動性、低成本等特點。
簡訊群發具有任何傳統廣告都無法超越的瞬間轟炸效果,企業通過簡訊群發工具即可實現對客戶的廣告瞬間轟炸。病毒效果,企業簡訊群發以後,收到的每個人都可以隨時轉發給身邊的親朋好友,尤其對於一些抽獎活動、節日祝福等尤其有效。通過簡訊群發工具,企業可以真正的做到低成本高效率的傳播資訊,只要做好預算就可以有針對性的定向定時定條進行群發。企業可以事先對簡訊接受人群進行篩選,通過簡訊群發裝置對篩選好的特定人群進行精準群發。因為人群定位的精準,此方法可以達到事半功倍的效果。
支援多種運營商平臺下的簡訊群發平臺通過高效、便捷的管理模式。企業人員眾多,管理分佈清晰的同時在實際工作中又存在許多重複作業。企業工作人員可以通過利用簡訊群發這一網路平臺,實現線上線下聯動,有計劃有目標的統籌安排各級部門,節省更多的人力資源。

1.1 開發背景
企業簡訊平臺已成為當今營銷中的一種熱門形式,在電腦上安裝企業簡訊平臺軟體平臺,利用手機簡訊的形式,可進行簡訊單發、群發、分組發、定時資訊傳送;強大的使用者管理功能,可進行無限級的使用者分組;簡訊目標接收者,可以從通訊錄中分類選擇,可以從txt檔案中匯入,也可以手工輸入;企業簡訊平臺可以隨時的修改編輯簡訊內容,方便快捷。
企業希望找到一種具有普及率高、方便快捷、移動性好、靈活性高、價格便宜等特點。利用計算機來收發手機簡訊,穩定性高.可實現企業的諸如會議通知、新產品釋出通知、客戶問候等應用,且在計算機上可以儲存無限多條的簡訊收發記錄, 提供方便的檢索、查詢功能,確保簡訊收發記錄長久儲存且一目瞭然的一種簡訊群發方式。並且簡訊收發記錄可匯出為計算機能使用的通用格式。
同時,在競爭日趨激烈的市場環境下,企事業單位高效而準確地建立企業與客戶、企業與員工之間暢通無阻的溝通模型,早已成為企事業經營管理者共同研究與探討的課題。當前各種傳統的服務 手段(上門拜訪, 電話, 信函, EMAIL等)雖各有特點, 但在使用過程中都表現出低效、成本高昂等問題與不足,如上門拜訪費時、費力且費用消耗大;逐個撥打電話工作量大,費用較高;信函無法 及時到達;E-MAIL缺乏提醒功能且無法及時檢視,特別是在客戶群體龐大、需要服務的內容不同而又需要客戶能方便反饋等情況下,傳統的服務工具便顯得蒼白無力,其結果便是:工作人員雖忙碌  不停但工作效率依然低下。這種狀況如果不積極加以改進,不僅會影響服務質量,甚至在很大程度上會對公司的良性發展產生負面影響。 
 通過使用簡訊平臺,企事業單位不僅可以便捷地實現向客戶(或員工)傳送資訊,而且能與客戶(或員工)進行簡訊雙向互動交流,以簡訊快速、準確、低價、綠色環保、溫馨宜人的資訊溝通方式把客戶和企業緊密聯絡在一起,從而能較好地起到提高顧客忠誠度的作用,為企業品牌建設與業務增長帶來較大的正面影響。
1.2 系統可行性分析
1.2.1 經濟可行性
在資訊時代的今天,各大商家的廣告大戰日趨激烈,而手機簡訊息作為一種全新的形式已經閃亮登場。簡訊息服務像風暴一樣席捲全國,越來越多的商家已經意識到簡訊息將會帶來巨大的商業價值。對於傳統的媒體,成本低,營銷方式主動出擊。通過企業簡訊平臺實現與簡訊平臺服務商簡訊閘道器之間的通訊,結合現有資訊化系統,利用電力系統資訊資源為電力客戶提供簡訊服務;為企業內部管理提供輔助平臺;為生產運營提供新的工作模式。
1.2.2 技術可行性
系統要求用c#開發,C#是一種新的面向物件的程式語言,它可以使技術人員快速的編寫基於.NET平臺下的應用程式,微軟的NET平臺提供一系列的程式設計工具用來最大限度去開發計算機通訊範圍。因為C#語言作為可以有面向物件的設計,所以它在程式設計中有許多構建元件可以選擇,不管是作為商業物件還是普通應用的程式,都是很重要的。使用C#語言,其相應的這些元件可以很簡單的將它轉變成網路服務,讓其可以通過作業系統來通過網際網路進行呼叫。
而且關於這方面的開發系統,在網上可看到許多關於組織管理系統的資料。現要開發的軟體和其大體相似。可參考的原始資料有:相關書籍以及網上的一些資料。這些都為開發者提供了一定的參考條件。
1.2.3 操作可行性
該系統可以實現絕對保密和準確無誤。系統具有一致的、友好的客戶化介面,易於使用和推廣,並具有實際可操作性,使用使用者能夠快速的掌握系統的使用。使用者終端全部採用瀏覽器方式。
系統穩定性、可用性要求高,因此係統還必須具有良好的可管理性和易於維護的特點。系統全面支援XML、Web Service等當前受到普遍支援的開放標準,保證系統能夠與其它平臺的應用系統、資料庫等相互交換資料並進行應用級的互操作及性和互聯性。系統體系結構良好,具有處理未來變化和發展所需要的可擴充套件性。採用B/S開發結構,本套SMS簡訊群發平臺在設計原理上進行了革命性的創新,採用軟硬結合的方式實現網路設定,在客戶端採用了系統無關的設計原則,可以安裝任何種類和數量的作業系統。即使更換系統硬體,重灌作業系統,都無需再次安裝志願者管理系統,可謂一勞永逸。該平臺實用性強,給企業使用者帶來了極致的使用者體驗。

第2章 系統理論基礎
本系統使用了 Visual Studio 2010 軟體作為開發工具,使用了c#和sql server 2008r2資料庫系統來開發本系統,前臺使用了C#script指令碼語言 的富客戶端技術Extjs來開發系統前臺展示頁面。

2.1 開發語言
C#是微軟公司釋出的一種面向物件的、運行於.NET Framework之上的高階程式設計語言,C#語言具有如下特性:精心地面向物件設計,簡潔的語法,與Web的緊密結合,完整的安全性與錯誤處理,版本處理技術,靈活性與相容性。
C#的特點和優勢:
1.面精心地面向物件設計:C#具有面向物件的語言所應有的一切特性:封裝、繼承與多型性,這並不出奇。然而,通過精心地面向物件設計,從高階商業物件到系統級應用,C#建造廣泛元件的絕對選擇。在C#的型別系統中,每種型別都可以看作一個物件。C#提供了一個叫做裝箱(boxing)與拆箱(unboxing)的機制來完成這種操作,而不給使用者帶來麻煩。C#只允許單繼承,即一個類不會有多個基類,從而避免了型別定義的混亂。數。整個C#的類模型是建立在.NET虛擬物件系統(Visual Object System,VOS)的基礎之上,其物件模型是.NET基礎架構的一部分,而不再是其本身的組成部分。藉助於從VB中得來的豐富的RAD經驗,C#具備了良好的開發環境。結合自身強大的面向物件功能,C#使得開發人員的生產效率得到極大的提高。對於公司而言,軟體開發週期的縮短將能使它們更好應付網路經濟的競爭。在功能與效率的槓桿上人們終於找到了支點。

2.簡潔的語法:#的程式碼在.NET框架提供的“可操縱”環境下執行,不允許直接地記憶體操作。它所帶來的最大的特色是沒有了指標。與此相關的是,那些在C++中被瘋狂使用的操作符(例如:“::”、“->”和“.,”)已經不再出現。C#只支援一個“.”,對於我們來說,現在需要理解的一切僅僅是名字的巢狀而已。

  
  • 1

C#用真正的關鍵字換掉了那些把活動模板庫(Active Template Library,ALT)和COM搞得亂糟糟的偽關鍵字,如OLE_COLOR、BOOL、VARIANT_BOOL、DISPID_XXXXX等等。每種C#操作符在.NET類庫中都有了新名字。
語法中的冗餘是C++中的常見的問題,比如”const”和”#define”、各種各樣的字元型別等等。C#對此進行了簡化,只保留了常見的形式,而別的冗餘形式從它的語法結構中被清除了出去。

3.與Web的緊密結合:.NET中新的應用程式開發模型意味著越來越多的解決方案需要與Web標準相統一,例如超文字標記語言(Hypertext Markup Language,HTML)和XML。由於歷史的原因,現存的一些開發工具不能與Web緊密地結合。SOAP的使用使得C#克服了這一缺陷,大規模深層次的分散式開發從此成為可能。

  
  • 1

由於有了Web服務框架的幫助,對程式設計師來說,網路服務看起來就象是C#的本地物件。程式設計師們能夠利用他們已有的面向物件的知識與技巧開發Web服務。僅需要使用簡單的C#語言結構,C#元件將能夠方便地為Web服務,並允許它們通過Internet被執行在任何作業系統上的任何語言所呼叫。
4.完整的安全性與錯誤處理:語言的安全性與錯誤處理能力,是衡量一種語言是否優秀的重要依據。C#的先進設計思想可以消除軟體開發中的許多常見錯誤,並提供了包括型別安全在內的完整的安全效能。為了減少開發中的錯誤,C#會幫助開發者通過更少的程式碼完成相同的功能,這不但減輕了程式設計人員的工作量,同時更有效地避免了錯誤的發生。
.NET執行庫提供了程式碼訪問安全特性,它允許管理員和使用者根據程式碼的ID來配置安全等級。在預設情況下,從Internet和Intranet下載的程式碼都不允許訪問任何本地檔案和資源。.NET平臺提供的垃圾收集器(Garbage Collection,GC)將負責資源的釋放與物件撤銷時的記憶體清理工作。變數是型別安全的。C#中不能使用未初始化的變數,物件的成員變數由編譯器負責將其置為零,當局部變數未經初始化而被使用時,編譯器將做出提醒;C#不支援不安全的指向,不能將整數指向引用型別。
5.靈活性和相容性
在簡化語法的同時,C#並沒有失去靈活性。如果需要,C#允許你將某些類或者類的某些方法宣告為非安全的。這樣一來,你將能夠使用指標、結構和靜態陣列,並且呼叫這些非安全程式碼不會帶來任何其它的問題。正是由於其靈活性,C#允許與C風格的需要傳遞指標型引數的API進行互動操作,DLL的任何入口點都可以在程式中進行訪問。C#遵守.NET公用語言規範(Common Language Specification,CLS),從而保證了C#元件與其它語言元件間的互操作性。元資料(Metadata)概念的引入既保證了相容性,又實現了型別安全。

 
2.2 開發工具
visual studio 2010的優勢:
1.藉助Visual Studio 2010整合開發環境,軟體開發工作將變得更為簡單便捷,業務決策也會變得更為有效。任何規模的組織都可以使用Visual Studio 2010快速建立應用程式,這些應用程式能夠利用Windows作業系統,使其成為更安全、更易於管理、更可靠的應用程式。Visual Studio 2010整合開發環境主要在三個方面為開發人員提供了關鍵的改進,即快速開發、團隊協作、使用者體驗。
2.Visual Studio 2010整合開發環境提供了除錯功能、資料庫功能、創新功能和高階開發工具。幫助開發者快速地建立應用程式。同時還包括各種增強功能,例如視覺化設計器、對Web開發工具的大量改進、對AJAX技術的支援,以及能夠加速開發和處理所有型別資料的語言增強功能。Visual Studio 2010為開發人員提供了許多相關的工具和框架支援,幫助開發者創建出支援AJAX的Web應用程式。
3.利用Visual Studio 2010整合開發環境提供的豐富元件,開發人員能夠快速地構建出Web應用程式。這些應用程式可以整合任何後端資料提供程式,例如:SQL Server、MySql、Oracle著名的資料都能得到很好的支援。同時,在任何當前的瀏覽器內,都能訪問ASP.NET應用程式。基於此,C#就成為了當今主流的Web開發語言。Visual Studio 2010整合開發環境改進了語言和資料功能,各個程式設計人員可以利用這些功能更輕鬆地構建解決方案,以分析和處理資訊。Visual Studio 2010還使開發人員能夠在同一開發環境內建立面向多個.NET Framework版本的應用程式。其能夠構建面向.NET Framework 2.0、3.0或4.0的應用程式,可以在同一環境中支援各種各樣的專案型別。
4.Visual Studio 2010整合開發環境為開發人員提供了在最新平臺上建立應用程式的新工具,這些平臺包括Windows Vista、SQL Server 2008、Windows Server 2008、Office 2007和Web。在Web應用程式中,使用ASP.NET AJAX以及其他新技術,開發人員能夠迅速地建立更高效、互動性更強和更個性化的新一代Web體驗
2.3 資料庫SQL Server 2008r2
SQL Server是一個可擴充套件的、高效能的、為分散式客戶機/伺服器計算所設計的資料庫管理系統,實現了與WindowsNT的有機結合,提供了基於事務的企業級資訊管理系統方案。SQL Server 2008r2是一個重大的產品版本,它推出了許多新的特性和關鍵的改進,使得它成為至今為止的最強大和最全面的SQL Server版本。微軟的這個資料平臺滿足這些資料爆炸和下一代資料驅動應用程式的需求,支援資料平臺願景:關鍵任務企業資料平臺、動態開發、關係資料和商業智慧。
QL Server 2008r2的優勢:
1. 資料壓縮
2. 分割槽表並行
3. 資源監控器
4. 分組設定
5. 捕獲變更資料
6. 可擴充套件的整合服務
7. SSIS 持久查詢
8. 星型聯接查詢優化器
9. 加密
10.備份壓縮
2.4 其他相關知識
JavaScript的優勢:
Javascript語言是由Netscape公司從LiveScript語言發展而來的基於原型化的具有面向物件特性的瀏覽器端動態指令碼語言。他不需要編譯直接由瀏覽器解釋執行。可以和css樣式、html標記語言進行結合製作很多美麗動態的效果,還可以進行諸如表單驗證功能,不僅可以給使用者帶來舒適的操作體驗,還可以減小對伺服器的壓力。它既可以直接嵌入到html使用也可以編寫成以.js為字尾的檔案然後在網頁檔案中引用。在1997年歐洲計算機制造協會(ECMA)指定了ECMASript的全新指令碼語言標準。
javascript的優勢是比較明顯的優勢有:
1、強大的客戶端驗證功能:
在客戶端可以很靈活在不向伺服器端發出請求的前提下進行表單驗證,增強了使用者體驗,減小了伺服器壓力。
2、javascript支援http的Ajax請求:
使用javascript的Ajax的請求可以在不重新整理網頁頁面的情況下區域性或者全部向伺服器端交換資料,可以根據伺服器端返回的資料(XML、JSON、字串)並給使用者做出相應的反饋,這樣可以使B/S模式的程式給使用者帶來C/S的體驗。
3、面向物件的支援:
Javascript是一門面向物件的動態指令碼語言,面向物件是一種好的程式碼組織方式,可以用它編寫複雜的業務邏輯或者客戶端UI框架。
4、簡單易用:
Javascript雖然是一門面向物件的指令碼程式語言,但是它語法簡單,入門門檻低,易於程式設計師上手使用。

第3章 系統總體分析與設計
3.1 系統總體分析
本系統是定位於電力公司給用電使用者和電力公司內部群發短息的一種系統,因此係統包括了簡訊群發系統所需的基本功能模組。
經過詳細分析,SMS簡訊群發平臺常用的模組如下:
簡訊群發、已發信息、傳送失敗的短息 、常用短語維護、簡訊統計模組、通訊錄、部門管理、系統賬號管理、角色管理、角色許可權管理等模組。
採用當前B/S系統架構的適用性,增強了系統的針對性和易用性。

系統物理構圖,如圖3.1:

                    圖3.1系統物理架構圖

  
  • 1

系統邏輯結構圖,如圖3.2:

圖3.2系統邏輯架構圖
3.2 系統特點和優勢
1. 基於B/S架構,通過本地電腦連結網際網路皆可使用,使得簡訊群發不受地域限制。
2. 使用本系統無需安裝任何客戶端專用軟體,使用普通瀏覽器即可實現異地、實時業務辦理。
3. 軟體完全安裝在伺服器上,並且還提供資料備份工具,資料資料徹底安全。
4. 本系統許可權管理分配靈活嚴謹而且簡單,可以設定部門領導和操作員等不同級別的操作許可權,從而可以完全避免越權操作,不同使用者之間資料相互保密。
5. 賬號無限制,可以隨意新增系統賬號、修改、刪除使用者帳號。
6. 系統安裝簡單,操作簡捷方便,技術支援使您更快熟悉軟體功能。
7. 系統採用http協議進行傳輸資料,對中心資料庫徹底加密處理,完善的使用系統錯誤日誌,系統安全性和可靠性極強。
8. 對部門的傳送條數進行限制和監控,不至於出現漏發或者或者重複傳送導致浪費的情況發生。
第4章 系統模組實現
4.1 系統基礎資料模組詳情介紹
4.1.1 開發管理員首頁
開發管理員首頁是根據是根據客戶需求特別設計的頁面包括國家電網的logo和簡潔的登入頁面。
開發管理員首頁如圖4.1所示:

                    圖4.1  開發管理員首頁

  
  • 1

4.1.2 系統主要功能模組介紹
系統的主要包括功能模組分為系統模組和業務模組,其中系統模組包括:使用者管理、部門管理、角色管理、角色許可權管理、系統配置。業務模組主要是針對簡訊傳送和統計等業務功能的介紹,主要包括:簡訊傳送、已發簡訊、未發簡訊、常用短語、個人通訊錄、webservice介面配置、簡訊統計。
系統主頁面如圖4.2所示:

圖4.2 系統主頁如圖所示
各功能模組還進行了詳細劃分,具體各部分功能在下文介紹。
4.1.3 使用者管理
使用者管理主要是新增使用者、刪除使用者、修改使用者、查詢使用者、設定啟用狀態。新增時可以手動新增也可以通過匯入的方式新增,為了顯示的順序有前又後,使用者可以根據自己的實際需要給新增的使用者排序。需要注意的是如果讓新增的使用者擁有自己的帳號和登入,需要給這個使用者設定密碼。
使用者管理頁面如圖4.3所示:

圖4.3 使用者管理頁面
(1)新增使用者:新增使用者有兩種方式,一種是傳統的新增方式:新增使用者時可以先在左側的模組列表中先選中一條功能模組資料單擊“使用者管理”中的“新增使用者”按鈕開啟新增使用者新增對話方塊,在對話方塊中可以填寫使用者名稱稱、聯絡人資訊、性別、手機號、所屬角色、所屬部門、所屬角色等資訊,填寫完成相應資訊後單擊對話方塊中的“儲存”按鈕即可把本條使用者資訊儲存到相應模組下。另外一種是批量匯入的方式:可以採取Excel表格的方式進行匯入,設定好表格的模板和程式中規定的模模板一一對應,然後點選“匯入”按鈕就能實現對使用者資訊的批量匯入。
(2)修改使用者資訊: 修改使用者資訊時,先選中需要修改的使用者資料,點選該使用者對應的“鉛筆”影象的按鈕,然後彈出現和新增按鈕相同的對話方塊,不過該對話方塊已經包含了該使用者的個人資訊,如果使用者資訊需要修改,可以在對應條目中點選修改,修改完成後點選儲存就實現了該使用者資訊的修改功能
(3)刪除使用者:刪除使用者資訊時可以選中一條使用者資料單擊刪除“按鈕”進行刪除操作,也可以在選中多個的條件下實現全選的功能。
(4)查詢使用者:查詢使用者資訊的時候系統提供了多種方式,可以通過簡單的模糊查詢人名的方式查詢,也可以根據部門查詢,還可以通過該使用者是否開啟了登陸許可權來進行查詢。
(5)設定啟用狀態:使用者在新增後可以需要設定啟用狀態,點選“設定啟用狀態”按鈕,可以對使用者的啟用狀態進行設定,啟用狀態有啟用和禁用兩種方式,只有使用者設定的狀態為啟用時使用者才具備登陸許可權,否則不能登陸。

4.1.4 部門管理
使用者可以根據自己的需要新增部門、刪除部門、修改部門、查詢部門,通過排序可以控制顯示順序的前後,使用者還可以根據實際需要限制部門傳送的條數。
部門管理頁面如圖4.4所示:

圖4.4 部門管理頁面
(1)新增部門:新增部門時可以先在左側的模組列表中先選中一條功能模組資料單擊“部門管理”中的“新增部門”按鈕開啟新增部門新增對話方塊,在對話方塊中可以填寫部門名稱、排序、上級部門、備註、是否限制傳送條數、限制傳送條數數量等資訊,填寫完成相應資訊後單擊對話方塊中的“儲存”按鈕即可把本條部門資訊儲存到相應模組下。
(2)修改部門資訊: 修改部門資訊時,先選中需要修改的部門資料,點選該部門對應的“鉛筆”影象的按鈕,然後彈出現和新增按鈕相同的對話方塊,不過該對話方塊已經包含了該部門資訊,如果部門資訊需要修改,可以在對應條目中點選修改,修改完成後點選儲存就實現了該部門資訊的修改功能
(3)刪除部門:刪除部門資訊時可以選中一條部門資料單擊刪除“按鈕”進行刪除操作,也可以在選中多個的條件下實現全選的功能。
(4)查詢部門:可以通過模糊查詢部門名稱的方式實現部門的查詢。
4.1.5 角色管理
使用者可以根據自己的需要新增角色、刪除角色、修改角色、查詢角色,通過排序可以控制顯示順序的前後。
角色管理頁面如圖4.4所示:

圖4.5 角色管理頁面
(1)新增角色:新增角色時可以先在左側的模組列表中先選中一條功能模組資料單擊“角色管理”中的“新增角色”按鈕開啟新增角色新增對話方塊,在對話方塊中可以填寫角色名稱、備註。填寫完成相應資訊後單擊對話方塊中的“儲存”按鈕即可把本條角色資訊儲存到相應模組下。
(2)修改角色資訊: 修改角色資訊時,先選中需要修改的角色資料,點選該角色對應的“鉛筆”影象的按鈕,然後彈出現和新增按鈕相同的對話方塊,不過該對話方塊已經包含了該角色資訊,如果角色資訊需要修改,可以在對應條目中點選修改,修改完成後點選儲存就實現了該角色資訊的修改功能
(3)刪除角色:刪除角色資訊時可以選中一條角色資料單擊刪除“按鈕”進行刪除操作,也可以在選中多個的條件下實現全選的功能。
(4)查詢角色:可以通過模糊查詢角色名稱的方式實現角色的查詢。
4.1.6 角色許可權管理
角色許可權管理主要是給不同的登入角色分配許可權。使得登入的角色使用者能夠檢視自己許可權內對應的系統模組。
角色許可權管理頁面如圖4.6所示:

圖4.6角色管理頁面

許可權的用例圖如下:

4.1.7 系統配置模組
系統配置模組主要是對系統內建的基本功能的描述,包括系統樣式的戰士,日誌記錄功能,線上統計和修改密碼等功能。
角色許可權管理頁面如圖4.7所示:
圖4.7系統配置頁面
各功能模組還進行了詳細劃分,具體各部分功能在下文介紹。
(1)日誌管理:主要記錄和搜尋登陸使用者的登陸資訊,包括登陸時間、登陸賬號、登陸級別個錯誤資訊情況。
(2)系統配置:主要完成系統頁面的展示情況,可以修改此處以完成對頁面的的展示背景和佈局進行調整,也有固定的模板供使用者選擇。
(3)修改密碼:登陸使用者對登陸賬號的密碼進行修改。
(4)線上統計:統計線上人數和訪問的中文名、英文名、ip地址、 登陸時間等資訊。
4.2 簡訊服務業務模組的實現
4.2.1 簡訊群發
發簡訊是實現使用者根據自己的實際需求完成簡訊傳送和群發的功能。使用者可以按照樹狀圖上繫結的通訊錄找到自己想要傳送的客戶,同事或者其他人員,還可以在個人通訊錄中自己手動新增的傳送人員的姓名。
簡訊群發頁面如圖4.8所示:
圖4.8簡訊群發頁面
其中傳送簡訊的過程是呼叫了聯通“易信通”平臺的webservise介面實現的。單次傳送號碼的個數限為1000個,為了使用者的使用便捷和靈活性,系統將簡訊傳送失敗的15種情況寫入系統,採用彈窗的方式講錯誤資訊及時的反饋給使用者,使用者可以根據自身需要設定是否在簡訊接收端(手機端)顯示傳送人員的姓名,充分考慮到傳送資訊的安全保密性,支援三大運營商的服務平臺,聯通,移動、電信使用者都能接收到簡訊平臺傳送的資訊。下面就是簡訊群發平臺實現功能的部分程式碼:
//簡訊群發功能的實現
for (int i = 0; i < number.Length; i++)
{
if (CBDispalyName.Checked)
{
b = sptc.Sms(Company, UsersName, password, deptName +
“-” + Name + “:” + contents, number[i].ToString(), radm, timer, “1”, “”, “”,”“);
}
else
{
b = sptc.Sms(Company, UsersName, password,
deptName + “:” + contents, number[i].ToString(), radm, timer, “1”, “”, “”, “”);
}
string getback = b.Substring(7, 1);
if (getback == “0”)//表示傳送成功
{
Alert.ShowInTop(“成功傳送” + Counts + “條簡訊” + ” 失敗傳送” + FaileCount + ” 條簡訊!” + failereson);
}
else//表示傳送失敗
{
Alert.ShowInTop(“成功傳送” + Counts + “條簡訊” + ” 失敗傳送” + FaileCount +
“條簡訊!” + failereson);
}
4.2.2 已發信息
已發信息頁面如圖4.9所示:
圖4.9已發信息頁面
已發信息主要是記錄已經成功傳送的資訊,包括記錄傳送人員的姓名,傳送的內容、傳送時間、傳送條數、接收人的姓名等資訊,如果接收人是在通訊錄中儲存的則記錄下接收人的姓名,如果沒有儲存,則記錄接收人的手機號。使用者可以根據傳送人的姓名對已發信息進行模糊查詢,另外只有管理員才有許可權刪除已發信息,別的角色沒有刪除許可權。程式碼實現如下:
//已發信息的記錄
public void BindGrid()
{
sql = “select * from HaveSendMessage where UserId in( select UserId from X_DeptUser where DeptId=’” + depatid + “’) “;
}
if (!string.IsNullOrEmpty(trbSearch.Text.Trim()))//chxu
{
sql += “and Name like ‘%” + trbSearch.Text.Trim() + “%’ “;
}
sql += ” order by Sentime desc”;
DataTable dt = GetPagedTable(Grid1.PageSize, Grid1.PageIndex, table);
Grid1.DataSource = dt;
Grid1.DataBind();
}

4.2.3 未發信息
和已發信息的功能類似,傳送失敗的簡訊模組,記錄傳送失敗的資訊,包括記錄傳送人員的姓名,傳送的內容、傳送時間、傳送條數、接收人的姓名等資訊,如果接收人是在通訊錄中儲存的則記錄下接收人的姓名,如果沒有儲存,則記錄接收人的手機號。傳送失敗的簡訊只有管理員能夠刪除,別的角色沒有許可權刪除。
已發信息頁面如圖4.10所示:
圖4.10未發信息頁面
4.2.4 常用短語維護
常用短語模組是使用者根據自己的實際需要把經常使用的簡訊內容按照不同的分類寫進常用短語裡面,這樣在發簡訊的時候可以直接開啟常用短語的按鈕選擇適合傳送的簡訊,這樣做有利於節省使用者時間,提高發簡訊的效率,增強了系統的易用性。
已發信息頁面如圖4.11所示:

圖4.11未發信息頁面
4.2.5 短息統計模組
短息統計模組主要是統計不同部門傳送成功的簡訊的條數,為了增強使用者的辨識度,系統採取了“柱狀圖“,”折線圖“,”曲線圖“三種統計方式,使用者可以直觀準確的看到各部門傳送簡訊的條數統計,根據客戶需求我們還增設了查詢條件,使用者可以根據自己設定的時間查詢出本時間段內各部門傳送的簡訊狀況。
簡訊統計頁面如圖4.12所示:

圖4.12簡訊統計頁面
簡訊統計頁面的程式碼實現方式是採用了前端的Jquery技術,實現了和sql語句的巧妙結合就能呈現出完美的圖表格式。其中部分程式碼如下所示:
/*
*短息統計模組的程式碼實現。
*折線圖、柱狀態、扇形圖三種展示方式。
*/
protected void Mychart_Click(object sender, EventArgs e)
{
string p = “”, temp = “”;
if (chartLX.SelectedValue != “pie”)//line折線圖, spline曲線圖,column垂直直方圖(柱狀圖)
{
p += “簡訊傳送條數統計#”;//主標題,#為分隔符
p += “部門根據部門統計#”;//付標題;
p += “簡訊條數#”;//Y軸座標標題
p += “[“;//X軸的座標題頭
temp = “”;
string Tmp = “[{name: ‘數值說明’,data: [“;//Y軸數值頭
string sql = “select * from X_Dept “;
DataTable dt = SQLHelper.ExecuteDataTable(sql);
for (int i = 0; i < dt.Rows.Count; i++)
{
temp += “’” + dt.Rows[i][“Name”].ToString() + “’,”;
sql1 = “select sum(SendNumber) AS AddSendNumber, X_Dept.Name AS DName from HaveSendMessage inner join X_DeptUser on X_DeptUser.UserId=HaveSendMessage.UserId inner join X_Dept on X_Dept.Id=X_DeptUser.DeptId where X_Dept.Name=’” + dt.Rows[i][“Name”].ToString() + “’”;
DataTable dt1 = db.ExecuteDataTable(sql1);
if (dt1.Rows.Count > 0)//如果是查到這個部門曾今發過簡訊
{
string Number = dt1.Rows[0][0].ToString().Trim();
Tmp += Number + “,”;//Y軸資料賦值
}
else//如果沒有發過斷線
{
Tmp += “0,”;//Y軸資料賦值
}
}
temp = temp.Trim().TrimEnd(‘,’);
p += temp + “]#”;//X軸的座標題尾
Tmp = Tmp.Trim().TrimEnd(‘,’);
Tmp += “]}”;//Y軸數值尾
p += Tmp + “]#”;//Y軸數值尾
HttpCookie Cookie2 = new HttpCookie(“TJTX_Cookie”, p);
Cookie2.Expires = DateTime.Now.AddMinutes(15);
Response.Cookies.Add(Cookie2);//通過Cookie傳遞大批量數 Window1.IFrameUrl=”tongji/chartTX.aspx?chartLX=”+chartLX.SelectedValue;
}
4.2.6 個人通訊錄
個人通訊錄模組是使用者為了傳送簡訊的時候能夠快速找到自己常用的聯絡人而設計的模組,使用者可以根據自己的需求新增自己想要的組,進而向這些分組內新增自己常用的聯絡人,向分組新增聯絡人的方式有三種,可以手動新增、可以在已有的通訊錄中新增,也可以採取匯入的方式新增,形式多樣,方式靈活,大大提高了執行效率。
個人通訊錄頁面如圖4.13所示:

圖4.13個人通訊錄頁面
4.3 系統資料庫設計
4.3.1 資料庫設計
當簡訊平臺系統分析設計完成後,下面就是進行資料庫的分析和實現。資料庫的設計主要包括建立資料庫,建立資料表與欄位,也可設資料檢視及儲存過程,這些設計工作通常是在資料庫管理系統環境下操作並實現的。在本系統中,資料庫的資料表包括:管理員使用者資料表、部門表、部門使用者表、角色表、角色使用者表,已發信息表、未發信息表、常用短語表、日誌表、模組表等。
4.3.2 資料型別設計
4.3.2.1 使用者登入資料表設計
表4.14 使用者登入資料表
賬戶型別 資訊類別 輸入資訊
系統使用者 分配賬號 使用者名稱( varchar(45) 主鍵 Not null)
密碼 (varchar(45)) Not null
部門(varchar(45)) Not null
啟用(bit)
角色 (varchar(45)) Not null
4.3.2.2 部門表設計
表4.15 部門表
輸入資訊 資訊類別
部門名稱 int(10) 主鍵 Not null
備註 varchar(80) Not null
排序 Int(10) Not null
是否限制傳送 bit Not null
限制條數 varchar(45) Not null
使用者所屬部門id int Not null
父部門id int Not null
4.3.2.3 部門使用者表
表4.16 部門使用者表
輸入資訊 資訊類別
編號 int(10) 主鍵 Not null
部門id varchar(80) Not null
使用者id varchar(80) Not null

4.3.2.4 角色表設計
表4.17 角色表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
角色名稱 int Not null
備註 nvarchar(50) Not null
4.3.2.5 角色使用者表設計
表4.18 角色使用者表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
角色id int(10) Not null
使用者id int(10) Not null
4.3.2.6 已發信息表設計
表4.19 已發信息表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
傳送人姓名 varchar(80) Not null
傳送內容 varchar(80) Not null
傳送時間 datetime Not null
接收的號碼 nvarchar(MAX) Not null
接收者的姓名 nvarchar(MAX) Not null
使用者ID int(10) Not null

4.3.2.7 未發信息表設計
表4.20 未發信息表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
傳送人姓名 varchar(80) Not null
傳送內容 varchar(80) Not null
傳送時間 datetime Not null
接收的號碼 nvarchar(MAX) Not null
接收者的姓名 nvarchar(MAX) Not null
使用者ID int(10) Not null

4.3.2.8 常用短語表設計
表4.21 常用短語表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
常用短語 varchar(Max) Not null
常用短語分類 Int Not null
4.3.2.9 日誌表設計
表4.22 日誌表
輸入資訊 資訊類別
Id int(10) 主鍵 Not null
登陸時間 datetime Not null
登陸人 varchar(10) Not null
登入狀態狀態 varchar(50) Not null
錯誤資訊描述 varchar(50) Not null

4.3.2.10 模組表設計
表4.23 模組表
輸入資訊 資訊類別
編號 int(10) 主鍵 Not null
模組名稱 varchar(80) Not null
標題 varchar(80) Not null
模組父節點 int(10) Not null
序號 varchar(10) Not null

第五章 系統除錯與測試
5.1 系統使用環境
一、伺服器要求(最低配置要求):
1.100M空間容量
2..NET平臺環境和sql2008r2資料庫
二、客戶端要求:
1.硬體配置:標準配置,普通使用者計算機就可使用。
2. 軟體配置:WindowsXP/Win7作業系統 IE6.0以上瀏覽器/ Google Chrome(谷歌瀏覽器)/Firefox(火狐瀏覽器)
三、網路環境
既可以通過有限網路如寬頻、撥號上網等訪問,也可以通過無線網路如無線網絡卡、WIfi等訪問。
四、軟體安全標準
GTT-B級安全標準:適用於學校、政府、企業等網站應用系統。身份認證資訊加密;許可權分配嚴格;資料備份;安全日誌;系統執行環境維護嚴格。
表5.1 軟體安全標準
序號 機制 說明
1 使用者身份認證 一般身份認證(加密):使用者名稱+密碼+驗證碼
2 嚴格的許可權管理 可設多個管理員,自由分配選項管理許可權
3 資料備份與恢復 資料備份方式:手動備份;
資料恢復辦法:還原某一資料備份檔案。
4 系統日誌 系統自動記錄使用者登入與操作資訊
5 資料關聯控制 依據資料本身的狀態與時效性、資料之間的關聯,嚴密控制資料的錄入、修改、刪除。
7 全面測試 單元測試、整合測試、系統測試。
8 執行環境安全 1.關閉沒有使用的服務如:Telnet和FTP
2.檢查作業系統的開放埠,關閉不用的埠。
3.使用不間斷電源支援 如:UPS
5.2 系統除錯
在設計系統的過程中,存在一些錯誤是必然的。對於語句的語法錯誤,在程式執行時自動提示,並請求立即糾正,因此,這類錯誤比較容易發現和糾正。但另一類錯誤是在程式執行時由於不正確的操作或對某些資料的計算公式的邏輯錯誤導致的錯誤結果。這類錯誤隱蔽性強,有時會出現,有時又不出現,因此,對這一類動態發生的錯誤的排查是耗時費力的。
5.3 系統測試
軟體測試是保證軟體質量,提高軟體可靠性的最主要的活動之一。它實施對軟體規格說明、設計規格說明和編碼的最終稽核。軟體測試的目的是以最少的人力、物力和時間投入,儘可能多地找出軟體中潛在的各種錯誤和缺陷。測試的結果為軟體可靠性分析提供了依據。設計測試用例的方法一般有兩種:黑盒法以及白盒法。本次測試採用的是黑盒測試,將大部分可能的值來檢查系統程式的正確性,並通過測試得到的結果進行必要的除錯和功能改進。

第6章 總結與展望
6.1 總結
6.1.1 系統特色與創新
(1) 友好的介面設計
本系統系統介面友好。首先,導航欄突出,使用者使用無障礙。採用年傳統的展示方式,左側是可以摺疊的選單展示模組,後臺採用FineUI(Extjs庫) ,介面更加絢麗,主題可以靈活改變。
(2)支援多種運營商。傳統的簡訊平臺可能僅僅支援一種運營商,該系統支援多種運營商使得手機使用者都能接收到簡訊平臺傳送的資訊。
(3)傳送模板的自由化。迎合客戶需求,開發的群發模板摒棄了傳統固定模板的樣式,在不違法和不侵犯他人權益的情況下實現簡訊的自由傳送。
6.1.2 系統侷限
(1) 系統針對的是壽光電力公司定製開發的系統所以在系統應用方面存在不足,比如簡訊的統計方式單一,僅僅是統計部門的傳送情況。
(2)受平臺介面的影響在傳送的過程中存在延遲的現象,需要進行程式碼的進一步優化,優化演算法去除重複程式碼。

6.2 展望
從開始接到課題到現在,期間經歷了很多問題。畢業設計題目—–《電力公司SMS簡訊群發平臺》應該說是算比較順利的完成了。它是一個適應當今快速發展的社會,並完成群發簡訊的系統,而且操作簡單、方便,介面簡潔大方。
該系統是在.Net平臺上開發的,採用了C#+sql2008r2作為開發模式,開發工具是Visual Studio2010作為開發工具,整個系統的程式碼規範完整,功能完善。
在我剛剛接觸這個畢業設計的時候覺得自己的技術完全不能勝任這個專案,在別的技術人員的指導下加上我不斷的翻看書本和詢問比我有經驗的人逐漸對這個系統有深入的瞭解並且嘗試著去實現簡單的功能,經過一段時間的訓練和刻苦的摸索我終於對這個系統有了全面和深刻的認識,克服一個個難關將本次畢業設計準備充分。通過這次畢業設計的專案讓我瞭解到自己掌握的知識還是不夠全面,自己的經驗還不夠豐富還是需要多多需要向別人學習,而且我更加有理由相信在接下來的學習和工作當中只要自己刻苦研究,勤加練習肯定能讓自己的技術提高更快,做更多更好的產品和專案給使用者,實現自身價值。

參考文獻
[1] 劉韜.樓興華.SQL Server2000 資料庫系統開發例項導航. 北京:人民郵電出版社,2004(09):25-70.
[2]丁寶康,董健全. 資料庫實驗教程. 北京:清華大學出版社, 2003:125-170.
[3] 潘志紅. Web環境下SQL Server的資料保護[J]. 北京聯合大學學報(自然科學版). 2006年03期
[4]於世華.杜福濤.利用.NET開發網上訂餐系統 .呼倫貝爾學院學報.2007年03期
[5] 劉炳文等.VISUAL BASIC 程式設計——資料庫篇〔M〕.北京:人民郵電出版社,1999,6(7):15-30
[6]肖建編. ASP.NET 程式設計例項與技巧集粹. 北京:北京希望電子出版社,2003,3(2):44-49
[7]劉小偉,王萍.ASP.NET 與SQL Server 網站開發實用教程[M].北京:電子工業出版社,2006,6(5):15-50
[8]Darie,Cristian,Zak Ruvalcaba. Build your own ASP.NET 2.0 web site using C# &VB 2d ed. SciTech Book News,2006:14-25
[9]孫強. 基於ASP.NET 的專題網站的研究與設計. 東北師範大學,2006.4(5)22-70
[10]Darie,Cristian,Zak Ruvalcaba. Build your own ASP.NET 2.0 web site using C# &VB 2d ed. SciTech Book News,2006,7(11)55-57
致 謝
我的畢業論文是在劉效偉老師的精心指導和大力支援下完成的,他淵博的知識開闊的視野給了我深深的啟迪,論文凝聚著他的血汗,他以嚴謹的治學態度和敬業精神深深的感染了我對我的工作學習產生了深淵的影響,在此我向他表示衷心的謝意。
這四年來感謝濰坊科技學院中印計算機軟體學院的老師對我專業思維及專業技能的培養,他們在學業上的心細指導為我工作和繼續學習打下了良好的基礎,在這裡我要像諸位老師深深的鞠上一躬!特別是我的輔導員田會老師,雖然他不是我的專業老師,但是在這四年來,在思想以及生活上給予我鼓舞與關懷讓我走出了很多失落的時候,“明師之恩,誠為過於天地,重於父母”,對田老師的感激之情我無法用語言來表達,在此向田老師致以最崇高的敬意和最真誠的謝意!
感謝這四年來我的朋友以及軟體技術一班的四十多位同學對我的學習,生活和工作的支援和關心。四年來我們真心相待,和睦共處,不是兄弟勝是兄弟!正是一路上有你們我的求學生涯才不會感到孤獨,馬上就要各奔前程了,希望你們有好的前途,失敗不要灰心,你的背後還有軟體技術二班這個大家庭!
最後我要感謝我的父母,你們生我養我,縱有三世也無法回報你們,要離開你們出去工作了,我在心裡默默的祝福你們平安健康,我不會讓你們失望的,會好好工作回報社會的。

閱讀更多

濰坊科技學院
本科畢業設計(論文)