New: Store Task StartTime, Show Duration in UI

This commit is contained in:
Qstick 2020-02-19 20:27:25 +00:00
parent 4f5a0b7afd
commit 16a23b9d79
12 changed files with 57 additions and 8 deletions

View file

@ -5,6 +5,7 @@
}
.lastExecution,
.lastDuration,
.nextExecution {
composes: cell from '~Components/Table/Cells/TableRowCell.css';

View file

@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
import React, { Component } from 'react';
import formatDate from 'Utilities/Date/formatDate';
import formatDateTime from 'Utilities/Date/formatDateTime';
import formatTimeSpan from 'Utilities/Date/formatTimeSpan';
import { icons } from 'Helpers/Props';
import SpinnerIconButton from 'Components/Link/SpinnerIconButton';
import TableRow from 'Components/Table/TableRow';
@ -91,6 +92,8 @@ class ScheduledTaskRow extends Component {
name,
interval,
lastExecution,
lastStartTime,
lastDuration,
nextExecution,
isQueued,
isExecuting,
@ -108,6 +111,7 @@ class ScheduledTaskRow extends Component {
const executeNow = !isDisabled && moment().isAfter(nextExecution);
const hasNextExecutionTime = !isDisabled && !executeNow;
const duration = moment.duration(interval, 'minutes').humanize().replace(/an?(?=\s)/, '1');
const hasLastStartTime = moment(lastStartTime).isAfter('2010-01-01');
return (
<TableRow>
@ -125,6 +129,21 @@ class ScheduledTaskRow extends Component {
{lastExecutionTime}
</TableRowCell>
{
!hasLastStartTime &&
<TableRowCell className={styles.lastDuration}>-</TableRowCell>
}
{
hasLastStartTime &&
<TableRowCell
className={styles.lastDuration}
title={lastDuration}
>
{formatTimeSpan(lastDuration)}
</TableRowCell>
}
{
isDisabled &&
<TableRowCell className={styles.nextExecution}>-</TableRowCell>
@ -169,6 +188,8 @@ ScheduledTaskRow.propTypes = {
name: PropTypes.string.isRequired,
interval: PropTypes.number.isRequired,
lastExecution: PropTypes.string.isRequired,
lastStartTime: PropTypes.string.isRequired,
lastDuration: PropTypes.string.isRequired,
nextExecution: PropTypes.string.isRequired,
isQueued: PropTypes.bool.isRequired,
isExecuting: PropTypes.bool.isRequired,

View file

@ -22,6 +22,11 @@ const columns = [
label: 'Last Execution',
isVisible: true
},
{
name: 'lastDuration',
label: 'Last Duration',
isVisible: true
},
{
name: 'nextExecution',
label: 'Next Execution',