Merge branch 'master' of https://codefirst.iut.uca.fr/git/Trek_Prod/Trek12_API
continuous-integration/drone/push Build is failing Details

master
Théo DUPIN 2 years ago
commit e7ba152332

@ -54,7 +54,7 @@ steps:
dockerfile: Sources/Trek12_API/Dockerfile dockerfile: Sources/Trek12_API/Dockerfile
context: Sources/ context: Sources/
registry: hub.codefirst.iut.uca.fr registry: hub.codefirst.iut.uca.fr
repo: hub.codefirst.iut.uca.fr/Trek_Prod/Trek12_API repo: hub.codefirst.iut.uca.fr/maxence.lanone/trek12_api
username: username:
from_secret: SECRET_REGISTRY_USERNAME from_secret: SECRET_REGISTRY_USERNAME
password: password:
@ -64,7 +64,7 @@ steps:
- name: deploy-container - name: deploy-container
image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest
environment: environment:
IMAGENAME: hub.codefirst.iut.uca.fr/Trek_Prod/Trek12_API:latest IMAGENAME: hub.codefirst.iut.uca.fr/maxence.lanone/trek12_api:latest
CONTAINERNAME: trek12api CONTAINERNAME: trek12api
COMMAND: create COMMAND: create
OVERWRITE: true OVERWRITE: true

@ -16,16 +16,16 @@ namespace Model
public DateOnly Date { get; set; } public DateOnly Date { get; set; }
public ReadOnlyCollection<Player> Players { get; private set; } public ReadOnlyCollection<Player> Players { get; private set; }
private List<Player> players = new(); private List<Player> players;
public ReadOnlyCollection<Turn> Turns { get; private set; } public ReadOnlyCollection<Turn> Turns { get; private set; }
private List<Turn> turns = new(); private List<Turn> turns;
public ReadOnlyDictionary<Player, Grille> Grilles { get; private set; } public ReadOnlyDictionary<Player, Grille> Grilles { get; private set; }
private readonly Dictionary<Player, Grille> grilles = new Dictionary<Player, Grille>(); private readonly Dictionary<Player, Grille> grilles;
public ReadOnlyDictionary<Player, int> Scores { get; private set; } public ReadOnlyDictionary<Player, int> Scores { get; private set; }
private readonly Dictionary<Player, int> scores = new Dictionary<Player, int>(); private readonly Dictionary<Player, int> scores;
public GameMode GameMode { get; set; } public GameMode GameMode { get; set; }
@ -45,6 +45,10 @@ namespace Model
public Game(DateOnly date, Player ?owner, GameMode gameMode, int id = 0) public Game(DateOnly date, Player ?owner, GameMode gameMode, int id = 0)
{ {
Date = date; Date = date;
players = new();
turns = new();
grilles = new Dictionary<Player, Grille>();
scores = new Dictionary<Player, int>();
Players = new ReadOnlyCollection<Player>(players); Players = new ReadOnlyCollection<Player>(players);
Grilles = new ReadOnlyDictionary<Player, Grille>(grilles); Grilles = new ReadOnlyDictionary<Player, Grille>(grilles);
Scores = new ReadOnlyDictionary<Player, int>(scores); Scores = new ReadOnlyDictionary<Player, int>(scores);
@ -56,6 +60,22 @@ namespace Model
Id = id; Id = id;
} }
public Game(int id, TimeSpan duration, DateOnly date, List<Player> players, List<Turn> turns, Dictionary<Player, Grille> grilles, Dictionary<Player, int> scores, GameMode gameMode)
{
Id = id;
Duration = duration;
Date = date;
this.players = players;
Players = new ReadOnlyCollection<Player>(this.players);
this.turns = turns;
Turns = new ReadOnlyCollection<Turn>(this.turns);
this.grilles = grilles;
Grilles = new ReadOnlyDictionary<Player, Grille>(this.grilles);
this.scores = scores;
Scores = new ReadOnlyDictionary<Player, int>(this.scores);
GameMode = gameMode;
}
public bool AddPlayerToGame(Player player) public bool AddPlayerToGame(Player player)
{ {
if(grilles.ContainsKey(player) == false && scores.ContainsKey(player) == false) if(grilles.ContainsKey(player) == false && scores.ContainsKey(player) == false)

@ -24,10 +24,9 @@ namespace Model
} }
private string name = ""; private string name = "";
public GameMode(string name, int id =0) public GameMode(int id =0)
{ {
this.Id = id; this.Id = id;
Name = name;
} }
} }
} }

