Skip to content

Commit c636bde

Browse files
author
Mark S.
committed
Merge pull request #28 from houseoftech/master
Add progress field
2 parents 140f24a + 5907258 commit c636bde

File tree

3 files changed

+11
-0
lines changed

3 files changed

+11
-0
lines changed

Config/Schema/queue.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,12 @@ public function after($event = []) {
7171
'null' => true,
7272
'default' => null
7373
],
74+
'progress' => [
75+
'type' => 'float',
76+
'null' => true,
77+
'default' => null,
78+
'length' => '3,2'
79+
],
7480
'completed' => [
7581
'type' => 'datetime',
7682
'null' => true,

Config/Schema/schema.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public function after($event = []) {
4949
'created' => ['type' => 'datetime', 'null' => false, 'default' => null],
5050
'notbefore' => ['type' => 'datetime', 'null' => true, 'default' => null],
5151
'fetched' => ['type' => 'datetime', 'null' => true, 'default' => null],
52+
'progress' => ['type' => 'float', 'null' => true, 'default' => null, 'length' => '3,2'],
5253
'completed' => ['type' => 'datetime', 'null' => true, 'default' => null],
5354
'failed' => ['type' => 'integer', 'null' => false, 'default' => '0', 'length' => 3],
5455
'failure_message' => ['type' => 'text', 'null' => true, 'default' => null, 'collate' => 'utf8_unicode_ci', 'charset' => 'utf8'],

Model/QueuedTask.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,7 @@ protected function _findProgress($state, $query = [], $results = []) {
355355
$query['fields'] = [
356356
$this->alias . '.reference',
357357
'(CASE WHEN ' . $this->alias . '.notbefore > NOW() THEN \'NOT_READY\' WHEN ' . $this->alias . '.fetched IS null THEN \'NOT_STARTED\' WHEN ' . $this->alias . '.fetched IS NOT null AND ' . $this->alias . '.completed IS null AND ' . $this->alias . '.failed = 0 THEN \'IN_PROGRESS\' WHEN ' . $this->alias . '.fetched IS NOT null AND ' . $this->alias . '.completed IS null AND ' . $this->alias . '.failed > 0 THEN \'FAILED\' WHEN ' . $this->alias . '.fetched IS NOT null AND ' . $this->alias . '.completed IS NOT null THEN \'COMPLETED\' ELSE \'UNKNOWN\' END) AS status',
358+
$this->alias . '.progress',
358359
$this->alias . '.failure_message'
359360
];
360361
if (isset($query['conditions']['exclude'])) {
@@ -380,6 +381,9 @@ protected function _findProgress($state, $query = [], $results = []) {
380381
'reference' => $result[$this->alias]['reference'],
381382
'status' => $result[0]['status']
382383
];
384+
if (!empty($result[$this->alias]['progress'])) {
385+
$results[$k]['progress'] = $result[$this->alias]['progress'];
386+
}
383387
if (!empty($result[$this->alias]['failure_message'])) {
384388
$results[$k]['failure_message'] = $result[$this->alias]['failure_message'];
385389
}

0 commit comments

Comments
 (0)