李悅
(陜西省圖書館,西安 710061)
基于ASP+SQL Server 2005的會員管理系統的設計和實現
李悅
(陜西省圖書館,西安 710061)
針對使用電子表格管理會員及會費信息效率低、易出錯的情況,設計基于ASP+SQL Server 2005的會員管理系統,實現會員管理、會費管理、會員狀態管理、會員登錄管理等功能。從系統需求分析、功能模塊設計、數據庫設計、關鍵技術介紹系統的實現過程。
ASP;SQL Server 2005;AJAX;會員管理系統
陜西省圖書館學會成立于1981年,是陜西省廣大圖書館工作者的學術性群眾團體,現有會員千余名。陜西省圖書館學會承擔著學會會員管理工作,會員管理工作是學會的一項重要工作,主要包括對會員信息和會員會費的管理兩部分內容,長期以來一直采用傳統的Excel電子表格管理會員數據。隨著會員數量的增加,使用電子表格的管理出現很多問題,同一個電子表格,會費記錄不能長時間保留,對于長時間未繳費會員也不容易剔除,統計分析會員信息變得很困難,手工管理的模式造成容易出錯,且不易管理。因此迫切需要開發一個學會會員管理系統來替代手工管理電子表格,實現高效的管理。
會員管理需要完成的工作包括會員管理、會費管理兩方面,會員信息包括會員的基本個人信息(如姓名、單位、性別、地址等)和會員會費繳納信息(每年繳納一次會費)。使用電子表格進行會員管理的方式是:會員信息、會員會費繳納信息全部放在一張電子表格中,電子表格的每一行代表一個會員的基本個人信息和最近5年的會費繳費信息,電子表格的列依次是編號、姓名、2010年會費、2011年會費、2012年會費、2013年會費、2014年會費、入會日期、單位、性別、出生年月、民族、政治面貌、地址、電話、職稱等信息。電子表格如圖1所示。

