【毕业论文+源码】基于ASP+NET的人事管理系统

news2024/9/24 3:29:15
  • 引言

人事管理系统是针对企业内部人事管理设计,分角色实现对公司部门及各部门员工的增、删、改、查以及对员工考勤的管理。

    1. 编写目的:

在系统需求分析的基础上,对需求分析中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明,并作为测试和维护的参考文档。

详细设计说明书的预期用户为所有与此项目相关的决策人员、开发人员和测试人员。

1.2项目背景:

项目名称:人事管理系统

解决方案名称:CompanyPersonnelManagementSystem

本项目创意的提出者:孙亚洲、何岁岁、刘盼盼

             开发者:孙亚洲、何岁岁、刘盼盼

 项目介绍:

     人事管理是一套先进的管理模式,其实施要取得成功,必须有必需的技术和工具支持,公司人事管理软件(CPM)是实施人事部门人员管理职工必不可少的一套技术和工具集成支持平台。CPM管理系统基于通讯、计算机等信息技术,能实现企业对职工、部门的良好管理,能够协助管理者更好地完成管理的两项基本任务:管理和了解职工状况。

1.3 定义

CPM:CompanyPersonnelManagement,公司人事管理系统的缩写

命名规则:

※  窗体

命名格式:功能模块名+Form (例如:部门管理窗体,SMF)   

※  控件

命名格式:窗体名+功能名+控件名(例如:部门管理窗体中的添加按钮,SMF_Addbtn) 

 字体格式:

主窗体控件:微软雅黑,五号,粗体,字体颜色:黑色

次窗体控件:微软雅黑,小五,粗体,字体颜色:黑色

※  程序命名:

类:首字母大写

属性:首字母大写

      方法:首字母大写

      字段:单词首字母大写、

      变量:小写

1.4 参考资料:

详细设计说明书模板资料、《人事管理系统需求分析说明书》

          

  • 数据库设计

数据库名称:HRManagement

2.1   数据库表列表

序号

关系名称

表描述

1

部门表

存储公司的部门名称

2

职位表

存储部门有哪些职位

3

性别表

存储人的性别

4

民族表

存储不同民族信息

5

学历表

存储不同的学历

6

员工表

存储公司的员工信息

7

工作时间类别表

标识时间种类

8

工作时间表

存储上下班时间信息

9

打卡状态

存储打卡正常、迟到、早退三种状态

10

上班打卡记录表

存储员工上班打卡信息

11

下班打卡记录表

存储员工下班打卡信息

12

管理员表

存储管理员级别的员工进入系统的用户名及密码信息,管理员有对员工和部门增删改查的权限

13

超级管理员表

存储超级管理员信息,超级管理员增加了对管理员信息查看、修改和删除的权限

14

用户表

存储员工进入系统的用户名及密码信息

2.2逻辑结构设计:

序号

关系名称

关系的属性

1

部门表

部门ID、部门名称

2

职位表

职位ID、职位名称

3

性别表

性别ID、性别名称

4

民族表

民族ID、民族名称

5

学历表

学历ID、学历名

6

员工表

Id、职工ID、姓名、性别ID、职位ID、部门ID、学历ID、生日、照片、籍贯、现住地址、民族ID、联系方式、工作年限、毕业院校、专业、身份证号码、入职时间

7

工作时间类别表

类别ID、类别名称

8

工作时间表

工作时间ID、工作时间、类别ID

9

打卡状态

打卡状态ID、状态名称

10

上班打卡记录表

记录ID、打卡时间、状态ID、职工编号

11

下班打卡记录表

记录ID、打卡时间、状态ID、职工编号

12

管理员表

管理员ID、用户名、密码、职工编号

13

超级管理员表

超级管理员ID、用户名、密码、职工编号

14

用户表

用户ID、员工工号、密码

2.3物理结构设计:

  1. 部门表(Sections)

字段

说明

类型

可空

备注

SectionID

ID

Nvarchar(2)

No

主键

SectionName

部门名称

Nvarchar(20)

No

唯一

  1. 职位表(Positions)

字段

说明

类型

可空

备注

PositionID

ID

Nvarchar(2)

No

主键

PositionName

职位名称

Nvarchar(20)

No

唯一

  1. 性别表(Sexs)

字段

说明

类型

可空

备注

SexID

ID

int

No

主键,自增

SexName

性别名称

Nvarchar(4)

No

唯一

  1. 民族表(Nations)

字段

说明

类型

可空

备注

NationID

ID

int

No

主键,自增

NationName

民族名称

Nvarchar(16)

No

唯一

  1. 学历表(EduBackgrounds)

字段

说明

类型

可空

备注

EduBackgroundID

ID

int

No

主键,自增

EduBackgroundName

学历名称

Nvarchar(10)

No

唯一

  1. 员工表(Staffs)

字段

说明

类型

可空

备注

ID

ID

Int

No

主键,自增

StaffID

职工ID

Nvarchar(10)

No

组合项:部门ID+职位ID+数字标识

StaffName

姓名

Nvarchar(10)

