Compare commits
No commits in common. 'main' and 'WORK-APE' have entirely different histories.
@ -1,81 +0,0 @@
|
|||||||
kind: pipeline
|
|
||||||
type: docker
|
|
||||||
name: HeartTrack-Admin-CI
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
event:
|
|
||||||
- push
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build
|
|
||||||
image: mcr.microsoft.com/dotnet/sdk:6.0
|
|
||||||
commands:
|
|
||||||
- cd Sources/HeartTrack/
|
|
||||||
- dotnet restore HeartTrack.sln
|
|
||||||
- dotnet build HeartTrack.sln -c Release --no-restore
|
|
||||||
- dotnet publish HeartTrack.sln -c Release --no-restore -o CI_PROJECT_DIR/build/release
|
|
||||||
|
|
||||||
- name: tests
|
|
||||||
image: mcr.microsoft.com/dotnet/sdk:6.0
|
|
||||||
commands:
|
|
||||||
- cd Sources/HeartTrack/
|
|
||||||
- dotnet restore HeartTrack.sln
|
|
||||||
- dotnet test HeartTrack.sln --no-restore
|
|
||||||
depends_on: [build]
|
|
||||||
|
|
||||||
- name: code-analysis
|
|
||||||
image: hub.codefirst.iut.uca.fr/marc.chevaldonne/codefirst-dronesonarplugin-dotnet8
|
|
||||||
secrets: [ SECRET_SONAR_LOGIN ]
|
|
||||||
settings:
|
|
||||||
sonar_host: https://codefirst.iut.uca.fr/sonar/
|
|
||||||
sonar_token:
|
|
||||||
from_secret: SECRET_SONAR_LOGIN
|
|
||||||
project_key: HeartTrack-API
|
|
||||||
coverage_exclusions: Tests/**, StubbedContextLib/**, StubAPI/**
|
|
||||||
duplication_exclusions: Tests/**, StubbedContextLib/**
|
|
||||||
commands:
|
|
||||||
- cd Sources/HeartTrack/
|
|
||||||
- dotnet restore HeartTrack.sln
|
|
||||||
- dotnet sonarscanner begin /k:HeartTrack-API /d:sonar.host.url=$${PLUGIN_SONAR_HOST} /d:sonar.login=$${PLUGIN_SONAR_TOKEN} /d:sonar.coverage.exclusions="Tests/**, StubbedContextLib/**, StubAPI/**, HeartTrackAPI/Utils/**" /d:sonar.cpd.exclusions="Tests/**, StubbedContextLib/**, StubAPI/**" /d:sonar.coverageReportPaths="coveragereport/SonarQube.xml"
|
|
||||||
- dotnet build HeartTrack.sln -c Release --no-restore
|
|
||||||
- dotnet test HeartTrack.sln --logger trx --no-restore /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura --collect "XPlat Code Coverage"
|
|
||||||
- reportgenerator -reports:"**/coverage.cobertura.xml" -reporttypes:SonarQube -targetdir:"coveragereport"
|
|
||||||
- dotnet publish HeartTrack.sln -c Release --no-restore -o $CI_PROJECT_DIR/build/release
|
|
||||||
- dotnet sonarscanner end /d:sonar.login=$${PLUGIN_SONAR_TOKEN}
|
|
||||||
depends_on: [ tests ]
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
||||||
kind: pipeline
|
|
||||||
type: docker
|
|
||||||
name: HeartTrack-Admin-CD
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
event:
|
|
||||||
- push
|
|
||||||
steps:
|
|
||||||
|
|
||||||
- name: docker-build-and-push
|
|
||||||
image: plugins/docker
|
|
||||||
settings:
|
|
||||||
dockerfile: Sources/HeartTrack/Dockerfile
|
|
||||||
context: Sources/HeartTrack/
|
|
||||||
registry: hub.codefirst.iut.uca.fr
|
|
||||||
repo: hub.codefirst.iut.uca.fr/david.d_almeida/admin
|
|
||||||
username:
|
|
||||||
from_secret: SECRET_REGISTRY_USERNAME
|
|
||||||
password:
|
|
||||||
from_secret: SECRET_REGISTRY_PASSWORD
|
|
||||||
|
|
||||||
# database container admin
|
|
||||||
- name: deploy-container-admin
|
|
||||||
image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-dockerproxy-clientdrone:latest
|
|
||||||
environment:
|
|
||||||
CODEFIRST_CLIENTDRONE_ENV_TYPE: ADMIN
|
|
||||||
IMAGENAME: hub.codefirst.iut.uca.fr/david.d_almeida/admin:latest
|
|
||||||
CONTAINERNAME: heart_track_admin
|
|
||||||
COMMAND: create
|
|
||||||
ADMINS: davidd_almeida,kevinmonteiro,antoineperederii,paullevrault,antoinepinagot,nicolasraymond,marcchevaldonne
|
|
||||||
OVERWRITE: true
|
|
||||||
depends_on: [ docker-build-and-push ]
|
|
@ -1,20 +0,0 @@
|
|||||||
# Utiliser l'image SDK .NET pour construire l'application
|
|
||||||
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
# Copier les fichiers du projet et restaurer les dépendances
|
|
||||||
COPY *.csproj .
|
|
||||||
RUN dotnet restore
|
|
||||||
|
|
||||||
# Copier tout le reste et construire l'application
|
|
||||||
COPY . .
|
|
||||||
RUN dotnet publish -c Release -o out
|
|
||||||
|
|
||||||
# Utiliser l'image runtime .NET pour exécuter l'application
|
|
||||||
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
|
|
||||||
WORKDIR /app
|
|
||||||
COPY --from=build /app/out .
|
|
||||||
|
|
||||||
EXPOSE 8080
|
|
||||||
|
|
||||||
ENTRYPOINT ["dotnet", "HeartTrack.dll"]
|
|
@ -1,30 +0,0 @@
|
|||||||
@page "/tickets/add"
|
|
||||||
|
|
||||||
<h3>Add Ticket</h3>
|
|
||||||
|
|
||||||
<EditForm Model="@ticketModel" OnValidSubmit="@HandleValidSubmit">
|
|
||||||
<DataAnnotationsValidator />
|
|
||||||
<ValidationSummary />
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="username">
|
|
||||||
Username:
|
|
||||||
<InputText id="username" @bind-Value="ticketModel.Username" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<label for="context">
|
|
||||||
Context:
|
|
||||||
<InputText id="context" @bind-Value="ticketModel.Contexte" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<label for="description">
|
|
||||||
Description:
|
|
||||||
<InputText id="description" @bind-Value="ticketModel.Description" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<button type="submit">Submit</button>
|
|
||||||
</EditForm>
|
|
||||||
|
|
@ -0,0 +1,11 @@
|
|||||||
|
@page "/banned-users"
|
||||||
|
|
||||||
|
<PageTitle>Banned Users</PageTitle>
|
||||||
|
|
||||||
|
<h1>Banned Users</h1>
|
||||||
|
|
||||||
|
This is banned users list of this website.
|
||||||
|
|
||||||
|
<SurveyPrompt Title="How is Blazor working for you?" />
|
||||||
|
|
||||||
|
|
@ -0,0 +1,10 @@
|
|||||||
|
@page "/reports"
|
||||||
|
|
||||||
|
<PageTitle>Reports</PageTitle>
|
||||||
|
|
||||||
|
<h1>Report list</h1>
|
||||||
|
|
||||||
|
This is the report list of users.
|
||||||
|
|
||||||
|
<SurveyPrompt Title="How is Blazor working for you?" />
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
@page "/tokens"
|
||||||
|
@using HeartTrack.Models
|
||||||
|
|
||||||
|
<PageTitle>Tokens</PageTitle>
|
||||||
|
|
||||||
|
<h1>@Localizer["Title"]</h1>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
@Localizer["Description"]
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<DataGrid TItem="User"
|
||||||
|
Data="@users"
|
||||||
|
ReadData="@OnReadData"
|
||||||
|
TotalItems="@totalUser"
|
||||||
|
PageSize="10"
|
||||||
|
ShowPager
|
||||||
|
Responsive>
|
||||||
|
<DataGridColumn TItem="User" Field="@nameof(User.Id)" Caption="Id" />
|
||||||
|
<DataGridColumn TItem="User" Field="@nameof(User.Username)" Caption="@Localizer["Username"]" />
|
||||||
|
<DataGridColumn TItem="User" Field="@nameof(User.Nom)" Caption="@Localizer["FirstN"]" />
|
||||||
|
<DataGridColumn TItem="User" Field="@nameof(User.Prenom)" Caption="@Localizer["LastN"]" />
|
||||||
|
<DataGridColumn TItem="User" Field="@nameof(User.Password)" Caption="@Localizer["Password"]" />
|
||||||
|
</DataGrid>
|
||||||
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
|||||||
@page "/tickets/view/{Id:int}"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h3>Ticket number @Id</h3>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Username: @ticket.Username
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Contexte: @ticket.Contexte
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Description: @ticket.Description
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Status: @ticket.isCheck
|
|
||||||
</p>
|
|
||||||
<MudButton @OnClick="OnNavigateOnReturnClicked">Return</MudButton>
|
|
@ -1,12 +1,42 @@
|
|||||||
@using System.Globalization
|
@using System.Globalization
|
||||||
|
@inject NavigationManager NavigationManager
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<label>
|
<label>
|
||||||
<select @bind="Culture">
|
<select @bind="Culture">
|
||||||
@foreach (var culture in @supportedCultures)
|
@foreach (var culture in supportedCultures)
|
||||||
{
|
{
|
||||||
<option value="@culture">@culture.DisplayName</option>
|
<option value="@culture">@culture.DisplayName</option>
|
||||||
}
|
}
|
||||||
</select>
|
</select>
|
||||||
</label>
|
</label>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
@code
|
||||||
|
{
|
||||||
|
private CultureInfo[] supportedCultures = new[]
|
||||||
|
{
|
||||||
|
new CultureInfo("en-US"),
|
||||||
|
new CultureInfo("fr-FR")
|
||||||
|
};
|
||||||
|
|
||||||
|
private CultureInfo Culture
|
||||||
|
{
|
||||||
|
get => CultureInfo.CurrentCulture;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (CultureInfo.CurrentUICulture == value)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var culture = value.Name.ToLower(CultureInfo.InvariantCulture);
|
||||||
|
|
||||||
|
var uri = new Uri(this.NavigationManager.Uri).GetComponents(UriComponents.PathAndQuery, UriFormat.Unescaped);
|
||||||
|
var query = $"?culture={Uri.EscapeDataString(culture)}&" + $"redirectUri={Uri.EscapeDataString(uri)}";
|
||||||
|
|
||||||
|
// Redirect the user to the culture controller to set the cookie
|
||||||
|
this.NavigationManager.NavigateTo("/Culture/SetCulture" + query, forceLoad: true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
<div class="alert alert-secondary mt-4">
|
||||||
|
<span class="oi oi-pencil me-2" aria-hidden="true"></span>
|
||||||
|
<strong>@Title</strong>
|
||||||
|
|
||||||
|
<span class="text-nowrap">
|
||||||
|
Please take our
|
||||||
|
<a target="_blank" class="font-weight-bold link-dark" href="https://go.microsoft.com/fwlink/?linkid=2149017">brief survey</a>
|
||||||
|
</span>
|
||||||
|
and tell us what you think.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@code {
|
||||||
|
// Demonstrates how a parent component can supply parameters
|
||||||
|
[Parameter]
|
||||||
|
public string? Title { get; set; }
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,362 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"id": 1,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2019-10-20"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2022-01-06"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2015-02-05"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2015-04-20"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2020-02-22"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2018-03-11"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2019-04-21"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 8,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2023-05-17"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 9,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2021-06-16"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 10,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2014-09-24"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 11,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2015-02-28"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 12,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2022-09-26"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 13,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2019-06-19"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 14,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2022-09-25"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 15,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2017-10-21"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 16,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2021-02-05"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 17,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2018-06-14"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 18,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2017-02-09"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 19,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2020-09-16"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 20,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2020-01-31"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 21,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2020-04-11"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 22,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2016-10-30"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 23,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2014-09-20"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 24,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2019-01-21"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 25,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2017-10-28"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 26,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2021-11-05"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 27,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2014-08-06"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 28,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2020-06-03"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 29,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2018-07-01"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 30,
|
||||||
|
"username": "johndoe",
|
||||||
|
"nom": "Doe",
|
||||||
|
"prenom": "John",
|
||||||
|
"email": "john.doe@example.com",
|
||||||
|
"password": "password123",
|
||||||
|
"sexe": "male",
|
||||||
|
"taille": 1.76,
|
||||||
|
"poids": 56.3,
|
||||||
|
"birthdate": "2021-01-22"
|
||||||
|
}
|
||||||
|
]
|
Loading…
Reference in new issue