fix add activite

This commit is contained in:
trochas
2026-01-10 11:31:24 +01:00
parent 864ea784b1
commit fca7362bb7
3 changed files with 23 additions and 21 deletions

View File

@@ -67,14 +67,14 @@ export const sessionService = {
// controller uses singular /session/* endpoints // controller uses singular /session/* endpoints
create: (data: any) => api.post(`/session/create`, data), create: (data: any) => api.post(`/session/create`, data),
getAll: () => api.get<SessionDTO[]>(`/session/all`), getAll: () => api.get<SessionDTO[]>(`/session/all`),
getById: (id: number | string) => api.get(`/session/${id}`), getById: (id: number | null) => api.get(`/session/${id}`),
delete: (id: number | string) => api.delete(`/session/delete/${id}`), delete: (id: number | null) => api.delete(`/session/delete/${id}`),
update: (id: number | string, data: any) => api.put(`/session/update/${id}`, data), update: (id: number | null, data: any) => api.put(`/session/update/${id}`, data),
getActivities: (sessionId: number | string) => api.get(`/session/${sessionId}/activities`), getActivities: (sessionId: number | null) => api.get<ActiviteDTO[]>(`/session/${sessionId}/activities`),
addActivity: (sessionId: number | string, activityId: number) => api.post(`/session/${sessionId}/activities/${activityId}`), addActivity: (sessionId: number | null, activityId: number) => api.post(`/session/${sessionId}/activities/${activityId}`),
subscribe: (sessionId: number | string, userId: number | string) => api.post(`/session/${sessionId}/subscribe`, { userId }), subscribe: (sessionId: number | null, userId: number | string) => api.post(`/session/${sessionId}/subscribe`, { userId }),
unsubscribe: (sessionId: number | string, userId: number | string) => api.post(`/session/${sessionId}/unsubscribe`, { userId }), unsubscribe: (sessionId: number | null, userId: number | string) => api.post(`/session/${sessionId}/unsubscribe`, { userId }),
}; };
export const coachService = { export const coachService = {

View File

@@ -4,7 +4,7 @@ import { dateToString, hoursToString } from "../edt";
import { Modal } from "../Modal"; import { Modal } from "../Modal";
import CreateActivite from "../createActivite"; import CreateActivite from "../createActivite";
import Loading from "../loading"; import Loading from "../loading";
import { addActiviteToSession, delay, deletActiviteFromSession, getSessionOfActivite } from "../../requetes"; import { addActiviteToSession, createActivityAPI, delay, deletActiviteFromSession, getSessionOfActivite } from "../../requetes";
type Props = { type Props = {
session:Session; session:Session;
@@ -31,9 +31,6 @@ function DetailSession({session,open,setOpen}:Props){
} }
async function updateActivites(){ async function updateActivites(){
//TODO
//await delay(2000);
//await updateActivitiesOfSessionAPI(session);
const newActivites = await getSessionOfActivite(session); const newActivites = await getSessionOfActivite(session);
if(newActivites!=null){ if(newActivites!=null){
session.activites=newActivites; session.activites=newActivites;
@@ -50,11 +47,16 @@ function DetailSession({session,open,setOpen}:Props){
},[open]) },[open])
function returnActivite(activite: Activite|null){ async function returnActivite(activite: Activite|null){
if(activite!==null){ if(activite!==null){
addActiviteToSession(session,activite); activite.session = session;
session.activites.push(activite); const newActivite = await createActivityAPI(activite);
setActivites([...session.activites]) await addActiviteToSession(session,newActivite);
if(newActivite!=null){
session.activites.push(newActivite);
setActivites([...session.activites])
}
} }
setOpen2(false); setOpen2(false);
} }

View File

@@ -94,23 +94,23 @@ export async function deletActiviteFromSession(activite:Activite){
} }
} }
export async function addActiviteToSession(session:Session,activite:Activite){ export async function addActiviteToSession(session:Session,activite:Activite):Promise<Boolean>{
try { try {
if(activite.id !=null && session.id !=null){ if(activite.id !=null && session.id !=null){
sessionService.addActivity(session.id,activite.id) await sessionService.addActivity(session.id,activite.id)
return true;
} }
return false
} catch (error) { } catch (error) {
console.error("Error getting session:", error); console.error("Error getting session:", error);
return false;
} }
} }
export async function updateActivitiesOfSessionAPI(session:Session){ export async function updateActivitiesOfSessionAPI(session:Session){
try { try {
const session_id = session.id
console.log("TEST:");
console.log(session.activites);
session.activites.forEach(activite => { session.activites.forEach(activite => {
console.log("FOR");
if(activite.id!=null){ if(activite.id!=null){
activiteService.update(activite.id, activite.toDTO()); activiteService.update(activite.id, activite.toDTO());
} }