mirror of
https://github.com/dataease/dataease.git
synced 2025-02-24 11:32:57 +08:00
fix: 定时同步接口sql-inject
This commit is contained in:
parent
f2a6166a8d
commit
f5f3214271
@ -8,8 +8,8 @@ import io.dataease.commons.constants.DePermissionType;
|
|||||||
import io.dataease.commons.constants.ResourceAuthLevel;
|
import io.dataease.commons.constants.ResourceAuthLevel;
|
||||||
import io.dataease.commons.utils.PageUtils;
|
import io.dataease.commons.utils.PageUtils;
|
||||||
import io.dataease.commons.utils.Pager;
|
import io.dataease.commons.utils.Pager;
|
||||||
|
import io.dataease.controller.dataset.request.DatasetTaskGridRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
||||||
import io.dataease.controller.sys.base.BaseGridRequest;
|
|
||||||
import io.dataease.dto.dataset.DataSetTaskDTO;
|
import io.dataease.dto.dataset.DataSetTaskDTO;
|
||||||
import io.dataease.plugins.common.base.domain.DatasetTableTask;
|
import io.dataease.plugins.common.base.domain.DatasetTableTask;
|
||||||
import io.dataease.service.dataset.DataSetTableTaskLogService;
|
import io.dataease.service.dataset.DataSetTableTaskLogService;
|
||||||
@ -77,7 +77,7 @@ public class DataSetTableTaskController {
|
|||||||
|
|
||||||
@ApiOperation("分页查询")
|
@ApiOperation("分页查询")
|
||||||
@PostMapping("/pageList/{goPage}/{pageSize}")
|
@PostMapping("/pageList/{goPage}/{pageSize}")
|
||||||
public Pager<List<DataSetTaskDTO>> taskList(@PathVariable int goPage, @PathVariable int pageSize, @RequestBody BaseGridRequest request) {
|
public Pager<List<DataSetTaskDTO>> taskList(@PathVariable int goPage, @PathVariable int pageSize, @RequestBody DatasetTaskGridRequest request) {
|
||||||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||||||
|
|
||||||
Pager<List<DataSetTaskDTO>> listPager = PageUtils.setPageInfo(page, dataSetTableTaskService.taskList4User(request));
|
Pager<List<DataSetTaskDTO>> listPager = PageUtils.setPageInfo(page, dataSetTableTaskService.taskList4User(request));
|
||||||
|
@ -4,16 +4,15 @@ import com.github.pagehelper.Page;
|
|||||||
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageHelper;
|
||||||
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
import com.github.xiaoymin.knife4j.annotations.ApiSupport;
|
||||||
import io.dataease.auth.annotation.DePermission;
|
import io.dataease.auth.annotation.DePermission;
|
||||||
import io.dataease.plugins.common.base.domain.DatasetTableTaskLog;
|
|
||||||
import io.dataease.commons.constants.DePermissionType;
|
import io.dataease.commons.constants.DePermissionType;
|
||||||
import io.dataease.commons.constants.ResourceAuthLevel;
|
import io.dataease.commons.constants.ResourceAuthLevel;
|
||||||
import io.dataease.commons.utils.PageUtils;
|
import io.dataease.commons.utils.PageUtils;
|
||||||
import io.dataease.commons.utils.Pager;
|
import io.dataease.commons.utils.Pager;
|
||||||
import io.dataease.controller.sys.base.BaseGridRequest;
|
import io.dataease.controller.dataset.request.DataSetTaskInstanceGridRequest;
|
||||||
import io.dataease.dto.dataset.DataSetTaskLogDTO;
|
import io.dataease.dto.dataset.DataSetTaskLogDTO;
|
||||||
|
import io.dataease.plugins.common.base.domain.DatasetTableTaskLog;
|
||||||
import io.dataease.service.dataset.DataSetTableTaskLogService;
|
import io.dataease.service.dataset.DataSetTableTaskLogService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiImplicitParam;
|
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@ -41,14 +40,14 @@ public class DataSetTableTaskLogController {
|
|||||||
|
|
||||||
@ApiOperation("分页查询")
|
@ApiOperation("分页查询")
|
||||||
@PostMapping("list/{type}/{goPage}/{pageSize}")
|
@PostMapping("list/{type}/{goPage}/{pageSize}")
|
||||||
public Pager<List<DataSetTaskLogDTO>> list(@RequestBody BaseGridRequest request, @PathVariable String type, @PathVariable int goPage, @PathVariable int pageSize) {
|
public Pager<List<DataSetTaskLogDTO>> list(@RequestBody DataSetTaskInstanceGridRequest request, @PathVariable String type, @PathVariable int goPage, @PathVariable int pageSize) {
|
||||||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||||||
return PageUtils.setPageInfo(page, dataSetTableTaskLogService.listTaskLog(request, type));
|
return PageUtils.setPageInfo(page, dataSetTableTaskLogService.listTaskLog(request, type));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("分页查询")
|
@ApiOperation("分页查询")
|
||||||
@PostMapping("listForDataset/{type}/{goPage}/{pageSize}")
|
@PostMapping("listForDataset/{type}/{goPage}/{pageSize}")
|
||||||
public Pager<List<DataSetTaskLogDTO>> listForDataset(@RequestBody BaseGridRequest request, @PathVariable String type, @PathVariable int goPage, @PathVariable int pageSize) {
|
public Pager<List<DataSetTaskLogDTO>> listForDataset(@RequestBody DataSetTaskInstanceGridRequest request, @PathVariable String type, @PathVariable int goPage, @PathVariable int pageSize) {
|
||||||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||||||
return PageUtils.setPageInfo(page, dataSetTableTaskLogService.listTaskLog(request, type));
|
return PageUtils.setPageInfo(page, dataSetTableTaskLogService.listTaskLog(request, type));
|
||||||
}
|
}
|
||||||
@ -56,7 +55,7 @@ public class DataSetTableTaskLogController {
|
|||||||
|
|
||||||
@ApiOperation("导出同步日志")
|
@ApiOperation("导出同步日志")
|
||||||
@PostMapping("export")
|
@PostMapping("export")
|
||||||
public void export(@RequestBody BaseGridRequest request) throws Exception{
|
public void export(@RequestBody DataSetTaskInstanceGridRequest request) throws Exception {
|
||||||
dataSetTableTaskLogService.exportExcel(request);
|
dataSetTableTaskLogService.exportExcel(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,20 @@
|
|||||||
|
package io.dataease.controller.dataset.request;
|
||||||
|
|
||||||
|
import io.dataease.plugins.common.request.KeywordRequest;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class DataSetTaskInstanceGridRequest extends KeywordRequest {
|
||||||
|
|
||||||
|
private String id;
|
||||||
|
|
||||||
|
private List<String> lastExecStatus;
|
||||||
|
|
||||||
|
private Long[] lastExecTime;
|
||||||
|
|
||||||
|
private List<String> tableId;
|
||||||
|
|
||||||
|
private List<String> excludedIdList;
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package io.dataease.controller.dataset.request;
|
||||||
|
|
||||||
|
import io.dataease.plugins.common.request.KeywordRequest;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class DatasetTaskGridRequest extends KeywordRequest {
|
||||||
|
|
||||||
|
private List<String> rate;
|
||||||
|
|
||||||
|
private List<String> status;
|
||||||
|
|
||||||
|
private List<String> lastExecStatus;
|
||||||
|
|
||||||
|
private List<String> tableId;
|
||||||
|
|
||||||
|
private Long[] lastExecTime;
|
||||||
|
|
||||||
|
private String id;
|
||||||
|
}
|
@ -1,8 +1,9 @@
|
|||||||
package io.dataease.ext;
|
package io.dataease.ext;
|
||||||
|
|
||||||
|
import io.dataease.controller.dataset.request.DataSetTaskInstanceGridRequest;
|
||||||
|
import io.dataease.controller.dataset.request.DatasetTaskGridRequest;
|
||||||
import io.dataease.dto.dataset.DataSetTaskDTO;
|
import io.dataease.dto.dataset.DataSetTaskDTO;
|
||||||
import io.dataease.dto.dataset.DataSetTaskLogDTO;
|
import io.dataease.dto.dataset.DataSetTaskLogDTO;
|
||||||
import io.dataease.ext.query.GridExample;
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
@ -14,15 +15,15 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface ExtDataSetTaskMapper {
|
public interface ExtDataSetTaskMapper {
|
||||||
List<DataSetTaskLogDTO> listTaskLog(GridExample example);
|
List<DataSetTaskLogDTO> listTaskLog(DataSetTaskInstanceGridRequest request);
|
||||||
|
|
||||||
List<DataSetTaskLogDTO> listUserTaskLog(GridExample example);
|
List<DataSetTaskLogDTO> listUserTaskLog(DataSetTaskInstanceGridRequest request);
|
||||||
|
|
||||||
List<DataSetTaskDTO> taskList(GridExample example);
|
List<DataSetTaskDTO> taskList(DatasetTaskGridRequest request);
|
||||||
|
|
||||||
List<DataSetTaskDTO> userTaskList(GridExample example);
|
List<DataSetTaskDTO> userTaskList(DatasetTaskGridRequest request);
|
||||||
|
|
||||||
List<DataSetTaskDTO> taskWithTriggers(GridExample example);
|
List<DataSetTaskDTO> taskWithTriggers(DatasetTaskGridRequest request);
|
||||||
|
|
||||||
List<DataSetTaskDTO> findByPanelId(@Param("panelId") String panelId);
|
List<DataSetTaskDTO> findByPanelId(@Param("panelId") String panelId);
|
||||||
|
|
||||||
|
@ -21,15 +21,32 @@
|
|||||||
FROM dataset_table_task_log
|
FROM dataset_table_task_log
|
||||||
LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id
|
LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id
|
||||||
LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id
|
LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id
|
||||||
<if test="_parameter != null">
|
|
||||||
<include refid="io.dataease.ext.query.GridSql.gridCondition"/>
|
where 1=1
|
||||||
|
<if test="id != null">
|
||||||
|
and dataset_table_task.id = #{id}
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause != null">
|
<if test="lastExecStatus != null and lastExecStatus.size() > 0">
|
||||||
order by ${orderByClause}
|
and dataset_table_task_log.status in
|
||||||
|
<foreach collection="lastExecStatus" open="(" close=")" separator="," item="status">
|
||||||
|
#{status}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause == null">
|
<if test="tableId != null and tableId.size() > 0">
|
||||||
ORDER BY dataset_table_task_log.create_time desc
|
and dataset_table.id in
|
||||||
|
<foreach collection="tableId" open="(" close=")" separator="," item="tid">
|
||||||
|
#{tid}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<if test="lastExecTime != null and lastExecTime.length > 1">
|
||||||
|
and (dataset_table_task.last_exec_time between #{lastExecTime.[0]} and #{lastExecTime.[1]})
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="keyword != null">
|
||||||
|
and dataset_table_task.name like concat('%', #{keyword}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
ORDER BY dataset_table_task_log.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="listUserTaskLog" resultMap="BaseResult"
|
<select id="listUserTaskLog" resultMap="BaseResult"
|
||||||
@ -38,82 +55,132 @@
|
|||||||
FROM dataset_table_task_log
|
FROM dataset_table_task_log
|
||||||
LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id
|
LEFT JOIN dataset_table_task ON dataset_table_task_log.task_id = dataset_table_task.id
|
||||||
LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id
|
LEFT JOIN dataset_table ON dataset_table_task_log.table_id = dataset_table.id
|
||||||
<if test="_parameter != null">
|
where 1=1
|
||||||
<include refid="io.dataease.ext.query.GridSql.taskListGridCondition"/>
|
<if test="id != null">
|
||||||
|
and dataset_table_task.id = #{id}
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause != null">
|
<if test="lastExecStatus != null and lastExecStatus.size() > 0">
|
||||||
order by ${orderByClause}
|
and dataset_table_task_log.status in
|
||||||
|
<foreach collection="lastExecStatus" open="(" close=")" separator="," item="status">
|
||||||
|
#{status}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause == null">
|
<if test="tableId != null and tableId.size() > 0">
|
||||||
ORDER BY dataset_table_task_log.create_time desc
|
and dataset_table.id in
|
||||||
|
<foreach collection="tableId" open="(" close=")" separator="," item="tid">
|
||||||
|
#{tid}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<if test="lastExecTime != null and lastExecTime.length > 1">
|
||||||
|
and (dataset_table_task.last_exec_time between #{lastExecTime.[0]} and #{lastExecTime.[1]})
|
||||||
|
</if>
|
||||||
|
|
||||||
|
<if test="keyword != null">
|
||||||
|
and dataset_table_task.name like concat('%', #{keyword}, '%')
|
||||||
|
</if>
|
||||||
|
|
||||||
|
ORDER BY dataset_table_task_log.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="taskList" resultMap="TaskResult" parameterType="io.dataease.ext.query.GridExample">
|
<select id="taskList" resultMap="TaskResult" parameterType="io.dataease.controller.dataset.request.DatasetTaskGridRequest">
|
||||||
SELECT dataset_table.name as table_name, 'grant,manage,use' as `privileges`,dataset_table_task.* ,
|
SELECT dataset_table.name as table_name, 'grant,manage,use' as `privileges`,dataset_table_task.* ,
|
||||||
qrtz_triggers.NEXT_FIRE_TIME
|
qrtz_triggers.NEXT_FIRE_TIME
|
||||||
FROM dataset_table_task
|
FROM dataset_table_task
|
||||||
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
||||||
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
||||||
<if test="_parameter != null">
|
where 1=1
|
||||||
<include refid="io.dataease.ext.query.GridSql.gridCondition"/>
|
<if test="rate != null and rate.size() > 0">
|
||||||
|
and dataset_table_task.rate in
|
||||||
|
<foreach collection="rate" open="(" close=")" item="rateItem" separator=",">
|
||||||
|
#{rateItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause != null">
|
<if test="status != null and status.size() > 0">
|
||||||
order by ${orderByClause}
|
and dataset_table_task.status in
|
||||||
|
<foreach collection="status" open="(" close=")" item="statusItem" separator=",">
|
||||||
|
#{statusItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause == null">
|
<if test="lastExecStatus != null and lastExecStatus.size() > 0" >
|
||||||
order by dataset_table_task.create_time desc
|
and dataset_table_task.last_exec_status in
|
||||||
|
<foreach collection="lastExecStatus" open="(" close=")" item="lastExecStatusItem" separator=",">
|
||||||
|
#{lastExecStatusItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<if test="tableId != null and tableId.size() > 0">
|
||||||
|
and dataset_table.id in
|
||||||
|
<foreach collection="tableId" open="(" close=")" separator="," item="tid">
|
||||||
|
#{tid}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="id != null">
|
||||||
|
and dataset_table_task.id = #{id}
|
||||||
|
</if>
|
||||||
|
<if test="lastExecTime != null and lastExecTime.length > 1">
|
||||||
|
and (dataset_table_task.last_exec_time between #{lastExecTime.[0]} and #{lastExecTime.[1]})
|
||||||
|
</if>
|
||||||
|
<if test="keyword != null">
|
||||||
|
and dataset_table_task.name like concat('%', #{keyword}, '%')
|
||||||
|
</if>
|
||||||
|
order by dataset_table_task.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="userTaskList" resultMap="TaskResult" parameterType="io.dataease.ext.query.GridExample">
|
<select id="userTaskList" resultMap="TaskResult" parameterType="io.dataease.controller.dataset.request.DatasetTaskGridRequest">
|
||||||
SELECT dataset_table.name as table_name, get_auths(dataset_table_task.table_id,'dataset', #{extendCondition}) as
|
SELECT dataset_table.name as table_name, get_auths(dataset_table_task.table_id,'dataset', #{extendCondition}) as
|
||||||
`privileges`,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
`privileges`,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
||||||
FROM dataset_table_task
|
FROM dataset_table_task
|
||||||
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
||||||
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
||||||
<if test="_parameter != null">
|
|
||||||
<include refid="io.dataease.ext.query.GridSql.taskListGridCondition"/>
|
where 1=1
|
||||||
|
<if test="rate != null and rate.size() > 0">
|
||||||
|
and dataset_table_task.rate in
|
||||||
|
<foreach collection="rate" open="(" close=")" item="rateItem" separator=",">
|
||||||
|
#{rateItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause != null">
|
<if test="status != null and status.size() > 0">
|
||||||
order by ${orderByClause}
|
and dataset_table_task.status in
|
||||||
|
<foreach collection="status" open="(" close=")" item="statusItem" separator=",">
|
||||||
|
#{statusItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
<if test="orderByClause == null">
|
<if test="lastExecStatus != null and lastExecStatus.size() > 0">
|
||||||
order by dataset_table_task.create_time desc
|
and dataset_table_task.last_exec_status in
|
||||||
|
<foreach collection="lastExecStatus" open="(" close=")" item="lastExecStatusItem" separator=",">
|
||||||
|
#{lastExecStatusItem}
|
||||||
|
</foreach>
|
||||||
</if>
|
</if>
|
||||||
|
<if test="id != null">
|
||||||
|
and dataset_table_task.id = #{id}
|
||||||
|
</if>
|
||||||
|
<if test="tableId != null and tableId.size() > 0">
|
||||||
|
and dataset_table.id in
|
||||||
|
<foreach collection="tableId" open="(" close=")" separator="," item="tid">
|
||||||
|
#{tid}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
<if test="lastExecTime != null and lastExecTime.length > 1">
|
||||||
|
and (dataset_table_task.last_exec_time between #{lastExecTime.[0]} and #{lastExecTime.[1]})
|
||||||
|
</if>
|
||||||
|
<if test="keyword != null">
|
||||||
|
and dataset_table_task.name like concat('%', #{keyword}, '%')
|
||||||
|
</if>
|
||||||
|
order by dataset_table_task.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="userTaskList_COUNT" resultType="LONG">
|
|
||||||
SELECT count(0)
|
|
||||||
FROM dataset_table_task
|
|
||||||
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
|
||||||
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
|
||||||
<if test="_parameter != null">
|
|
||||||
<include refid="io.dataease.ext.query.GridSql.taskListGridCondition"/>
|
|
||||||
</if>
|
|
||||||
<if test="orderByClause != null">
|
|
||||||
order by ${orderByClause}
|
|
||||||
</if>
|
|
||||||
<if test="orderByClause == null">
|
|
||||||
order by dataset_table_task.create_time desc
|
|
||||||
</if>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="taskWithTriggers" resultMap="TaskResult" parameterType="io.dataease.ext.query.GridExample">
|
|
||||||
|
<select id="taskWithTriggers" resultMap="TaskResult" parameterType="io.dataease.controller.dataset.request.DatasetTaskGridRequest">
|
||||||
SELECT dataset_table.name as table_name, get_auths(dataset_table_task.table_id,'dataset', #{extendCondition}) as
|
SELECT dataset_table.name as table_name, get_auths(dataset_table_task.table_id,'dataset', #{extendCondition}) as
|
||||||
`privileges`,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
`privileges`,dataset_table_task.* , qrtz_triggers.NEXT_FIRE_TIME
|
||||||
FROM dataset_table_task
|
FROM dataset_table_task
|
||||||
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
left join dataset_table on dataset_table.id=dataset_table_task.table_id
|
||||||
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
left join qrtz_triggers on dataset_table_task.id=qrtz_triggers.TRIGGER_NAME
|
||||||
<if test="_parameter != null">
|
<if test="id != null">
|
||||||
<include refid="io.dataease.ext.query.GridSql.gridCondition"/>
|
and dataset_table_task.id = #{id}
|
||||||
</if>
|
|
||||||
<if test="orderByClause != null">
|
|
||||||
order by ${orderByClause}
|
|
||||||
</if>
|
|
||||||
<if test="orderByClause == null">
|
|
||||||
order by dataset_table_task.create_time desc
|
|
||||||
</if>
|
</if>
|
||||||
|
order by dataset_table_task.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="findByPanelId" resultMap="TaskResult">
|
<select id="findByPanelId" resultMap="TaskResult">
|
||||||
|
@ -62,19 +62,16 @@ public class XEmailTaskServer {
|
|||||||
@PostMapping("/queryTasks/{goPage}/{pageSize}")
|
@PostMapping("/queryTasks/{goPage}/{pageSize}")
|
||||||
@SqlInjectValidator(value = {"create_time"})
|
@SqlInjectValidator(value = {"create_time"})
|
||||||
public Pager<List<XpackTaskGridDTO>> queryTask(@PathVariable int goPage, @PathVariable int pageSize,
|
public Pager<List<XpackTaskGridDTO>> queryTask(@PathVariable int goPage, @PathVariable int pageSize,
|
||||||
@RequestBody XpackGridRequest request) {
|
@RequestBody XpackEmailTaskGridRequest request) {
|
||||||
EmailXpackService emailXpackService = SpringContextUtil.getBean(EmailXpackService.class);
|
EmailXpackService emailXpackService = SpringContextUtil.getBean(EmailXpackService.class);
|
||||||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||||||
CurrentUserDto user = AuthUtils.getUser();
|
CurrentUserDto user = AuthUtils.getUser();
|
||||||
if (!user.getIsAdmin()) {
|
if (!user.getIsAdmin()) {
|
||||||
Long userId = user.getUserId();
|
List<Long> userIdList = request.getUserIdList();
|
||||||
XpackConditionEntity condition = new XpackConditionEntity();
|
if (userIdList == null) {
|
||||||
condition.setField("u.user_id");
|
userIdList = new ArrayList<>();
|
||||||
condition.setOperator("eq");
|
}
|
||||||
condition.setValue(userId);
|
userIdList.add(user.getUserId());
|
||||||
List<XpackConditionEntity> conditions = CollectionUtils.isEmpty(request.getConditions()) ? new ArrayList<>() : request.getConditions();
|
|
||||||
conditions.add(condition);
|
|
||||||
request.setConditions(conditions);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
List<XpackTaskGridDTO> tasks = emailXpackService.taskGrid(request);
|
List<XpackTaskGridDTO> tasks = emailXpackService.taskGrid(request);
|
||||||
@ -325,7 +322,7 @@ public class XEmailTaskServer {
|
|||||||
|
|
||||||
@PostMapping("/queryInstancies/{goPage}/{pageSize}")
|
@PostMapping("/queryInstancies/{goPage}/{pageSize}")
|
||||||
public Pager<List<XpackTaskInstanceDTO>> instancesGrid(@PathVariable int goPage, @PathVariable int pageSize,
|
public Pager<List<XpackTaskInstanceDTO>> instancesGrid(@PathVariable int goPage, @PathVariable int pageSize,
|
||||||
@RequestBody XpackGridRequest request) {
|
@RequestBody XpackEmailInstanceGridRequest request) {
|
||||||
EmailXpackService emailXpackService = SpringContextUtil.getBean(EmailXpackService.class);
|
EmailXpackService emailXpackService = SpringContextUtil.getBean(EmailXpackService.class);
|
||||||
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
Page<Object> page = PageHelper.startPage(goPage, pageSize, true);
|
||||||
List<XpackTaskInstanceDTO> instances = emailXpackService.taskInstanceGrid(request);
|
List<XpackTaskInstanceDTO> instances = emailXpackService.taskInstanceGrid(request);
|
||||||
@ -342,7 +339,7 @@ public class XEmailTaskServer {
|
|||||||
|
|
||||||
@RequiresPermissions("task-email:read")
|
@RequiresPermissions("task-email:read")
|
||||||
@PostMapping("/export")
|
@PostMapping("/export")
|
||||||
public void export(@RequestBody XpackGridRequest request) throws Exception {
|
public void export(@RequestBody XpackEmailInstanceGridRequest request) throws Exception {
|
||||||
Pager<List<XpackTaskInstanceDTO>> listPager = instancesGrid(0, 0, request);
|
Pager<List<XpackTaskInstanceDTO>> listPager = instancesGrid(0, 0, request);
|
||||||
List<XpackTaskInstanceDTO> instanceDTOS = listPager.getListObject();
|
List<XpackTaskInstanceDTO> instanceDTOS = listPager.getListObject();
|
||||||
ExcelSheetModel excelSheetModel = excelSheetModel(instanceDTOS);
|
ExcelSheetModel excelSheetModel = excelSheetModel(instanceDTOS);
|
||||||
|
@ -19,13 +19,12 @@ import io.dataease.commons.constants.*;
|
|||||||
import io.dataease.commons.exception.DEException;
|
import io.dataease.commons.exception.DEException;
|
||||||
import io.dataease.commons.utils.*;
|
import io.dataease.commons.utils.*;
|
||||||
import io.dataease.controller.ResultHolder;
|
import io.dataease.controller.ResultHolder;
|
||||||
|
import io.dataease.controller.dataset.request.DataSetTaskInstanceGridRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetExportRequest;
|
import io.dataease.controller.request.dataset.DataSetExportRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetGroupRequest;
|
import io.dataease.controller.request.dataset.DataSetGroupRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetTableRequest;
|
import io.dataease.controller.request.dataset.DataSetTableRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
||||||
import io.dataease.controller.response.DataSetDetail;
|
import io.dataease.controller.response.DataSetDetail;
|
||||||
import io.dataease.controller.sys.base.BaseGridRequest;
|
|
||||||
import io.dataease.controller.sys.base.ConditionEntity;
|
|
||||||
import io.dataease.dto.SysLogDTO;
|
import io.dataease.dto.SysLogDTO;
|
||||||
import io.dataease.dto.dataset.*;
|
import io.dataease.dto.dataset.*;
|
||||||
import io.dataease.dto.dataset.union.UnionDTO;
|
import io.dataease.dto.dataset.union.UnionDTO;
|
||||||
@ -794,14 +793,9 @@ public class DataSetTableService {
|
|||||||
logger.error(e.getMessage());
|
logger.error(e.getMessage());
|
||||||
DEException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
DEException.throwException(Translator.get("i18n_ds_error") + "->" + e.getMessage());
|
||||||
}
|
}
|
||||||
BaseGridRequest request = new BaseGridRequest();
|
DataSetTaskInstanceGridRequest request = new DataSetTaskInstanceGridRequest();
|
||||||
ConditionEntity entity2 = new ConditionEntity();
|
request.setTableId(List.of(dataSetTableRequest.getId()));
|
||||||
entity2.setField("dataset_table_task_log.table_id");
|
|
||||||
entity2.setOperator("eq");
|
|
||||||
entity2.setValue(dataSetTableRequest.getId());
|
|
||||||
List<ConditionEntity> conditionEntities = new ArrayList<>();
|
|
||||||
conditionEntities.add(entity2);
|
|
||||||
request.setConditions(conditionEntities);
|
|
||||||
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = dataSetTableTaskLogService.listTaskLog(request, "excel");
|
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = dataSetTableTaskLogService.listTaskLog(request, "excel");
|
||||||
if (CollectionUtils.isNotEmpty(dataSetTaskLogDTOS)) {
|
if (CollectionUtils.isNotEmpty(dataSetTaskLogDTOS)) {
|
||||||
dataSetTaskLogDTOS.get(0).getStatus().equalsIgnoreCase(JobStatus.Underway.name());
|
dataSetTaskLogDTOS.get(0).getStatus().equalsIgnoreCase(JobStatus.Underway.name());
|
||||||
@ -2445,7 +2439,8 @@ public class DataSetTableService {
|
|||||||
fields.add(tableFiled);
|
fields.add(tableFiled);
|
||||||
}
|
}
|
||||||
String json = JSON.toJSONString(noModelDataListener.getData());
|
String json = JSON.toJSONString(noModelDataListener.getData());
|
||||||
List<List<String>> data = JSON.parseObject(json, new TypeReference< List<List<String>>>(){});
|
List<List<String>> data = JSON.parseObject(json, new TypeReference<List<List<String>>>() {
|
||||||
|
});
|
||||||
data = (isPreview && noModelDataListener.getData().size() > 1000 ? new ArrayList<>(data.subList(0, 1000)) : data);
|
data = (isPreview && noModelDataListener.getData().size() > 1000 ? new ArrayList<>(data.subList(0, 1000)) : data);
|
||||||
if (isPreview) {
|
if (isPreview) {
|
||||||
for (List<String> datum : data) {
|
for (List<String> datum : data) {
|
||||||
@ -3103,51 +3098,52 @@ public class DataSetTableService {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class NoModelDataListener extends AnalysisEventListener<Map<Integer, String>> {
|
public class NoModelDataListener extends AnalysisEventListener<Map<Integer, String>> {
|
||||||
private List<List<String>> data = new ArrayList<>();
|
private List<List<String>> data = new ArrayList<>();
|
||||||
private List<String> header = new ArrayList<>();
|
private List<String> header = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void invokeHead(Map<Integer, CellData> headMap, AnalysisContext context) {
|
public void invokeHead(Map<Integer, CellData> headMap, AnalysisContext context) {
|
||||||
super.invokeHead(headMap, context);
|
super.invokeHead(headMap, context);
|
||||||
for (Integer key : headMap.keySet()) {
|
for (Integer key : headMap.keySet()) {
|
||||||
CellData cellData = headMap.get(key);
|
CellData cellData = headMap.get(key);
|
||||||
String value = cellData.getStringValue();
|
String value = cellData.getStringValue();
|
||||||
if (StringUtils.isEmpty(value)) {
|
if (StringUtils.isEmpty(value)) {
|
||||||
value = "none_" + key;
|
value = "none_" + key;
|
||||||
}
|
}
|
||||||
header.add(value);
|
header.add(value);
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void invoke(Map<Integer, String> dataMap, AnalysisContext context) {
|
|
||||||
List<String> line = new ArrayList<>();
|
|
||||||
for (Integer key : dataMap.keySet()) {
|
|
||||||
String value = dataMap.get(key);
|
|
||||||
if (StringUtils.isEmpty(value)) {
|
|
||||||
value = "";
|
|
||||||
}
|
|
||||||
line.add(value);
|
|
||||||
};
|
|
||||||
int size = line.size();
|
|
||||||
if(size < header.size()){
|
|
||||||
for (int i = 0; i < header.size() - size; i++) {
|
|
||||||
line.add("");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
data.add(line);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
|
public void invoke(Map<Integer, String> dataMap, AnalysisContext context) {
|
||||||
}
|
List<String> line = new ArrayList<>();
|
||||||
|
for (Integer key : dataMap.keySet()) {
|
||||||
|
String value = dataMap.get(key);
|
||||||
|
if (StringUtils.isEmpty(value)) {
|
||||||
|
value = "";
|
||||||
|
}
|
||||||
|
line.add(value);
|
||||||
|
}
|
||||||
|
;
|
||||||
|
int size = line.size();
|
||||||
|
if (size < header.size()) {
|
||||||
|
for (int i = 0; i < header.size() - size; i++) {
|
||||||
|
line.add("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
data.add(line);
|
||||||
|
}
|
||||||
|
|
||||||
public void clear() {
|
@Override
|
||||||
data.clear();
|
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
|
||||||
header.clear();
|
}
|
||||||
|
|
||||||
|
public void clear() {
|
||||||
|
data.clear();
|
||||||
|
header.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
@ -3,6 +3,7 @@ package io.dataease.service.dataset;
|
|||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import io.dataease.commons.constants.SysLogConstants;
|
import io.dataease.commons.constants.SysLogConstants;
|
||||||
import io.dataease.commons.utils.ServletUtils;
|
import io.dataease.commons.utils.ServletUtils;
|
||||||
|
import io.dataease.controller.dataset.request.DataSetTaskInstanceGridRequest;
|
||||||
import io.dataease.exception.DataEaseException;
|
import io.dataease.exception.DataEaseException;
|
||||||
import io.dataease.ext.ExtDataSetTaskMapper;
|
import io.dataease.ext.ExtDataSetTaskMapper;
|
||||||
import io.dataease.ext.query.GridExample;
|
import io.dataease.ext.query.GridExample;
|
||||||
@ -70,7 +71,7 @@ public class DataSetTableTaskLogService {
|
|||||||
datasetTableTaskLogMapper.deleteByPrimaryKey(id);
|
datasetTableTaskLogMapper.deleteByPrimaryKey(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void exportExcel(BaseGridRequest request) throws Exception {
|
public void exportExcel(DataSetTaskInstanceGridRequest request) throws Exception {
|
||||||
HttpServletResponse response = ServletUtils.response();
|
HttpServletResponse response = ServletUtils.response();
|
||||||
OutputStream outputStream = response.getOutputStream();
|
OutputStream outputStream = response.getOutputStream();
|
||||||
try {
|
try {
|
||||||
@ -137,38 +138,12 @@ public class DataSetTableTaskLogService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public List<DataSetTaskLogDTO> listTaskLog(BaseGridRequest request, String type) {
|
public List<DataSetTaskLogDTO> listTaskLog(DataSetTaskInstanceGridRequest request, String type) {
|
||||||
List<ConditionEntity> conditionEntities = request.getConditions();
|
|
||||||
if(!type.equalsIgnoreCase("excel")){
|
if(!type.equalsIgnoreCase("excel")){
|
||||||
ConditionEntity entity = new ConditionEntity();
|
request.setExcludedIdList(List.of("初始导入", "替换", "追加"));
|
||||||
entity.setField("task_id");
|
|
||||||
entity.setOperator("not in");
|
|
||||||
List<String>status = new ArrayList<>();status.add("初始导入");status.add("替换");status.add("追加");
|
|
||||||
entity.setValue(status);
|
|
||||||
if(CollectionUtils.isEmpty(conditionEntities)){
|
|
||||||
conditionEntities = new ArrayList<>();
|
|
||||||
}
|
|
||||||
conditionEntities.add(entity);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ConditionEntity entity2 = new ConditionEntity();
|
|
||||||
entity2.setField("1");
|
|
||||||
entity2.setOperator("eq");
|
|
||||||
entity2.setValue("1");
|
|
||||||
conditionEntities.add(entity2);
|
|
||||||
conditionEntities = conditionEntities.stream().map(conditionEntity -> {
|
|
||||||
if(conditionEntity.getField().equals("dataset_table_task.last_exec_status")){
|
|
||||||
conditionEntity.setField("dataset_table_task_log.status");
|
|
||||||
}
|
|
||||||
return conditionEntity;
|
|
||||||
}).collect(Collectors.toList());
|
|
||||||
request.setConditions(conditionEntities);
|
|
||||||
|
|
||||||
GridExample gridExample = request.convertExample();
|
|
||||||
gridExample.setExtendCondition(AuthUtils.getUser().getUserId().toString());
|
|
||||||
|
|
||||||
if(AuthUtils.getUser().getIsAdmin()){
|
if(AuthUtils.getUser().getIsAdmin()){
|
||||||
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = extDataSetTaskMapper.listTaskLog(gridExample);
|
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = extDataSetTaskMapper.listTaskLog(request);
|
||||||
dataSetTaskLogDTOS.forEach(dataSetTaskLogDTO -> {
|
dataSetTaskLogDTOS.forEach(dataSetTaskLogDTO -> {
|
||||||
if(StringUtils.isEmpty(dataSetTaskLogDTO.getName())){
|
if(StringUtils.isEmpty(dataSetTaskLogDTO.getName())){
|
||||||
dataSetTaskLogDTO.setName(dataSetTaskLogDTO.getTaskId());
|
dataSetTaskLogDTO.setName(dataSetTaskLogDTO.getTaskId());
|
||||||
@ -176,7 +151,7 @@ public class DataSetTableTaskLogService {
|
|||||||
});
|
});
|
||||||
return dataSetTaskLogDTOS;
|
return dataSetTaskLogDTOS;
|
||||||
}else {
|
}else {
|
||||||
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = extDataSetTaskMapper.listUserTaskLog(gridExample);
|
List<DataSetTaskLogDTO> dataSetTaskLogDTOS = extDataSetTaskMapper.listUserTaskLog(request);
|
||||||
dataSetTaskLogDTOS.forEach(dataSetTaskLogDTO -> {
|
dataSetTaskLogDTOS.forEach(dataSetTaskLogDTO -> {
|
||||||
if(StringUtils.isEmpty(dataSetTaskLogDTO.getName())){
|
if(StringUtils.isEmpty(dataSetTaskLogDTO.getName())){
|
||||||
dataSetTaskLogDTO.setName(dataSetTaskLogDTO.getTaskId());
|
dataSetTaskLogDTO.setName(dataSetTaskLogDTO.getTaskId());
|
||||||
|
@ -1,17 +1,15 @@
|
|||||||
package io.dataease.service.dataset;
|
package io.dataease.service.dataset;
|
||||||
|
|
||||||
import io.dataease.ext.ExtDataSetTaskMapper;
|
|
||||||
import io.dataease.ext.query.GridExample;
|
|
||||||
import io.dataease.commons.constants.JobStatus;
|
import io.dataease.commons.constants.JobStatus;
|
||||||
import io.dataease.commons.constants.ScheduleType;
|
import io.dataease.commons.constants.ScheduleType;
|
||||||
import io.dataease.commons.constants.TaskStatus;
|
import io.dataease.commons.constants.TaskStatus;
|
||||||
import io.dataease.commons.constants.TriggerType;
|
import io.dataease.commons.constants.TriggerType;
|
||||||
import io.dataease.commons.utils.AuthUtils;
|
import io.dataease.commons.utils.AuthUtils;
|
||||||
|
import io.dataease.controller.dataset.request.DatasetTaskGridRequest;
|
||||||
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
import io.dataease.controller.request.dataset.DataSetTaskRequest;
|
||||||
import io.dataease.controller.sys.base.BaseGridRequest;
|
|
||||||
import io.dataease.controller.sys.base.ConditionEntity;
|
|
||||||
import io.dataease.dto.dataset.DataSetTaskDTO;
|
import io.dataease.dto.dataset.DataSetTaskDTO;
|
||||||
import io.dataease.exception.DataEaseException;
|
import io.dataease.exception.DataEaseException;
|
||||||
|
import io.dataease.ext.ExtDataSetTaskMapper;
|
||||||
import io.dataease.i18n.Translator;
|
import io.dataease.i18n.Translator;
|
||||||
import io.dataease.plugins.common.base.domain.*;
|
import io.dataease.plugins.common.base.domain.*;
|
||||||
import io.dataease.plugins.common.base.mapper.DatasetTableMapper;
|
import io.dataease.plugins.common.base.mapper.DatasetTableMapper;
|
||||||
@ -24,10 +22,10 @@ import org.quartz.CronExpression;
|
|||||||
import org.springframework.context.annotation.Lazy;
|
import org.springframework.context.annotation.Lazy;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.*;
|
import java.util.List;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author gin
|
* @Author gin
|
||||||
@ -152,7 +150,7 @@ public class DataSetTableTaskService {
|
|||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void batchDelete(List<String> ids) {
|
public void batchDelete(List<String> ids) {
|
||||||
if (CollectionUtils.isNotEmpty(ids)){
|
if (CollectionUtils.isNotEmpty(ids)) {
|
||||||
for (int i = 0; i < ids.size(); i++) {
|
for (int i = 0; i < ids.size(); i++) {
|
||||||
String id = ids.get(i);
|
String id = ids.get(i);
|
||||||
DatasetTableTask datasetTableTask = datasetTableTaskMapper.selectByPrimaryKey(id);
|
DatasetTableTask datasetTableTask = datasetTableTaskMapper.selectByPrimaryKey(id);
|
||||||
@ -195,12 +193,9 @@ public class DataSetTableTaskService {
|
|||||||
|
|
||||||
public void checkTaskIsStopped(final DatasetTableTask datasetTableTask) {
|
public void checkTaskIsStopped(final DatasetTableTask datasetTableTask) {
|
||||||
if (StringUtils.isNotEmpty(datasetTableTask.getEnd()) && datasetTableTask.getEnd().equalsIgnoreCase("1")) {
|
if (StringUtils.isNotEmpty(datasetTableTask.getEnd()) && datasetTableTask.getEnd().equalsIgnoreCase("1")) {
|
||||||
BaseGridRequest request = new BaseGridRequest();
|
DatasetTaskGridRequest request = new DatasetTaskGridRequest();
|
||||||
ConditionEntity conditionEntity = new ConditionEntity();
|
request.setId(datasetTableTask.getId());
|
||||||
conditionEntity.setField("dataset_table_task.id");
|
|
||||||
conditionEntity.setOperator("eq");
|
|
||||||
conditionEntity.setValue(datasetTableTask.getId());
|
|
||||||
request.setConditions(Collections.singletonList(conditionEntity));
|
|
||||||
List<DataSetTaskDTO> dataSetTaskDTOS = taskWithTriggers(request);
|
List<DataSetTaskDTO> dataSetTaskDTOS = taskWithTriggers(request);
|
||||||
if (CollectionUtils.isEmpty(dataSetTaskDTOS)) {
|
if (CollectionUtils.isEmpty(dataSetTaskDTOS)) {
|
||||||
return;
|
return;
|
||||||
@ -231,12 +226,8 @@ public class DataSetTableTaskService {
|
|||||||
} else {
|
} else {
|
||||||
recore.setLastExecStatus(lastExecStatus.name());
|
recore.setLastExecStatus(lastExecStatus.name());
|
||||||
if (StringUtils.isNotEmpty(datasetTableTask.getEnd()) && datasetTableTask.getEnd().equalsIgnoreCase("1")) {
|
if (StringUtils.isNotEmpty(datasetTableTask.getEnd()) && datasetTableTask.getEnd().equalsIgnoreCase("1")) {
|
||||||
BaseGridRequest request = new BaseGridRequest();
|
DatasetTaskGridRequest request = new DatasetTaskGridRequest();
|
||||||
ConditionEntity conditionEntity = new ConditionEntity();
|
request.setId(datasetTableTask.getId());
|
||||||
conditionEntity.setField("dataset_table_task.id");
|
|
||||||
conditionEntity.setOperator("eq");
|
|
||||||
conditionEntity.setValue(datasetTableTask.getId());
|
|
||||||
request.setConditions(Collections.singletonList(conditionEntity));
|
|
||||||
List<DataSetTaskDTO> dataSetTaskDTOS = taskWithTriggers(request);
|
List<DataSetTaskDTO> dataSetTaskDTOS = taskWithTriggers(request);
|
||||||
if (CollectionUtils.isEmpty(dataSetTaskDTOS)) {
|
if (CollectionUtils.isEmpty(dataSetTaskDTOS)) {
|
||||||
return;
|
return;
|
||||||
@ -264,40 +255,24 @@ public class DataSetTableTaskService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public List<DataSetTaskDTO> list(DatasetTableTask datasetTableTask) {
|
public List<DataSetTaskDTO> list(DatasetTableTask datasetTableTask) {
|
||||||
BaseGridRequest request = new BaseGridRequest();
|
DatasetTaskGridRequest request = new DatasetTaskGridRequest();
|
||||||
List<ConditionEntity> conditionEntities = new ArrayList<>();
|
if (datasetTableTask != null && StringUtils.isNotEmpty(datasetTableTask.getTableId())) {
|
||||||
if(datasetTableTask != null && StringUtils.isNotEmpty(datasetTableTask.getTableId())){
|
request.setTableId(List.of(datasetTableTask.getTableId()));
|
||||||
ConditionEntity entity = new ConditionEntity();
|
|
||||||
entity.setField("table_id");
|
|
||||||
entity.setOperator("eq");
|
|
||||||
entity.setValue(datasetTableTask.getTableId());
|
|
||||||
conditionEntities.add(entity);
|
|
||||||
}
|
}
|
||||||
request.setConditions(conditionEntities);
|
return extDataSetTaskMapper.taskList(request);
|
||||||
GridExample gridExample = request.convertExample();
|
|
||||||
return extDataSetTaskMapper.taskList(gridExample);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<DataSetTaskDTO> taskList4User(BaseGridRequest request) {
|
public List<DataSetTaskDTO> taskList4User(DatasetTaskGridRequest request) {
|
||||||
List<ConditionEntity> conditionEntities = request.getConditions() == null ? new ArrayList<>() : new ArrayList(request.getConditions());
|
|
||||||
ConditionEntity entity = new ConditionEntity();
|
|
||||||
entity.setField("1");
|
|
||||||
entity.setOperator("eq");
|
|
||||||
entity.setValue("1");
|
|
||||||
conditionEntities.add(entity);
|
|
||||||
request.setConditions(conditionEntities);
|
|
||||||
GridExample gridExample = request.convertExample();
|
|
||||||
gridExample.setExtendCondition(AuthUtils.getUser().getUserId().toString());
|
|
||||||
if (AuthUtils.getUser().getIsAdmin()) {
|
if (AuthUtils.getUser().getIsAdmin()) {
|
||||||
return extDataSetTaskMapper.taskList(gridExample);
|
return extDataSetTaskMapper.taskList(request);
|
||||||
} else {
|
} else {
|
||||||
return extDataSetTaskMapper.userTaskList(gridExample);
|
return extDataSetTaskMapper.userTaskList(request);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<DataSetTaskDTO> taskWithTriggers(BaseGridRequest request) {
|
public List<DataSetTaskDTO> taskWithTriggers(DatasetTaskGridRequest request) {
|
||||||
GridExample gridExample = request.convertExample();
|
return extDataSetTaskMapper.taskWithTriggers(request);
|
||||||
return extDataSetTaskMapper.taskWithTriggers(gridExample);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void checkName(DataSetTaskRequest dataSetTaskRequest) {
|
private void checkName(DataSetTaskRequest dataSetTaskRequest) {
|
||||||
@ -335,7 +310,7 @@ public class DataSetTableTaskService {
|
|||||||
|
|
||||||
public void execTask(DatasetTableTask datasetTableTask) throws Exception {
|
public void execTask(DatasetTableTask datasetTableTask) throws Exception {
|
||||||
execNow(datasetTableTask);
|
execNow(datasetTableTask);
|
||||||
if(datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())){
|
if (datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
||||||
scheduleService.addSchedule(datasetTableTask);
|
scheduleService.addSchedule(datasetTableTask);
|
||||||
}
|
}
|
||||||
if (!datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
if (!datasetTableTask.getRate().equalsIgnoreCase(ScheduleType.SIMPLE.toString())) {
|
||||||
@ -344,16 +319,9 @@ public class DataSetTableTaskService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public DataSetTaskDTO detail(String id) {
|
public DataSetTaskDTO detail(String id) {
|
||||||
BaseGridRequest request = new BaseGridRequest();
|
DatasetTaskGridRequest request = new DatasetTaskGridRequest();
|
||||||
List<ConditionEntity> conditionEntities = request.getConditions() == null ? new ArrayList<>() : new ArrayList(request.getConditions());
|
request.setId(id);
|
||||||
ConditionEntity entity = new ConditionEntity();
|
List<DataSetTaskDTO> dataSetTaskDTOS = extDataSetTaskMapper.taskList(request);
|
||||||
entity.setField("dataset_table_task.id");
|
|
||||||
entity.setOperator("eq");
|
|
||||||
entity.setValue(id);
|
|
||||||
conditionEntities.add(entity);
|
|
||||||
request.setConditions(conditionEntities);
|
|
||||||
GridExample gridExample = request.convertExample();
|
|
||||||
List<DataSetTaskDTO> dataSetTaskDTOS = extDataSetTaskMapper.taskList(gridExample);
|
|
||||||
if (CollectionUtils.isNotEmpty(dataSetTaskDTOS)) {
|
if (CollectionUtils.isNotEmpty(dataSetTaskDTOS)) {
|
||||||
return dataSetTaskDTOS.get(0);
|
return dataSetTaskDTOS.get(0);
|
||||||
}
|
}
|
||||||
|
@ -1048,14 +1048,7 @@ export default {
|
|||||||
},
|
},
|
||||||
listTaskLog(loading = true) {
|
listTaskLog(loading = true) {
|
||||||
const params = {
|
const params = {
|
||||||
conditions: [
|
tableId: [this.table.id]
|
||||||
{
|
|
||||||
field: 'dataset_table_task_log.table_id',
|
|
||||||
operator: 'eq',
|
|
||||||
value: this.table.id
|
|
||||||
}
|
|
||||||
],
|
|
||||||
orders: []
|
|
||||||
}
|
}
|
||||||
post(
|
post(
|
||||||
'/dataset/taskLog/listForDataset/' +
|
'/dataset/taskLog/listForDataset/' +
|
||||||
|
@ -866,7 +866,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
listTaskLog(loading = true) {
|
listTaskLog(loading = true) {
|
||||||
const params = { 'conditions': [{ 'field': 'dataset_table_task_log.table_id', 'operator': 'eq', 'value': this.table.id }], 'orders': [] }
|
const params = { 'tableId': [this.table.id], 'orders': [] }
|
||||||
post('/dataset/taskLog/listForDataset/' + this.table.type + '/' + this.page.currentPage + '/' + this.page.pageSize, params, loading).then(response => {
|
post('/dataset/taskLog/listForDataset/' + this.table.type + '/' + this.page.currentPage + '/' + this.page.pageSize, params, loading).then(response => {
|
||||||
this.taskLogData = response.data.listObject
|
this.taskLogData = response.data.listObject
|
||||||
this.page.total = response.data.itemCount
|
this.page.total = response.data.itemCount
|
||||||
|
@ -350,7 +350,7 @@ import filterUser from './FilterUser.vue'
|
|||||||
import msgCfm from '@/components/msgCfm/index'
|
import msgCfm from '@/components/msgCfm/index'
|
||||||
import _ from 'lodash'
|
import _ from 'lodash'
|
||||||
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
||||||
|
import { buildParam } from '@/utils/GridConditionUtil'
|
||||||
export default {
|
export default {
|
||||||
name: 'DatasetTaskList',
|
name: 'DatasetTaskList',
|
||||||
components: { GridTable, filterUser },
|
components: { GridTable, filterUser },
|
||||||
@ -502,23 +502,12 @@ export default {
|
|||||||
},
|
},
|
||||||
search(showLoading = true) {
|
search(showLoading = true) {
|
||||||
const { taskId, name } = this.transCondition
|
const { taskId, name } = this.transCondition
|
||||||
const param = {
|
|
||||||
orders: formatOrders(this.orderConditions),
|
const param = buildParam(this.cacheCondition, this.nickName)
|
||||||
conditions: [...this.cacheCondition]
|
param.orders = formatOrders(this.orderConditions)
|
||||||
}
|
|
||||||
if (this.nickName) {
|
|
||||||
param.conditions.push({
|
|
||||||
field: `dataset_table_task.name`,
|
|
||||||
operator: 'like',
|
|
||||||
value: this.nickName
|
|
||||||
})
|
|
||||||
}
|
|
||||||
if (taskId && this.nickName === name) {
|
if (taskId && this.nickName === name) {
|
||||||
param.conditions.push({
|
param['id'] = taskId
|
||||||
operator: 'eq',
|
|
||||||
value: taskId,
|
|
||||||
field: 'dataset_table_task.id'
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
const { currentPage, pageSize } = this.paginationConfig
|
const { currentPage, pageSize } = this.paginationConfig
|
||||||
datasetTaskList(currentPage, pageSize, param, showLoading).then(
|
datasetTaskList(currentPage, pageSize, param, showLoading).then(
|
||||||
|
@ -315,7 +315,7 @@ export default {
|
|||||||
'dataset_table_task.rate': this.active.rate,
|
'dataset_table_task.rate': this.active.rate,
|
||||||
'dataset_table_task.status': this.active.status,
|
'dataset_table_task.status': this.active.status,
|
||||||
'dataset_table_task.last_exec_status': this.active.execStatus,
|
'dataset_table_task.last_exec_status': this.active.execStatus,
|
||||||
'dataset_table.id': this.activeDataset
|
'dataset_table.tableId': this.activeDataset
|
||||||
}
|
}
|
||||||
const conditions = []
|
const conditions = []
|
||||||
Object.keys(fildMap).forEach((ele) => {
|
Object.keys(fildMap).forEach((ele) => {
|
||||||
|
@ -308,7 +308,7 @@ export default {
|
|||||||
formatCondition() {
|
formatCondition() {
|
||||||
const fildMap = {
|
const fildMap = {
|
||||||
'dataset_table_task.last_exec_status': this.active.execStatus,
|
'dataset_table_task.last_exec_status': this.active.execStatus,
|
||||||
'dataset_table.id': this.activeDataset
|
'dataset_table.tableId': this.activeDataset
|
||||||
}
|
}
|
||||||
const conditions = []
|
const conditions = []
|
||||||
Object.keys(fildMap).forEach((ele) => {
|
Object.keys(fildMap).forEach((ele) => {
|
||||||
|
@ -179,7 +179,7 @@ import GridTable from '@/components/gridTable/index.vue'
|
|||||||
import filterUser from './FilterUserRecord.vue'
|
import filterUser from './FilterUserRecord.vue'
|
||||||
import _ from 'lodash'
|
import _ from 'lodash'
|
||||||
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
import keyEnter from '@/components/msgCfm/keyEnter.js'
|
||||||
|
import { buildParam } from '@/utils/GridConditionUtil'
|
||||||
export default {
|
export default {
|
||||||
name: 'TaskRecord',
|
name: 'TaskRecord',
|
||||||
components: { GridTable, filterUser },
|
components: { GridTable, filterUser },
|
||||||
@ -258,23 +258,10 @@ export default {
|
|||||||
},
|
},
|
||||||
exportData() {
|
exportData() {
|
||||||
const { taskId, name } = this.transCondition
|
const { taskId, name } = this.transCondition
|
||||||
const param = {
|
const param = buildParam(this.cacheCondition, this.nickName)
|
||||||
orders: formatOrders(this.orderConditions),
|
param.orders = formatOrders(this.orderConditions)
|
||||||
conditions: [...this.cacheCondition]
|
|
||||||
}
|
|
||||||
if (this.nickName) {
|
|
||||||
param.conditions.push({
|
|
||||||
field: `dataset_table_task.name`,
|
|
||||||
operator: 'like',
|
|
||||||
value: this.nickName
|
|
||||||
})
|
|
||||||
}
|
|
||||||
if (taskId && this.nickName === name) {
|
if (taskId && this.nickName === name) {
|
||||||
param.conditions.push({
|
param.id = taskId
|
||||||
operator: 'eq',
|
|
||||||
value: taskId,
|
|
||||||
field: 'dataset_table_task.id'
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
exportExcel(param).then((res) => {
|
exportExcel(param).then((res) => {
|
||||||
const blob = new Blob([res], { type: 'application/vnd.ms-excel' })
|
const blob = new Blob([res], { type: 'application/vnd.ms-excel' })
|
||||||
@ -368,23 +355,10 @@ export default {
|
|||||||
this.lastRequestComplete = false
|
this.lastRequestComplete = false
|
||||||
}
|
}
|
||||||
const { taskId, name } = this.transCondition
|
const { taskId, name } = this.transCondition
|
||||||
const param = {
|
const param = buildParam(this.cacheCondition, this.nickName)
|
||||||
orders: formatOrders(this.orderConditions),
|
param.orders = formatOrders(this.orderConditions)
|
||||||
conditions: [...this.cacheCondition]
|
|
||||||
}
|
|
||||||
if (this.nickName) {
|
|
||||||
param.conditions.push({
|
|
||||||
field: `dataset_table_task.name`,
|
|
||||||
operator: 'like',
|
|
||||||
value: this.nickName
|
|
||||||
})
|
|
||||||
}
|
|
||||||
if (taskId && this.nickName === name) {
|
if (taskId && this.nickName === name) {
|
||||||
param.conditions.push({
|
param.id = taskId
|
||||||
operator: 'eq',
|
|
||||||
value: taskId,
|
|
||||||
field: 'dataset_table_task.id'
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
post(
|
post(
|
||||||
'/dataset/taskLog/list/notexcel/' +
|
'/dataset/taskLog/list/notexcel/' +
|
||||||
@ -405,23 +379,10 @@ export default {
|
|||||||
},
|
},
|
||||||
search(condition, showLoading = true) {
|
search(condition, showLoading = true) {
|
||||||
const { taskId, name } = this.transCondition
|
const { taskId, name } = this.transCondition
|
||||||
const param = {
|
const param = buildParam(this.cacheCondition, this.nickName)
|
||||||
orders: formatOrders(this.orderConditions),
|
param.orders = formatOrders(this.orderConditions)
|
||||||
conditions: [...this.cacheCondition]
|
|
||||||
}
|
|
||||||
if (this.nickName) {
|
|
||||||
param.conditions.push({
|
|
||||||
field: `dataset_table_task.name`,
|
|
||||||
operator: 'like',
|
|
||||||
value: this.nickName
|
|
||||||
})
|
|
||||||
}
|
|
||||||
if (taskId && this.nickName === name) {
|
if (taskId && this.nickName === name) {
|
||||||
param.conditions.push({
|
param.id = taskId
|
||||||
operator: 'eq',
|
|
||||||
value: taskId,
|
|
||||||
field: 'dataset_table_task.id'
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
post(
|
post(
|
||||||
'/dataset/taskLog/list/notexcel/' +
|
'/dataset/taskLog/list/notexcel/' +
|
||||||
|
@ -0,0 +1,16 @@
|
|||||||
|
package io.dataease.plugins.xpack.email.dto.request;
|
||||||
|
|
||||||
|
import io.dataease.plugins.common.request.KeywordRequest;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class XpackEmailInstanceGridRequest extends KeywordRequest {
|
||||||
|
|
||||||
|
private List<String> statusList;
|
||||||
|
|
||||||
|
private Long[] timeArray;
|
||||||
|
|
||||||
|
private Long taskId;
|
||||||
|
}
|
@ -0,0 +1,13 @@
|
|||||||
|
package io.dataease.plugins.xpack.email.dto.request;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class XpackEmailTaskGridRequest extends XpackEmailInstanceGridRequest {
|
||||||
|
|
||||||
|
|
||||||
|
private List<Long> userIdList;
|
||||||
|
|
||||||
|
}
|
@ -6,6 +6,8 @@ import io.dataease.plugins.common.entity.GlobalTaskEntity;
|
|||||||
import io.dataease.plugins.common.entity.GlobalTaskInstance;
|
import io.dataease.plugins.common.entity.GlobalTaskInstance;
|
||||||
import io.dataease.plugins.common.entity.XpackGridRequest;
|
import io.dataease.plugins.common.entity.XpackGridRequest;
|
||||||
import io.dataease.plugins.common.service.PluginMenuService;
|
import io.dataease.plugins.common.service.PluginMenuService;
|
||||||
|
import io.dataease.plugins.xpack.email.dto.request.XpackEmailInstanceGridRequest;
|
||||||
|
import io.dataease.plugins.xpack.email.dto.request.XpackEmailTaskGridRequest;
|
||||||
import io.dataease.plugins.xpack.email.dto.request.XpackEmailTaskRequest;
|
import io.dataease.plugins.xpack.email.dto.request.XpackEmailTaskRequest;
|
||||||
import io.dataease.plugins.xpack.email.dto.request.XpackPixelEntity;
|
import io.dataease.plugins.xpack.email.dto.request.XpackPixelEntity;
|
||||||
import io.dataease.plugins.xpack.email.dto.response.XpackEmailTemplateDTO;
|
import io.dataease.plugins.xpack.email.dto.response.XpackEmailTemplateDTO;
|
||||||
@ -17,11 +19,11 @@ public abstract class EmailXpackService extends PluginMenuService {
|
|||||||
|
|
||||||
public abstract int save(XpackEmailTaskRequest request) throws Exception;
|
public abstract int save(XpackEmailTaskRequest request) throws Exception;
|
||||||
|
|
||||||
public abstract List<XpackTaskGridDTO> taskGrid(XpackGridRequest request);
|
public abstract List<XpackTaskGridDTO> taskGrid(XpackEmailTaskGridRequest request);
|
||||||
|
|
||||||
public abstract Boolean status(GlobalTaskEntity taskEntity);
|
public abstract Boolean status(GlobalTaskEntity taskEntity);
|
||||||
|
|
||||||
public abstract List<XpackTaskInstanceDTO> taskInstanceGrid(XpackGridRequest request);
|
public abstract List<XpackTaskInstanceDTO> taskInstanceGrid(XpackEmailInstanceGridRequest request);
|
||||||
|
|
||||||
public abstract void delete(Long taskId) throws Exception;
|
public abstract void delete(Long taskId) throws Exception;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user