|
@@ -67,6 +67,30 @@ class QueueJobLogEntity extends BaseEntity
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 获取每个任务的最新一次执行记录
|
|
|
|
|
+ */
|
|
|
|
|
+ public function getLatestPerJob(): array
|
|
|
|
|
+ {
|
|
|
|
|
+ $subQuery = $this->field('MAX(id) as max_id')
|
|
|
|
|
+ ->group('name')
|
|
|
|
|
+ ->buildSql();
|
|
|
|
|
+
|
|
|
|
|
+ $records = $this->where('id IN ' . $subQuery)
|
|
|
|
|
+ ->order('id', 'desc')
|
|
|
|
|
+ ->select()
|
|
|
|
|
+ ->toArray();
|
|
|
|
|
+
|
|
|
|
|
+ return array_map(function (array $record): array {
|
|
|
|
|
+ return [
|
|
|
|
|
+ 'name' => $record['name'],
|
|
|
|
|
+ 'last_time' => $record['create_time'],
|
|
|
|
|
+ 'duration' => $record['duration'],
|
|
|
|
|
+ 'success' => $record['success'],
|
|
|
|
|
+ ];
|
|
|
|
|
+ }, $records);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 删除单条日志
|
|
* 删除单条日志
|
|
|
*/
|
|
*/
|