source: frontend/src/api/discipline.js@ c0086c0

Last change on this file since c0086c0 was 545738f, checked in by Andrej <asumanovski@…>, 2 weeks ago

Switched to dockerized db and improved Task model and Task Ui

  • Property mode set to 100644
File size: 2.6 KB
Line 
1import api from "./axios";
2
3export async function getDisciplineStatus() {
4 const res = await api.get("/discipline/status");
5 return Boolean(res?.data?.tracking);
6}
7
8export async function startDisciplineTracking() {
9 return api.post("/discipline/start", {});
10}
11
12export async function getTasks({ page = 0, size = 50 } = {}) {
13 const res = await api.get("/discipline/tasks", { params: { page, size } });
14 return res?.data;
15}
16
17export async function createTask(payload) {
18 const res = await api.post("/discipline/tasks", payload);
19 return res?.data;
20}
21
22export async function updateTask(taskId, payload) {
23 const res = await api.put(`/discipline/tasks/${taskId}`, payload);
24 return res?.data;
25}
26
27export async function updateTaskFinished(taskId, isFinished) {
28 const res = await api.patch(`/discipline/tasks/${taskId}/finished`, {
29 isFinished,
30 });
31 return res?.data;
32}
33
34export async function deleteTask(taskId) {
35 return api.delete(`/discipline/tasks/${taskId}`);
36}
37
38export async function getCustomTrackingCategories() {
39 const res = await api.get("/discipline/custom-tracking-categories");
40 return res?.data;
41}
42
43export async function createCustomTrackingCategory(payload) {
44 const res = await api.post("/discipline/custom-tracking-categories", payload);
45 return res?.data;
46}
47
48export async function getCustomCategoryTasks(customTrackingId) {
49 const res = await api.get(
50 `/discipline/custom-tracking-categories/${customTrackingId}/tasks`
51 );
52 return res?.data;
53}
54
55export async function createCustomCategoryTask(customTrackingId, payload) {
56 const res = await api.post(
57 `/discipline/custom-tracking-categories/${customTrackingId}/tasks`,
58 payload
59 );
60 return res?.data;
61}
62
63export async function updateCustomCategoryTask(customTrackingId, taskId, payload) {
64 const res = await api.put(
65 `/discipline/custom-tracking-categories/${customTrackingId}/tasks/${taskId}`,
66 payload
67 );
68 return res?.data;
69}
70
71export async function updateCustomCategoryTaskFinished(
72 customTrackingId,
73 taskId,
74 isFinished
75) {
76 const res = await api.patch(
77 `/discipline/custom-tracking-categories/${customTrackingId}/tasks/${taskId}/finished`,
78 { isFinished }
79 );
80 return res?.data;
81}
82
83export async function updateCustomCategoryTaskStatus(customTrackingId, taskId, status) {
84 const res = await api.patch(
85 `/discipline/custom-tracking-categories/${customTrackingId}/tasks/${taskId}/status`,
86 { status }
87 );
88 return res?.data;
89}
90
91export async function deleteCustomCategoryTask(customTrackingId, taskId) {
92 return api.delete(
93 `/discipline/custom-tracking-categories/${customTrackingId}/tasks/${taskId}`
94 );
95}
96
Note: See TracBrowser for help on using the repository browser.