new exam progress update logic

This commit is contained in:
xiaomlove
2021-06-12 23:21:40 +08:00
parent 0e8ce200cd
commit 3eab502e31
12 changed files with 285 additions and 149 deletions

View File

@@ -25,7 +25,7 @@ class ExamResource extends JsonResource
'end' => $this->end,
'duration' => $this->duration ?: '',
'duration_text' => $this->duration_text,
'filters' => $this->filters,
'filters' => $this->normalizeFilters($this->resource),
'filters_formatted' => $this->formatFilters($this->resource),
'indexes' => $this->indexes,
'indexes_formatted' => $this->formatIndexes($this->resource),
@@ -36,6 +36,17 @@ class ExamResource extends JsonResource
];
}
private function normalizeFilters(Exam $exam)
{
$filters = $exam->filters;
foreach (Exam::$filters as $key => $value) {
if (!isset($filters->$key)) {
$filters->$key = [];
}
}
return $filters;
}
private function formatFilters(Exam $exam)
{
$currentFilters = $exam->filters;