3.3数据库的设计
(1)用户编码信息表
数据来源:用户管理模块的录入 字段名 是否主键 字段类型 字段长度 UserId 是 char 10 UserPasswor否 char 8 d UserKind 否 char 20 是否允许空 否 否 否 备注 用户名 用户密码 用户状态 (2)部门信息表 数据来源:部门信息管理模块的录入 字段名 是否主键 字段类型 字段长度(B) 是否允许为空 D_Id 是 char 3 否 D_Name 否 char 20 否 D_Tel 否 char 100 否 D_Addres否 char 10 否 s D_Chief 否 char 10 否 D_Belong 否 char 10 是 (3)职员基本信息表
数据来源:职员基本信息管理模块的录入 是否允许为空 否 否 否 是 否 否 是 是 备注 部门编号 部门名称 联系方式 联系地址 负责人 所属部门 字段名 是否主键 字段类型 字段长度(B) 备注 E_Id E_Name Sex E_Birth E_Tel E_Address E_Intro E_Picurl 是 是 否 否 否 否 否 否 char nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar 第 8 页 共 25 页
8 30 2 8 50 255 255 50 职员编号 职员姓名 性别 所在部门 联系电话 联系地址 个人简介 员工头像
D_Name 是 char 50 是 所在部门 (4)职员考勤信息表 数据来源:考勤信息管理模块的录入 字段名 是否主键 字段类型 字段长度 是否允许空 备注 E_Name 是 char 8 否 考勤对象 L_StartTime 否 nvarchar 50 否 开始时间 L_EndTime 否 nvarchar 50 否 结束时间 L_Kind 否 char 2 否 请假类别 L_Reason 否 char 200 是 请假理由
4系统的设计与实现
4.1登陆界面
图2-1登陆界面 主要源代码如下:
public partial class _Default : System.Web.UI.Page {
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e) {
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
///
/// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent()
第 9 页 共 25 页
{ }
#endregion
protected void Page_Load(object sender, EventArgs e) {
}
protected void Btn_Login_Click(object sender, EventArgs e) {
if (TxtUser.Text.Trim() == \ {
Response.Write(\登录名不能为空')\
return; }
user userLogin = new user(); bool isok = false;
if (rb_admin.Checked) {
string sql = \isnull(userName,'')='\isnull(userPass,'')='\isnull(userRole,'')='\
SqlDataReader myReader = userLogin.Login(sql); if (myReader.Read()) {
Session[\
myReader[\保存用户名称 Session[\
myReader[\保存用户密码 Session[\
myReader[\保存用户权限. isok = true; }
myReader.Close(); } else {
string sql = \isnull(userName,'')='\
第 10 页 共 25 页
isnull(userPass,'')='\isnull(userRole,'')='\
SqlDataReader myReader = userLogin.Login(sql); if (myReader.Read()) {
Session[\
myReader[\保存用户名称 Session[\
myReader[\保存用户密码 Session[\
myReader[\保存用户权限. isok = true; }
myReader.Close(); }
if (!isok) {
lbMessage.Text = \用户名称或密码错误,登陆失败!\ return; }
else {
Response.Redirect(\ } }
protected void Btn_Cancel_Click(object sender, EventArgs e) {
TxtUser.Text = \ TxtPwd.Text = \ lbMessage.Text = \ } }
4.2员工信息管理
在人事管理中涉及最多是是关于员工信息增、删、改、查的问题,所以我主要介绍员工信息管理,也因此我在设计时将所有的员工信息管理的增、删、改、查抽象化出来形成类,以实现代码的重复使用。此处附上图与源代码如下:
第 11 页 共 25 页
4.2.1 添加员工信息
图3-1添加员工信息界面 主要源代码如下: public {
protected void Page_Load(object sender, EventArgs e) {
if (!IsPostBack) {
this.tb_birth.Attributes.Add(\\ Image1.ImageUrl picurl.SelectedValue + \
string tring;
SqlConnection Sqlconn = new SqlConnection(connstr); DataSet ds = new DataSet();
string Agreerstr = \order by D_ID desc\
connstr
=
ConfigurationManager.ConnectionStrings[\
=
\
+
partial
class
WebFiles_Employee_Add_employee
:
System.Web.UI.Page
第 12 页 共 25 页