@ -16,7 +16,7 @@ namespace Model
public int MaxZone { get; set; } public int MaxZone { get; set; }
public ReadOnlyCollection<Case> Cases { get; private set; } public ReadOnlyCollection<Case> Cases { get; private set; }
private List<Case> cases = new(); private List<Case> cases { get; set; }
//public Grille(List<Case> cases) //public Grille(List<Case> cases)
@ -26,13 +26,15 @@ namespace Model
public Grille(List<Case> cases) public Grille(List<Case> cases)
{ {
this.cases = new();
Cases = new ReadOnlyCollection<Case>(cases); Cases = new ReadOnlyCollection<Case>(cases);
cases.AddRange(Enumerable.Repeat(new Case(), 19)); cases.AddRange(Enumerable.Repeat(new Case(), 19));
} }
public Grille() public Grille()
{ {
this.cases = new();
Cases = new ReadOnlyCollection<Case>(this.cases);
} }
public bool AddValueToCase(int value, int index) public bool AddValueToCase(int value, int index)

@ -38,8 +38,9 @@ namespace Model
} }
private int diceValue2; private int diceValue2;
public Turn(int diceValue1, int diceValue2) public Turn(int Id, int diceValue1, int diceValue2)
{ {
this.Id = Id;
DiceValue1 = diceValue1; DiceValue1 = diceValue1;
DiceValue2 = diceValue2; DiceValue2 = diceValue2;
} }

@ -13,11 +13,11 @@ namespace Stub
{ {
private List<Game> games = new() private List<Game> games = new()
{ {
new Game(new DateOnly(2023,06,03), new Player("test1"),new GameMode("gamemode test1")), new Game(new DateOnly(2023,06,03), new Player("test1"),new GameMode()),
new Game(new DateOnly(2023,06,03), new Player("test2"),new GameMode("gamemode test2")), new Game(new DateOnly(2023,06,03), new Player("test2"),new GameMode()),
new Game(new DateOnly(2023,06,03), new Player("test3"),new GameMode("gamemode test3")), new Game(new DateOnly(2023,06,03), new Player("test3"),new GameMode()),
new Game(new DateOnly(2023,06,03), new Player("test4"),new GameMode("gamemode test4")), new Game(new DateOnly(2023,06,03), new Player("test4"),new GameMode()),
new Game(new DateOnly(2023,06,03), new Player("test5"),new GameMode("gamemode test5")), new Game(new DateOnly(2023,06,03), new Player("test5"),new GameMode()),
}; };

@ -0,0 +1,48 @@
using Microsoft.AspNetCore.Mvc.ModelBinding;
using Model;
using System.Runtime.CompilerServices;
using Trek12_API.DTO;
namespace Trek12_API.Converter
{
public static class CaseConverter
{
public static CaseDTO toDTO(this Case caseToConvert)
{
CaseDTO dto = new CaseDTO();
dto.Id = caseToConvert.Id;
dto.Value = caseToConvert.Valeur;
return dto;
}
public static List<CaseDTO> toDTOs(this List<Case> listParam)
{
List<CaseDTO> list = new List<CaseDTO>();
foreach(var caseToConvert in listParam)
{
list.Add(caseToConvert.toDTO());
}
return list;
}
public static List<Case> toModels(this List<CaseDTO> listParam)
{
List<Case> list = new List<Case>();
foreach (var caseToConvert in listParam)
{
list.Add(caseToConvert.toModel());
}
return list;
}
public static Case toModel(this CaseDTO caseToConvert)
{
Case model = new Case();
model.Id = caseToConvert.Id;
model.Valeur = caseToConvert.Value;
return model;
}
}
}

@ -1,5 +1,4 @@
using Model; using Model;
using System.Collections.Generic;
using Trek12_API.DTO; using Trek12_API.DTO;
namespace Trek12_API.Converter namespace Trek12_API.Converter
@ -38,38 +37,36 @@ namespace Trek12_API.Converter
return gameDTO; return gameDTO;
} }
/*public static Game toModel(this GameDTO gameDTO) public static Game toModel(this GameDTO gameDTO)
{ {
{ {
var game = new Game(); var turnsList = new List<Turn>();
game.Duration = gameDTO.Duration; foreach (var turn in gameDTO.Turns)
game.Date = gameDTO.Date;
game.Turns = new List<Turn>();
foreach (var turn in game.Turns)
{ {
gameDTO.Turns.Add(turn.toDTO()); turnsList.Add(turn.toModel());
} }
gameDTO.Grilles = new Dictionary<PlayerDTO, GrilleDTO>();
foreach (var grille in game.Grilles) var playersList = new List<Player>();
foreach (var player in gameDTO.Players)
{ {
gameDTO.Grilles.Add(grille.Key.toDTO(), grille.Value.toDTO()); playersList.Add(player.toModel());
} }
gameDTO.Scores = new Dictionary<PlayerDTO, int>();
foreach (var score in game.Scores) var grillesDict = new Dictionary<Player, Grille>();
foreach (var (key, value) in gameDTO.Grilles)
{ {
gameDTO.Scores.Add(score.Key.toDTO(), score.Value); grillesDict.Add(key.toModel(), value.toModel());
} }
gameDTO.Players = new List<PlayerDTO>();
foreach (var player in game.Players) var scoresDict = new Dictionary<Player, int>();
foreach (var (key, value) in gameDTO.Scores)
{ {
gameDTO.Players.Add(player.toDTO()); scoresDict.Add(key.toModel(), value);
}
var game = new Game(gameDTO.Id, gameDTO.Duration, gameDTO.Date, playersList, turnsList, grillesDict, scoresDict, gameDTO.GameMode.toModel());
return game;
}
} }
gameDTO.GameMode = new GamemodeDTO()
{
Id = game.GameMode.Id,
Name = game.GameMode.Name
};
return gameDTO;
}*/
} }
} }

