• 基于JAVA的企业人力人事资源管理系统OA,部门、人员、薪资、招聘功能齐全的项目【数据库设计、源码、开题报告】


    数据库脚本下载地址: https://download.csdn.net/download/itrjxxs_com/86427647

    摘要

    随着知识经济的崛起,掌握了高新技术和具有现代管理理念的人已成为经济发展的原动力。一个企业要在市场竞争中取得优势地位,依靠的主要不是物质资源,而是掌握了先进思想和技术,能够有效实现企业战略目标的人力资源。当今世界范围的经济竞争,归根到底是人力资源,特别是人才的竞争。对于未来,企业最需要的,也是最为缺乏的就是高素质的人才,谁拥有高素质人才,谁拥有丰富的人力资本,谁能高效率、高水平地开发与管理人力资源,谁就能在未来的市场竞争中处于战略主动地位。因此,在知识经济时代,任何一个企业要获取和保持企业的竞争优势,就必须在人力资源开发与管理上走在别人的前面。本文将运用理论分析和实证分析相结合的方法,对企业在人力资源管理方面存在的竞争优势作一深入研究。

    主要使用技术

    Spring+Struts2+Hibernate+Extjs+MD5+Mysql

    功能介绍

    系统主要分为八个模块:
    部门管理:实现部门信息以及部门职位信息的增删改查;
    职员管理:实现员工信息,员工职位变动的管理;
    奖惩管理:实现对员工的奖励和惩罚信息管理;
    薪资管理:实现员工每月工资的增删改查管理、税率表信息管理、福利表信息管理以及每个员工工资的福利组成配置管理;
    培训管理:实现了培训信息发布的管理,培训记录的管理;
    招聘管理:实现对招聘信息的管理;
    报表管理:实现了部门人数统计分析图、员工个人信息报表、员工薪水报表;
    系统管理:实现平台用户的信息管理、角色信息管理和角色权限管理以及个人账号密码管理;

    数据库脚本

    /*
    SQLyog 企业版 - MySQL GUI v8.14 
    MySQL - 5.5.40 : Database - db_hrmsys
    *********************************************************************
    */
    
    
    /*!40101 SET NAMES utf8 */;
    
    /*!40101 SET SQL_MODE=''*/;
    
    /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
    /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
    /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
    /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
    CREATE DATABASE /*!32312 IF NOT EXISTS*/`db_hrmsys` /*!40100 DEFAULT CHARACTER SET latin1 */;
    
    USE `db_hrmsys`;
    
    /*Table structure for table `boon` */
    
    DROP TABLE IF EXISTS `boon`;
    
    CREATE TABLE `boon` (
      `boon_id` int(10) unsigned NOT NULL,
      `boon_name` varchar(200) DEFAULT NULL,
      `boon_money` float DEFAULT NULL,
      `boon_percent` float DEFAULT NULL,
      `boon_remark` text,
      PRIMARY KEY (`boon_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    /*Data for the table `boon` */
    
    insert  into `boon`(`boon_id`,`boon_name`,`boon_money`,`boon_percent`,`boon_remark`) values (1,'养老保险',1000,8,NULL),(2,'医疗保险',500,5,NULL),(3,'失业保险',400,1.5,NULL),(4,'工伤保险',500,0,NULL),(5,'生育保险',300,0,NULL),(6,'住房公积金',1000,10,'undefined');
    
    /*Table structure for table `department` */
    
    DROP TABLE IF EXISTS `department`;
    
    CREATE TABLE `department` (
      `dept_id` varchar(2) NOT NULL,
      `dept_name` varchar(100) NOT NULL,
      `dept_mgr` varchar(100) DEFAULT NULL,
      `dept_remark` text,
      PRIMARY KEY (`dept_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `employee`;
    
    CREATE TABLE `employee` (
      `dept_id` varchar(2) NOT NULL,
      `emp_id` varchar(20) NOT NULL,
      `emp_name` varchar(100) NOT NULL,
      `emp_sex` int(11) NOT NULL,
      `emp_birth` date NOT NULL,
      `emp_address` varchar(200) NOT NULL,
      `emp_post` varchar(6) NOT NULL,
      `emp_telephone` varchar(20) DEFAULT NULL,
      `emp_mobilephone` varchar(11) NOT NULL,
      `emp_qq` varchar(12) DEFAULT NULL,
      `emp_email` varchar(20) NOT NULL,
      `emp_account` varchar(20) NOT NULL,
      `emp_idcard` varchar(18) NOT NULL,
      `emp_photo` varchar(100) DEFAULT NULL,
      `emp_add_date` date DEFAULT NULL,
      `emp_add_person` varchar(100) DEFAULT NULL,
      `emp_job` int(11) DEFAULT NULL,
      `emp_bank` varchar(100) DEFAULT NULL,
      `emp_nationality` varchar(50) DEFAULT NULL,
      `emp_origin` varchar(50) DEFAULT NULL,
      `emp_nation` varchar(50) DEFAULT NULL,
      `emp_school` varchar(100) DEFAULT NULL,
      `emp_education` varchar(50) DEFAULT NULL,
      `emp_profession` varchar(100) DEFAULT NULL,
      PRIMARY KEY (`emp_id`),
      KEY `FK_employee` (`emp_job`),
      KEY `FK_dep_emp` (`dept_id`),
      CONSTRAINT `FK_dep_emp` FOREIGN KEY (`dept_id`) REFERENCES `department` (`dept_id`),
      CONSTRAINT `FK_employee` FOREIGN KEY (`emp_job`) REFERENCES `job` (`job_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    DROP TABLE IF EXISTS `encourage_punish`;
    
    CREATE TABLE `encourage_punish` (
      `ep_id` int(11) NOT NULL AUTO_INCREMENT,
      `emp_id` varchar(20) DEFAULT NULL,
      `ep_type` int(11) DEFAULT NULL COMMENT '0奖励1处罚',
      `ep_topic` varchar(100) DEFAULT NULL,
      `ep_money` float(8,2) DEFAULT NULL,
      `ep_other` text COMMENT '其它奖励或惩罚',
      `ep_release_date` date DEFAULT NULL,
      `ep_release_person` varchar(100) DEFAULT NULL,
      `ep_reason` text,
      `ep_remark` text,
      PRIMARY KEY (`ep_id`),
      KEY `FK_emp_ep` (`emp_id`),
      CONSTRAINT `FK_emp_ep` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `job`;
    
    CREATE TABLE `job` (
      `job_id` int(11) NOT NULL AUTO_INCREMENT,
      `job_name` varchar(100) NOT NULL,
      `job_remark` text,
      `job_dept_id` varchar(2) DEFAULT NULL,
      `job_basic_wage` float DEFAULT NULL COMMENT '基本工资',
      PRIMARY KEY (`job_id`),
      KEY `FK_job` (`job_dept_id`),
      CONSTRAINT `FK_job` FOREIGN KEY (`job_dept_id`) REFERENCES `department` (`dept_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `job_change`;
    
    CREATE TABLE `job_change` (
      `jc_id` int(11) NOT NULL AUTO_INCREMENT,
      `emp_id` varchar(20) DEFAULT NULL,
      `jc_old_dept` varchar(2) DEFAULT NULL,
      `jc_old_job` int(11) DEFAULT NULL,
      `jc_new_dept` varchar(2) DEFAULT NULL,
      `jc_new_job` int(11) DEFAULT NULL,
      `jc_add_person` varchar(100) DEFAULT NULL,
      `jc_date` date DEFAULT NULL,
      `jc_reason` varchar(500) DEFAULT NULL,
      `jc_remark` text,
      PRIMARY KEY (`jc_id`),
      KEY `FK_emp_jc` (`emp_id`),
      KEY `FK_job_old_job` (`jc_old_job`),
      KEY `FK_job_new_job` (`jc_new_job`),
      KEY `FK_jc_new_dept` (`jc_new_dept`),
      KEY `FK_jc_old_dept` (`jc_old_dept`),
      CONSTRAINT `FK_emp_jc` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`),
      CONSTRAINT `FK_jc_new_dept` FOREIGN KEY (`jc_new_dept`) REFERENCES `department` (`dept_id`),
      CONSTRAINT `FK_jc_old_dept` FOREIGN KEY (`jc_old_dept`) REFERENCES `department` (`dept_id`),
      CONSTRAINT `FK_job_new_job` FOREIGN KEY (`jc_new_job`) REFERENCES `job` (`job_id`),
      CONSTRAINT `FK_job_old_job` FOREIGN KEY (`jc_old_job`) REFERENCES `job` (`job_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `menu`;
    
    CREATE TABLE `menu` (
      `menu_id` int(11) NOT NULL AUTO_INCREMENT,
      `menu_title` varchar(20) NOT NULL,
      `menu_parent_id` int(11) DEFAULT NULL,
      `menu_leaf` int(11) DEFAULT NULL,
      `menu_url` varchar(100) DEFAULT NULL,
      `menu_icon` varchar(100) DEFAULT NULL,
      PRIMARY KEY (`menu_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `permission`;
    
    CREATE TABLE `permission` (
      `per_id` int(11) NOT NULL AUTO_INCREMENT,
      `menu_id` int(11) NOT NULL,
      `per_function` int(1) NOT NULL,
      PRIMARY KEY (`per_id`),
      KEY `FK_permission` (`menu_id`),
      CONSTRAINT `FK_permission` FOREIGN KEY (`menu_id`) REFERENCES `menu` (`menu_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=68 DEFAULT CHARSET=latin1;
    
    DROP TABLE IF EXISTS `recruitment`;
    
    CREATE TABLE `recruitment` (
      `rec_id` int(11) NOT NULL AUTO_INCREMENT,
      `rec_title` varchar(100) NOT NULL,
      `rec_content` text NOT NULL,
      `rec_start` date DEFAULT NULL,
      `rec_end` date DEFAULT NULL,
      `rec_person` varchar(100) NOT NULL,
      `rec_date` date NOT NULL,
      `rec_job` varchar(100) NOT NULL,
      `rec_num` int(11) NOT NULL,
      `rec_remark` text,
      PRIMARY KEY (`rec_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `revenue`;
    
    CREATE TABLE `revenue` (
      `re_id` int(11) NOT NULL,
      `re_min` float DEFAULT NULL,
      `re_max` float DEFAULT NULL,
      `re_percent` float DEFAULT NULL,
      `re_minus` float DEFAULT NULL,
      PRIMARY KEY (`re_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    
    DROP TABLE IF EXISTS `role`;
    
    CREATE TABLE `role` (
      `role_id` int(11) NOT NULL AUTO_INCREMENT,
      `role_name` varchar(100) NOT NULL,
      `role_remark` text,
      PRIMARY KEY (`role_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `role_permission`;
    
    CREATE TABLE `role_permission` (
      `rp_id` int(11) NOT NULL AUTO_INCREMENT,
      `per_id` int(11) NOT NULL,
      `role_id` int(11) NOT NULL,
      PRIMARY KEY (`rp_id`),
      KEY `FK_role_permission` (`role_id`),
      KEY `FK_role_permission_id` (`per_id`),
      CONSTRAINT `FK_role_permission` FOREIGN KEY (`role_id`) REFERENCES `role` (`role_id`),
      CONSTRAINT `FK_role_permission_id` FOREIGN KEY (`per_id`) REFERENCES `permission` (`per_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=497 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `salary`;
    
    CREATE TABLE `salary` (
      `sal_id` int(11) NOT NULL AUTO_INCREMENT,
      `emp_id` varchar(20) DEFAULT NULL,
      `sal_basic` float(8,2) DEFAULT NULL COMMENT '基本工资',
      `sal_job` float(8,2) DEFAULT NULL COMMENT '岗位工资',
      `sal_normal` float(8,2) DEFAULT NULL COMMENT '正常工作时间',
      `sal_all` float(8,2) DEFAULT NULL COMMENT '全勤奖',
      `sal_absenteeism` float(8,2) DEFAULT NULL COMMENT '旷工时间',
      `sal_absenteeism_money` float(8,2) DEFAULT NULL COMMENT '缺勤金额',
      `sal_endowmentint` float(8,2) DEFAULT NULL COMMENT '养老保险',
      `sal_hospitalizationint` float(8,2) DEFAULT NULL,
      `sal_unemploymentint` float(8,2) DEFAULT NULL,
      `sal_eateryfloat` float(8,2) NOT NULL,
      `sal_trafficfloat` float(8,2) DEFAULT NULL,
      `sal_telephone` float(8,2) DEFAULT NULL,
      `sal_allowance` float(8,2) DEFAULT NULL COMMENT '其它补贴',
      `sal_revenue` float(8,2) DEFAULT NULL COMMENT '个税',
      `sal_money` float(8,2) DEFAULT NULL COMMENT '实际工资',
      `sal_year` varchar(4) DEFAULT NULL COMMENT '年份',
      `sal_release_person` varchar(100) DEFAULT NULL,
      `sal_release_date` date DEFAULT NULL,
      `sal_check_person` varchar(100) DEFAULT NULL,
      `sal_check_date` date DEFAULT NULL,
      `sal_month` int(2) DEFAULT '0' COMMENT '月份',
      `sal_remark` text,
      PRIMARY KEY (`sal_id`),
      KEY `FK_emp_sal` (`emp_id`),
      CONSTRAINT `FK_emp_sal` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `salary_basic`;
    
    CREATE TABLE `salary_basic` (
      `sb_id` int(11) NOT NULL,
      `emp_id` varchar(20) NOT NULL,
      `sb_basic` float DEFAULT '0' COMMENT '基本工资',
      `sb_endowment` int(1) DEFAULT '0' COMMENT '养老保险',
      `sb_hospitalization` int(1) DEFAULT '0' COMMENT '医疗保险',
      `sb_unemployment` int(1) DEFAULT '0' COMMENT '失业保险',
      `sb_injury` int(1) DEFAULT '0' COMMENT '工伤保险',
      `sb_maternity` int(1) DEFAULT '0' COMMENT '生育保险',
      `sb_housing` int(1) DEFAULT '0' COMMENT '住房公积金',
      `sb_traffic` float DEFAULT '0' COMMENT '交通补贴',
      `sb_eatery` float DEFAULT '0' COMMENT '餐饮补贴',
      `sb_telephone` float DEFAULT '0' COMMENT '通信补贴',
      PRIMARY KEY (`sb_id`),
      KEY `FK_salary_basic` (`emp_id`),
      CONSTRAINT `FK_salary_basic` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    DROP TABLE IF EXISTS `train`;
    
    CREATE TABLE `train` (
      `train_id` int(11) NOT NULL AUTO_INCREMENT,
      `train_title` varchar(100) NOT NULL,
      `train_content` text NOT NULL,
      `train_date` date NOT NULL,
      `train_place` varchar(100) NOT NULL,
      `train_person` varchar(100) NOT NULL,
      `train_add_person` varchar(100) NOT NULL,
      `train_add_date` date NOT NULL,
      `train_remark` text,
      PRIMARY KEY (`train_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `train_record`;
    
    CREATE TABLE `train_record` (
      `tRecord_id` int(11) NOT NULL AUTO_INCREMENT,
      `emp_id` varchar(20) DEFAULT NULL,
      `train_id` int(11) DEFAULT NULL,
      `tRecord_add_date` date DEFAULT NULL,
      `tRecord_add_person` varchar(100) DEFAULT NULL,
      `tRecord_result` int(11) DEFAULT NULL,
      `tRecord_remark` varchar(200) DEFAULT NULL,
      PRIMARY KEY (`tRecord_id`),
      KEY `FK_train_record_emp` (`emp_id`),
      KEY `FK_train_record_train` (`train_id`),
      CONSTRAINT `FK_train_record_emp` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`),
      CONSTRAINT `FK_train_record_train` FOREIGN KEY (`train_id`) REFERENCES `train` (`train_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
    
    DROP TABLE IF EXISTS `user`;
    
    CREATE TABLE `user` (
      `user_id` int(11) NOT NULL AUTO_INCREMENT,
      `role_id` int(11) DEFAULT NULL,
      `emp_id` varchar(20) DEFAULT NULL,
      `user_name` varchar(100) DEFAULT NULL,
      `user_pwd` varchar(30) NOT NULL,
      `user_remark` text,
      `user_date` date NOT NULL,
      `user_last_ip` varchar(15) DEFAULT NULL,
      `user_last_time` varchar(20) DEFAULT NULL,
      PRIMARY KEY (`user_id`),
      KEY `FK_emp_user` (`emp_id`),
      KEY `FK_user_role` (`role_id`),
      CONSTRAINT `FK_emp_user` FOREIGN KEY (`emp_id`) REFERENCES `employee` (`emp_id`),
      CONSTRAINT `FK_user_role` FOREIGN KEY (`role_id`) REFERENCES `role` (`role_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131
    • 132
    • 133
    • 134
    • 135
    • 136
    • 137
    • 138
    • 139
    • 140
    • 141
    • 142
    • 143
    • 144
    • 145
    • 146
    • 147
    • 148
    • 149
    • 150
    • 151
    • 152
    • 153
    • 154
    • 155
    • 156
    • 157
    • 158
    • 159
    • 160
    • 161
    • 162
    • 163
    • 164
    • 165
    • 166
    • 167
    • 168
    • 169
    • 170
    • 171
    • 172
    • 173
    • 174
    • 175
    • 176
    • 177
    • 178
    • 179
    • 180
    • 181
    • 182
    • 183
    • 184
    • 185
    • 186
    • 187
    • 188
    • 189
    • 190
    • 191
    • 192
    • 193
    • 194
    • 195
    • 196
    • 197
    • 198
    • 199
    • 200
    • 201
    • 202
    • 203
    • 204
    • 205
    • 206
    • 207
    • 208
    • 209
    • 210
    • 211
    • 212
    • 213
    • 214
    • 215
    • 216
    • 217
    • 218
    • 219
    • 220
    • 221
    • 222
    • 223
    • 224
    • 225
    • 226
    • 227
    • 228
    • 229
    • 230
    • 231
    • 232
    • 233
    • 234
    • 235
    • 236
    • 237
    • 238
    • 239
    • 240
    • 241
    • 242
    • 243
    • 244
    • 245
    • 246
    • 247
    • 248
    • 249
    • 250
    • 251
    • 252
    • 253
    • 254
    • 255
    • 256
    • 257
    • 258
    • 259
    • 260
    • 261
    • 262
    • 263
    • 264
    • 265
    • 266
    • 267
    • 268
    • 269
    • 270
    • 271
    • 272
    • 273
    • 274
    • 275
    • 276
    • 277
    • 278
    • 279
    • 280
    • 281
    • 282
    • 283
    • 284
    • 285
    • 286
    • 287
    • 288
    • 289
    • 290
    • 291
    • 292
    • 293
    • 294
    • 295
    • 296
    • 297
    • 298
    • 299
    • 300
    • 301
    • 302
    • 303
    • 304
    • 305
    • 306
    • 307
    • 308
    • 309
    • 310
    • 311
    • 312

    项目截图

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    Python爬取数据分析
    uniapp 悬浮窗-任意界面 Ba-FloatWinWeb
    【Docker】ubuntu20.04 X86机器搭建NVIDIA ARM64 TX2的Docker镜像
    【AI】PyTorch入门(一):通过Anaconda安装PyTorch,并总结张量TENSORS
    MySql面试
    Linux有哪些指令
    螺杆支撑座究竟采用哪种轴承?
    Vue —— vue相关面试题分享
    视频号直播弹幕采集
    问题usr/bin/env: “python‘: Too many levels of symbolic links太多层链接的bug pycharm
  • 原文地址:https://blog.csdn.net/itrjxxs_2/article/details/127996652