zoukankan      html  css  js  c++  java
  • 批量删除 set集合方式

    一、前端代码

     1  <el-table
     2         ref="multipleTable"
     3         :data="tableData"
     4         stripe
     5         style=" 99%;margin-bottom: 10px;"
     6         border
     7         :height="$publicjs.tableHeight"
     8         @selection-change="changeCheckBoxValue"
     9       >
    10         <el-table-column type="selection" width="55" />
    11         <el-table-column type="index" label="序号" width="60px" />
    12         <el-table-column prop="jobName" label="任务名称" />
    13         <el-table-column show-overflow-tooltip prop="beanName" label="Bean名称" width="260px" />
    14         <el-table-column show-overflow-tooltip prop="methodName" label="执行方法" />
    15         <el-table-column prop="jarName" label="jar包名称" />
    16         <el-table-column show-overflow-tooltip prop="cronExpression" label="cron表达式" />
    17         <el-table-column label="异常详情" width="100px">
    18           <template slot-scope="scope">
    19             <el-button v-show="scope.row.exceptionDetail" size="mini" type="text" @click="info(scope.row.exceptionDetail)">查看详情</el-button>
    20           </template>
    21         </el-table-column>
    22         <el-table-column prop="time" label="耗时(毫秒)" />
    23         <el-table-column prop="isPause" label="状态" width="100px">
    24           <template slot-scope="scope">
    25             <el-tag :type="scope.row.isSuccess ? 'success' : 'warning'">{{ scope.row.isSuccess ? '成功' : '失败' }}</el-tag>
    26           </template>
    27         </el-table-column>
    28         <el-table-column show-overflow-tooltip prop="createTime" :formatter="dateFormatter" label="创建日期" />
    29       </el-table>

    二、前端js方法

     changeCheckBoxValue(val) {
          if(val.length >0){
           val.forEach(element => {
             this.ids.push(element.logId);
           });
    
          }
        },
        // 删除功能
        handleDel() {
          let _this = this;
          // 判断是否选择记录
          if( _this.ids.length <= 0){
              _this.$message({message:'请至少选择一条记录进行删除',type:'warning'});
          }else{
             _this.$confirm("此操作将删除操作日志记录, 是否继续?", "提示", {
              confirmButtonText: "确定",
              cancelButtonText: "取消",
              type: "warning"
            })
            .then(() => {
              delLog(_this.ids).then(res => {
                if (res.code == 200) {
                  _this.$message({
                    message: res.message,
                    type: "success"
                  });
                  _this.currentPage = 1;
                  //更新表格
                  _this.loadList(_this.currentPage, _this.pageCount);
                } else {
                  _this.$message({
                    message: res.message,
                    type: "error"
                  });
                }
              });
            })
            .catch(() => {});
          }
        },

    三、调用后台方法js

    1 // 批量删除执行日志
    2 export function delLog(ids) {
    3   return request({
    4     url: 'api/quartzLog',
    5     method: 'delete',
    6     data: ids
    7   })
    8 }

    四、后台服务端接收前端参数进行数据库操作

     1 @Slf4j
     2 @RestController
     3 @RequiredArgsConstructor
     4 @RequestMapping("/quartzLog")
     5 @Api(tags = "系统:执行日志管理")
     6 public class QuartzLogController {
     7 
     8     private final QuartzLogService quartzLogService;
     9 
    10     @ApiOperation(value = "删除")
    11     @DeleteMapping
    12     public Response<Integer> delete(@RequestBody Set<Long> ids){
    13         int re = quartzLogService.delete(ids);
    14         if (re > 0) {
    15             return new Response<>(ErrorCode.SUCESS_CODE, "删除成功", re);
    16         } else {
    17             return new Response<>(ErrorCode.INTERNAL, "删除失败,未知错误", null);
    18         }
    19     }
    20 }

    五、服务层操作

    1     @Override
    2     public int delete(Set<Long> ids) {
    3         Map<String, Object> map = new HashMap<>();
    4         map.put("ids", ids);
    5         mapper.deletes(map);
    6         return 1;
    7     }

    六、具体方法执行

    1    <!--批量删除-->
    2     <delete id="deletes">
    3         delete FROM sys_quartz_log WHERE log_id in
    4         <foreach item="item" index="index" collection="ids" open="(" separator="," close=")">
    5             #{item}
    6         </foreach>
    7     </delete>
  • 相关阅读:
    Message Flood SDUT 1500
    SDUT1482——二元多项式
    SDUT—2057 模拟题
    Eight(bfs+全排列的哈希函数)
    Pick-up sticks(判断两条线段是否相交)
    poj 1265 Area(pick定理)
    poj 2503 Babelfish(字典树哈希)
    poj 3007 Organize Your Train part II(静态字典树哈希)
    Surprising Strings(map类)
    Strange Way to Express Integers (一般模线性方程组)
  • 原文地址:https://www.cnblogs.com/flyShare/p/15104351.html
Copyright © 2011-2022 走看看