Michael Shamoon 0e34923114 Revert "Merge branch 'feature-frontend-task-queue' of github.com:paperless-ngx/paperless-ngx into feature-frontend-task-queue"
This reverts commit 011164bc32e639189bf9c7be0665199b61734e77, reversing
changes made to 0a43ce9cedf5158f21bb6f9ecc6ba2fdab205a1e.
2022-05-26 21:24:55 -07:00

67 lines
1.6 KiB
TypeScript

import { HttpClient } from '@angular/common/http'
import { Injectable } from '@angular/core'
import { first, map } from 'rxjs/operators'
import {
PaperlessTask,
PaperlessTaskStatus,
PaperlessTaskType,
} from 'src/app/data/paperless-task'
import { environment } from 'src/environments/environment'
@Injectable({
providedIn: 'root',
})
export class TasksService {
private baseUrl: string = environment.apiBaseUrl
loading: boolean
private fileTasks: PaperlessTask[] = []
public get total(): number {
return this.fileTasks?.length
}
public get incompleteFileTasks(): PaperlessTask[] {
return this.fileTasks.filter(
(t) => t.status == PaperlessTaskStatus.Incomplete
)
}
public get completedFileTasks(): PaperlessTask[] {
return this.fileTasks.filter(
(t) => t.status == PaperlessTaskStatus.Complete
)
}
public get failedFileTasks(): PaperlessTask[] {
return this.fileTasks.filter((t) => t.status == PaperlessTaskStatus.Failed)
}
constructor(private http: HttpClient) {}
public reload() {
this.loading = true
this.http
.get<PaperlessTask[]>(`${this.baseUrl}tasks/`)
.pipe(first())
.subscribe((r) => {
this.fileTasks = r.filter((t) => t.type == PaperlessTaskType.File) // they're all File tasks, for now
this.loading = false
return true
})
}
public dismissTasks(task_ids: Set<number>) {
this.http
.post(`${this.baseUrl}acknowledge_tasks/`, {
tasks: [...task_ids],
})
.pipe(first())
.subscribe((r) => {
this.reload()
})
}
}