科研項目管理應(yīng)用系統(tǒng)說明書_第1頁
科研項目管理應(yīng)用系統(tǒng)說明書_第2頁
科研項目管理應(yīng)用系統(tǒng)說明書_第3頁
科研項目管理應(yīng)用系統(tǒng)說明書_第4頁
科研項目管理應(yīng)用系統(tǒng)說明書_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、裝訂線畢業(yè)設(shè)計(論文)報告紙摘 要管理信息系統(tǒng)是一個不繼發(fā)展的新型學(xué)科,企業(yè)要高效率地把企業(yè)活動有機地組織起來,就必須加強企業(yè)管理,即加強對企業(yè)內(nèi)部的各種資源的有效管理工作,建立與自身特點相適應(yīng)的管理信息系統(tǒng)。本文介紹了在.NET環(huán)境下采用“自上而下地總體規(guī)劃,自下而上地應(yīng)用開發(fā)”的策略開發(fā)一個管理信息系統(tǒng)的過程。文章詳細(xì)介紹了科研項目管理應(yīng)用系統(tǒng)的分析部分,包括可靠性分析、數(shù)據(jù)字典、處理描述等等;系統(tǒng)設(shè)計部分主要介紹了系統(tǒng)功能設(shè)計和數(shù)據(jù)庫設(shè)計;系統(tǒng)實現(xiàn)部分列出了幾個主要的頁面框圖,并附帶了一些主要的功能頁面和代碼。關(guān)鍵字:管理信息系統(tǒng)、科研管理、.NET、數(shù)據(jù)庫AbstractMIS is

2、a new discipline. It is necessary to efficient business activity to organize themselves organically, it is necessary to strengthen enterprise management, that is, to strengthen the internal resources to effectively manage a variety of work, the establishment of its own characteristics and to adapt t

3、he management of information systems. This article describes the .NET environment for the adoption of the “top-bottom to the overall planning, bottom-up approach to application development” strategy to develop a MIS process. The article detailed research analysis of system management applications, i

4、ncluding the reliability of analysis, data dictionary, to deal with description and so on; system design introduced some of the major system design and database design; system presents a number of major parts of the page diagram, along with a number of major functions and code page.Keywords: MIS;sci

5、entific research management;.NET Framework;DataBase 引言科研水平逐漸成為衡量一個高校勢力的重要指標(biāo),高校作為重要的科研機構(gòu),如何對學(xué)校大量的科研信息進(jìn)行高效、安全的保存、處理、統(tǒng)計、加工等管理操作,將日常的科研管理工作更加規(guī)范化、科學(xué)化,建立高??蒲泄芾硐到y(tǒng)進(jìn)行科研管理工作是每一個高校必由之路。隨著計算機技術(shù)的廣泛應(yīng)用以及現(xiàn)代社會信息量的急劇增加,傳統(tǒng)的人工信息管理體系已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足快節(jié)奏、高效率的現(xiàn)代生活的需要,落后的管理技術(shù)嚴(yán)重阻礙了信息的交流與共享。南工院科研成果數(shù)量增加較快,專業(yè)技術(shù)人才的科研內(nèi)容較為復(fù)雜,涉及范圍極其廣泛,為今后科

6、研信息的查找提供方便、快捷的服務(wù),鑒于此目的,基于 .NET 技術(shù)的科研信息管理系統(tǒng)為我們提供了強有力的應(yīng)用工具。該系統(tǒng)可以達(dá)到用戶檢索迅速,查找方便,錄入簡單,可靠性高,存儲量大,保密性好的要求,用戶可以通過輕松實現(xiàn)科研信息的錄取與修改,計算得分,管理經(jīng)費,也可對科研信息情況進(jìn)行管理與查詢,生成各種統(tǒng)計報表。畢業(yè)設(shè)計說明書章節(jié)的內(nèi)容安排因為科研項目管理應(yīng)用系統(tǒng)本身設(shè)計到動態(tài)編程語言、數(shù)據(jù)庫等相關(guān)技術(shù),所以此說明書的涵蓋的內(nèi)容和知識系統(tǒng)有不可避免的復(fù)雜性。為了方便您閱讀時能在短時間內(nèi)對本系統(tǒng)有全面的認(rèn)識,現(xiàn)將此說明書的體系結(jié)構(gòu)簡要的作如下介紹:第一章引言,注意介紹課題背景及說明書的體系結(jié)構(gòu)安排

