您的位置:首页 > 其它

公司人员管理程序(一)

2015-12-31 13:11 204 查看

公司人员管理程序(一)

  做一个公司人员管理的培训程序,只是给出了具体要求和功能,代码设计由自己实现。以下是我做的东西,写与此算是总结学习。

  具体其中主要涉及到:数据库和基础信息类设计、树形图的生成(即TreeView控件的操作)、数据库图片存取显示、注册表和文件读写操作、数据查找等,以后继续完善。

一、项目要求

  使用标准的WinForm可执行程序,即C/S结构。

1.实现内容概述
  1) 能够按照层次和隶属关系,建立公司、部门、小组、人员等组织结构树,并能够对部门、小组进行增删改操作

  2) 能够为每一个部门或者小组添加受管理的人员,并能够实现人员的增删改操作

  3) 能够对人员的详细信息进行管理,人员信息包括:姓名、编号、性别、电话、邮箱、照片、职位等

2.具体要求概述
  a.部门和员工信息均以类实例的形成存储于内存结构中,数据和数据关系通过程序初试化,不要求保存到数据库中。

  b.能够进行人员的查询,其功能通过动态链接库实现

  c.能够在注册表中记录最后编辑的部门或者组,在进入程序后能够自动定位到上次编辑的部门或者组

  d.能够将编辑的所有信息存储到数据库中

  e.能够进行初步的安全控制

  f.能够动态设置数据库相关参数

二、数据库结构设计

  根据程序要求信息数据库中要建立:公司信息表、部门信息表、小组信息表、人员信息表,4个基础信息表,考虑到人员照片要存储到数据库中,新建照片表其主键关联人员表中的PhotoID字段,每个表中采用唯一自增(从1开始)标识ID作为唯一标识字段,基础信息表中有ParentID字段其值指向当前表双亲ID(若为0 则双亲在其他表或为根节点),基础信息表结构如下(图1.1):

      

public  class Company:Common
{

public static readonly int TypeNumber = 0;
//public override List<Common> SubMember { get; set; }
//public override List<Common> SubLevelMember { get; set; }
//public override string Name { get; set; }
//public override int ID { get; set; }
//public override int ParentID { get; set; }
}

public class Department : Common
{
public static readonly int TypeNumber = 1;
//public override List<Common> SubMember { get; set; }
//public override List<Common> SubLevelMember { get; set; }
//public override string Name { get; set; }
//public override int ID { get; set; }
//public override int ParentID { get; set; }
public int cpId { get; set; }
}

public class Group : Common
{
public static readonly int TypeNumber = 2;
//public override List<Common> SubMember { get; set; }
//public override List<Common> SubLevelMember { get; set; }
//public override string Name { get; set; }
//public override int ID { get; set; }
//public override int ParentID { get; set; }
public int dpId { get; set; }
public int cpId { get; set; }

}

public class Person : Common
{
public static readonly int TypeNumber = 3;

public string gender { get; set; }
public string code { get; set; }
public string phoneNumber { get; set; }
public string telephoneNumber { get; set; }
public string email { get; set; }

public string postId { get; set; }
public DateTime birthday { get; set; }
public string photoId { get; set; }

public int cpId { get; set; }
public int dpId { get; set; }
public int gpId { get; set; }

}


View Code
  其中TypeNumber为类型标识,后期将使用TypeNumber+ID 从Common集合中唯一确定对象,并进行操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: