基金、其它应减项、实发工资、说明等字段。其结构表如表4-11所示:
表4-11员工工资核算表
字段名类型是否允许空说明自编号 nvarchar(50) 否递增的流水号 员工编号 nvarchar(50) 否 员工编号员工 nvarchar(50) 否 员工基本工资 float 否 员工基本工资 津贴 float 否 员工津贴 奖金 float 是 员工奖金 工龄工资 float 是 员工工龄工资 岗位工资 float 是 员工岗位工资 其它应增项 float 是 其它应增项目 所得税 float 是 应缴所得税 养老险 float 是 应缴养老险 医疗险 float 是 应缴医疗险 住房基金 float 是 扣除住房基金 其它应减项 float 是 其它应减项目 实发工资 float 否 实发工资数 说明 nvarchar(300) 是 说明信息
5 系统各模块的实现
5.1系统登录模块的实现
企业人事管理系统登录窗体如图5-1所示:
图5-1 管理程序登录窗体
当用户输入用户名和密码时,在登录的click事件中,通过"Select COUNT(*) From 操作用户 Where 用户名称=@用户名称 ND 用户密码=@用户密码"语句来判断用户输入的用户名和密码是否正确。若不正确,则将定义的MyTryCount变量(用于记录登录的次数)自动加1,并提示"用户名称或用户密码有误,您还有*次机会。"当MyTryCount变量大于3的时候,执行连接断开语句,系统退出,不能登录;若密码正确,则根据"Select * From 操作用户 Where 用户名称='" + this.MyOpertor + "'""语句,在操作用户表中找到相应的用户名和密码对应的权限,进入系统。并通过this.MyOpertor所连接到的不同字符串来进行用户的分权限进入系统[7]。
输入用户名或密码有误部分的具体实现代码如下:
StringMySQLConnectionString=globl::MyPersonnel.Properties.Settings.Defult.MyPersonnelConnectionString;
string MySQL = "Select COUNT(*) From 操作用户Where 用户名称=@用户名称 ND 用户密码=@用户密码";
SqlConnection MyConnection = new SqlConnection(MySQLConnectionString);
MyConnection.Open();
SqlCommnd MyCommnd = new SqlCommnd(MySQL, MyConnection);
MyCommnd.Prmeters.Cler();
SqlPrmeter MySqlNmePrmeter = new SqlPrmeter();
MySqlNmePrmeter.PrmeterNme = "@用户名称";
MySqlNmePrmeter.Vlue = this.用户名称TextBox.Text;
MyCommnd.Prmeters.dd(MySqlNmePrmeter);
SqlPrmeter MySqlPWPrmeter = new SqlPrmeter();
MySqlPWPrmeter.PrmeterNme = "@用户密码";
MySqlPWPrmeter.Vlue = this.用户密码TextBox.Text;
MyCommnd.Prmeters.dd(MySqlPWPrmeter);
int MyCount = (int)MyCommnd.ExecuteSclr();
if (MyCount == 1)
{
this.Close();
}
else
{
this.MyTryCount += 1;
if (this.MyTryCount != 3)
{
int MyDoCount = 3 - this.MyTryCount;
MessgeBox.Show("用户密码或用户名称有错,还有" + MyDoCount + "次机会¨", "信息提示", MessgeBoxButtons.OK, MessgeBoxIcon.Informtion);
this.用户密码TextBox.Text = "";
this.用户名称TextBox.Text = "";
}
else
{
退出系统3Button_Click(null, null);
}
}
当输入的用户名和密码均正确的时候,执行选择用户权限的操作。具体实现代码如下:
String MySQLConnectionString = globl::MyPersonnel.Properties.Settings.Defult.MyPersonnelConnectionString;
string MySQL = "Select * From 操作用户Where 用户名称='" + this.MyOpertor + "'";
SqlConnection MyConnection = new SqlConnection(MySQLConnectionString);
MyConnection.Open();
DtTble MyTble = new DtTble();
SqlDtdpter Mydpter = new SqlDtdpter(MySQL, MyConnection);
Mydpter.Fill(MyTble);
if ((int)MyTble.Rows[0]["人事管理之基本档案] == 0)
{
this.基本档案ToolStripMenuItem.Visible = flse;
this.基本档案ToolStripSeprtor.Visible = flse;
}
以上代码只包含了基本档案模块的权限设置,其它模块的进入权限设置与其类似,在这里便不再赘述。
5.2主窗体的实现
本窗体应用了MenuStrip控件的ToolStripDropDownItem对象,该对象