فهرست منبع

feat(sync-workout-sessions): enhance workout session synchronization by adding detailed set properties and updating session data structure for better accuracy and completeness

Mathias 10 ماه پیش
والد
کامیت
3e002e7a07
1فایلهای تغییر یافته به همراه22 افزوده شده و 5 حذف شده
  1. 22 5
      src/features/workout-session/actions/sync-workout-sessions.action.ts

+ 22 - 5
src/features/workout-session/actions/sync-workout-sessions.action.ts

@@ -49,12 +49,19 @@ export const syncWorkoutSessionAction = actionClient.schema(syncWorkoutSessionSc
         ...sessionData,
         exercises: {
           create: session.exercises.map((exercise) => ({
-            id: exercise.id,
             order: exercise.order,
             exercise: { connect: { id: exercise.id } },
             sets: {
               create: exercise.sets.map((set) => ({
-                ...set,
+                setIndex: set.setIndex,
+                types: set.types,
+                valueInt: set.valueInt,
+                valuesInt: set.valuesInt,
+                valueSec: set.valueSec,
+                valuesSec: set.valuesSec,
+                unit: set.unit,
+                units: set.units,
+                completed: set.completed,
                 type: set.types && set.types.length > 0 ? set.types[0] : "NA",
               })),
             },
@@ -62,16 +69,26 @@ export const syncWorkoutSessionAction = actionClient.schema(syncWorkoutSessionSc
         },
       },
       update: {
-        ...sessionData,
+        startedAt: sessionData.startedAt,
+        endedAt: sessionData.endedAt,
+        userId: sessionData.userId,
+        // 1. Supprimer les exercices existants (et donc les sets en cascade)
         exercises: {
           deleteMany: {},
           create: session.exercises.map((exercise) => ({
-            id: exercise.id,
             order: exercise.order,
             exercise: { connect: { id: exercise.id } },
             sets: {
               create: exercise.sets.map((set) => ({
-                ...set,
+                setIndex: set.setIndex,
+                types: set.types,
+                valueInt: set.valueInt,
+                valuesInt: set.valuesInt,
+                valueSec: set.valueSec,
+                valuesSec: set.valuesSec,
+                unit: set.unit,
+                units: set.units,
+                completed: set.completed,
                 type: set.types && set.types.length > 0 ? set.types[0] : "NA",
               })),
             },