当前位置: 首页 > news >正文

SpringBoot 微人事 职称管理模块(十三)

职称管理前端页面设计

在职称管理页面添加输入框

在这里插入图片描述

  export default {name: "JobLevelMarna",data(){return{Jl:{name:""}}}}

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

添加一个下拉框

在这里插入图片描述
v-model的值为当前被选中的el-option的 value 属性值
在这里插入图片描述

  <el-select v-model="Jl.titlelevel" placeholder="职称等级...." size="small" style="margin-left: 10px;margin-right: 10px"><el-optionv-for="item in titlelevels":key="item":label="item":value="item"></el-option></el-select>

在这里插入图片描述

  data(){return{Jl:{name:"",titlelevel:"",},titlelevels:['正高级','副高级','中级','初级','员级',]}}

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

添加按钮

在这里插入图片描述

            <el-button icon="el-icon-plus" size="small" type="primary">添加</el-button>

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

增加数据表格

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

            </el-option></el-select><el-button icon="el-icon-plus" size="small" type="primary">添加</el-button></div><div><el-table:data="jls"stripestyle="width: 80%"><el-table-columnprop="id"label="编号"width="180"></el-table-column><el-table-columnprop="name"label="职称名称"width="180"></el-table-column><el-table-columnprop="titlelevel"label="职称级别"></el-table-column><el-table-columnprop="createData"label="创建时间"></el-table-column><el-table-columnlabel="操作"><template solt="scope"-><el-button >编辑</el-button><el-button type="deng">修改</el-button></template></el-table-column></el-table>

添加一个删除,修改按钮

在这里插入图片描述

职位管理后端接口设计

创建一个JobLevelConroller类

JobLevelConroller

在这里插入图片描述

@RestController
@RequestMapping("/system/basic/joblevel")
public class JobLevelController {@AutowiredJobLevelService jobLevelService;@GetMapping("/")public List<JObLevel> getAllJobLevels(){return jobLevelService.getAllJobLevels();}@PostMapping("/")public RespBean addJobLevels(@RequestBody JObLevel jObLevel){if(jobLevelService.addJobLevels(jObLevel)==1){return RespBean.ok("添加成功") ;}return RespBean.err("添加失败");}@PutMapping("/")public RespBean updateJobLevels(@RequestBody JObLevel jObLevel){if(jobLevelService.updateJobLevels(jObLevel)==1){return RespBean.ok("更新成功") ;}return RespBean.err("更新失败");}@DeleteMapping("/{id}")public RespBean deleteJobLevelById(@PathVariable Integer id){if(jobLevelService.deleteJobLevelById(id)==1){return RespBean.ok("删除成功") ;}return RespBean.err("删除失败");}}

JobLevelService

在这里插入图片描述

@Service
public class JobLevelService {@AutowiredJObLevelMapper jObLevelMapper;public List<JObLevel> getAllJobLevels() {return jObLevelMapper.getAllJobLevels();}public int addJobLevels(JObLevel jObLevel) {jObLevel.setCreatedate(new Date());jObLevel.setEnabled(true);return jObLevelMapper.insert(jObLevel);}public int updateJobLevels(JObLevel jObLevel) {return jObLevelMapper.updateByPrimaryKeySelective(jObLevel);}public int deleteJobLevelById(Integer id) {return jObLevelMapper.deleteByPrimaryKey(id);}}

JoblevelMapper.xml

添加个查询所有Joblevel,其它接口用自动生成的mapper
在这里插入图片描述

  <select id="getAllJobLevels" resultMap="BaseResultMap">select * from  joblevel;</select>

用PostMan测试看看接口是否用问题

前后端接口对接

展示数据库数据

在这里插入图片描述
查询所有数据连接后端接口
在这里插入图片描述

  methods:{JobLevelAll(){this.getRequest("/system/basic/joblevel/").then(resp=>{this.jls=resp;})}},mounted(){this.JobLevelAll()}}

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

添加操作数据连接后端

添加按钮事件
在这里插入图片描述
输入需要添加的数据
在这里插入图片描述

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

添加事件函数进行
在这里插入图片描述

  addLevel(){this.postRequest("/system/basic/joblevel/",this.Jl).then(resp=>{if (resp){this.JobLevelAll();this.Jl.name="";this.Jl.titlelevel=""}})},

删除操作

在这里插入图片描述

                <el-table-columnlabel="操作"><template slot-scope="scope"><el-button type="" size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button><el-button type="danger" size="small" @click="handleDelete(scope.$index, scope.row)">删除</el-button></template></el-table-column>

在这里插入图片描述

   handleDelete(index,data){this.deleteRequest("/system/basic/joblevel/"+data.id).then(resp=>{if (resp){this.JobLevelAll();}})},

修改操作

添加对话框
在这里插入图片描述
对话框添加输入框和选择框
在这里插入图片描述

  <el-dialogtitle="修改职称":visible.sync="dialogVisible"width="30%":before-close="handleClose"><div><div><el-tag>职称名字</el-tag><el-input v-model="toUpdateJobLevel.name" style="width: 201px; margin-left: 8px" size="small"></el-input></div><div style="margin-top: 15px"><el-tag>职称等级</el-tag><el-select size="small" style="margin-left: 8px" v-model="toUpdateJobLevel.titlelevel" placeholder="请选择"><el-optionv-for="item in titlelevels":key="item":label="item":value="item"></el-option></el-select></div></div><span slot="footer" class="dialog-footer"><el-button @click="dialogVisible = false">取 消</el-button><el-button type="primary" @click=updateJobLevel>确 定</el-button></span></el-dialog>

