定时任务日志更新
This commit is contained in:
@@ -16,20 +16,25 @@
|
|||||||
package org.nl.modules.quartz.config;
|
package org.nl.modules.quartz.config;
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.nl.modules.quartz.domain.QuartzJob;
|
||||||
import org.nl.modules.quartz.repository.QuartzJobRepository;
|
import org.nl.modules.quartz.repository.QuartzJobRepository;
|
||||||
import org.nl.modules.quartz.utils.QuartzManage;
|
import org.nl.modules.quartz.utils.QuartzManage;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.boot.ApplicationArguments;
|
import org.springframework.boot.ApplicationArguments;
|
||||||
import org.springframework.boot.ApplicationRunner;
|
import org.springframework.boot.ApplicationRunner;
|
||||||
|
import org.springframework.core.annotation.Order;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Zheng Jie
|
* @author Zheng Jie
|
||||||
* @date 2019-01-07
|
* @date 2019-01-07
|
||||||
*/
|
*/
|
||||||
@Component
|
@Component
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
|
@Order(100)
|
||||||
public class JobRunner implements ApplicationRunner {
|
public class JobRunner implements ApplicationRunner {
|
||||||
private static final Logger log = LoggerFactory.getLogger(JobRunner.class);
|
private static final Logger log = LoggerFactory.getLogger(JobRunner.class);
|
||||||
private final QuartzJobRepository quartzJobRepository;
|
private final QuartzJobRepository quartzJobRepository;
|
||||||
@@ -42,9 +47,9 @@ public class JobRunner implements ApplicationRunner {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void run(ApplicationArguments applicationArguments) {
|
public void run(ApplicationArguments applicationArguments) {
|
||||||
/* log.info("--------------------注入定时任务---------------------");
|
log.info("--------------------注入定时任务---------------------");
|
||||||
List<QuartzJob> quartzJobs = quartzJobRepository.findByIsPauseIsFalse();
|
List<QuartzJob> quartzJobs = quartzJobRepository.findByIsPauseIsFalse();
|
||||||
quartzJobs.forEach(quartzManage::addJob);
|
quartzJobs.forEach(quartzManage::addJob);
|
||||||
log.info("--------------------定时任务注入完成---------------------");*/
|
log.info("--------------------定时任务注入完成---------------------");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,8 +31,6 @@ import org.springframework.http.ResponseEntity;
|
|||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -56,20 +54,6 @@ public class QuartzJobController {
|
|||||||
return new ResponseEntity<>(quartzJobService.queryAll(criteria, pageable), HttpStatus.OK);
|
return new ResponseEntity<>(quartzJobService.queryAll(criteria, pageable), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("导出任务数据")
|
|
||||||
@GetMapping(value = "/download")
|
|
||||||
@SaCheckPermission("timing:list")
|
|
||||||
public void download(HttpServletResponse response, JobQueryCriteria criteria) throws IOException {
|
|
||||||
quartzJobService.download(quartzJobService.queryAll(criteria), response);
|
|
||||||
}
|
|
||||||
|
|
||||||
@ApiOperation("导出日志数据")
|
|
||||||
@GetMapping(value = "/logs/download")
|
|
||||||
@SaCheckPermission("timing:list")
|
|
||||||
public void downloadLog(HttpServletResponse response, JobQueryCriteria criteria) throws IOException {
|
|
||||||
quartzJobService.downloadLog(quartzJobService.queryAllLog(criteria), response);
|
|
||||||
}
|
|
||||||
|
|
||||||
@ApiOperation("查询任务执行日志")
|
@ApiOperation("查询任务执行日志")
|
||||||
@GetMapping(value = "/logs")
|
@GetMapping(value = "/logs")
|
||||||
@SaCheckPermission("timing:list")
|
@SaCheckPermission("timing:list")
|
||||||
|
|||||||
@@ -20,8 +20,6 @@ import org.nl.modules.quartz.domain.QuartzLog;
|
|||||||
import org.nl.modules.quartz.service.dto.JobQueryCriteria;
|
import org.nl.modules.quartz.service.dto.JobQueryCriteria;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@@ -33,6 +31,7 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页查询
|
* 分页查询
|
||||||
|
*
|
||||||
* @param criteria 条件
|
* @param criteria 条件
|
||||||
* @param pageable 分页参数
|
* @param pageable 分页参数
|
||||||
* @return /
|
* @return /
|
||||||
@@ -41,6 +40,7 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询全部
|
* 查询全部
|
||||||
|
*
|
||||||
* @param criteria 条件
|
* @param criteria 条件
|
||||||
* @return /
|
* @return /
|
||||||
*/
|
*/
|
||||||
@@ -48,6 +48,7 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页查询日志
|
* 分页查询日志
|
||||||
|
*
|
||||||
* @param criteria 条件
|
* @param criteria 条件
|
||||||
* @param pageable 分页参数
|
* @param pageable 分页参数
|
||||||
* @return /
|
* @return /
|
||||||
@@ -56,6 +57,7 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询全部
|
* 查询全部
|
||||||
|
*
|
||||||
* @param criteria 条件
|
* @param criteria 条件
|
||||||
* @return /
|
* @return /
|
||||||
*/
|
*/
|
||||||
@@ -63,24 +65,28 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建
|
* 创建
|
||||||
|
*
|
||||||
* @param resources /
|
* @param resources /
|
||||||
*/
|
*/
|
||||||
void create(QuartzJob resources);
|
void create(QuartzJob resources);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑
|
* 编辑
|
||||||
|
*
|
||||||
* @param resources /
|
* @param resources /
|
||||||
*/
|
*/
|
||||||
void update(QuartzJob resources);
|
void update(QuartzJob resources);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除任务
|
* 删除任务
|
||||||
|
*
|
||||||
* @param ids /
|
* @param ids /
|
||||||
*/
|
*/
|
||||||
void delete(Set<Long> ids);
|
void delete(Set<Long> ids);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据ID查询
|
* 根据ID查询
|
||||||
|
*
|
||||||
* @param id ID
|
* @param id ID
|
||||||
* @return /
|
* @return /
|
||||||
*/
|
*/
|
||||||
@@ -88,34 +94,22 @@ public interface QuartzJobService {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 更改定时任务状态
|
* 更改定时任务状态
|
||||||
|
*
|
||||||
* @param quartzJob /
|
* @param quartzJob /
|
||||||
*/
|
*/
|
||||||
void updateIsPause(QuartzJob quartzJob);
|
void updateIsPause(QuartzJob quartzJob);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 立即执行定时任务
|
* 立即执行定时任务
|
||||||
|
*
|
||||||
* @param quartzJob /
|
* @param quartzJob /
|
||||||
*/
|
*/
|
||||||
void execution(QuartzJob quartzJob);
|
void execution(QuartzJob quartzJob);
|
||||||
|
|
||||||
/**
|
|
||||||
* 导出定时任务
|
|
||||||
* @param queryAll 待导出的数据
|
|
||||||
* @param response /
|
|
||||||
* @throws IOException /
|
|
||||||
*/
|
|
||||||
void download(List<QuartzJob> queryAll, HttpServletResponse response) throws IOException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 导出定时任务日志
|
|
||||||
* @param queryAllLog 待导出的数据
|
|
||||||
* @param response /
|
|
||||||
* @throws IOException /
|
|
||||||
*/
|
|
||||||
void downloadLog(List<QuartzLog> queryAllLog, HttpServletResponse response) throws IOException;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 执行子任务
|
* 执行子任务
|
||||||
|
*
|
||||||
* @param tasks /
|
* @param tasks /
|
||||||
* @throws InterruptedException /
|
* @throws InterruptedException /
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -19,7 +19,10 @@ import cn.hutool.core.util.IdUtil;
|
|||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.nl.modules.common.exception.BadRequestException;
|
import org.nl.modules.common.exception.BadRequestException;
|
||||||
import org.nl.modules.common.utils.*;
|
import org.nl.modules.common.utils.PageUtil;
|
||||||
|
import org.nl.modules.common.utils.QueryHelp;
|
||||||
|
import org.nl.modules.common.utils.RedisUtils;
|
||||||
|
import org.nl.modules.common.utils.ValidationUtil;
|
||||||
import org.nl.modules.quartz.domain.QuartzJob;
|
import org.nl.modules.quartz.domain.QuartzJob;
|
||||||
import org.nl.modules.quartz.domain.QuartzLog;
|
import org.nl.modules.quartz.domain.QuartzLog;
|
||||||
import org.nl.modules.quartz.repository.QuartzJobRepository;
|
import org.nl.modules.quartz.repository.QuartzJobRepository;
|
||||||
@@ -33,9 +36,9 @@ import org.springframework.scheduling.annotation.Async;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import java.util.Arrays;
|
||||||
import java.io.IOException;
|
import java.util.List;
|
||||||
import java.util.*;
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Zheng Jie
|
* @author Zheng Jie
|
||||||
@@ -155,40 +158,4 @@ public class QuartzJobServiceImpl implements QuartzJobService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void download(List<QuartzJob> quartzJobs, HttpServletResponse response) throws IOException {
|
|
||||||
List<Map<String, Object>> list = new ArrayList<>();
|
|
||||||
for (QuartzJob quartzJob : quartzJobs) {
|
|
||||||
Map<String,Object> map = new LinkedHashMap<>();
|
|
||||||
map.put("任务名称", quartzJob.getJobName());
|
|
||||||
map.put("Bean名称", quartzJob.getBeanName());
|
|
||||||
map.put("执行方法", quartzJob.getMethodName());
|
|
||||||
map.put("参数", quartzJob.getParams());
|
|
||||||
map.put("表达式", quartzJob.getCronExpression());
|
|
||||||
map.put("状态", quartzJob.getIsPause() ? "暂停中" : "运行中");
|
|
||||||
map.put("描述", quartzJob.getDescription());
|
|
||||||
map.put("创建日期", quartzJob.getCreateTime());
|
|
||||||
list.add(map);
|
|
||||||
}
|
|
||||||
FileUtil.downloadExcel(list, response);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void downloadLog(List<QuartzLog> queryAllLog, HttpServletResponse response) throws IOException {
|
|
||||||
List<Map<String, Object>> list = new ArrayList<>();
|
|
||||||
for (QuartzLog quartzLog : queryAllLog) {
|
|
||||||
Map<String,Object> map = new LinkedHashMap<>();
|
|
||||||
map.put("任务名称", quartzLog.getJobName());
|
|
||||||
map.put("Bean名称", quartzLog.getBeanName());
|
|
||||||
map.put("执行方法", quartzLog.getMethodName());
|
|
||||||
map.put("参数", quartzLog.getParams());
|
|
||||||
map.put("表达式", quartzLog.getCronExpression());
|
|
||||||
map.put("异常详情", quartzLog.getExceptionDetail());
|
|
||||||
map.put("耗时/毫秒", quartzLog.getTime());
|
|
||||||
map.put("状态", quartzLog.getIsSuccess() ? "成功" : "失败");
|
|
||||||
map.put("创建日期", quartzLog.getCreateTime());
|
|
||||||
list.add(map);
|
|
||||||
}
|
|
||||||
FileUtil.downloadExcel(list, response);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,12 +0,0 @@
|
|||||||
package org.nl.modules.quartz.task;
|
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
@Slf4j
|
|
||||||
@Component
|
|
||||||
public class TestSch {
|
|
||||||
public void run() {
|
|
||||||
log.info("run 执行成功1");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -16,6 +16,7 @@
|
|||||||
package org.nl.modules.quartz.task;
|
package org.nl.modules.quartz.task;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.nl.modules.wql.core.bean.WQLObject;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -28,6 +29,7 @@ import org.springframework.stereotype.Component;
|
|||||||
public class TestTask {
|
public class TestTask {
|
||||||
|
|
||||||
public void run(){
|
public void run(){
|
||||||
|
|
||||||
log.info("run 执行成功");
|
log.info("run 执行成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,6 +38,7 @@ public class TestTask {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void run2(){
|
public void run2(){
|
||||||
|
WQLObject.getWQLObject("sys_param");
|
||||||
log.info("run2 执行成功");
|
log.info("run2 执行成功");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +0,0 @@
|
|||||||
package org.nl.modules.security.rest;
|
|
||||||
|
|
||||||
import cn.dev33.satoken.secure.SaSecureUtil;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author lyd
|
|
||||||
* @description 密码加密测试
|
|
||||||
*/
|
|
||||||
public class test {
|
|
||||||
public static void main(String[] args) {
|
|
||||||
String salt = SaSecureUtil.md5BySalt("123456", "salt");
|
|
||||||
System.out.println(salt);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -98,12 +98,11 @@ public class ParamServiceImpl implements ParamService {
|
|||||||
ParamDto entity = this.findById(dto.getId());
|
ParamDto entity = this.findById(dto.getId());
|
||||||
if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!");
|
if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!");
|
||||||
|
|
||||||
CurrentUser currentUsername = SecurityUtils.getCurrentUser();
|
|
||||||
String now = DateUtil.now();
|
String now = DateUtil.now();
|
||||||
|
|
||||||
dto.setUpdate_optid(StpUtil.getLoginIdAsLong());
|
dto.setUpdate_optid(StpUtil.getLoginIdAsLong());
|
||||||
dto.setUpdate_time(now);
|
dto.setUpdate_time(now);
|
||||||
dto.setUpdate_optname(currentUsername.getNickName());
|
dto.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
||||||
|
|
||||||
WQLObject wo = WQLObject.getWQLObject("sys_param");
|
WQLObject wo = WQLObject.getWQLObject("sys_param");
|
||||||
JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto));
|
JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto));
|
||||||
|
|||||||
@@ -2,43 +2,27 @@ package org.nl.start;
|
|||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nl.modules.quartz.domain.QuartzJob;
|
|
||||||
import org.nl.modules.quartz.repository.QuartzJobRepository;
|
|
||||||
import org.nl.modules.quartz.utils.QuartzManage;
|
|
||||||
import org.nl.modules.wql.WQLCore;
|
import org.nl.modules.wql.WQLCore;
|
||||||
import org.springframework.boot.ApplicationArguments;
|
import org.springframework.boot.ApplicationArguments;
|
||||||
import org.springframework.boot.ApplicationRunner;
|
import org.springframework.boot.ApplicationRunner;
|
||||||
|
import org.springframework.core.annotation.Order;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 随项目启动模块
|
* 随项目启动模块
|
||||||
*/
|
*/
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
|
@Order(0)
|
||||||
public class Init implements ApplicationRunner {
|
public class Init implements ApplicationRunner {
|
||||||
private final QuartzJobRepository quartzJobRepository;
|
|
||||||
private final QuartzManage quartzManage;
|
|
||||||
|
|
||||||
|
|
||||||
private void init() throws Exception {
|
private void init() throws Exception {
|
||||||
//初始化WQL
|
//初始化WQL
|
||||||
initWql();
|
initWql();
|
||||||
//初始化任务调度
|
|
||||||
initQuartz();
|
|
||||||
System.out.println("项目启动成功!");
|
System.out.println("项目启动成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initQuartz() {
|
|
||||||
log.info("--------------------注入定时任务---------------------");
|
|
||||||
List<QuartzJob> quartzJobs = quartzJobRepository.findByIsPauseIsFalse();
|
|
||||||
quartzJobs.forEach(quartzManage::addJob);
|
|
||||||
log.info("--------------------定时任务注入完成---------------------");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void initWql() throws Exception {
|
private void initWql() throws Exception {
|
||||||
WQLCore.ROOT = "org.nl";
|
WQLCore.ROOT = "org.nl";
|
||||||
WQLCore.init();
|
WQLCore.init();
|
||||||
|
|||||||
@@ -22,12 +22,6 @@
|
|||||||
<el-form-item label="值" prop="value">
|
<el-form-item label="值" prop="value">
|
||||||
<el-input v-model="form.value" style="width: 370px;" />
|
<el-input v-model="form.value" style="width: 370px;" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="启用" prop="is_active">
|
|
||||||
<el-radio-group v-model="form.is_active" size="mini">
|
|
||||||
<el-radio-button label="1">是</el-radio-button>
|
|
||||||
<el-radio-button label="0">否</el-radio-button>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="备注" prop="description">
|
<el-form-item label="备注" prop="description">
|
||||||
<el-input v-model="form.remark" style="width: 380px;" rows="5" type="textarea" />
|
<el-input v-model="form.remark" style="width: 380px;" rows="5" type="textarea" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -49,16 +43,10 @@
|
|||||||
<el-table-column type="selection" width="55" />
|
<el-table-column type="selection" width="55" />
|
||||||
<el-table-column v-if="false" prop="id" label="id" />
|
<el-table-column v-if="false" prop="id" label="id" />
|
||||||
<el-table-column prop="code" label="编码" />
|
<el-table-column prop="code" label="编码" />
|
||||||
<el-table-column prop="name" label="名称" />
|
<el-table-column prop="name" label="名称" min-width="120" show-overflow-tooltip/>
|
||||||
<el-table-column prop="value" label="值" width="270" />
|
<el-table-column prop="value" label="值" min-width="270" show-overflow-tooltip/>
|
||||||
<el-table-column prop="remark" label="备注" />
|
<el-table-column prop="remark" label="备注" />
|
||||||
<el-table-column prop="is_active" label="启用" width="75px">
|
<el-table-column prop="update_optname" label="修改者" />
|
||||||
<template slot-scope="scope">
|
|
||||||
<span v-if="scope.row.is_active==0">否</span>
|
|
||||||
<span v-else>是</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="create_name" label="创建者" />
|
|
||||||
<el-table-column v-permission="['admin','param:edit','param:del']" label="操作" width="150px" align="center">
|
<el-table-column v-permission="['admin','param:edit','param:del']" label="操作" width="150px" align="center">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<udOperation
|
<udOperation
|
||||||
|
|||||||
@@ -80,7 +80,7 @@
|
|||||||
<el-table ref="table" v-loading="crud.loading" :data="crud.data" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
|
<el-table ref="table" v-loading="crud.loading" :data="crud.data" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
|
||||||
<el-table-column :selectable="checkboxT" type="selection" width="55" />
|
<el-table-column :selectable="checkboxT" type="selection" width="55" />
|
||||||
<el-table-column show-overflow-tooltip prop="id" label="任务ID" />
|
<el-table-column show-overflow-tooltip prop="id" label="任务ID" />
|
||||||
<el-table-column show-overflow-tooltip prop="jobName" label="任务名称" />
|
<el-table-column show-overflow-tooltip prop="jobName" label="任务名称" min-width="120"/>
|
||||||
<el-table-column show-overflow-tooltip prop="beanName" label="Bean名称" />
|
<el-table-column show-overflow-tooltip prop="beanName" label="Bean名称" />
|
||||||
<el-table-column show-overflow-tooltip prop="methodName" label="执行方法" />
|
<el-table-column show-overflow-tooltip prop="methodName" label="执行方法" />
|
||||||
<el-table-column show-overflow-tooltip prop="params" label="参数" />
|
<el-table-column show-overflow-tooltip prop="params" label="参数" />
|
||||||
|
|||||||
@@ -8,17 +8,6 @@
|
|||||||
<el-option v-for="item in enabledTypeOptions" :key="item.key" :label="item.display_name" :value="item.key" />
|
<el-option v-for="item in enabledTypeOptions" :key="item.key" :label="item.display_name" :value="item.key" />
|
||||||
</el-select>
|
</el-select>
|
||||||
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="toQuery">搜索</el-button>
|
<el-button class="filter-item" size="mini" type="success" icon="el-icon-search" @click="toQuery">搜索</el-button>
|
||||||
<!-- 导出 -->
|
|
||||||
<div style="display: inline-block;">
|
|
||||||
<el-button
|
|
||||||
:loading="downloadLoading"
|
|
||||||
size="mini"
|
|
||||||
class="filter-item"
|
|
||||||
type="warning"
|
|
||||||
icon="el-icon-download"
|
|
||||||
@click="downloadMethod"
|
|
||||||
>导出</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<!--表格渲染-->
|
<!--表格渲染-->
|
||||||
<el-table v-loading="loading" :data="data" style="width: 100%;margin-top: -10px;">
|
<el-table v-loading="loading" :data="data" style="width: 100%;margin-top: -10px;">
|
||||||
|
|||||||
Reference in New Issue
Block a user