基于BS模式的工资管理系统.docx
- 文档编号:11456275
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:26
- 大小:1.18MB
基于BS模式的工资管理系统.docx
《基于BS模式的工资管理系统.docx》由会员分享,可在线阅读,更多相关《基于BS模式的工资管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
基于BS模式的工资管理系统
郑州华信学院
课程设计说明书
题目:
网络工资管理系统设计与实现
姓名:
贾慧萍
院(系):
信息工程系
专业班级:
10计算机科学与技术
学号:
1001110156
指导教师:
杨杨
成绩:
时间:
2013年9月03日至2013年10月24日
郑州华信学院
课程设计任务书
题目基于B/S模式的工资管理系统设计与实现
专业、班级10计算机科学与技术学号1001110156姓名贾慧萍
主要内容:
首先,开发一个采用B/S结构的企业网络工资管理系统,使用ASP.NET技术和SQLserver2000数据库实现的三层结构Web应用程序,通过ADO.NET访问数据库结合网络编程开发动态网页。
本系统是适合于各企事业单位使用的通用工资管理软件,系统开发目的主要是针对工资管理系统落后、数据环境混乱等问题提出可行的解决方案。
给工资管理系统带来先进的管理理念、完善的工资管理制度,从而提高管理水平、节约资源、提高办事效率。
基本要求:
要求系统界面友好,操作简单方便,任意设定工资项目,任意定义工资计算公式,任意定义输出表格等功能健全。
主要参考资料:
[1]赵强.J2EE应用开发[M].电子工业出版社,2006
[2]明日科技.JSP开发技术大全[M].人民邮电出版社,2007
[3]BertBates.HeadFirstServlets&JSP(影印版)[M]南京:
东南大学出版社2002.8
[4]oracle数据库进阶.林树泽李渊编.清华大学出版社,2011.3
完成期限:
09月03日-10月24日
指导教师签名:
课程负责人签名:
2013年09月12日
1.总体设计
1.1企业网建设规划
(1)概述
企业网分内部和外部两部分。
外部的页面是展示给所有人员浏览的页面,在外部主要对企业的宣传。
在产品展示的页面提供顾客注册的功能,进行网上订购的功能.只有注册的顾客用户才能进行网上订购。
内部的页面只有企业内部人员才能浏览,而且必须登录才能进入,没有注册的功能,只有在人事部门进行添加的用户才能进入。
(2)组织结构,见图1.1(a)职务为总经理,副总经理;最高级别机构有主管、财务主管、开发部主管、人事部主管、市场部主管;部门设部门经理,普通职员。
(3)总体设计,见图1.1(b)
1.2工资管理系统任务概述
项目名称:
基于B/S模式的工资管理系统
开发意图:
使员工工资管理更加科学、规范;使员工工资查询更加方便、快捷;发挥网络在工资管理与查询中的作用,实现工资管理与查询的网络化应用目标:
通过本系统,能帮助财务人员利用计算机,快速方便的对员工工资进行管理、输入、输出、查找等所需操作,使大量的员工工资能够集中方便的进行管理。
员工则能够利用自己的用户名和密码通过本登陆,方便快捷的查询到自己工资信息。
1.3工资管理系统功能需求
(1)登录内部办公系统的所有用户都可以查询自己的详细工资情况,提供按月查询,按年查询,按特定时间查询三种方式.
(2)企业的财务人员可以进行工资的添加,删除,修改,查询,浏览的操作,在查询中提供按月查询,按年查询,按特定查询,按部门查询,按员工编号查询四种方式.
(3)企业的财务人员可对工资信息进行添加,删除,修改,浏览的操作。
(4)工资的修改时应在备注后写清楚修改时间以及原因等相关信息。
图1.1(a)
图1.1(b)
1.4工资管理系统可行性分析
(1)技术可行性
ASP.NET的推出也有一定的时间了,它将来的网络编程做好了准备,我在毕业设计中用到的相关技术,也是比较成熟的,只是鉴于对网络编程和.net的熟悉程度,可能在功能的实现上还存在一定的缺陷。
基于对指定的系统要实现的功能的要求的考虑,结合对现有技术的掌握程度,鉴于软硬件的资源问题,对于系统的要求和性能,是可以实现的。
参与源代码开发的成员必须掌握.NET技术,具有基于SQL2000网络数据库编程经验,对信息管理系统有比较深入的认识,能够很快的进行系统分析并开发实现。
(2)经济可行性
本系统基于ASP.NET构架,运用SQL2000网络数据库,成本不高。
开发周期不会太长,维护费用也不多。
(3)运行可行性目前许多公司的工资管理系统都不太先进,基于网页的查询系统不完善。
由于系统的要求是基于用户操作的基本要求实现的,对各个子系统的划分是符合管理人员的要求的,又本系统是按照三层结构和B/S的思想而开发的,对于系统的升级还是方便易行的,所以本套查询系统可以马上解决这些问题。
按上述三方面进行可行性分析、研究后,笔者认为此项目是可行的。
1.5工资管理系统开发环境
(1)硬件条件:
CPU:
P42.0内存:
512DDR硬盘:
80G。
服务器一台为数据库服务器和Web服务器;客户端计算机若干;网络通讯设备,主要包括网卡、MODEM等。
(2)系统平台:
采用Browser/Server体系结构,服务器端采用MicrosoftWindowsXPProfessionalSP2作为网络操作系统,Web服务器软件采用IIS5.0(InternetInformationServer)。
客户端软件,包括单机操作系统和浏览器软件,分别选用Windows98以上版本和InternetExplorer5.0以上版本,数据库系统采用MicrosoftSQLServer2000有利于使用操作。
(3)开发工具:
基于Web的系统开发工具应使开发者使用各种各样的技术来创建动态的Web应用程序,并且应是一个可视化的工具。
我们采用了VisualStudio.NET进行开发,它是用来快速创建数据驱动Web应用程序的基于团队的开发环境,支持ASP.NET,以ADO.NET连接数据库,编程语言为C#。
2.结构化系统设计
2.1系统功能模块设计
(1)主登陆界面模块:
该模块提供管理系统的主界面,是主系统的唯一入口和出口,该界面提供用户登陆并选择并调用各子模块
(2)工资管理系统:
用户选择该模块后将进入工资管理系统。
(3)员工界面:
员工进入该模块进行选择查询操作。
(4)工资管理人员界面:
工资管理人员进入操作界面。
(5)工资浏览界面:
管理人员浏览所有员工工资。
(6)工资添加界面:
管理人员添加员工工资信息。
(7)工资删除界面:
管理人员删除员工工资信息。
(8)工资查询界面:
在此模块中,管理人员有五种查询方式,员工有3种查询方式。
(9)工资修改界面:
管理人员修改员工工资信息。
图2.1
2.2数据库设计
表2.2工资表
图2.2(a)
图2.2(b)
员工登陆后可以根据年份,月份来查询自己的工资详细信息。
管理人员登陆后可以根据员工的编号,部门,年份,月份来查询所需要的信息。
2.3界面设计
(1)工资添加界面
图2.3.1(a)
当管理人员登陆的时候,点击工资记录添加,就会出现添加记录界面,2.3.1(b)。
图2.3.1(b)
当信息添加成功以后,得到一个提示成功界面,如图2.3.1(c)。
图2.3.1(c)
若输入工资编号不唯一,则会提示输入错误,返回重新输入,如图2.3.1(d)
图2.3.1(d)
当非管理人员登陆的时候,则会提示无法进入,如图2.3.1(e)
图2.3.1(e)
在添加的界面使用了TextBox和Button控件,添加代码如下:
privatevoidadd_button_Click(objectsender,System.EventArgse)
{
dbComm=newSqlCommand(strSQL,sqlConnection1);
if(Page.IsValid){
StringstrSQL="INSERTINTOSalary
(SalaryID,UserID,Dept,Year,Month,Bouns,BasicWage,AllWage,Remark)
VALUES(@SalaryID,@UserID,@Dept,@Year,@Month,@Bouns,@BasicWage,@AllWage,@Remark)";
SqlCommanddbComm=newSqlCommand(strSQL,sqlConnection1);
dbComm.Parameters.Add("@SalaryID",SqlDbType.Int,4);
dbComm.Parameters.Add("@UserID",SqlDbType.VarChar,50);
dbComm.Parameters.Add("@Dept",SqlDbType.VarChar,300);
dbComm.Parameters.Add("@Year",SqlDbType.Char,16);
dbComm.Parameters.Add("@Month",SqlDbType.Char,16);
dbComm.Parameters.Add("@Bouns",SqlDbType.VarChar,50);
dbComm.Parameters.Add("@BasicWage",SqlDbType.VarChar,50);
dbComm.Parameters.Add("@AllWage",SqlDbType.VarChar,50);
dbComm.Parameters.Add("@Remark",SqlDbType.VarChar,300);
dbComm.Parameters["@SalaryID"].Value=TextBox1.Text;
dbComm.Parameters["@UserID"].Value=TextBox2.Text;
dbComm.Parameters["@Dept"].Value=TextBox3.Text;
dbComm.Parameters["@Year"].Value=TextBox4.Text;
dbComm.Parameters["@Month"].Value=TextBox5.Text;
dbComm.Parameters["@Bouns"].Value=TextBox6.Text;
dbComm.Parameters["@BasicWage"].Value=TextBox7.Text;
dbComm.Parameters["@AllWage"].Value=TextBox8.Text;
dbComm.Parameters["@Remark"].Value=TextBox9.Text;
intiID=0;
try{
sqlConnection1.Open();iID=Convert.ToInt32(dbComm.ExecuteScalar());
}
catch(Exceptionex){
Response.Write("此工资编号已经存在,请
入
或者等待3秒后自动返回添加员工信息页面
");
Response.End();}
finally{
if(sqlConnection1.State==ConnectionState.Open)
sqlConnection1.Close();
}Response.Redirect("Success.aspx");Response.End();
}
}
权限代码如下:
Privilege=dr["Privilege"].ToString();
i=Convert.ToInt32(Privilege);
switch(i){
case11:
case13:
break;
default:
this.Response.Write("");
break;}
(2)工资查询界面:
进入查询界面以后,分为普通员工进入和工资管理人员进入,程序会根据登录用户的权限来判断该用户可以进入的界面。
所有人都可以进入员工界面来查询自己的工资信息,工资管理人员可以进入管理界面来查询所需要的信息。
如图2.3.2(a)。
图2.3.2(a)
员工查询界面如图2.3.2(b)
图2.3.2(b)
该界面实现代码:
privatevoidButton1_Click(objectsender,System.EventArgse){
Year=TextBox1.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Year]="+Year+"and[UserID]="+i;
try{sqlDataAdapter1.Fill(dataSet1);
DataGrid1.DataBind();}
catch{}
finally{
}
}
privatevoidButton2_Click(objectsender,System.EventArgse){
Month=TextBox2.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Month]="+Month+"and[UserID]="+i;
try{
sqlDataAdapter1.Fill(dataSet1);
DataGrid1.DataBind();}
catch{}
finally{
}
}
privatevoidButton3_Click(objectsender,System.EventArgse){
Year=TextBox3.Text;
Month=TextBox4.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Year]="+Year+"and[Month]="+Month+"and[UserID]="+i;
try{
sqlDataAdapter1.Fill(dataSet1);
DataGrid1.DataBind();
}
catch{}
finally{
}
}
工资管理人员查询界面,如图2.3.2(c)
图2.3.2(c)
该界面实现代码如下:
privatevoidButton1_Click(objectsender,System.EventArgse)
{
Year=TextBox1.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Year]="+Year;
try{
sqlDataAdapter1.Fill(dsSalary1);
DataGrid1.DataBind();
}
catch{
}
finally{
}
}
privatevoidButton2_Click(objectsender,System.EventArgse){
Month=TextBox2.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Month]="+Month;
try{
sqlDataAdapter1.Fill(dsSalary1);
DataGrid1.DataBind();
}
catch{
}
finally{
}
}
privatevoidButton3_Click(objectsender,System.EventArgse){
Year=TextBox3.Text;
Month=TextBox4.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhere[Year]="+Year+"and[Month]="+Month;
try{
sqlDataAdapter1.Fill(dsSalary1);
DataGrid1.DataBind();
}
catch{
}
finally{
}
}
privatevoidButton4_Click(objectsender,System.EventArgse){
UserID=TextBox5.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhereUserID="+UserID;
try{
sqlDataAdapter1.Fill(dsSalary1);
DataGrid1.DataBind();
}
catch{
}
finally{
}
}
privatevoidButton5_Click(objectsender,System.EventArgse){
Dept=TextBox6.Text;
sqlDataAdapter1.SelectCommand.CommandText="select*fromSalarywhereDept='"+Dept+"'";
sqlDataAdapter1.Fill(dsSalary1);
DataGrid1.DataBind();
}
PrivatevoidDataGrid1_PageIndexChanged(objectsource,System.Web.UI.WebControls.DataGridPageChangedEventArgse){
DataGrid1.CurrentPageIndex=e.NewPageIndex;
DataGrid1.DataBind();}
(3)工资修改界面:
只有工资管理人员才能进入该界面,该界面如图2.3.3(a)。
图2.3.3(a)
浏览该页面,找到需要修改的,点击修改,出现下面的界面,如图2.3.3(b),图2.3.3(c):
图2.3.3(b)
图2.3.3(c)
该界面实现代码如下:
privatevoidDataGrid1_EditCommand(objectsource,System.Web.UI.WebControls.DataGridCommandEventArgse){
DataGrid1.EditItemIndex=e.Item.ItemIndex;
DataGrid1.DataBind();
}
privatevoidDataGrid1_PageIndexChanged(objectsource,System.Web.UI.WebControls.DataGridPageChangedEventArgse){
DataGrid1.CurrentPageIndex=e.NewPageIndex;
DataGrid1.DataBind();
}
privatevoidadd_button_Click(objectsender,System.EventArgse){
stringk;
k=Request.QueryString["id"];
SqlConnectionMyConn=newSqlConnection("Server=127.0.0.1;uid=sa;pwd=;database=whtzkj");
stringstrupdate="update[Salary]setUserID="+TextBox2.Text+",Dept="+"'"+TextBox3.Text+"'"+",[Year]="+"'"+TextBox4.Text+"'"+",[Month]="+"'"+TextBox5.Text+"'"+",Bouns="+"'"+TextBox6.Text+"'"+",BasicWage="+
"'"+TextBox7.Text+"'"+",AllWage="+"'"+TextBox8.Text+"'"+",Remark="+"'"+TextBox9.Text+"'"+"whereSalaryID="+k;
SqlCommandstrcmd=newSqlCommand(strupdate,MyConn);
strcmd.Connection.Open();
strcmd.ExecuteNonQuery();
strcmd.Connection.Close();
Response.Write("");
}
(4)工资浏览页面:
非工资管理人员是不能进入工资浏览界面的,管理人员进去浏览界面后,会看到公司所
有员工的工资信息。
如图5.3.4(a)。
图5.3.4(a)
浏览界面的实现代码如下:
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处放置用户代码以初始化页面
inti;
stringPrivilege="";
SqlConnectionobjConnection;
StringstrConnection="Server=127.0.0.1;uid=sa;pwd=;database=whtzkj;"
objConnection=newSqlConnection(strConnection);
stringstrName="select*from[Privilege]";
SqlCommandMyCmd=newSqlCommand(strName,ob
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 BS 模式 工资管理 系统