7、。第二章系統(tǒng)分析,主要介紹系統(tǒng)問題的提出,功能目標(biāo),系統(tǒng)分析過程中產(chǎn)生的流程圖、用例圖、數(shù)據(jù)流圖,以及系統(tǒng)方案設(shè)計原則和開發(fā)平臺的選擇。第三章系統(tǒng)設(shè)計,主要介紹頁面風(fēng)格確定及系統(tǒng)資源組織結(jié)構(gòu),如:文件夾。第四章詳細(xì)設(shè)計與實現(xiàn),主要包括數(shù)據(jù)庫和基本模塊設(shè)計與實現(xiàn)。第五章設(shè)計總結(jié)與收獲,主要包括系統(tǒng)已實現(xiàn)的功能,存在的問題及后續(xù)開發(fā)安排。附錄中包含了數(shù)據(jù)字典以及部分典型存儲過程的源代碼。系統(tǒng)分析需要分析問題的提出高校科研管理所涉及的事務(wù)非常繁雜,涉及到??蒲刑?、各個系的科研管理以及個人對科研信息的查詢統(tǒng)計等。所設(shè)計的系統(tǒng)既要有利于科研處的監(jiān)督管理又要有利于各個系及教師的分工協(xié)作。系統(tǒng)功能主要包括校

8、科研處科研管理、院系(或部門)科研管理、個人科研信息查詢、校級科研項目整體信息管理??梢詣澐譃榭蒲行畔⒕S護、科研信息查詢與統(tǒng)計、科研信息報表、科研信息分析、校級課題申報、審批、合同簽定、結(jié)題、其它處理等操作;其中科研信息應(yīng)細(xì)分為學(xué)術(shù)論文、著作、科研項目、科研成果、科研獎勵等信息。功能目標(biāo)本系統(tǒng)的需求可分為以下7個方面:擁有申請項目權(quán)限的教師能夠進(jìn)行項目申請,填寫項目申請表、添加項目負(fù)責(zé)人、項目參與人員及項目聯(lián)系人、填寫經(jīng)費申請及預(yù)算、查看項目的狀態(tài)、維護合作單位信息。負(fù)責(zé)人能夠查看項目基本信息、必要時修改項目信息、對經(jīng)費、人員、科研成果進(jìn)行管理,填寫項目任務(wù)書、結(jié)題申請書其他教師能看查看自己參

9、與的項目的狀態(tài)。科技處能夠進(jìn)行項目申請管理、立項管理、任務(wù)書管理、中期檢查管理、延期申請管理、結(jié)題管理、經(jīng)費管理、成果管理。院、各系、及各教研組領(lǐng)導(dǎo)能夠查看科研情況的統(tǒng)計信息。系統(tǒng)管理員能夠添加系統(tǒng)中各種角色人員并設(shè)置其權(quán)限、對系統(tǒng)功能進(jìn)行管理、維護系統(tǒng)數(shù)據(jù)并備份數(shù)據(jù)庫。用戶界面友好,方便操作,便于掌握。添加系統(tǒng)人員設(shè)置角色及權(quán)限系統(tǒng)功能管理查看項目狀態(tài)及科研成果統(tǒng)計情況項目管理立項管理查詢項目信息經(jīng)費管理項目狀態(tài)管理科研成果管理登陸修改個人信息申請項目參與項目查看項目信息及狀態(tài)填寫項目任務(wù)書經(jīng)費管理項目延期申請項目結(jié)題申請科研成果管理科 研 項 目 管 理 系 統(tǒng)教 師科技處教研室、領(lǐng)導(dǎo)系統(tǒng)

10、管理員系統(tǒng)流程圖(系統(tǒng)功能示意圖)圖2-1教師申請項目項目管理科技處經(jīng)費管理成果管理科研人員管理管理員系統(tǒng)功能管理領(lǐng)導(dǎo)、其他人員成果統(tǒng)計圖2-2 總體用例圖系統(tǒng)應(yīng)用數(shù)據(jù)項目狀態(tài)項目數(shù)據(jù)延期申請書項目狀態(tài)結(jié)題申請書任務(wù)書申請書個人信息系統(tǒng)功能信息人員信息統(tǒng)計分析表教師科研管理系統(tǒng)科 技 處領(lǐng)導(dǎo)系統(tǒng)管理員統(tǒng)計表數(shù)據(jù)流圖圖2-3頂層圖方案設(shè)計設(shè)計思想這是一個將ASP.NET應(yīng)用技術(shù)與數(shù)據(jù)庫應(yīng)用技術(shù)相結(jié)合的B/S結(jié)構(gòu)的系統(tǒng),能夠讓用戶在互聯(lián)網(wǎng)上方便地進(jìn)行科研項目的管理工作。對系統(tǒng)的設(shè)計首先要力求界面簡潔,易于使用;其次要對后臺進(jìn)行分層的面向?qū)ο笤O(shè)計,便于今后對此系統(tǒng)進(jìn)行修改和添加新的功能模塊,使之能夠

