job-manager.service.ts 1.1 KB
Newer Older
1 2
import { HttpClient } from "@angular/common/http";
import { Injectable } from "@angular/core";
vtduong0912's avatar
vtduong0912 committed
3
import { JobApi } from "../model/job-manager.model";
4 5 6 7 8 9 10 11 12
import { ResponseResult, Rows } from "../../../../../shared/data-access/interface/response.type";

@Injectable({
    providedIn: 'root'
})
export class JobManagerService {
    constructor(private _http: HttpClient) {}

    jobsGet(pageIndex: number = 1, pageSize: number = 5) {
vtduong0912's avatar
vtduong0912 committed
13
        return this._http.get<ResponseResult<Rows<JobApi.Response>>>('jobs', { 
14 15 16 17 18 19 20
            params: {
                page: pageIndex,
                take: pageSize
            }
        });
    }

vtduong0912's avatar
vtduong0912 committed
21
    jobsGetOne(id: string) {
vtduong0912's avatar
vtduong0912 committed
22
        return this._http.get<ResponseResult<JobApi.Response>>(`jobs/${id}`);
vtduong0912's avatar
vtduong0912 committed
23 24
    }

vtduong0912's avatar
vtduong0912 committed
25 26
    jobsPost(request: JobApi.Request) {
        return this._http.post<ResponseResult<JobApi.Request>>('jobs', request);
27 28
    }

vtduong0912's avatar
vtduong0912 committed
29
    jobsPut(id: string, request: JobApi.Request) {
vtduong0912's avatar
vtduong0912 committed
30
        return this._http.put<ResponseResult<JobApi.Request>>(`jobs/${id}`, request);
31 32
    }

vtduong0912's avatar
vtduong0912 committed
33
    jobsDelete(id: string) {
vtduong0912's avatar
vtduong0912 committed
34
        return this._http.delete<ResponseResult<JobApi.Request>>(`jobs/${id}`);
35 36
    }
}