李悦
(陕西省图书馆,西安 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