11、成為功能完備的科研項目管理應(yīng)用系統(tǒng)。DBMS本系統(tǒng)屬于中小型信息管理應(yīng)用系統(tǒng),涉及到的總數(shù)據(jù)量不會太大,對數(shù)據(jù)庫的性能要求不是太高,但不能像Access那樣在文件大小超過一定的程度時性能明顯下降,并且系統(tǒng)中包含了大量實體以及實體間的關(guān)系的數(shù)據(jù),因此選擇使用SQL Server 2005關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它的可視化操作界面能夠讓用戶方便高效地進(jìn)行數(shù)據(jù)庫設(shè)計。技術(shù)平臺本系統(tǒng)為B/S結(jié)構(gòu),主要采用Visual Studio 2008開發(fā),數(shù)據(jù)庫采用SQL Server 2005進(jìn)行設(shè)計與開發(fā),并使用Dreamweaver 8 作為輔助頁面設(shè)計工具。.NET Framework作為微軟新一代系統(tǒng)構(gòu)

12、筑環(huán)境,擁有極其強大的類庫,具有能夠快速開發(fā)出功能強大的應(yīng)用軟件的能力,良好的代碼組織關(guān)系使其代碼重用率比較高。公共語言運行時CLR是.NET Framework的核心,采用了托管代碼機制。它將能夠支持的不同語言的程序代碼翻譯為統(tǒng)一的微軟中間代碼,最后將中間代碼編譯成能在目標(biāo)機器運行的機器碼,這一特性使.NET Framework具有跨平臺的功能。此外,.NET Framework垃圾回收機制使內(nèi)存的管理更加安全,使用率更高。Visual Studio集成開發(fā)環(huán)境也延續(xù)了微軟一貫的圖形化操作界面的風(fēng)格、能夠非常方便地添加第三方組件的特性,使得開發(fā)過程變得更加簡單。Visual Studio 2

13、008比以前的版本增加了對aspx頁面的拆分功能,使得頁面設(shè)計更加專業(yè)。在Visual Studio 2008中,我們可以很方便的根據(jù)需要設(shè)計自定義控件,使得編寫Web應(yīng)用程序的變得非常靈活。C#語言作為.NET Framework的主要語言,對XML有極好的支持,是完全面向?qū)ο蟮某绦蛟O(shè)計語言。經(jīng)過幾年的發(fā)展,它的很多優(yōu)勢也很快體現(xiàn)出來。比如屬性和索引,配合設(shè)計編寫自定義控件就能做出像Visual Studio中常用控件一樣方便使用的控件。另外,系統(tǒng)中部分頁面的后臺代碼將采用VB編寫。在本系統(tǒng)還將使用Ajax技術(shù),全稱為Asynchronous JavaScript and XML,它不是一種

14、單一的技術(shù),而是將JavaScript技術(shù)與XML技術(shù)結(jié)合,是瀏覽器能夠與服務(wù)器之間進(jìn)行異步回傳,使網(wǎng)頁在交換過程中不間斷,具有很好的界面友好性。Ajax不是將整個頁面提交給服務(wù)器,而是只發(fā)送需要刷新的部分表單,服務(wù)器只有在第一次接到請求時發(fā)送整個頁面到瀏覽器,之后的交換中所需要的數(shù)據(jù)都是使用XML封裝數(shù)據(jù)并發(fā)送到瀏覽器,瀏覽器經(jīng)過XMLHttpRequest的解析動態(tài)的將需要更新的數(shù)據(jù)顯示到頁面中,其核心就是XMLHttpRequest對象。系統(tǒng)設(shè)計頁面設(shè)計頁面風(fēng)格定位科研項目管理系統(tǒng)的性質(zhì)科研項目管理系統(tǒng)是為本院教師科研項目管理所開發(fā)的,為本院教職員工提供有關(guān)信息服務(wù)的Web型管理信息系統(tǒng)

