feat: Mise à jour la mise en page et améliorer DataFactory pour générer des entités musicales avec des styles
This commit is contained in:
@@ -59,7 +59,20 @@ public class DataFactory
|
|||||||
|
|
||||||
public List<Artiste> GenerateArtists(int count)
|
public List<Artiste> GenerateArtists(int count)
|
||||||
{
|
{
|
||||||
|
var artists = new List<Artiste>();
|
||||||
|
|
||||||
|
for (int i = 0; i < count; i++)
|
||||||
|
{
|
||||||
|
artists.Add(new Artiste
|
||||||
|
{
|
||||||
|
IdArtiste = i + 1,
|
||||||
|
Nom = Name.FullName(),
|
||||||
|
Biographie = Lorem.Paragraph(),
|
||||||
|
Titres = new List<Titre>()
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
return artists;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -77,7 +90,8 @@ public class DataFactory
|
|||||||
styles.Add(new Style
|
styles.Add(new Style
|
||||||
{
|
{
|
||||||
IdStyle = i + 1,
|
IdStyle = i + 1,
|
||||||
Libelle = styleNames[i]
|
Libelle = styleNames[i],
|
||||||
|
Titres = new List<Titre>(),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,7 +104,7 @@ public class DataFactory
|
|||||||
/// <param name="count">Nombre de titres à générer</param>
|
/// <param name="count">Nombre de titres à générer</param>
|
||||||
/// <param name="artists">Liste des artistes à associer aux titres générés</param>
|
/// <param name="artists">Liste des artistes à associer aux titres générés</param>
|
||||||
/// <returns>Liste de titres de musique générés</returns>
|
/// <returns>Liste de titres de musique générés</returns>
|
||||||
public List<Titre> GenerateTitres(int count, List<Artiste> artists)
|
public List<Titre> GenerateTitres(int count, List<Artiste> artists, List<Style> styles)
|
||||||
{
|
{
|
||||||
var titres = new List<Titre>();
|
var titres = new List<Titre>();
|
||||||
var random = new Random();
|
var random = new Random();
|
||||||
@@ -101,12 +115,15 @@ public class DataFactory
|
|||||||
var randomMusic = musicItems[random.Next(musicItems.Count)];
|
var randomMusic = musicItems[random.Next(musicItems.Count)];
|
||||||
var randomArtist = artists[random.Next(artists.Count)];
|
var randomArtist = artists[random.Next(artists.Count)];
|
||||||
|
|
||||||
titres.Add(new Titre
|
int numberOfStyles = random.Next(1, 4);
|
||||||
|
var selectedStyles = styles.OrderBy(x => random.Next()).Take(numberOfStyles).ToList();
|
||||||
|
|
||||||
|
var titre = new Titre
|
||||||
{
|
{
|
||||||
IdTitre = i + 1,
|
IdTitre = i + 1,
|
||||||
IdArtiste = randomArtist.IdArtiste,
|
IdArtiste = randomArtist.IdArtiste,
|
||||||
Artiste = randomArtist,
|
Artiste = randomArtist,
|
||||||
Libelle = Lorem.Words(3).ToString(),
|
Libelle = string.Join(" ", Lorem.Words(3)),
|
||||||
Chronique = Lorem.Paragraph(),
|
Chronique = Lorem.Paragraph(),
|
||||||
DateCreation = DateTime.Now.AddDays(-random.Next(1, 365)),
|
DateCreation = DateTime.Now.AddDays(-random.Next(1, 365)),
|
||||||
Duree = random.Next(120, 360), // 2 à 6 minutes en secondes
|
Duree = random.Next(120, 360), // 2 à 6 minutes en secondes
|
||||||
@@ -116,9 +133,20 @@ public class DataFactory
|
|||||||
NbLectures = random.Next(1000, 1000000),
|
NbLectures = random.Next(1000, 1000000),
|
||||||
NbLikes = random.Next(100, 100000), // Likes entre 100 et 100 000
|
NbLikes = random.Next(100, 100000), // Likes entre 100 et 100 000
|
||||||
Album = $"Album {random.Next(1, 10)}",
|
Album = $"Album {random.Next(1, 10)}",
|
||||||
Commentaires = new List<Commentaire>()
|
Commentaires = new List<Commentaire>(),
|
||||||
});
|
Styles = new List<Style>(),
|
||||||
|
};
|
||||||
|
|
||||||
|
foreach (var style in selectedStyles)
|
||||||
|
{
|
||||||
|
titre.Styles.Add(style);
|
||||||
|
if (!style.Titres.Contains(titre))
|
||||||
|
{
|
||||||
|
style.Titres.Add(titre);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
titres.Add(titre);
|
||||||
randomArtist.Titres.Add(titres.Last());
|
randomArtist.Titres.Add(titres.Last());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,14 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
|
||||||
<html lang="fr">
|
<html lang="fr">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<title>@ViewData["Title"] - Mon Application</title>
|
<title>@ViewData["Title"] - Mon Application</title>
|
||||||
</head>
|
<link href="/css/app.css" rel="stylesheet" />
|
||||||
|
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" rel="stylesheet" />
|
||||||
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" crossorigin="anonymous">
|
||||||
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<main>
|
<main>
|
||||||
@RenderBody()
|
@RenderBody()
|
||||||
|
|||||||
Reference in New Issue
Block a user