HarmonyHR Cloud - 企业级人力资源管理系统自研-智能Excel导入导出

【投稿赢 iPhone 17】「我的第一个开源项目」故事征集:用代码换C位出道! 10w+人浏览 1.8k人参与

上一篇文章地址:https://blog.csdn.net/qq_60870118/article/details/155672039?fromshare=blogdetail&sharetype=blogdetail&sharerId=155672039&sharerefer=PC&sharesource=qq_60870118&sharefrom=from_link

✨ 功能亮点:智能Excel导入导出

智能Excel导入导出

功能概述

系统提供完善的员工数据Excel导入导出功能,支持批量数据处理、智能字段匹配、错误提示等特性,大幅提升HR工作效率。

核心特性

特性说明
📥 模板下载提供标准化导入模板,包含所有必填字段说明
📤 批量导出支持按条件筛选导出员工数据到Excel
🔄 智能匹配自动匹配部门、职位、职称等关联字段(支持模糊匹配)
⚠️ 错误提示详细的字段匹配失败提示,精确到行号和具体原因
🔢 自动生成自动生成工号、计算合同期限、设置默认在职状态
📊 导入统计实时显示导入成功/失败数量及详细错误列表

导入流程

┌─────────────┐    ┌─────────────┐    ┌─────────────┐    ┌─────────────┐
│  下载模板    │ -> │  填写数据    │ -> │  上传文件    │ -> │  查看结果    │
└─────────────┘    └─────────────┘    └─────────────┘    └─────────────┘

智能字段匹配

系统支持以下字段的智能名称匹配:

字段类型匹配规则示例
部门精确匹配 + 路径匹配“研发部” 或 “总公司/研发部”
职位精确匹配 + 模糊匹配“Java开发工程师” 或 “Java开发”
职称精确匹配 + 模糊匹配“高级工程师” 或 “高级”
民族精确匹配“汉族”、“回族” 等
政治面貌精确匹配“群众”、“党员” 等

自动数据处理

处理项规则说明
工号生成自动按顺序生成8位工号(如:00000001)
合同期限根据合同起止日期自动计算,或默认3年
在职状态未填写时默认设置为"在职"

错误处理机制

当导入数据存在问题时,系统会:

  1. 继续导入有效数据 - 不会因部分错误中断整个导入
  2. 收集错误信息 - 记录每行的具体错误原因
  3. 前端展示详情 - 以表格形式展示错误行号、员工姓名、错误原因

错误提示示例:

第2行 - 张三:部门[研发中心]不存在;职位[Java架构师]不存在
第5行 - 李四:政治面貌[民主党派]不存在

技术实现

后端架构:
├── ExcelUtils.java              # Excel解析工具类
│   ├── importEmployeesWithErrors()  # 带错误收集的导入方法
│   ├── exportEmployees()            # 员工数据导出
│   ├── generateImportTemplate()     # 生成导入模板
│   ├── buildDepartmentMap()         # 构建部门名称映射
│   └── lookupId()                   # 智能ID查找(支持模糊匹配)
├── EmployeeExcelController.java # 导入导出控制器
├── EmployeeService.java         # 员工业务服务
│   └── addEmployees()               # 批量导入(自动生成工号/合同期限)
└── ExcelImportResult.java       # 导入结果DTO

前端架构:
├── Import.vue                   # 导入页面组件
│   ├── 步骤引导                     # 下载模板 -> 填写数据 -> 上传文件 -> 查看结果
│   ├── 拖拽上传                     # 支持拖拽或点击上传
│   ├── 进度显示                     # 实时上传进度
│   └── 结果展示                     # 成功数量 + 错误详情表格
└── api.ts                       # API接口封装

使用注意事项

注意项说明
📋 使用标准模板请使用系统提供的模板,不要修改表头
📅 日期格式统一使用 YYYY-MM-DD 格式(如:2025-01-01)
🏢 部门名称必须与系统中的部门名称一致(支持模糊匹配)
👤 职位职称建议先在系统中确认可用的职位和职称名称
📦 数据量限制单次导入建议不超过1000条数据

📄 开源协议

本项目遵循 MIT 开源协议,您可以自由使用、修改和分发本项目。


🤝 贡献指南

欢迎提交Issue和Pull Request!

  1. Fork 本仓库
  2. 创建您的特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开一个 Pull Request

📞 联系方式

  • 作者:全能技术师
  • QQ:2531219451
  • Gitee:https://gitee.com/zhousir03
  • 博客:https://blog.csdn.net/qq_60870118
  • 前端gitee地址 https://gitee.com/zhousir03/harmonyhr-cloud-admin.git
  • 后端gitee地址 https://gitee.com/zhousir03/harmony-hr_-cloud-java.git |

⭐ 如果这个项目对您有帮助,请给一个Star支持一下!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前台全能技师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值