await database.play.create({
data: {
date: new Date(gameSchema.datePlayed),
location: gameSchema.location,
duration: gameSchema.durationMinutes,
notes: gameSchema.extra,
userId: user.id,
game: {
connect: { id: gameSchema.gameId }, // Assuming gameId corresponds to the Game model's id
},
players: {
create: [
...gameSchema.players.map((player) => ({
player: {
connectOrCreate: {
where: {
OwnerIdBggUsername: {
ownerId: user.id,
bggUsername: player.bggUsername,
},
},
create: {
name: player.name,
bggUsername: player.bggUsername,
ownerId: user.id,
},
},
},
team: player.team,
score: player.score,
winner: player.won,
firstTime: player.firstTime,
})),
],
},
},
});
await database.play.create({
data: {
date: new Date(gameSchema.datePlayed),
location: gameSchema.location,
duration: gameSchema.durationMinutes,
notes: gameSchema.extra,
userId: user.id,
game: {
connect: { id: gameSchema.gameId }, // Assuming gameId corresponds to the Game model's id
},
players: {
create: [
...gameSchema.players.map((player) => ({
player: {
connectOrCreate: {
where: {
OwnerIdBggUsername: {
ownerId: user.id,
bggUsername: player.bggUsername,
},
},
create: {
name: player.name,
bggUsername: player.bggUsername,
ownerId: user.id,
},
},
},
team: player.team,
score: player.score,
winner: player.won,
firstTime: player.firstTime,
})),
],
},
},
});