15、(MIS)應(yīng)用項目。由于本系統(tǒng)采用B/S結(jié)構(gòu)實現(xiàn),在交互的效率上不及單機或C/S結(jié)構(gòu)的桌面技術(shù),因此界面設(shè)計思想是與桌面程序有很大的區(qū)別的。但是,雖然本系統(tǒng)的最終成果是一個Web站點,但不能采用一般網(wǎng)站那種使用眾多引人注目的元素。作為MIS應(yīng)用,首先強調(diào)的是功能、效率、穩(wěn)定、安全、和易使用的特點。因此,本系統(tǒng)在界面上是以O(shè)A的標(biāo)準(zhǔn)進(jìn)行設(shè)計。頁面風(fēng)格色調(diào)按照OA設(shè)計的原則,要避免鮮艷刺眼色彩的大量運用而加快用戶的視覺疲勞;一個界面的顏色數(shù)應(yīng)控制在五種以內(nèi),并且主次分明;選用清楚大方的字體,不宜使用斜體等字體。因此,本系統(tǒng)頁面主要以深藍(lán)色和淺綠色為背景,在深藍(lán)色中的文字以白色為佳,而淺綠色中的文字

16、選用藍(lán)色,整體風(fēng)格簡潔清爽。另外,本系統(tǒng)中除了登陸界面和系統(tǒng)banner使用了圖片,其他功能按鈕都是采用ico格式的圖標(biāo)文件,配合框架式頁面設(shè)計,加快了訪問的速度。信息呈現(xiàn)作風(fēng)在信息呈現(xiàn)方面,按照OA設(shè)計的原則,系統(tǒng)中除了具有詳細(xì)的功能菜單外,還應(yīng)該有一些快捷工具菜單,另外,工作區(qū)應(yīng)該盡可能的大,充分利用屏幕空間。因此,本系統(tǒng)在打開的同時將自動設(shè)置所在的IE窗口的尺寸為目前屏幕能夠被使用的最大尺寸。同時,用戶還可以隱藏系統(tǒng)的部分面板,以此進(jìn)一步擴大工作區(qū)域。功能控制本系統(tǒng)中的功能菜單目前分為標(biāo)準(zhǔn)功能菜單和快捷工具菜單。按一般用戶的使用習(xí)慣,將標(biāo)準(zhǔn)功能菜單置于屏幕最左邊,而快捷工具菜單置于工作區(qū)

17、上方,較為直觀,方便使用。數(shù)據(jù)輸入設(shè)計數(shù)據(jù)輸入界面設(shè)計的主要原則是保證數(shù)據(jù)庫的完整性、一致性和合理性,同時,在用戶輸入數(shù)據(jù)的過程中,能夠采用選擇輸入的地方絕不讓用戶自行輸入。在數(shù)據(jù)庫設(shè)計時對有限值的信息(如部門、類別等)建立字典表,一般這類數(shù)據(jù)的輸入可采用單選、列表、下拉菜單等控件嚴(yán)格控制用戶輸入數(shù)據(jù)的有效性。主頁方案界面系統(tǒng)主頁是上中下結(jié)構(gòu),最上方是系統(tǒng)banner;中間部分左邊為系統(tǒng)功能菜單,右邊分上下兩個區(qū)域,上面是快捷工具菜單,下面是工作區(qū);最下面是系統(tǒng)狀態(tài)欄。顯示信息Banner的右邊顯示當(dāng)前日期及時間,系統(tǒng)功能菜單上方顯示當(dāng)前用戶姓名,工作區(qū)首先顯示系統(tǒng)中的相關(guān)通知,而狀態(tài)欄向用戶

18、顯示了當(dāng)前系統(tǒng)的版本、版權(quán)、在線人數(shù)等信息。系統(tǒng)資源結(jié)構(gòu)設(shè)計工程組織結(jié)構(gòu)設(shè)計在系統(tǒng)設(shè)計過程中,如何設(shè)計并組織系統(tǒng)中的各個工程非常重要,本系統(tǒng)中目前有8個工程,如圖所3-1示:圖3-1文件夾組織結(jié)構(gòu)設(shè)計由于頁面的數(shù)量比較多,對頁面文件、代碼文件、CSS文件、Js文件以及資源文件的管理非常重要。在系統(tǒng)的Web工程中,文件夾組織結(jié)構(gòu)如圖3-2所示:圖3-2類組織結(jié)構(gòu)設(shè)計面向?qū)ο笫?NET最大的特點,一個功能強大的底層操作類能夠為系統(tǒng)的開發(fā)帶來不少便利。例如,在COMP工程中有以下三個類,分別是:Jscript類,包含的一些常用的Js調(diào)用;MyControl類,對控件進(jìn)行處理;StringUtil類,

