import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { Task } from '../models/task'; @Injectable({ providedIn: 'root' }) export class TaskService { private url = 'http://localhost:8080/api'; constructor(private http: HttpClient) {} getTaskList(): Observable> { return this.http.get(`${this.url}/tasks`); } getTaskById(taskId: number): Observable { return this.http.get(`${this.url}/task/${taskId}`); } createTask(task: Partial) { this.http.post(`${this.url}/tasks`, task).subscribe(); } updateTask(id: number, task: Partial) { this.http.put(`${this.url}/task/${id}`, task).subscribe(); } completeTask(id: number) { this.http.post(`${this.url}/task/${id}/complete`, {}).subscribe(); } deleteTask(id: number) { this.http.delete(`${this.url}/task/${id}`).subscribe(); } }