员工资料导入

news2024/11/26 19:26:21

人事管理项目-员工资料导入

    • 后端接口实现
    • 前端实现

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

后端接口实现

后端主要是获取前端上传文件的流,然后进行解析,代码如下:在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码解释:
• 首先根据上传文件的流获取一个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节导出的用户数据进行导入,如图在这里插入图片描述

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

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

相关文章

Springboot实验二(用配置文件的方式整合Mybatis)仅供参考!

&#xff08;1)articleList.html 效果如下: <!DOCTYPE html> <html lang"en" xmlns:th"http://www.thymeleaf.org/"> <head> <meta charset"UTF-8"> <title>article 列表</title> </head> <body…

数论与组合数学 期末总结(未完

自然数的基本性质 数学归纳法(Principle of Mathematical Induction) n n 0 nn_{0} nn0​时成立&#xff0c;且 n k nk nk成立 ⇒ n k 1 \Rightarrow nk1 ⇒nk1成立&#xff0c;则定理对 n ≥ n 0 n\ge n_{0} n≥n0​成立良序定理(Well Ordering Principle) 每个非空集合…

网络编程 lesson7 广播组播和本地通信

目录 广播 什么是广播&#xff1f;&#xff08;了解&#xff09; 广播发送流程 广播接收流程 组播 什么是组播&#xff1f; 组播地址 组播结构体 组播发送流程 组播接收 本地套接字通信 什么是本地套接字通信&#xff1f; 特性 核心代码 程序实例 服务端 客户…

SpringCloud源码解析-gatewayopenFeign

SpringCloud高级应用-源码解析 1. gateway 源码解析1.1 自动装配1.2 核心装配1.2.1 GatewayClassPathWarningAutoConfiguration1.2.2 GatewayAutoConfiguration1.2.3 GatewayLoadBalancerClientAutoConfiguration1.2.4 GatewayRedisAutoConfiguration 1.3 Gateway 工作机制1.3.…

分布式任务调度XXL-JOB

XXL-JOB 分布式任务调度平台特点 职责分离&#xff0c;任务调度&#xff0c;任务执行解耦 执行一致性&#xff0c;任务执行不会多次重复执行 丰富的路由策略&#xff08;指定那个执行实例执行&#xff09; 阻塞处理 &#xff08;触发的任务&#xff0c;上一次没有执行完&am…

Android Studio类ChatGpt的免费AI编程助手

ChatGpt大火&#xff0c;带动了AI工具的发展&#xff0c;介绍两款免费的AI编程助手&#xff0c;一款用于输入关键字自动输出代码&#xff0c;一款则是自动补全提示&#xff0e; 可支持大部分代码编辑器&#xff0c;这里主要介绍Android Studio上安装使用&#xff0e; Bito 支…

来阿里面试,问我未来3-5年规划,我给领导画个大饼...

在面试的过程中是不是经常被面试官问未来几年的职业规划?你会答吗&#xff1f;是不是经常脑袋里一片空白&#xff0c;未来规划&#xff1f;我只是想赚更多的钱啊&#xff0c;哈哈哈&#xff0c;今天我来教大家&#xff0c;如何给面试官画一个大饼&#xff0c;让他吃的不亦乐乎…

c++day4 ——homework

1.思维导图 2. 整理类中特殊成员函数&#xff1a;构造函数&#xff0c;析构函数&#xff0c;拷贝构造函数&#xff0c;拷贝赋值函数的使用和实现 特殊成员函数的使用和实现&#xff1a; ① 构造函数 功能&#xff1a;当使用类实例化对象时&#xff0c;给类对象初始化空间以及初…

基于RK3399+FPGA的地面测试台多参数数据记录仪方案(一)硬件设计

地面测试台属于某型号数据记录仪的配套测试设备&#xff0c;主要工作包括&#xff1a;飞行前对记录 仪的功能检查&#xff0c;测试其工作状态和稳定性&#xff1b;实验结束后对已存储到记录仪中的数据进行 回读和进一步处理&#xff0c;通过数据分析得出导弹各项参数在飞行试…

苹果的首款“头显设备”Vision Pro在短期内必将被Meta Quest超越

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 总结&#xff1a; &#xff08;1&#xff09;Vision Pro是苹果在今年的WWDC2023开发者大会上发布的一款结合了增强现实(AR)和虚拟现实(VR)的“头显设备”&#xff0c;Vision Pro 的最终售价高达 3499 美元&#xff08;约合…

观察级水下机器人使用系列之二多普勒速度记录仪(DVL)

本文主要讲述观察级水下机器人所使用的多普勒速度记录仪器&#xff08;DVL&#xff09;&#xff0c;见下图。多普勒测速技术自1960年开始研究&#xff0c;1980年开始实现商业化&#xff0c;80年代中后期&#xff0c;窄带多普勒测速技术研究已日趋成熟&#xff0c;90年代以后&am…

初学者应该怎么学git-上

初学者应该怎么学git-上 Git 下载&安装 官网 地址: https://git-scm.com/ 下载版本: Git-2.33.0.2-64-bit.exe 下载慢&#xff0c;可以到镜像下载: http://npm.taobao.org/mirrors/git-for-windows/ 卸载 说明&#xff1a;如果安装过&#xff0c;可以卸载和老师版本…

详解Java中static的使用及其注意事项

1.可以用来修饰的结构&#xff1a; 主要用来修饰类的内部结构 属性、方法、代码块、内部类 2.static修饰属性&#xff1a;静态变量&#xff08;或类变量&#xff09; ​ 2.1 属性&#xff0c;是否使用static修饰&#xff0c;又分为&#xff1a;静态属性 vs 非静态属性(实例…

Yolov5更换上采样方式( 最近邻 / 双线性 / 双立方 / 三线性 / 转置卷积)

原文地址: https://www.iotword.com/3138.html 1. 常用上采样方式介绍 1. 1 最近邻插值(Nearest neighbor interpolation) >>> input torch.arange(1, 5, dtypetorch.float32).view(1, 1, 2, 2) >>> input tensor([[[[ 1., 2.],[ 3., 4.]]]])>>&g…

【goframe】(4):使用goframe 接入grpc服务,非常的方便,可以简单的构建和生成服务代码,并且启动方法也特别简单,使用代码本地调用成功

目录 前言1&#xff0c;关于grpc微服务2&#xff0c;修改生成代码3&#xff0c;相关的goframe的grpc配置4&#xff0c;总结 前言 本文的原文连接是: https://blog.csdn.net/freewebsys/article/details/108971807 未经博主允许不得转载。 博主CSDN地址是&#xff1a;https://b…

3.变量|Java学习笔记

文章目录 数据类型整型的类型浮点型的类型字符类型boolean类型 基本数据类型转换自动类型转换强制类型转换 基本数据类型和String类型的转换 变量 变量名 值 数据类型 https://www.matools.com/# 数据类型 整型的类型 浮点型的类型 关于浮点数在机器中存放形式的简单说明&…

Ibatis与Mybatis的区别—侧重于Ibatis

目录 一、什么是Ibatis&#xff1f; 1、iBatis是一款轻量级的持久化框架 2、iBatis最大的特点是将SQL语句与Java代码分离 3、iBatis具有以下几个关键组成部分&#xff1a; 二、Ibatis与Mybatis的区别 1、基本信息不同 2、开发时间不同 3、配置方法不同 三、Ibatis与My…

HotSpot虚拟机垃圾回收算法及收集器

目录 一、对象引用 二、堆区和方法区回收 1. 堆区回收 2. 方法区回收 三、垃圾回收算法 1. 算法总结 2. 算法相关细节 四、垃圾收集器 1. 新生代收集器 2. 老年代收集器 3. 混合式收集器G1 4. 低延迟收集器 五、参考资料 一、对象引用 判定对象是否存活和引用离…

Unix/Linux编程:Unix domain socket

〇、前言 socket 是一种 IPC &#xff08;Inter-Process Communication&#xff0c;进程间通信&#xff09;方法&#xff0c;它允许位于同一主机&#xff08;计算机&#xff09;或使用网络连接起来的不同主机上的应用程序之间交换数据。通过使用Socket&#xff0c;开发人员可以…

在VSCode中使用LaTex,语法检测插件grammarly

整个文章分为以下几个内容&#xff0c;打 * 的是必须要安装的 LaTex 安装*VSCode 安装*在 VSCode 中配置 LaTexGrammarly语法检测插件 LaTex 安装* latex的下载安装可参考&#xff1a;LaTex&#xff08;2021&#xff09;安装教程 VSCode 安装* VSCode下载&#xff1a;VSCo…