Skip to content

hjcba/letingOA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

人事OA系统

项目介绍

人事OA系统是一个全面的人力资源管理系统,提供从员工入职到离职的全流程管理,包括员工信息管理、入职流程跟踪、考勤管理、绩效评估和离职流程管理等功能。

功能模块

1. 员工管理

  • 员工信息管理
  • 新增、编辑、删除员工
  • 员工列表展示

2. 入职流程管理

  • 新增入职流程
  • 编辑入职流程
  • 动态计算入职流程完成进度
  • 入职流程状态跟踪

3. 考勤管理

  • 新增考勤记录
  • 编辑考勤记录
  • 支持不同考勤状态(正常、迟到、早退、旷工、请假)
  • 考勤记录查询

4. 绩效评估管理

  • 新增绩效评估
  • 编辑绩效评估
  • 支持评分和等级设置
  • 绩效评估记录查询

5. 离职流程管理

  • 新增离职流程
  • 编辑离职流程
  • 离职流程状态跟踪

技术栈

前端

  • React 18
  • Redux Toolkit
  • Ant Design
  • Axios
  • Vite

后端

  • Node.js
  • Express
  • MongoDB
  • Mongoose
  • JWT 认证

项目结构

N--/
├── backend/          # 后端代码
│   ├── config/       # 配置文件
│   ├── controllers/  # 控制器
│   ├── middleware/   # 中间件
│   ├── models/       # 数据模型
│   ├── routes/       # 路由
│   ├── index.js      # 入口文件
│   └── package.json  # 后端依赖
├── frontend/         # 前端代码
│   ├── public/       # 静态资源
│   ├── src/          # 源代码
│   │   ├── components/  # 组件
│   │   ├── pages/       # 页面
│   │   ├── services/    # API服务
│   │   ├── store/       # Redux store
│   │   ├── App.jsx      # 应用入口组件
│   │   ├── main.jsx     # 应用入口文件
│   │   └── index.css    # 全局样式
│   └── package.json  # 前端依赖
└── README.md         # 项目说明文档

安装步骤

1. 安装依赖

后端依赖

cd backend
npm install

前端依赖

cd frontend
npm install

2. 配置环境变量

在后端目录创建 .env 文件,配置以下环境变量:

# 数据库连接字符串
MONGO_URI=mongodb://localhost:27017/hr-oa

# 端口号
PORT=5000

# JWT密钥
JWT_SECRET=your_jwt_secret_key

# JWT过期时间
JWT_EXPIRE=7d

3. 启动数据库

确保MongoDB服务已经启动。如果没有安装MongoDB,可以从官网下载并安装:

https://www.mongodb.com/try/download/community

运行项目

1. 启动后端服务

cd backend
npm run dev

后端服务将在 http://localhost:5000 启动。

2. 启动前端服务

cd frontend
npm run dev

前端服务将在 http://localhost:5173 启动。

系统访问

  1. 打开浏览器,访问 http://localhost:5173
  2. 使用以下默认账号登录:
    • 用户名:admin
    • 密码:admin123

主要功能说明

1. 登录功能

  • 支持用户名密码登录
  • JWT认证,登录后有效期7天

2. 首页

  • 系统概览
  • 各模块数据统计
  • 系统公告

3. 员工管理

  • 新增员工:填写员工基本信息、部门、职位、入职日期等
  • 编辑员工:修改员工信息
  • 删除员工:删除员工记录

4. 入职流程管理

  • 新增入职流程:选择员工,设置流程状态
  • 编辑入职流程:更新流程进度,包括文档审核、设备分配、系统权限、入职培训、部门培训、导师分配等步骤
  • 系统自动根据完成的步骤计算流程进度

5. 考勤管理

  • 新增考勤记录:选择员工,设置日期、上下班时间、工作时长、考勤状态等
  • 编辑考勤记录:修改考勤信息

6. 绩效评估管理

  • 新增绩效评估:选择员工,设置评估周期、评估日期、评分、等级等
  • 编辑绩效评估:修改绩效评估信息

7. 离职流程管理

  • 新增离职流程:选择员工,设置离职日期、最后工作日、离职原因等
  • 编辑离职流程:更新离职流程状态

开发说明

前端开发

  • 使用 Vite 作为构建工具
  • 代码风格遵循 ESLint 和 Prettier
  • 使用 Redux Toolkit 进行状态管理
  • 使用 Ant Design 作为 UI 组件库

后端开发

  • 使用 Express 框架
  • 采用 MVC 架构
  • 使用 Mongoose 操作 MongoDB
  • 使用 JWT 进行身份认证

部署说明

前端部署

  1. 构建生产版本:
cd frontend
npm run build
  1. dist 目录部署到静态文件服务器,如 Nginx、Apache 等。

后端部署

  1. 安装 PM2:
npm install -g pm2
  1. 使用 PM2 启动后端服务:
cd backend
npm start

许可证

MIT

作者

人事OA系统开发团队

联系方式

如有任何问题或建议,请联系开发团队。

About

人事OA系统 一个基于React和Node.js的全栈人力资源管理系统,涵盖员工从入职到离职的完整生命周期管理。 🌟 核心功能 员工信息管理 入职/离职流程跟踪 考勤管理 绩效评估 🚀 技术栈 前端: React 18, Redux Toolkit, Ant Design, Vite 后端: Node.js, Express, MongoDB, Mongoose 认证: JWT Token 适用于企业HR部门,也可作为学习全栈开发的参考项目。(本项目并非完全体,还有很多BUG没修)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages