Sfoglia il codice sorgente

✨ feat(api): adicionar funções de API para todos os módulos do sistema

Fase: dev | Origin: melhoria-interna
Gustavo Zanatta 1 settimana fa
parent
commit
662f37931e

+ 16 - 0
src/api/appointment.js

@@ -0,0 +1,16 @@
+import api from "src/api";
+
+export const getMyAppointments = async () => {
+  const { data } = await api.get("/appointment/my");
+  return data.payload;
+};
+
+export const createAppointment = async (appointment) => {
+  const { data } = await api.post("/appointment", appointment);
+  return data.payload;
+};
+
+export const cancelAppointment = async (id) => {
+  const { data } = await api.put(`/appointment/${id}`, { status: "cancelado" });
+  return data.payload;
+};

+ 7 - 0
src/api/category.js

@@ -0,0 +1,7 @@
+import api from "src/api";
+
+export const getCategories = async (type = null) => {
+  const params = type ? { type } : {};
+  const { data } = await api.get("/category", { params });
+  return data.payload;
+};

+ 6 - 0
src/api/dashboard.js

@@ -0,0 +1,6 @@
+import api from "src/api";
+
+export const getDashboardStats = async () => {
+  const { data } = await api.get("/dashboard/stats");
+  return data.payload;
+};

+ 11 - 0
src/api/notification.js

@@ -0,0 +1,11 @@
+import api from "src/api";
+
+export const getMyUnreadNotifications = async () => {
+  const { data } = await api.get("/notification/my/unread");
+  return data.payload;
+};
+
+export const markNotificationAsRead = async (sendId) => {
+  const { data } = await api.patch(`/notification/${sendId}/read`);
+  return data.payload;
+};

+ 47 - 0
src/api/partnerAgreement.js

@@ -0,0 +1,47 @@
+import api from "src/api";
+
+export const getPartnerAgreements = async () => {
+  const { data } = await api.get("/partner-agreement");
+  return data.payload;
+};
+
+export const getPartnerAgreement = async (id) => {
+  const { data } = await api.get(`/partner-agreement/${id}`);
+  return data.payload;
+};
+
+export const createPartnerAgreement = async (payload) => {
+  const { data } = await api.post("/partner-agreement", payload);
+  return data.payload;
+};
+
+export const updatePartnerAgreement = async (id, payload) => {
+  const { data } = await api.put(`/partner-agreement/${id}`, payload);
+  return data.payload;
+};
+
+export const deletePartnerAgreement = async (id) => {
+  await api.delete(`/partner-agreement/${id}`);
+};
+
+export const uploadPartnerLogo = async (id, file) => {
+  const form = new FormData();
+  form.append("logo", file);
+  const { data } = await api.post(`/partner-agreement/${id}/logo`, form, {
+    headers: { "Content-Type": "multipart/form-data" },
+  });
+  return data.payload;
+};
+
+export const uploadPartnerMedia = async (id, file) => {
+  const form = new FormData();
+  form.append("file", file);
+  const { data } = await api.post(`/partner-agreement/${id}/media`, form, {
+    headers: { "Content-Type": "multipart/form-data" },
+  });
+  return data.payload;
+};
+
+export const deletePartnerMedia = async (id, mediaId) => {
+  await api.delete(`/partner-agreement/${id}/media/${mediaId}`);
+};

+ 38 - 0
src/api/partnerAgreementService.js

@@ -0,0 +1,38 @@
+import api from "src/api";
+
+export const getServicesByPartner = async (partnerAgreementId) => {
+  const { data } = await api.get(`/partner-agreement-service/partner/${partnerAgreementId}`);
+  return data.payload;
+};
+
+export const getPartnerAgreementService = async (id) => {
+  const { data } = await api.get(`/partner-agreement-service/${id}`);
+  return data.payload;
+};
+
+export const createService = async (payload) => {
+  const { data } = await api.post("/partner-agreement-service", payload);
+  return data.payload;
+};
+
+export const updateService = async (id, payload) => {
+  const { data } = await api.put(`/partner-agreement-service/${id}`, payload);
+  return data.payload;
+};
+
+export const deleteService = async (id) => {
+  await api.delete(`/partner-agreement-service/${id}`);
+};
+
+export const uploadServiceMedia = async (id, file) => {
+  const form = new FormData();
+  form.append("file", file);
+  const { data } = await api.post(`/partner-agreement-service/${id}/media`, form, {
+    headers: { "Content-Type": "multipart/form-data" },
+  });
+  return data.payload;
+};
+
+export const deleteServiceMedia = async (id, mediaId) => {
+  await api.delete(`/partner-agreement-service/${id}/media/${mediaId}`);
+};

+ 6 - 0
src/api/position.js

@@ -0,0 +1,6 @@
+import api from "src/api";
+
+export const getPositions = async () => {
+  const { data } = await api.get("/position");
+  return data.payload;
+};

+ 26 - 0
src/api/profile.js

@@ -0,0 +1,26 @@
+import api from "src/api";
+
+export const updateProfile = async (id, data) => {
+  const { data: res } = await api.put(`/user/${id}`, data);
+  return res.payload;
+};
+
+export const getDependentsByUser = async (userId) => {
+  const { data } = await api.get(`/user-dependent/user/${userId}`);
+  return data.payload;
+};
+
+export const createDependent = async (dependent) => {
+  const { data } = await api.post("/user-dependent", dependent);
+  return data.payload;
+};
+
+export const updateDependent = async (id, dependent) => {
+  const { data } = await api.put(`/user-dependent/${id}`, dependent);
+  return data.payload;
+};
+
+export const deleteDependent = async (id) => {
+  const { data } = await api.delete(`/user-dependent/${id}`);
+  return data.payload;
+};

+ 6 - 0
src/api/sector.js

@@ -0,0 +1,6 @@
+import api from "src/api";
+
+export const getSectors = async () => {
+  const { data } = await api.get("/sector");
+  return data.payload;
+};

+ 16 - 0
src/api/storeItem.js

@@ -0,0 +1,16 @@
+import api from "src/api";
+
+export const getStoreItems = async () => {
+  const { data } = await api.get("/store-item");
+  return data.payload;
+};
+
+export const getMyInterests = async () => {
+  const { data } = await api.get("/store-item/my/interests");
+  return data.payload;
+};
+
+export const toggleInterest = async (id) => {
+  const { data } = await api.post(`/store-item/${id}/interest`);
+  return data.payload;
+};

+ 5 - 0
src/api/user.js

@@ -29,3 +29,8 @@ export const userTypes = async () => {
   const { data } = await api.get("/user/all/types");
   return data.payload;
 };
+
+export const getAssociados = async () => {
+  const users = await getUsers();
+  return users.filter((u) => u.type === "associado");
+};