Fix: actions to have room_id

This commit is contained in:
Grail Finder
2025-07-06 07:31:29 +03:00
parent f46cbff602
commit e9b9b9e559
3 changed files with 11 additions and 2 deletions

View File

@ -109,6 +109,7 @@ func HandleShowColor(w http.ResponseWriter, r *http.Request) {
fi.Room.IsOver = true fi.Room.IsOver = true
fi.Room.TeamWon = oppositeColor fi.Room.TeamWon = oppositeColor
action := models.Action{ action := models.Action{
RoomID: fi.Room.ID,
Actor: fi.State.Username, Actor: fi.State.Username,
ActorColor: string(fi.State.Team), ActorColor: string(fi.State.Team),
WordColor: models.WordColorBlack, WordColor: models.WordColorBlack,
@ -134,6 +135,7 @@ func HandleShowColor(w http.ResponseWriter, r *http.Request) {
fi.Room.IsOver = true fi.Room.IsOver = true
fi.Room.TeamWon = "blue" fi.Room.TeamWon = "blue"
action := models.Action{ action := models.Action{
RoomID: fi.Room.ID,
Actor: fi.State.Username, Actor: fi.State.Username,
ActorColor: string(fi.State.Team), ActorColor: string(fi.State.Team),
WordColor: models.WordColorBlue, WordColor: models.WordColorBlue,
@ -148,6 +150,7 @@ func HandleShowColor(w http.ResponseWriter, r *http.Request) {
fi.Room.IsOver = true fi.Room.IsOver = true
fi.Room.TeamWon = "red" fi.Room.TeamWon = "red"
action := models.Action{ action := models.Action{
RoomID: fi.Room.ID,
Actor: fi.State.Username, Actor: fi.State.Username,
ActorColor: string(fi.State.Team), ActorColor: string(fi.State.Team),
WordColor: models.WordColorRed, WordColor: models.WordColorRed,
@ -163,6 +166,7 @@ func HandleShowColor(w http.ResponseWriter, r *http.Request) {
fi.Room.IsOver = true fi.Room.IsOver = true
fi.Room.TeamWon = fi.State.Team fi.Room.TeamWon = fi.State.Team
action := models.Action{ action := models.Action{
RoomID: fi.Room.ID,
Actor: fi.State.Username, Actor: fi.State.Username,
ActorColor: string(fi.State.Team), ActorColor: string(fi.State.Team),
WordColor: models.WordColorRed, WordColor: models.WordColorRed,

View File

@ -173,6 +173,8 @@ func HandleStartGame(w http.ResponseWriter, r *http.Request) {
fi.Room.UpdateCounter() fi.Room.UpdateCounter()
fi.Room.TeamWon = "" fi.Room.TeamWon = ""
action := models.Action{ action := models.Action{
RoomID: fi.Room.ID,
CreatedAt: time.Now(),
Actor: fi.State.Username, Actor: fi.State.Username,
ActorColor: string(fi.State.Team), ActorColor: string(fi.State.Team),
WordColor: string(fi.State.Team), WordColor: string(fi.State.Team),
@ -188,8 +190,6 @@ func HandleStartGame(w http.ResponseWriter, r *http.Request) {
// return // return
// } // }
// Save action history // Save action history
action.RoomID = fi.Room.ID
action.CreatedAt = time.Now()
if err := repo.ActionCreate(ctx, &action); err != nil { if err := repo.ActionCreate(ctx, &action); err != nil {
if err := tx.Rollback(); err != nil { if err := tx.Rollback(); err != nil {
log.Error("failed to rollback transaction", "error", err) log.Error("failed to rollback transaction", "error", err)

View File

@ -79,6 +79,7 @@ func (b *Bot) checkGuess(word string, room *models.Room) error {
room.RevealSpecificWord(word) room.RevealSpecificWord(word)
room.UpdateCounter() room.UpdateCounter()
action := models.Action{ action := models.Action{
RoomID: room.ID,
Actor: b.BotName, Actor: b.BotName,
ActorColor: b.Team, ActorColor: b.Team,
WordColor: string(color), WordColor: string(color),
@ -108,6 +109,7 @@ func (b *Bot) checkGuess(word string, room *models.Room) error {
room.OpenedThisTurn = 0 room.OpenedThisTurn = 0
room.ThisTurnLimit = 0 room.ThisTurnLimit = 0
action := models.Action{ action := models.Action{
RoomID: room.ID,
Actor: b.BotName, Actor: b.BotName,
ActorColor: string(b.Team), ActorColor: string(b.Team),
WordColor: models.WordColorBlack, WordColor: models.WordColorBlack,
@ -130,6 +132,7 @@ func (b *Bot) checkGuess(word string, room *models.Room) error {
room.OpenedThisTurn = 0 room.OpenedThisTurn = 0
room.ThisTurnLimit = 0 room.ThisTurnLimit = 0
action := models.Action{ action := models.Action{
RoomID: room.ID,
Actor: b.BotName, Actor: b.BotName,
ActorColor: string(b.Team), ActorColor: string(b.Team),
WordColor: models.WordColorBlack, WordColor: models.WordColorBlack,
@ -145,6 +148,7 @@ func (b *Bot) checkGuess(word string, room *models.Room) error {
room.OpenedThisTurn = 0 room.OpenedThisTurn = 0
room.ThisTurnLimit = 0 room.ThisTurnLimit = 0
action := models.Action{ action := models.Action{
RoomID: room.ID,
Actor: b.BotName, Actor: b.BotName,
ActorColor: string(b.Team), ActorColor: string(b.Team),
WordColor: models.WordColorBlack, WordColor: models.WordColorBlack,
@ -232,6 +236,7 @@ func (b *Bot) BotMove() {
return return
} }
action := models.Action{ action := models.Action{
RoomID: room.ID,
Actor: b.BotName, Actor: b.BotName,
ActorColor: b.Team, ActorColor: b.Team,
WordColor: b.Team, WordColor: b.Team,