No

SexID

性别ID

Int

No

外键

PositionID

职位ID

Varchar(4)

No

外键

EduBackgroundID

学历ID

Int

No

外键

Birthday

生日

Nvachar(10)

Yes

Picture

照片

Image

Yes

NativePlace

籍贯

Nvarchar(40)

Yes

NowAddress

现住地址

Nvarchar(40)

Yes

IDcardNo

身份证号码

Nvarchar(18)

No

唯一

NationID

民族ID

Int

Yes

外键

ContactWay

联系方式

Nvarchar(30)

Yes

WorkSeniority

工作年限

Int

No

SectionID

部门ID

Nvarchar(2)

No

外键

GraduateSchool

毕业院校

Nvarchar(30)

Yes

Major

专业

Nvarchar(16)

Yes

EmployedDate

入职时间

Datetime

No

  1. 工作时间类别表(WorkingTimeType)

字段

说明

类型

可空

备注

WTTypeID

ID

int

No

主键,自增

WTTypeName

类别名称

Nvarchar(14)

No

唯一

  1. 工作时间表(WorkingTimes)

字段

说明

类型

可空

备注

WorkingTimeID

ID

int

No

主键,自增

WorkTime

工作时间

Nvarchar(5)

No

唯一

WTTypeID

类别ID

Int

No

外键

  1. 打卡状态(ClockStatus)

字段

说明

类型

可空

备注

ClockStatusID

ID

int

No

主键,自增

ClockStatusName

状态名称

Nvarchar(10)

No

唯一

  1. 上班打卡记录表(StartClockRecords)

字段

说明

类型

可空

备注

SClockRecordsID

ID

int

No

主键,自增

SColckTime

打卡时间

DateTime

No

SClockStatusID

打卡状态ID

Int

No

外键

StaffID

职工ID

Nvarchar(10)

No

外键

  1. 下班打卡记录表(EndClockRecords)

字段

说明

类型

可空

备注

EClockRecords ID

ID

int

No

主键,自增

EColckTime

打卡时间

DateTime

No

EClockStatusID

打卡状态ID

Int

No

外键

StaffID

职工ID

Nvarchar(10)

No

外键

  1. 管理员表(Adms)

字段

说明

类型

可空

备注

AdmID

ID

int

No

主键,自增

AdmName

管理员名

Nvarchar(15)

No

唯一

AdmPW

密码

Nvarchar(15)

no

StaffID

职工Id

Nvarchar(10)

No

外键

  1. 超级管理员表(SuperAdms)

说明

类型

可空

备注

SuperAdmID

ID

int

No

主键,自增

SuperAdmName

管理员名

Nvarchar(15)

No

唯一

SuperAdmPW

密码

Nvarchar(15)

no

StaffID

职工Id

Nvarchar(10)

No

外键

  1. 用户表(Users)

字段

说明

类型

可空

备注

UserID

ID

int

No

主键,自增

StaffID

职工Id

Nvarchar(10)

No

外键

UserPW

密码

Nvarchar(15)

no

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2159176.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

分布式锁的几种方案对比?你了解多少种呢?

目录标题 1.关于分布式锁2.分布式锁的实现方案2.1 基于数据库实现2.1.1乐观锁的实现方式2.1.2 悲观锁的实现方式2.1.3 数据库锁的优缺点 2.2 基于Redis实现2.2.1 基于缓存实现分布式锁2.2.2缓存实现分布式锁的优缺点 2.3 基于Zookeeper实现2.3.1 如何实现?2.3.2 zk实…

生信技能59 - 基于GATK CallingSNP变异检测及注释流程

1. 流程说明 使用BWA MEM比对,如果文件较大,可使用bwa-mem2进行比对,速度会有很大提升;使用GATK对BAM进行排序和标记重复,再使用GATK HaplotypeCaller + GATK GenotypeGVCFs进行变异检测,生产.g.vcf文件,提取SNP并使用annovar进行位点注释。 使用bwa-mem2进行比对,获…

python全栈开发《37.列表(元组)的count函数》

元组的count函数的功能和用法与列表的count函数完全一致。 1.count的功能 返回当前列表中某个成员的个数。 2.count的用法 fruits [苹果,西瓜,水蜜桃,西瓜,雪梨] count fruits.count(西瓜) print(count) 运行结果: 2 注意:列表的内置函数count拿到需要…

Qt系统相关——QThread

文章目录 QThread的API使用示例客户端多线程应用场景互斥锁QMutexQMutexLockerQReadWriteLocker、QReadLocker、QWriteLocker 条件变量和信号量 QThread的API Qt中的多线程和Linux中的线程,本质上是一个东西 Linux线程概念 Linux多线程——线程控制 Linux多线程——…

EEPROM手册阅读笔记

目录 一、特征描述二、功能描述三、总线特性四、设备寻址五、写入操作1.字节写入2.页写入 六、读取操作1.当前地址读取2.随机读取3.顺序读取 一、特征描述 1.Microchip Technology Inc. 24AA04/24LC04B (24XX04*) 是一款 4 Kbit 电气可擦除 PROM。该器件…

