员工资料导入

简介: 员工资料导入

既然有员工资料导出需求,当然也就有导入需求。对前端而言,员工资料导入就是文件上传,对后端而言,则是获取上传的文件进行解析,并把解析出来的数据保存到数据库中。

后端接口实现

后端主要是获取前端上传文件的流,然后进行解析,代码如下:

代码解释:

• 首先根据上传文件的流获取一个HSSFWorkbook对象,然后获取workbook中表单的个数,进行遍历。

• 对于每一个表单,首先获取行数,然后进行遍历,第一行是标题行,跳过,如果该行没有数据也跳过,如果该行数据正常,就获取该行的单元格个数进行遍历。

• 本案例中,单元格的格式主要分为三种,即日期、数字以及普通文本,因此在不同的switch分支中进进行处理。

• 最后将遍历得到的员工数据集合返回。

在数据导入接口中调用importEmp2List方法,获取员工数据集合后,插入数据库中即可,代码如下:

前端实现

前端主要是一个Excel表格的上传,这里直接采用Element的文件上传控件,代码如下

代码解释:

• accept表示接收的上传文件类型。

• action表示上传接口。

• :on-success表示上传成功时的回调。

• :on-error表示上传失败时的回调。

• :disabled表示当fileUploadBtnText属性的值为“正在导入”时禁用上传控件。这个配置主要考虑到上传是一个耗时操作,在一个文件上传的过程中,其他文件暂时不能上传。

• :before-upload表示文件上传前的回调。

• el-button中的:loading="fileUploadBtnText==‘正在导入’"表示当fileUploadBtnText的文本为“正在导入”时,显示一个Loading加载。相关回调方法如下:

代码解释:

• 在文件上传之前,首先设置fileUploadBtnText的文本为“正在导入”,这样上传按钮上的文本就会变为“正在导入”,同时上传按钮的状态变为禁用,并且在上传按钮上多了一个Loading。

• 在上传成功时,给用户以提示,然后重新加载员工数据,并将fileUploadBtnText的文本设置为“导入数据”。

• 上传出错时,给用户以提示,同时将fileUploadBtnText的文本设置为“导入数据”。

所有配置完成后,单击“导入数据”,选择16.8节导出的用户数据进行导入,如图


相关文章
|
供应链 关系型数据库 MySQL
Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)
Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)
381 0
Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)
|
3月前
|
SQL Java 数据库连接
连接数据库实现查询员工信息
该博客文章展示了如何在Java中使用JDBC连接SQL Server数据库,并执行查询操作来检索员工信息,包括加载数据库驱动、建立连接、创建SQL查询、处理结果集以及关闭数据库资源的完整示例代码。
连接数据库实现查询员工信息
|
6月前
|
JSON 前端开发 测试技术
Javaweb之SpringBootWeb案例员工管理之新增员工的详细解析
Javaweb之SpringBootWeb案例员工管理之新增员工的详细解析
65 0
|
6月前
|
SQL JSON 前端开发
Javaweb之SpringBootWeb案例员工管理之删除员工的详细解析
Javaweb之SpringBootWeb案例员工管理之删除员工的详细解析
49 0
部门员工信息的录入代码实现
部门员工信息的录入代码实现
|
前端开发 JavaScript
人事管理项目-部门数据编辑
人事管理项目-部门数据编辑
|
前端开发 数据库
人事管理项目-员工资料模块
人事管理项目-员工资料模块
人事管理项目-员工资料模块
人事管理项目-员工资料导出
人事管理项目-员工资料导出
|
XML 监控 前端开发
人事管理项目-部门数据删除
人事管理项目-部门数据删除
|
JSON 前端开发 JavaScript
基于Springboot外卖系统09:员工信息编辑+员工信息保存
那么从上述的分析中,当前实现的编辑功能需要实现两个方法:
136 0