圖1 會員管理使用電子表格的部分截圖
會員管理的基本工作流程為:新會員入會時增加新會員基本信息,會員信息變化時修改會員信息,會員退會時刪除會員信息。會員繳納會費時,增加繳費記錄,繳費周期為一年一次。還需要對在冊會員做一些基本的分類統計。
如圖1所示,電子表格的每一行代表一個會員的全部信息,除了會員的基本信息,還包括五列對應年份的繳費信息,對應年份的單元格空白,則表示該年度該會員未繳費,單元格填寫數字表示繳費,繳費金額就是對應的數字。實際操作時,每一年開始時增加新列,并在列標題欄填寫年份,用來保存新年份的繳費信息;同時刪除最早一年的繳費信息列,以節省電子表格空間。當會員繳費時,在會員所在行對應的年份的單元格里面填寫繳費金額。當會員退會時,直接刪除電子表格會員信息所在行。由此可見,繳費的歷史數據、退會會員的歷史數據都會有丟失。并且當需要統計在冊會員時,使用電子表格分類統計功能非常麻煩,而且無法排除多年不繳費的非活躍會員。
新開發的會員管理系統除了實現基本的會員管理和會費管理兩項基本功能之外,學會工作人員還提出新的需求,包括:①擴展會員信息,會員信息中增加有關會員個人的學術信息;②會員退會時,刪除會員記錄,希望保留刪除會員的歷史信息,在需要時可以查詢退會會員的信息。③可以將兩年及以上未繳費會員停用,停用會員補繳年費可重新啟用。④統計分析功能,按照職稱、單位、會員類型等項目分類統計。⑤為了便于管理,允許會員個人遠程登錄修改自己的個人信息,增加會員個人登錄修改個人信息功能。
會員管理系統功能劃分為七個模塊,包括會員管理、會費管理、會員狀態管理、會員賬號管理、會員統計分析、回收站管理、會員登錄管理。前面6個模塊的使用者是系統管理員,最后一個模塊的使用者是學會個人會員。
2.1 會員管理模塊
實現功能包括新建會員記錄、編輯會員記錄、刪除會員記錄。
新建會員記錄,錄入會員基本信息,并且在保存新會員信息的同時建立會員的登錄帳號和生成隨機的登錄密碼。創建的登錄賬號和登錄密碼供會員登錄會員管理系統維護自己的個人信息使用。
編輯會員記錄,修改會員個人基本信息和學術信息。
刪除會員記錄,刪除會員,但是并沒有在數據表中真正刪除會員記錄,只是在會員記錄做了刪除標記,這些會員記錄可以在回收站中查看并恢復。
2.2 會費管理模塊
實現功能包括添加會費繳納記錄、編輯會費繳費記錄、刪除會費繳費記錄。
當會員繳費時,為會員添加繳費記錄,每一年會費對應一條繳費記錄。還可以編輯、刪除繳費記錄。
可以實時地將截止到當前狀態下,全部會員基本信息和近3年繳費記錄合并生成如圖1的電子表格保存輸出,方便保存歷史檔案。
2.3 會員狀態管理
實現功能包括會員停用、會員啟用。
停用、啟用操作只針對兩年及兩年以上未繳費會員。當會員超過兩年沒有繳納會費,會員記錄會自動出現用戶清單中,由工作人員選擇是否停用會員。可以針對單個用戶停用、啟用,還可以批量停用、啟用。
需要強調的是,停用會員恢復啟用后方可進行會員和會費信息的編輯管理;停用會員記錄在會員管理和會費管理中不會出現,啟用后才會出現;停用會員數量被排除在統計分析模塊統計數據之外,減少不活躍會員對統計數據的干擾,有利于會員工作更好地開展。
2.4 會員賬號管理模塊
實現功能包括新建會員賬號、修改會員賬號、刪除用戶賬號。
修改賬號只能修改賬號密碼,不能修改賬號。刪除用戶賬號,該會員將無法登錄個人信息維護模塊。
2.5 會員統計分析模塊
實現功能包括全部正常狀態會員的統計分析、本年度繳費會員的統計分析。
本年度繳費統計分析中的年份由程序自動獲取當前年份,可以實時統計分析當前狀態下會員情況。其中的統計類型包括會員類型、入會時間、職務、職稱、工作單位等多種方式。
2.6 回收站管理模塊
實現功能包括恢復會員記錄、徹底刪除會員記錄。
回收站中是全部刪除會員的清單。刪除的會員記錄在回收站可以通過恢復操作重新恢復正常。徹底刪除操作會將會員記錄、會員繳費記錄、會員賬號徹底從各自的數據表中刪除,不能恢復,需謹慎使用該功能。
2.7 會員登錄管理模塊
實現功能包括會員登錄、修改密碼、編輯個人信息、會員全部個人信息輸出為Word格式的文檔。
會員使用入會時建立的會員帳戶和密碼登錄,登錄成功后可以編輯個人信息,修改個人密碼。將會員信息維護分散的會員個人,減少了學會工作人員維護會員信息的工作量。
數據庫采用SQL Server 2005,包括3個數據表,分別是會員表、會費表、會員賬號表。
3.1 會員表
is_dele字段表示會員記錄是否刪除,默認為空,表示正常狀態,1表示刪除狀態。
no_use字段表示會員記錄是否停用,默認為空,表示正常狀態,1是表示停用狀態。
3.2 會費表
用于保存會費繳納記錄,每個會員每年繳費信息對應一條繳費記錄。字段包括會員ID、繳費日期、繳費年份,繳費金額。
3.3 會員賬號表
用于保存會員登錄賬號和密碼。字段包括會員ID、會員賬號,密碼。
會員管理系統采用ASP技術開發,數據庫采用SQL Server 2005或者Access,我們采用SQL Server 2005。
4.1 AJAX實現帶自動提示功能搜索輸入框
帶自動提示功能的輸入框,在百度和Google等網站的搜索框都具有自動提示(也叫自動完成)功能,用戶只需要在表單中輸入內容開頭的信息,程序就會自動根據這些輸入信息自動在下拉框中顯示用戶可能要輸入的內容,用戶可以在下拉框中進行選擇,這樣減少了用戶輸入的工作量,帶來更好的用戶體驗。
使用AJAX技術實現搜索內容輸入框的自動提示功能,顯示效果如圖2所示,當用戶在輸入框輸入劉姓時,程序自動顯示數據庫中劉姓會員的姓名供用戶選擇使用。
4.2 選擇待停用會員的的SQL代碼
AJAX技術可以實現在頁面不刷新情況下編輯記錄,采用AJAX技術停用及啟用會員,實現頁面不刷新情況下,返回處理結果,改善用戶體驗。
能夠出現在會員狀態管理模塊會員清單中,可以進行停用操作的會員記錄的挑選條件是,會員入會時間超過2年及以上,且近2年未繳費的會員。近2年包括本年度及前一年度,例如今年是2014年,那么2013年及之前入會,并且2013年和2014年都沒有繳納會費的會員才可以進行停用操作。