@ -13,5 +13,14 @@ namespace Trek12_API.Converter
Name = gameMode.Name, Name = gameMode.Name,
}; };
} }
public static GameMode toModel( this GamemodeDTO gamemode)
{
return new GameMode()
{
Id = gamemode.Id,
Name = gamemode.Name
};
}
} }
} }

@ -1,4 +1,5 @@
using Model; using Model;
using System.Runtime.CompilerServices;
using Trek12_API.DTO; using Trek12_API.DTO;
namespace Trek12_API.Converter namespace Trek12_API.Converter
@ -13,8 +14,31 @@ namespace Trek12_API.Converter
NbChaines = grille.NbChaine, NbChaines = grille.NbChaine,
NbZones = grille.NbZone, NbZones = grille.NbZone,
MaxChaines = grille.MaxChaine, MaxChaines = grille.MaxChaine,
MaxZones = grille.MaxZone MaxZones = grille.MaxZone,
}; };
} }
public static Grille toModel(this GrilleDTO grilleDTO)
{
return new Grille(grilleDTO.Cases.toModels())
{
Id = grilleDTO.Id,
NbChaine = grilleDTO.NbChaines,
NbZone = grilleDTO.NbZones,
MaxChaine = grilleDTO.MaxChaines,
MaxZone = grilleDTO.MaxZones
};
}
public static IEnumerable<Grille> toModels(this IEnumerable<GrilleDTO> grilles)
{
var grilleModels = new List<Grille>();
foreach( var grille in grilles)
{
grilleModels.Add(grille.toModel());
}
return grilleModels;
}
} }
} }

@ -14,5 +14,20 @@ namespace Trek12_API.Converter
diceValue2 = turn.DiceValue2, diceValue2 = turn.DiceValue2,
}; };
} }
public static Turn toModel(this TurnDTO turnDTO)
{
return new Turn(turnDTO.Id, turnDTO.diceValue1, turnDTO.diceValue2);
}
public static IEnumerable<Turn> toModels(this IEnumerable<TurnDTO> turns)
{
var turnsList = new List<Turn>();
foreach(var turn in turns)
{
turnsList.Add(turn.toModel());
}
return turnsList;
}
} }
} }

@ -0,0 +1,8 @@
namespace Trek12_API.DTO
{
public class CaseDTO
{
public int Id { get; set; }
public int Value { get; set; }
}
}

@ -1,4 +1,6 @@
namespace Trek12_API.DTO using Model;
namespace Trek12_API.DTO
{ {
public class GrilleDTO public class GrilleDTO
{ {
@ -7,5 +9,7 @@
public int NbZones { get; set; } public int NbZones { get; set; }
public int MaxChaines { get; set; } public int MaxChaines { get; set; }
public int MaxZones { get; set; } public int MaxZones { get; set; }
public List<CaseDTO> Cases { get; set; }
} }
} }

Loading…
Cancel
Save