添加点击事件
在这里插入图片描述

                <template slot-scope="scope"><el-button type="" size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button><el-button type="danger" size="small" @click="handleDelete(scope.$index, scope.row)">删除</el-button></template>

当点击编辑的时候应该弹出对话框 ,添加这个dialogVisible 变量,默认是关闭的
在这里插入图片描述
点击编辑弹框,给编辑点击事件的函数里dialogVisible 变量
赋值true 弹框 在这里插入图片描述
定义toUpdateJobLevel保存 Jl 原数据
在这里插入图片描述
点击编辑拷贝原来数据到toUpdateJobLevel
在这里插入图片描述
输入框和选择框输入数据,确认触发点击事件
在这里插入图片描述
在这里插入图片描述

 updateJobLevel(){this.putRequest("/system/basic/joblevel/",this.toUpdateJobLevel).then(resp=>{if(resp){this.JobLevelAll();this.dialogVisible=false}})},

这样做的原因是因为要是直接用那个Jl数据会出现一些问题:会出现表格和弹框数据输入,表格也会变,然后就是弹框数据,取消的时候数据还是弹框之前输入取消的数据,导致表格的数据需要刷新才能恢复之前的数据。

具体执行流程:    
用户点击编辑弹修出改框
把原来数据拷贝到toUpdateJobLevel
如果用户点击确认,把数据传给服务器,重新查询数据展示到页面
否则用户点击了取消,展示还是原来的数据

启用标签和按钮

在这里插入图片描述
在这里插入图片描述
在表格里进行添加是否启用的标签
在这里插入图片描述

       <el-table-columnlabel="是否启用"><template slot-scope="scope"><el-tag type="success" v-if="scope.row.enabled">已启用</el-tag><el-tag type="danger" v-else>未启用</el-tag></template></el-table-column>

在变量对象里进行添加字段
在这里插入图片描述
对话框里进行添加
在这里插入图片描述

 <div style="margin-top: 8px"><el-tag>是否启用</el-tag><el-switchstyle="margin-left: 8px"v-model="toUpdateJobLevel.enabled"active-text="启用"inactive-text="禁用"></el-switch></div>

职称批量删除实现

后端代码实现

JobLevelController

在这里插入图片描述

 @DeleteMapping("/")public RespBean deleteJobLevels(Integer[] ids){if(jobLevelService.deleteJobLevels(ids)==ids.length){return RespBean.ok("删除成功") ;}return RespBean.err("删除失败");}
JobLevelService
    public int deleteJobLevels(Integer[] ids) {return jObLevelMapper.deleteJobLevels(ids);}
JObLevelMapper
    int deleteJobLevels( @Param("ids") Integer[] ids);

JobLevelMapper,xml

  <delete id="deleteJobLevels" >delete from joblevelwhere id in<foreach collection="ids" item="id" separator="," open="(" close=")">#{id}</foreach>;</delete>

批量删除前后端对接

添加一个批量删除按钮

添加一个点击事件
在这里插入图片描述

添加多选框

selection-change 当选择项发生变化时会触发该事件
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/137818.html

相关文章:

  • 动态规划之0-1背包问题
  • 为什么需要单元测试?
  • 《合成孔径雷达成像算法与实现》Figure3.13——匹配滤波器的三种实现方式
  • Android企业项目开发实训室建设方案
  • 11_Redis经典五大类型源码及底层实现
  • AWS WAF实战、优势对比和缺陷解决
  • 13,【设计模式】代理
  • 基于IDEA使用maven创建hibernate项目
  • 使用Termux在安卓手机上搭建Hexo博客网站,并发布到公网访问
  • 宝塔 杀死 java服务 netstat -tlnp | grep :7003 kill 2205698
  • Python3 数据类型转换
  • Cookie 和 Session 的工作流程
  • AutoSAR配置与实践(基础篇)3.6 BSW的WatchDog功能
  • 运维高级第6次作业
  • MongoDB使用GridFS存储大数据(Java)
  • 内网穿透实战应用-windwos10系统搭建我的世界服务器,内网穿透实现联机游戏Minecraft
  • pytorch基于ray和accelerate实现多GPU数据并行的模型加速训练
  • [蓝帽杯 2022 初赛]domainhacker
  • 在 Pytorch 中使用 TensorBoard
  • Grafana Dashboard 备份方案
  • opencv-疲劳检测-眨眼检测
  • 2023-08-24力扣每日一题
  • 蚂蚁数科持续发力PaaS领域,SOFAStack布局全栈软件供应链安全产品
  • Java后端开发面试题——消息中间篇
  • C++ Windows API IsDebuggerPresent的作用
  • 【JVM 内存结构 | 程序计数器】
  • 华为云Stack的学习(一)
  • 人类反馈强化学习RLHF;微软应用商店推出AI摘要功能
  • day1:前端缓存问题
  • 学习网络编程No.4【socket编程实战】