Change entry for 2024 scouting

Signed-off-by: Emily Markova <emily.markova@gmail.com>
Change-Id: I37ffab8a4e80628c0c50361a4c8ae69900c5b0b9
diff --git a/scouting/webserver/requests/messages/submit_2024_actions.fbs b/scouting/webserver/requests/messages/submit_2024_actions.fbs
index 5cb3cbe..61e36bc 100644
--- a/scouting/webserver/requests/messages/submit_2024_actions.fbs
+++ b/scouting/webserver/requests/messages/submit_2024_actions.fbs
@@ -15,7 +15,9 @@
     mobility:bool (id:0);
 }
 
-table PenaltyAction {}
+table PenaltyAction {
+    penalties: int (id:0);
+}
 
 table PickupNoteAction {
     auto:bool (id:0);
diff --git a/scouting/webserver/requests/requests.go b/scouting/webserver/requests/requests.go
index 75b438b..31ad4e3 100644
--- a/scouting/webserver/requests/requests.go
+++ b/scouting/webserver/requests/requests.go
@@ -199,8 +199,7 @@
 }
 
 func (handler requestAllMatchesHandler) teamHasBeenDataScouted(key MatchAssemblyKey, teamNumber string) (bool, error) {
-	// TODO change this to reference 2024 stats
-	stats, err := handler.db.ReturnStats2023ForTeam(
+	stats, err := handler.db.ReturnStats2024ForTeam(
 		teamNumber, key.MatchNumber, key.SetNumber, key.CompLevel, false)
 	if err != nil {
 		return false, err
@@ -480,7 +479,7 @@
 		} else if action_type == submit_2024_actions.ActionTypePenaltyAction {
 			var penaltyAction submit_2024_actions.PenaltyAction
 			penaltyAction.Init(actionTable.Bytes, actionTable.Pos)
-			stat.Penalties += 1
+			stat.Penalties += penaltyAction.Penalties()
 
 		} else if action_type == submit_2024_actions.ActionTypePickupNoteAction {
 			var pick_up_action submit_2024_actions.PickupNoteAction
@@ -1165,12 +1164,12 @@
 
 	err = handler.db.AddToStats2024(stats)
 	if err != nil {
-		respondWithError(w, http.StatusInternalServerError, fmt.Sprint("Failed to submit stats: ", stats, ": ", err))
+		respondWithError(w, http.StatusInternalServerError, fmt.Sprint("Failed to submit stats2024: ", stats, ": ", err))
 		return
 	}
 
 	builder := flatbuffers.NewBuilder(50 * 1024)
-	builder.Finish((&SubmitActionsResponseT{}).Pack(builder))
+	builder.Finish((&Submit2024ActionsResponseT{}).Pack(builder))
 	w.Write(builder.FinishedBytes())
 }
 
diff --git a/scouting/webserver/requests/requests_test.go b/scouting/webserver/requests/requests_test.go
index 67244d3..eb5e904 100644
--- a/scouting/webserver/requests/requests_test.go
+++ b/scouting/webserver/requests/requests_test.go
@@ -131,30 +131,22 @@
 			},
 		},
 		// Pretend that we have some data scouting data.
-		stats2023: []db.Stats2023{
+		stats2024: []db.Stats2024{
 			{
-				TeamNumber: "5", MatchNumber: 1, SetNumber: 1,
-				CompLevel: "qm", StartingQuadrant: 3, LowCubesAuto: 10,
-				MiddleCubesAuto: 1, HighCubesAuto: 1, CubesDroppedAuto: 0,
-				LowConesAuto: 1, MiddleConesAuto: 2, HighConesAuto: 1,
-				ConesDroppedAuto: 0, LowCubes: 1, MiddleCubes: 1,
-				HighCubes: 2, CubesDropped: 1, LowCones: 1,
-				MiddleCones: 2, HighCones: 0, ConesDropped: 1, SuperchargedPieces: 0,
-				AvgCycle: 34, Mobility: false, DockedAuto: true, EngagedAuto: true,
-				BalanceAttemptAuto: false, Docked: false, Engaged: false,
-				BalanceAttempt: false, CollectedBy: "alex",
+				PreScouting: false, TeamNumber: "5",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm", StartingQuadrant: 3,
+				SpeakerAuto: 2, AmpAuto: 4, NotesDroppedAuto: 1, MobilityAuto: true,
+				Speaker: 0, Amp: 1, SpeakerAmplified: 2, AmpAmplified: 1,
+				NotesDropped: 0, Penalties: 01, TrapNote: true, AvgCycle: 233,
+				Park: false, OnStage: true, Harmony: false, CollectedBy: "alex",
 			},
 			{
-				TeamNumber: "973", MatchNumber: 3, SetNumber: 1,
-				CompLevel: "qm", StartingQuadrant: 1, LowCubesAuto: 0,
-				MiddleCubesAuto: 1, HighCubesAuto: 1, CubesDroppedAuto: 2,
-				LowConesAuto: 0, MiddleConesAuto: 0, HighConesAuto: 0,
-				ConesDroppedAuto: 1, LowCubes: 0, MiddleCubes: 0,
-				HighCubes: 1, CubesDropped: 0, LowCones: 0,
-				MiddleCones: 2, HighCones: 1, ConesDropped: 1, SuperchargedPieces: 0,
-				AvgCycle: 53, Mobility: true, DockedAuto: true, EngagedAuto: false,
-				BalanceAttemptAuto: false, Docked: false, Engaged: false,
-				BalanceAttempt: true, CollectedBy: "bob",
+				PreScouting: false, TeamNumber: "973",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm", StartingQuadrant: 1,
+				SpeakerAuto: 0, AmpAuto: 2, NotesDroppedAuto: 0, MobilityAuto: false,
+				Speaker: 0, Amp: 4, SpeakerAmplified: 3, AmpAmplified: 1,
+				NotesDropped: 0, Penalties: 1, TrapNote: true, AvgCycle: 120,
+				Park: true, OnStage: false, Harmony: false, CollectedBy: "bob",
 			},
 		},
 	}
@@ -416,8 +408,10 @@
 			},
 			{
 				ActionTaken: &submit_2024_actions.ActionTypeT{
-					Type:  submit_2024_actions.ActionTypePenaltyAction,
-					Value: &submit_2024_actions.PenaltyActionT{},
+					Type: submit_2024_actions.ActionTypePenaltyAction,
+					Value: &submit_2024_actions.PenaltyActionT{
+						Penalties: 5,
+					},
 				},
 				Timestamp: 2400,
 			},
@@ -485,7 +479,7 @@
 		MatchNumber: 3, SetNumber: 1, CompLevel: "quals", StartingQuadrant: 2,
 		SpeakerAuto: 0, AmpAuto: 1, NotesDroppedAuto: 1, MobilityAuto: true,
 		Speaker: 0, Amp: 0, SpeakerAmplified: 1, AmpAmplified: 1,
-		NotesDropped: 0, Penalties: 1, TrapNote: false, AvgCycle: 950,
+		NotesDropped: 0, Penalties: 5, TrapNote: false, AvgCycle: 950,
 		Park: false, OnStage: false, Harmony: true, CollectedBy: "",
 	}