19、就對字符串進(jìn)行操作的類。其他類如圖3-3所示:圖3-3詳細(xì)設(shè)計與實現(xiàn)數(shù)據(jù)庫設(shè)計系統(tǒng)E-R圖設(shè)計局部ER模式以教師及相關(guān)部門、科室等信息的實體和屬性定義為例:教師(工號,密碼,姓名,性別,學(xué)歷編號,學(xué)位編號,職稱編號,職務(wù)編號,所在部門編號,所在教研組編號,手機,工作電話,家庭電話,郵箱,專業(yè),研究專長,工作單位地址,郵編)教研組(教研室編號,教研室名稱,部門編號,負(fù)責(zé)人工號)學(xué)位(學(xué)位編號,學(xué)位名稱)學(xué)歷(學(xué)歷編號,學(xué)歷名稱)部門(部門編號,部門名稱)職務(wù)(職務(wù)編號,職務(wù)名稱)職稱(職稱編號,職稱名稱)對此局部ER模式的解釋如下:一個部門可以有多個教師,一個部門可以有多個教研組,一個教研組可以

20、有多個教師,一個教研組有一個負(fù)責(zé)人,并且負(fù)責(zé)人必須是教師,一個教師只能對應(yīng)一個學(xué)位、學(xué)歷、部門、職務(wù)、職稱。全局ER模式所有局部ER模式都設(shè)計好了后,接下來就是把它們綜合成單一的全局概念結(jié)構(gòu)。全局概念結(jié)構(gòu)不僅要支持所有局部ER模式,而且必須合理地表示一個完整、一致的數(shù)據(jù)庫概念結(jié)構(gòu)。“科研項目管理應(yīng)用系統(tǒng)”的全局ER模式在此作簡單的介紹:如:一個教師可以申請多個項目,可以參與多個項目,一個項目可以有多個階段的項目任務(wù)書等。表的具體設(shè)計與實現(xiàn)我選用Microsoft SQL Server2005(企業(yè)版)數(shù)據(jù)庫來進(jìn)行數(shù)據(jù)庫的邏輯設(shè)計,首先創(chuàng)建數(shù)基本據(jù)庫表下:教師表(teacher)教研組表(bra

21、nch)項目基本信息表(tb_ProjInfo)目前系統(tǒng)中其他的表還有:學(xué)位表(degree),部門表(dept),職務(wù)表(duty),學(xué)歷表(eduback),職稱表(post),項目參與人員表(tb_Attendee),合同類別表(tb_ContKind),項目任務(wù)書表(tb_do_Project),結(jié)題申請書表(tb_end_Project),專家表(tb_Expert),項目延期申請書表(tb_Late_Project),項目級別表(tb_Level),中期檢查書表(tb_mid_check),經(jīng)費預(yù)算表(tb_OutlayBudget),基本經(jīng)費信息表(tb_OutlayInfo),

22、經(jīng)費支出表(tb_Outpay),項目進(jìn)展計劃表(tb_Plan),研究階段考核表(tProgressChart),項目類別表(tb_ProjKind),研究成果表(tb_RefreFormat),合作單位表(tdw),合作單位性質(zhì)表(tdw_character),文章信息表(tArticle),文章類別表(tArticleKind),系統(tǒng)功能菜單表(tmenu)等,共28張表,日后隨著功能的增加,還會增加相應(yīng)的數(shù)據(jù)表。(詳細(xì)數(shù)據(jù)字典信息見于附錄1)存儲過程設(shè)計對于一個功能將要存儲處理眾多數(shù)據(jù)的信息管理系統(tǒng)來說,其運行性能及安全性相當(dāng)重要。在本系統(tǒng)的設(shè)計中,對于大量數(shù)據(jù)的操作都采用存儲過程形式

23、將數(shù)據(jù)存入數(shù)據(jù)庫。這樣既能夠節(jié)省大量的網(wǎng)絡(luò)流量,提高了數(shù)據(jù)的安全性,又使得系統(tǒng)后臺將數(shù)據(jù)進(jìn)行保存的操作變得更加簡單和方便。例如,系統(tǒng)對于教師信息的更新采用了edit_teacher存儲過程,創(chuàng)建此存儲過程的SQL語句如下:set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgo- =- Author:楊國偉- Create : <Create ,>- Description:老師修改個人信息- =CREATE Proc dbo.edit_teacheruser_id nvarchar(30) ,user_name nvarchar(14) ,dept_

24、id nvarchar(10) ,branch_id nvarchar(10) ,duty_id int ,post_id int ,sex nvarchar(4) ,birth smalldatetime ,eduback_id int ,degree_id int ,homephone nvarchar(30) ,phone nvarchar(30) ,celphone nvarchar(30) ,email nvarchar(50) ,study nvarchar(max) ,goodat nvarchar(max) ,workplace nvarchar(200) ,postcode

25、char(6)ASIF (Select count(*) From teacher Where user_id = user_id) > 0 BeginUpdate teacherSet user_id=user_id,user_name=user_name ,dept_id=dept_id ,branch_id=branch_id ,duty_id= duty_id ,post_id= post_id ,sex=sex ,birth= birth ,eduback_id= eduback_id ,degree_id= degree_id ,homephone=homephone ,ph

26、one=phone ,celphone=celphone ,email=email ,study=study ,goodat=goodat ,workplace=workplace ,postcode=postcodeWhere user_id = user_idEnd(其他一部分存儲過程見于附錄2)基本模塊設(shè)計系統(tǒng)人員添加及密碼重置添加人員在添加人員的處理中,密碼由系統(tǒng)自動設(shè)置為“888888”,調(diào)用了存儲過程add_teacher,存入?yún)?shù)的關(guān)鍵代碼如下(c#):SqlParameter param = myDB.MakeInParam("user_id", SqlDb

27、Type.NVarChar, 30, txtUser_id.Text), myDB.MakeInParam("user_name", SqlDbType.NVarChar, 14, txtUser_name.Text ), myDB.MakeInParam("password", SqlDbType.NVarChar, 50, password), myDB.MakeInParam("sex", SqlDbType.NVarChar, 4, rdoSex.SelectedValue), myDB.MakeInParam("d

28、ept_id", SqlDbType.Int, 4, ddlDept.SelectedValue), myDB.MakeInParam("duty_id", SqlDbType.Int , 4 ,ddlDuty.SelectedValue) ; myDB.RunProc("add_teacher", param);對密碼的加密處理,本系統(tǒng)對用戶的密碼統(tǒng)一采用MD5方式進(jìn)行加密,關(guān)鍵代碼如下:/設(shè)置初始密碼 MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); passwor

29、d = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes("888888"); /初始密碼為888888 password = password.Replace("-", ""); /過濾MD5值中的"-"符號界面運行結(jié)果如圖4-4、4-5所示:圖4-4圖4-5密碼重置重置密碼的處理過程為:用戶輸入要重置密碼的人員工號,如果輸入工號正確,系統(tǒng)將自動顯示該人員姓名,允許重置;如果輸入工號不正確,將不允許重置。在txtUser_id_

30、TextChanged事件下添加如下代碼(C#):/清空姓名框和消息 txtUser_name.Text = lblmsg.Text = "" strsql = "Select user_name From teacher Where user_id = '" + txtUser_id.Text.Trim() + "'" dr = myDB.GetDataReader(strsql); if (dr.Read() txtUser_name.Text = dr"user_name".ToString(

31、); 重置密碼的代碼與初始化密碼的代碼類似,此處省略。界面運行結(jié)果如圖4-6、4-7所示:圖4-6圖4-7系統(tǒng)登陸系統(tǒng)登陸過程:用戶點擊登陸按鈕,系統(tǒng)將用戶輸入的密碼進(jìn)行MD5加密,將加密后的密碼與數(shù)據(jù)庫庫中的密碼進(jìn)行對比,對比一致則允許登陸,并將用戶信息保存到Cookie,關(guān)鍵代碼如下(加密代碼省略,C#):strsql = "Select password,user_id,user_name from teacher Where user_id = '" + user_id + "'" SqlDataReader dr = myDB.

32、GetDataReader(strsql); if (dr.Read() if (dr"password".ToString().Equals(password) /保存登陸信息到Cookie HttpCookie mycookie = new HttpCookie("teacher_info"); mycookie"user_id" = dr"user_id".ToString(); /用戶ID /mycookie"user_name" = dr"user_name".To

33、String(); /用戶姓名 mycookie.Expires = DateTime.Now.AddDays(int.Parse(RadioButtonList1.SelectedValue); Response.Cookies.Add(mycookie); /轉(zhuǎn)到主頁面 Response.Redirect("Default.aspx");界面運行情況如圖4-8:圖4-8首頁本系統(tǒng)的首頁采用框架式設(shè)計,布局示意如下表:系統(tǒng)banner ifame功能菜單ifame快捷工具欄ifame工作區(qū)ifame系統(tǒng)狀態(tài)欄ifame表4-1主要子框架的內(nèi)容介紹如下:系統(tǒng)功能菜單(men

34、u.aspx)在功能菜單中,主要使用了第三方控件RadPanelBar,它是一個可以在很短的時間內(nèi)構(gòu)造靈活的panelbar菜單。panelbar作為一個完全的通過xml文件進(jìn)行管理輸出的服務(wù)器端控件,廣泛的可視化與可定制特性是大多數(shù)網(wǎng)站,企業(yè)內(nèi)部網(wǎng)和web應(yīng)用程序的方便的解決方案,該控件提供OnClick和Target屬性,完全支持圖片。使用前需注冊此控件,注冊方法如下:<% Register Assembly="RadPanelbar.Net2" Namespace="Telerik.WebControls" TagPrefix="r

35、adP" %>綁定數(shù)據(jù)到RadPanelBar控件的關(guān)鍵代碼如下:RadPanelbar1.DataSource = dt; RadPanelbar1.DataTextField = "text" RadPanelbar1.DataFieldID = "ID" RadPanelbar1.DataFieldParentID = "parentId"RadPanelbar1.DataNavigateUrlField = "URL"RadPanelbar1.DataBind();打開連接采用JavaScr

36、ipt代碼控制,代碼如下:function openURL(URL,open_window) if(open_window) window.open(URL); else parent.table.location=URL; 快捷工具欄(shortcut.aspx)快捷工具欄主要設(shè)置一些常用操作,界面運行效果如圖4-9:圖4-9同時,它還具有控制工作區(qū)大小的功能,部分關(guān)鍵代碼如下(JavaScript):/控制隱藏左側(cè)面板 var view_flag2=1; var frame_cols = parent.parent.parent.document.getElementById("

37、frame2").cols; function my_menu_view2(id) var el=document.getElementById(id); if(view_flag2=1) parent.parent.document.getElementById("frame2").cols="0"+frame_cols.substr(frame_cols.indexOf(","); el.className="call_right" else parent.parent.document.getEle

38、mentById("frame2").cols=frame_cols; el.className="call_left" view_flag2=1-view_flag2; 工作區(qū)工作區(qū)是本系統(tǒng)呈現(xiàn)信息和接受用戶輸入數(shù)據(jù)的區(qū)域,框架名稱為table,既“桌面”,以此命名是因為大部分人都使用Windows操作系統(tǒng),“桌面”的概念已經(jīng)深入人心,我也希望本系統(tǒng)最終能像Windows那樣直觀易用。工作區(qū)本身是一個承載信息的載體,為了方便用戶,本系統(tǒng)中設(shè)計使用了自動改變?yōu)g覽器窗口尺寸到屏幕最大可用空間的小技巧,在主框架頁面中加入如下代碼(Js)self.moveTo

39、(0,0); self.resizeTo(screen.availWidth,screen.availHeight); self.focus();項目申請頁面項目申請書在樣式上都采用統(tǒng)一的標(biāo)準(zhǔn),由外部CSS控制,連接到CSS的代碼如下:<link href="css/StyleSheet.css" type="text/css" rel="stylesheet"/>項目申請分為三種類別的申請書,格式互不相同,因此要根據(jù)要申請的項目類別確定鏈接打開哪個申請書。由于一個頁面中需要保存的數(shù)據(jù)較多,保存功能代碼全部以參數(shù)化形式進(jìn)行

40、。下面以我院青年科研基金項申請書為例進(jìn)行說明。獲取url傳參:傳入項目申請書編號,并根據(jù)編號獲取數(shù)據(jù)庫中已存在的相關(guān)信息,關(guān)鍵代碼如下(VB):Dim obj As Object obj = Request.QueryString("ApplNum") If Not obj Is Nothing Then '判斷是否有傳入ApplNum的值 ApplNum = obj.ToString() Me.TextBox8.Text = ApplNum '檢索數(shù)據(jù) selectData() End If顯示數(shù)據(jù),方法selectData()中,部分關(guān)鍵代碼如下(VB)

41、:'檢索項目負(fù)責(zé)人信息 strSql = "Select user_name, sex, post, goodat, duty, eduback, dept, degree, birth, phone, homePhone, celphone " _ & "From V_principal Where user_id = '" & principal & "'" dt.Clear() '清空dt中的數(shù)據(jù) dt = myDB.GetTable(strSql) If dt.Rows.

42、Count > 0 Then DropDownList1.Text = dt.Rows(0)(0).ToString() '負(fù)責(zé)人姓名 TextBox9.Text = dt.Rows(0)(1).ToString() '姓別 TextBox3.Text = dt.Rows(0)(2).ToString() '職稱 TextBox46.Text = dt.Rows(0)(3).ToString() '研究專長 TextBox41.Text = dt.Rows(0)(4).ToString() '職務(wù) TextBox4.Text = dt.Rows(0

43、)(5).ToString() '學(xué)歷 TextBox5.Text = dt.Rows(0)(7).ToString() '學(xué)位 TextBox45.Text = dt.Rows(0)(8).ToString() '出生年月 TextBox47.Text = dt.Rows(0)(11).ToString() '手機 End If保存數(shù)據(jù),頁面中采用的第三方控件SmartGrid,它具有十分強大的功能,能快速的設(shè)置列樣式,能夠非常方便地在頁面上動態(tài)的增加、刪除、插入一行。注冊控件代碼如下: <% Register assembly="Smart.

44、Web.UI.WebControls.SmartGrid" namespace="Smart.Web.UI.WebControls" tagprefix="SmartWeb" %>保存此控件中的數(shù)據(jù)到數(shù)據(jù)庫的關(guān)鍵代碼如下(VB):'保存項目進(jìn)展計劃表信息,首先刪除數(shù)據(jù)庫中的數(shù)據(jù) strSql = "delete from tb_plan where ApplNum='" & TextBox8.Text & "'" myDB.RunSql(strSql) t =

45、 Me.SmartGrid2.DataSource If Not (t Is Nothing) Then Dim StudyPhase, ProdName, ProdFormat, Assumer As String '*研究階段,成果名稱,成果形式,承擔(dān)人 '初始化變量 For Each r In t.Rows flag = 0 StudyPhase = "*" ProdName = "*" ProdFormat = "*" Assumer = "*" Jscript.Alert("3&

46、quot;) '對新增加一行數(shù)據(jù)的處理 If r.RowState = DataRowState.Added Or r.RowState = DataRowState.Unchanged Then StudyPhase = r("StudyPhase").ToString() ProdName = r("ProdName").ToString() ProdFormat = r("Prodformat").ToString() Assumer = r("Assumer").ToString() flag =

47、1 End If '對修改一行數(shù)據(jù)的處理 If r.RowState = DataRowState.Modified Then StudyPhase = r("StudyPhase", DataRowVersion.Current).ToString()'修改后的數(shù)據(jù) ProdName = r("ProdName", DataRowVersion.Current).ToString() '修改后的數(shù)據(jù) ProdFormat = r("Prodformat", DataRowVersion.Current).To

48、String()'修改后的數(shù)據(jù) Assumer = r("Assumer", DataRowVersion.Current).ToString() '修改后的數(shù)據(jù) flag = 1 End If '如果新增和修改數(shù)據(jù)將進(jìn)行保存 If flag = 1 Then Dim prams1() As SqlParameter = _ myDB.MakeInParam("ApplNum", SqlDbType.VarChar, 30, TextBox8.Text), _ myDB.MakeInParam("ProjNum"

49、;, SqlDbType.VarChar, 30, TextBox27.Text), _ myDB.MakeInParam("StudyPhase", SqlDbType.NVarChar, 50, StudyPhase), _ myDB.MakeInParam("ProdName", SqlDbType.NVarChar, 20, ProdName), _ myDB.MakeInParam("ProdFormat", SqlDbType.NVarChar, 50, ProdFormat), _ myDB.MakeInParam(&q

50、uot;Assumer", SqlDbType.NVarChar, 40, Assumer) _ myDB.RunProc("up_add_plan_new002", prams1) End If Next End If界面運行效果如圖4-10:圖4-10查詢功能頁面用戶可以申請多個項目,能夠方便地查看已申請的項目列表是必要的。本系統(tǒng)中用自定義控件show_new_list來顯示此列表,對應(yīng)的SQL查詢?nèi)缦拢簊trSql = "Select ApplNum, ProjName, ApplDate, flag, ProjKind From tb_ProjI

51、nfo Where Proposer = '" + _proposer + "'"綁定數(shù)據(jù)及對應(yīng)的鏈接代碼如下(C#):<ItemTemplate> <tr> <td><a href="<%#makeUrl(Eval("ApplNum").ToString(), Eval("ProjKind").ToString() %>"><%#Eval("ApplNum") %></a></td> <td><a href="<%#makeUrl(Eval("ApplNum").ToString(), Eval("ProjKind").ToString() %>"><%#Eval("ProjName") %></td> <td><%#Eval(&quo

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論