教师工资管理系统.docx
《教师工资管理系统.docx》由会员分享,可在线阅读,更多相关《教师工资管理系统.docx(19页珍藏版)》请在冰点文库上搜索。
![教师工资管理系统.docx](https://file1.bingdoc.com/fileroot1/2023-7/14/e12405f2-4bab-4463-8e65-22ab645eb10a/e12405f2-4bab-4463-8e65-22ab645eb10a1.gif)
教师工资管理系统
1.可行性分析
1.1经济可行性分析
主要是对项目的经济效益进行评价,一方面是支出的费用,其中包括设备购置费,软件开发费,管理和维护费,教师工资等。
另一方面是取得的收益中是由此而带来的时间上的缩短,后期长时间的支出的减少。
1.2技术可行性分析
现代计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。
由于对学校教师工资管理系统这一类的教学财务系统进行开发已有一定的时期,技术基础也已经非常雄厚,因而技术上的准备应该不成问题。
阳光小学教师工资管理系统总体结构是基于B/S结构,采用了动态Web发布技术,进行用户与数据库之间的信息交流。
B/S结构即采用的是三层结构,三层结构如图2-2所示,后台为一个数据库服务器,客户端为Web浏览器,中间层组件是一个Internet信息发布服务器,一方面它根据用户的操作以及脚本的定义向数据库服务器发送数据库请求,另一方面接受数据库服务器传达的信息,并转换成标准html格式,发送给客户机。
图2.2系统三层结构
ASP.NET3.5是目前最流行的web开发工具之一,它为用户提供了完整的可视化开发环境,并且可使用总舵的服务器控件,快速开发web应用程序。
SQLSERVER2008是ASP.NET3.5的最佳搭档,它使用简单、功能强大,满足系统数据的管理的性能要求,支持存储过程、触发器、用户自定义数据类型,在易用性、可靠性、安全性方面均有相当的提高。
利用ASP.NET3.5和SQLSERVER2008建立小学教师管理系统能保证系统信息传输的快捷、安全、完整和方便。
2.3社会可行性分析
社会可行性主要论证新系统组织内外是否具备接受和使用新系统的条件。
在当前信息技术飞速发展的大环境下,计算机技术和软件技术的更新使人们完全有可能也有能力采用这样先进的管理技术。
好的管理系统对提高人们的生活效益是极为有益的。
2需求分析
系统分析包括问题分析、数据流分析、数据流描述、功能需求分析等。
为下面的详细设计铺垫。
2.1问题分析
随着计算机技术的飞速发展,计算机在企业管理中的应用越来越普及,利用计算机实现学校工资的管理显得越来越重要。
尤其是以微型计算机为处理核心,以数据库管理系统为开发环境的管理系统在办公室自动化以及学校等方面的应用,日益受到人们的关注。
数据库管理系统是用来控制建立数据库中的数据、数据的存取,并维护数据库的数据。
学校工资管理是一项琐碎、复杂而又十分严谨细致的工作,一般不允许发生差错。
最初的工资统计和发放都是使用人工方式处理,工作量大的时候,出现错误的机率也随之升高。
同时工资的发放具有较强的时间限制,必须严格按照单位规定的时间完成计算和发放工作。
学校工资管理系统就是使用电脑代替大量的人工统计和计算,使用电脑还可以安全地、完整地保存大量的教师工资记录。
2.2数据需求分析
根据系统的工作流程,进一步对本系统进行数据需求分析。
2.2.1数据流图
数据流图是表达了数据和处理过程的关系,根据上面的相关分析和实际需求,就不难通过分析得到教师工资管理系统数据流程图,阳光小学教师工资管理系统总体数据流程如下图3.3.1所示
图3.3.1教师工资管理系统数据流程图
2.3功能需求
通过我们对教师工资管理系统流程分析,进一步进行功能需求分析,描述数据的处理。
2.2.1系统管理需求:
具有用户登录、修改用户密码、更改用户密码以及退出系统的功能,方便管理者使用本系统对本系统进行权限管理设置。
2.2.2数据管理模块:
此模块主要是对数据库中的教师个人信息表、教师工资信息表、罚金表、奖金表、教龄工资表、职位工资表及教龄表进行管理,主要是进行插入、修改及删除的操作。
2.2.3查询模块:
该模块主要实现以下查询功能:
(1)教师个人信息查询:
主要查询教师的姓名、学工号、联系方式、身份证号等等信息,结果将是详细信息。
(2)教师工资信息查询:
主要查询教师的姓名、工资、学工号、奖金、罚金、总工资、所得税、实际总工资等等
(3)奖金查询:
主要查询教师的学工号、奖金额、日期、原因等等。
(4)罚金查询:
主要查询教师的学工号、罚金额、日期、原因等等。
(5)教龄工资:
主要查询教师教龄及教龄工资等等。
(6)教龄工资查询:
主要查询教师的教龄、学工号。
(7)报表打印:
主要有所查询的结果产生。
2.2.4界面需求:
系统的界面有很多的内容,包括界面的美工,界面的布局,设计整体给人的印象。
是否能够让用户方便登录也是界面设计成败的一个重要因素,也涉及到用户数据的保密性和安全性。
系统是面向很多用户的,所以系统界面要既美观又要要求人员素质不高,并且系统的用户的性质有不同,他们有教师和管理员之分,所以要根据实际需求设计不同的登录权限,以便达到系统界面设计的科学性、严谨性及完整性。
2.2.5性能需求:
作为数据库系统的开发教师工资管理系统是典型的信息管理系统(MIS),前台程序开发工具采用Asp.Net3.5,该软件具有组件丰富,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,而且语言简单、使用方便功能强大从而有效的提高了应用程序的运行效率和可靠性。
后台数据库采用目前比较流行微软公司SQL服务器数据库,数据容量大,稳定性高,能自动排除各类异常操作;严格的用户验证与权限控制,确保系统安全可靠,系统还提供了完善的数据备份与恢复功能,用得既方便又放心。
在安全性、准确性、运行速度方面有绝对的优势,可以快速的开发窗口应用程序。
2.2.6安全性需求:
采用严格的用户验证与权限控制,用户需要通过身份验证才能进入本系统,进行工资的设置和管理,不同权限的用户进入不同的界面,没有权限的用户不能登录,每个用户只能修改自己的密码,保密性很好,确保系统安全可靠。
本系统采用现流行的数据库为SQLServer2008;应用程序为Asp.Net3.5,根据性能分析需求,前台系统与后台系统分离,应能防止前后台系统崩溃而造成后台数据库数据丢失。
3总体设计
根据需求分析,进行系统设计,包括概要设计和详细设计。
3.1系统目标
本系统要对教师工资管理的日常的工资发放进行数据输入,汇总各项数据生成员工个人台帐。
采用用户名,密码安全机制,分用户权限登陆访问,实现系统的有效进行。
3.2系统功能结构与分析
本系统主要是由教师基本信息管理、教师工资查询、教师工资管理等几个功能模块组成。
根据以上的功能结构,将工资管理系统的数据分为:
1、数据输入部分
包括教师相关信息的输入,教师工资的输入,各种职称工资与基本工资相关的输入等。
2、数据输出部分
输出的数据主要是教师的工资信息;教师的个人资料等信息。
3、数据处理部分
数据处理部分主要是对一些修改后的信息的处理工作。
用于学校会出现教师的调配,人数的增减,工资的变动等,都需要对数据进行删除、添加、更新等相关操作,进而达到管理工作的顺利进行。
3.3概要设计
将需求分析得到的用户需求抽象为概念模型,系统总体模块设计,根据以上分析的功能,总结出系统结构图4.3如下
图4.3系统结构图
4.详细设计
本环节主要是对数据库的一些重要的设计进行介绍。
4.1数据库概念结构设计
表跟表之间的E-R图为:
图5.1表之间E-R图
主要表的E-R图如下:
图5.2TeacherInformation表E-R图
图5.3TeacheSalaryrInformation表E-R图
图5.4IncomeTax表E-R图
4.2数据库实现
根据以上分析,使用用SQLServer2008创建名了“Tsmsystem”的数据库,其表主要如下:
教师个人信息表(主要录入教师的个人信息):
列名
说明
数据类型
长度
允许空
主外键
1
TeacherID
教师ID
Char
10
否
主键
2
Name
教师姓名
Nvarchar
50
否
无
3
Sex
教师姓名
Char
10
是
无
4
Birthday
出生日期
Datetime
8
否
无
5
Department
系别
Char
10
否
无
6
Post
职位
Char
10
是
无
7
PostYears
所教时间
Char
10
否
无
8
PhoneNumber
电话号码
Char
18
是
无
9
IdentityID
身份证
Char
18
否
无
10
MarryStatement
婚姻状况
Char
50
是
无
教师工资信息(找钥匙录入教师的工资信息):
列名
说明
数据类型
长度
允许空
主外键
1
TeacherID
教师ID
Char
10
否
主、外键
2
Name
教师姓名
Nvarchar
50
否
无
3
TSalaryMonth
月薪
Char
10
是
无
4
TPostYearsSalary
教龄工资
Float
8
否
无
5
TPostSalary
职位工资
Float
8
否
无
6
TFineSalary
罚金
Float
8
是
无
7
TRewardSalary
奖金
Float
8
是
无
8
TSalaryTotal
总工资
Float
8
否
无
9
TcomeTax
所得税
Float
8
否
无
10
FactSalary
实际工资
Float
8
否
无
所得税表(主要是录入税率):
列名
说明
数据类型
长度
允许空
主外键
1
ID
编号
Int
4
否
主键
2
NoTaxSalary
不计税工资
Float
8
否
无
3
SalaryTaxRate
工资税率
Float
8
否
无
4
Remarks
备注
Nvarchar
50
是
无
奖金表(主要是录入教师的奖励信息):
列名
说明
数据类型
长度
允许空
主外键
1
TeacherID
教师ID
Char
10
否
主键、外键
2
RewardReason
奖金原因
Nvarchar
50
否
无
3
RewardDate
奖金日期
Datetime
8
否
无
4
RewardMoney
奖金数额
Float
8
是
无
职位工资表(主要是录入共职位工资规定信息):
列名
说明
数据类型
长度
允许空
主外键
1
PostName
职位名称
Char
50
否
主键
2
PostSalary
职位工资
Float
8
否
无
数据库的设计主要是代码编写的,而其代码多而繁琐,故在此就不详细罗列与系统表相对应的编码。
4.3系统地实现
本环节主要介绍关于系统相关功能的实现。
4.3.1系统基本配置web.Config文件
在web.config文件下配置系统如下基本信息:
4.3.2系统用户登陆实现
通过创建Asp.Net该应用,定系统允许用户根据不同身份进行选择性的登录,通过登录来和后台数据库相联系进行验证身份,否则,将出现错误的提示,登陆界面DengLu.aspx设计如下。
图5.31登陆界面
在登陆控件得以实现进入不同的界面,其实现的代码是:
switch(userRole){
case"0":
Response.Redirect("MananAddTeacher.aspx");break;
case"1":
Response.Redirect("TeacherInformation.aspx");break;}}//*进行选择登录
LabelText.Text="你输入的密码错误,请检查后重新输入!
"}
elseLabelText.Text="该用户不存在或用户名输入错误,请检查后重新输入!
";}catch(Exceptionee)Console.WriteLine(ee.Message.ToString());
4.3.3密码修改
教师密码修改界面如下:
图5.32密码修改界面1
后台查看文件ModifyPwd.aspx的代码,BtnSubmit_Click、BtnReset_Click所激活的事件
------------------------------------------------------------------------------------------------------------------------------
protectedvoidBtnSubmit_Click(objectsender,EventArgse){stringconnStr=ConfigurationManager.ConnectionStrings["TsmsystemConnectionString"].ConnectionString;SqlConnectionconn=newSqlConnection(connStr);SqlCommandselectCmd=newSqlCommand("select*fromSystemTeacherwhereTeacherID='"+Session["userName"].ToString()+"'andTeacherPwd='"+TxtOldPwd.Text.Trim()+"'",conn);
try{conn.Open();SqlDataReadersdr=selectCmd.ExecuteReader();
4.4管理员对系统管理各功能的实现
教师工资管理系统它的最主要功能就是他的后台管理,后台管理关系到系统是否能正常运行,关系到教室能否查阅相关的个人信息,还有数据库的安全性方面的管理。
为此,后台管理的设计要包含对系统的定期管理,数据库的备份与恢复,对教师相关信息的修改与删除等等功能的实现。
4.4.1添加数据信息
由于学校的教师数量以及人员均会出现波动,为此,学校要根据实际需要对教师的信息进行添加,以达到信息对称的目的,添加教师信息主要是添加个人信息,从而达到信息的动态变动,满足系统功能和用户的实际需求,添加教师个人信息的功能界面如下所示:
图5.34添加信息
其后台MananAddTeacher.aspx所实现的相关方法及空间说激活的事件主要如下:
-----------------------------------------------------------------------------------------------------------------------------
Label1.Text=Session["userName"].ToString()+"您好!
";}
protectedvoidButton1_Click(objectsender,EventArgse){SqlConnectionconn=newSqlConnection(ConfigurationManager.ConnectionStrings["TsmsystemConnectionString"].ConnectionString);
SqlCommandinsertCmd=newSqlCommand("insertintoTeacherInformation(TeacherID,Name,Sex,Birthday,Department,Post,PostYears,PhoneNumber,IdentityCard,MarryStatement)values(@TeacherID,@Name,@Sex,@Birthday,@Department,@Post,@PostYears,@PhoneNumber,@IdentityCard,@MarryStatement)",conn);
4.4.2对教师个人信息进行修改、删除功能
在进入系统的主页面中,点击“查询”,会出现一个主界面,这个界面主要是有两个功能,一个是修改,另一个是删除,这里两个功能满足了系统对人员变动及时修改的要求,其功能界面如下:
图5.34查询管理工资
4.4.3删除,修改工资信息功能
工资信息管理中实现了对于工资删除、修改等功能。
以下分别对其进行了实现。
图5.55工资信息维护
其后台主要通过链接SqlDataSource1数据源来实现相关功能,相关代码如下:
protectedvoidButton1_Click(objectsender,EventArgse){GridView2.Visible=true;}
4.4.4
教师的工资与考勤有很大关系,只有人对待考勤,以及认真录入考勤信息才能达到教师工资管理的目的,其功能实现界面如下:
图5.56奖金管理1
4.4.5数据库还原与备份
在主界面中,点击数据维护管理,点击“数据备份”,就可以把数据库备份在一个自己输入的目录下。
点击“备份恢复”就可以把之前备份好的数据库从中选者需要的进行恢复。
点击“退出系统”退出此界面。
图5.57数据库维护
其后台ManangeDatabase.aspx文件中实现的程序如下:
-----------------------------------------------------------------------------------------------------------------------------
publicpartialclassNanangeDatabase:
System.Web.UI.Page{
protectedvoidPage_Load(objectsender,EventArgse){
Label1.Text=Session["userName"].ToString()+"您好!
";}
protectedvoidButton1_Click(objectsender,EventArgse){
stringSqlStr1="DataSource=PC-2;InitialCatalog=Tsmsystem;IntegratedSecurity=True";
stringSqlStr2="backupdatabase"+"Tsmsystem"+"todisk='"+this.TextBox1.Text.Trim()+".bak'";
SqlConnectioncon=newSqlConnection(SqlStr1);con.Open();
try{//if((this.TextBox1.Text.Trim()))//{//Response.Write("alert('此文件已存在,请从新输入!
');location='Default.aspx'");eturn;//}SqlCommandcom=newSqlCommand(SqlStr2,con);
com.ExecuteNonQuery();Response.Write("alert('备份数据成功!
')");}catch(Exceptionerror)
{Response.Write(error.Message);Response.Write("alert('备份数据失败!
')");}
finally{con.Close();}}
protectedvoidButton2_Click(objectsender,EventArgse)
{
stringpath=this.;//获得备份路径及数据库名称
stringdbname="Tsmsystem";
stringSqlStr1="DataSource=PC-2;InitialCatalog=Tsmsystem;IntegratedSecurity=True";
stringSqlStr2="usemasterrestoredatabase"+dbname+"fromdisk='"+path+"'";
SqlConnectioncon=newSqlConnection(SqlStr1);
con.Open();
try
{SqlCommandcom=newSqlCommand(SqlStr2,con);
com.ExecuteNonQuery();
Response.Write("alert('还原数据成功!
');location='Default.aspx'");
}
catch(Exceptionerror)
{
Response.Write(error.Message);
Response.Write("alert('还原数据失败!
')");
}
finally
{
con.Close();
}
}