圖2 帶自動提示功能搜索輸入框輸入效果
挑選符合停用條件會員記錄的SQL語句為:

假設今年是2014年,給nian1和nian2賦值2014和2013,選擇刪除標記為空,入會時間早于或等于去年,會員ID不包括在去年和今年都有繳費的會員ID中的記錄。
4.3 會員個人信息和繳費信息合成輸出表格的實現
會費管理模塊主界面的頁面效果如圖3所示,程序依次讀取會員表和會費表兩個數據表的記錄,依次輸出每位會員的基本信息和近3年繳費信息,生成同時包括會員個人基本信息和近3年繳費信息的表格。

圖3 會費管理模塊截圖
圖3的表格中讀取了會員表和會費表兩個數據表的記錄,輸出包括近3年年份的表頭和近3年年份對應繳費信息的數據行的代碼如下:
表格表頭生成年份代碼:

使用循環語句,輸出3個表頭單元格,并輸出對應年份數值,輸出效果如圖3的表格表頭。
表格表身數據區域代碼:

使用循環語錄,輸出3個單元格,并且在會費表中查找與該行所在會員記錄會員號相同,對應年份的繳費記錄,如果查找到對應記錄,則輸出繳費金額;反之,不輸出任何內容,單元格為空。輸出效果如圖3所示。
4.4 Excel電子表格及Word文檔生成代碼
在會費管理主界面程序依次讀取每位會員最近3年繳費情況,生成會員基本信息及近3年繳費信息,在該頁面提供鏈接用于生成包含全部會員基本信息和近3年繳費信息的Excel電子表格,以便于打印輸出留存檔案。我們只需要在與會費管理主界面頁面相同代碼的頁面前面加入下面代碼,就可以生成Excel電子表格。

同樣的我們在顯示會員全部個人信息的代碼前面添加如下代碼,就可以生成包括用戶信息的Word文檔。

4.5 當年繳費會員統計分析年份動態實現
統計分析模塊中當年繳費會員統計分析功能中,采用動態代碼獲得當前年份,在統計語句中動態獲取本年度年份,在不修改程序的情況下,點擊鏈接即可實時進行當年繳費會員的統計分析,非常簡單方便。
會員管理系統代替手工電子表格管理會員信息,實現了會員管理、會費管理等核心功能。并且管理員可以停用相關非活躍帳號,實現快捷的在冊會員的統計分析。會員可借助會員登錄管理模塊使用個人賬戶、密碼登錄,更新自己的個人信息和學術信息,查詢繳費情況。會員管理系統應用于日常會員管理工作中,提高了會員管理的工作效率,提高了會員參與個人信息維護的便捷程度,減少了會員管理的工作量。并且可以隨時保存包括全部會員個人基本信息及繳費信息的匯總電子表格,供打印輸出留存紙質檔案。
[1] 唐四薪,譚曉蘭,唐瓊.ASP動態網頁設計與AJAX技術[M].北京:清華大學出版社,2012
[2] 唐四薪.Web標準網頁設計與ASP技術[M].北京:清華大學出版社,2011
Design and Implementation of Member Management System Based on ASP+SQL Server 2005
LI Yue
(Shaanxi Library,Xi'an 710061)
In view of the situations that inefficient,error-prone situations of using spreadsheets to manage membership and dues information,designs a member management system based on ASP+SQL Server 2005 and implements membership management,dues management,member state management,member login management and other functions.Proceeds from system requirements analysis,functional design, database design and key technologies,introduces the system about the implementation process.
ASP;SQL Server 2005;AJAX;Member Management System
1007-1423(2015)04-0070-05
10.3969/j.issn.1007-1423.2015.04.019
,用來保存會員的信息,包括個人基本信息和學術信息。字段包括會員ID、省圖號、
、系統、會員類型、入會時間、姓名、性別、民族、出生日期、地區、政治面貌、學歷、學位、專業、職稱、職稱授予時間、工作單位、工作年限、地址、郵編、電話、Email、受教育情況、個人簡歷、發表論著簡況、科技成果簡況、參加國際科技組織。
李悅(1978-),女,陜西西安人,本科,研究方向為Web標準構建網站、圖書館管理系統輔助軟件的開發
4-11-11
2015-01-05