【4】AT32F437 OpenHarmony轻量系统移植教程(1)

开源地址:https://gitee.com/AT32437_OpenHarmony 1.学习本文档的意义 1.学习移植OpenHarmony轻量系统到AT32全系列mcu上,本文档移植的具体型号为AT32F437ZMT7 2.学习OpenHarmony轻量系统开发 2.移植前的准备工作 1.移植之前必须要先熟悉AT-START-F…

HTTP协议:发展、请求响应、状态码 等

文章目录 HTTP发展历程HTTP请求URL和URIHTTP协议版本HTTP请求方法GET 和 POST 区别HTTP状态码HTTP 请求与响应报文HTTP 请求流程 HTTP 超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在…

SAP-ABAP消息号 AD857

激活表时报错 返回表,找到报错的字段 维护参考表和字段

免费!大厂太卷了,又一款AI对口型神器,让照片开口说话唱歌,吊打阿里EMO?(附保姆级教程)

大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~(AI资料点文末卡片自取) 之前分享了一款…

【小白向】怎么去除视频水印?HitPaw帮你轻松解决

序言 HitPaw是一款优秀的去除视频水印的工具。 特点:不仅仅能够去除图片、视频里的固定水印,还能去除移动水印。 尤其是它的AI去水印功能,效果非常好。 极简使用教程 下载安装 HitPaw需要在电脑上安装软件才能使用。 支持Windows系统和…

【AIGC】ChatGPT RAG提取文档内容,高效制作PPT、论文

目录 一、理解 RAG 技术 二、利用 ChatGPT 的 RAG 技术提取文档内容 三、高效制作 PPT 四、高效撰写论文 五、最佳实践与建议 六、工具推荐 随着人工智能生成内容(AIGC)的快速发展,利用先进的技术工具如 ChatGPT 的 RAG(Ret…

kismet和war driving具体准备(仅供无线安全学习)

war driving准备 一台笔记本 一个最好是双频的网卡,单频搜集信号少 我自己买的是http://e.tb.cn/h.grI4EmkDLOqQXHG?tkKZ5g3RVeH6f 如果经济条件允许可以去买大功率天线(我买的车载的 大概40db这样子 范围广) http://e.tb.cn/h.grCM0CQ6L…

YOLOv5-水印检测

简介: YOLOv5在YOLOv4算法的基础上做了进一步的改进,检测性能得到进一步的提升。虽然YOLOv5算法并没有与YOLOv4算法进行性能比较与分析,但是YOLOv5在COCO数据集上面的测试效果还是挺不错的。 YOLOv5是一种单阶段目标检测算法,该算…

教材改版难道是假的?!24下半年软考怎么还是用旧版?何时启用新教材?

之前一直有消息说软考有几个科目的教材要改版,导致不少打算报名2024年下半年软考的同学都在担心是否会影响考试…… 但一直到现在都没看到有新教材出版的消息,所以很多人怀疑之前教材改版的消息是不是假的,要不然怎么还在用旧版教材…… 那…

C++11新特性和扩展(1)

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 C11新特性和扩展 收录于专栏 [C进阶学习] 本专栏旨在分享学习C的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 1.C11简介 2. 列表初始…

Oracle 数据库安装和配置指南

目录 1. 什么是Oracle数据库? 2. 安装前的准备工作 2.1 硬件要求 2.2 软件要求 2.3 下载Oracle安装包 3. Oracle数据库的安装步骤 3.1 Windows系统安装步骤 3.2 Linux系统安装步骤 4. 配置Oracle数据库 4.1 设置环境变量(Linux) 4.…

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Halo博客平台

828华为云征文 | 云服务器Flexus X实例,Docker集成搭建Halo博客平台 Halo博客平台是一款基于Java的开源博客系统,以其简单易用、功能强大、美观大方等特点而受到广泛欢迎,采用了多种先进的技术框架,包括Freemarker模板引擎、Vue.j…

项目总结,路径匹配的业务逻辑

redisHelper.addzset(HitchConstants.STOKE_GEO_ZSET_PREFIX,hitchGeoBo.getTargetID()(乘客ID),stroke.getId()->(司机的ID),getscore(hitchGeoBo); 如果他不这样乘客这里存储司机的ID,我们会发现假如再来一个司机,他是无法获…

通过 LabVIEW 正则表达式读取数值(整数或小数)

在LabVIEW开发中,字符串处理是一个非常常见的需求,尤其是在处理包含复杂格式的数字时。本文通过一个具体的例子来说明如何利用 Match Regular Expression Function 和 Match Pattern Function 读取并解析字符串中的数字,并重点探讨这两个函数…

书生·浦语作业集合

目录: 1. Linux基础知识 2.python基础知识 3.Git基础知识 4.书生大模型全链路开源体系 1.1-Linux基础知识 配置环境后,运行 hello_word.py 在本地终端中进行端口映射 映射成功后,访问 127.0.0.1:7860 1.2-python基础知识 任务…