reportTemplate.client.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. import httpClient from "@/services/httpClient";
  2. import type { ReportTemplateSave, ReportTemplatesResponse } from "@/types/report.types";
  3. import type { Response } from "@/types/response.types";
  4. import * as urlHelper from "@/libs/url.lib"
  5. const _url = urlHelper.withPrefix('/gw/user/reportTemplate')
  6. export async function save(reportTemplateSave: ReportTemplateSave): Promise<ReportTemplateSave> {
  7. const resp = await httpClient.put<Response<ReportTemplateSave>>(_url(""), reportTemplateSave);
  8. return resp.data.data
  9. }
  10. export async function tags(): Promise<string[]> {
  11. const resp = await httpClient.get<Response<string[]>>(_url("/tags"))
  12. return resp.data.data
  13. }
  14. export async function list(field?: string, keyword?: string, page?: number): Promise<ReportTemplatesResponse> {
  15. const params = { field, keyword, page }
  16. const resp = await httpClient.get<Response<ReportTemplatesResponse>>(_url(), { params });
  17. return resp.data.data
  18. }
  19. export async function remove(id: number): Promise<boolean> {
  20. const resp = await httpClient.delete<Response<boolean>>(_url(id))
  21. return resp.data.data
  22. }
  23. export async function get(id: number): Promise<ReportTemplateSave> {
  24. const resp = await httpClient.get<Response<ReportTemplateSave>>(_url(id));
  25. return resp.data.data;
  26. }