add formulaire data

testTony
Tony Fages 1 year ago
parent 1e4eb0498d
commit fc31bb46f0

@ -29,7 +29,7 @@ namespace API.Controllers
}
[HttpGet("/article/{id}")]
public async Task<ArticleEntity?> GetArticleById(int id)
public async Task<Article?> GetArticleById(int id)
{
var result = await _articleService.GetArticleById(id);
if (result == null)
@ -42,19 +42,19 @@ namespace API.Controllers
[HttpPost("/article")]
public async Task<ArticleEntity?> CreateArticle(long id, string title, string description, string author, string date, int lectureTime)
public async Task<Article?> CreateArticle(long id, string title, string description, string author, string date, int lectureTime)
{
return await _articleService.CreateArticle(id, title, description, author, date, lectureTime);
}
[HttpDelete("/article/{id}")]
public async Task<ArticleEntity?> DeleteArticle(long id)
public async Task<Article?> DeleteArticle(long id)
{
return await _articleService.DeleteArticle(id);
}
[HttpPut("/article/{id}")]
public async Task<bool> UpdateArticle(long id, ArticleEntity? a)
public async Task<bool> UpdateArticle(long id, Article? a)
{
return await _articleService.UpdateArticle(id, a);
}

@ -36,11 +36,11 @@ if (app.Environment.IsDevelopment())
app.UseHttpsRedirection();
app.MapControllers();
using var scoped = app.Services.CreateScope();
var libraryContext = scoped.ServiceProvider.GetService<LibraryContext>();
//libraryContext.Database.EnsureCreated();
libraryContext.Database.Migrate();
app.Run();
using var scoped = app.Services.CreateScope();
var libraryContext = scoped.ServiceProvider.GetService<LibraryContext>();
libraryContext.Database.EnsureCreated();

@ -2,7 +2,6 @@ using API_Services;
using DbContextLib;
using Entities;
using Model;
using ArticleEntity = Model.ArticleEntity;
namespace DbDataManager;
@ -17,7 +16,7 @@ public class DbManagerArticle : IArticleService
}
public async Task<ArticleEntity?> CreateArticle(long id, string title, string description, string author, string date, int lectureTime)
public async Task<Article?> CreateArticle(long id, string title, string description, string author, string date, int lectureTime)
{
var entity = new Entities.ArticleEntity()
{
@ -34,7 +33,7 @@ public class DbManagerArticle : IArticleService
return entity.ToModel();
}
public async Task<ArticleEntity?> DeleteArticle(long id)
public async Task<Article?> DeleteArticle(long id)
{
var entity = _context.ArticleSet.FirstOrDefault(a => a.Id == id);
Console.WriteLine(entity);
@ -44,7 +43,7 @@ public class DbManagerArticle : IArticleService
return entity.ToModel();
}
public async Task<bool> UpdateArticle(long id, ArticleEntity? a)
public async Task<bool> UpdateArticle(long id, Article? a)
{
var entity = _context.ArticleSet.FirstOrDefault(a => a.Id == id);
if (entity == null) return false;
@ -57,13 +56,13 @@ public class DbManagerArticle : IArticleService
return true;
}
public Task<ArticleEntity?> GetArticleById(int id)
public Task<Article?> GetArticleById(int id)
{
var entity = _context.ArticleSet.FirstOrDefault(a => a.Id == id);
return Task.FromResult(entity.ToModel());
}
public async Task<IEnumerable<ArticleEntity?>> GetAllArticles()
public async Task<IEnumerable<Article?>> GetAllArticles()
{
return await Task.FromResult(_context.ArticleSet.Select(a => a.ToModel()).AsEnumerable());
}

@ -1,20 +1,19 @@
using Entities;
using Model;
using ArticleEntity = Model.ArticleEntity;
namespace DbDataManager;
public static class Extensions
{
public static Entities.ArticleEntity ToEntity(this ArticleEntity articleEntity)
public static Entities.ArticleEntity ToEntity(this Article article)
=> new Entities.ArticleEntity
{
Id = articleEntity.Id, Author = articleEntity.Author, Description = articleEntity.Description, Title = articleEntity.Title,
DatePublished = articleEntity.DatePublished, LectureTime = articleEntity.LectureTime
Id = article.Id, Author = article.Author, Description = article.Description, Title = article.Title,
DatePublished = article.DatePublished, LectureTime = article.LectureTime
};
public static ArticleEntity ToModel(this Entities.ArticleEntity article)
=> new ArticleEntity
public static Article ToModel(this Entities.ArticleEntity article)
=> new Article
{
Id = article.Id, Author = article.Author, Description = article.Description, Title = article.Title,
DatePublished = article.DatePublished, LectureTime = article.LectureTime

@ -5,7 +5,7 @@ namespace API_Mapping;
public static class ArticleMapper
{
public static ArticleDTO ToDTO(this ArticleEntity a) => new()
public static ArticleDTO ToDTO(this Article a) => new()
{
Id = a.Id,
Title = a.Title,
@ -15,7 +15,7 @@ public static class ArticleMapper
Author = a.Author
};
public static ArticleEntity ToModel(this ArticleDTO a) => new()
public static Article ToModel(this ArticleDTO a) => new()
{
Id = a.Id,
Title = a.Title,

@ -4,16 +4,16 @@ namespace API_Services
{
public interface IArticleService
{
Task<ArticleEntity?> CreateArticle(long id, string title, string description, string author, string date,
Task<Article?> CreateArticle(long id, string title, string description, string author, string date,
int lectureTime);
Task<ArticleEntity?> DeleteArticle(long id);
Task<Article?> DeleteArticle(long id);
Task<bool> UpdateArticle(long id, ArticleEntity? a);
Task<bool> UpdateArticle(long id, Article? a);
Task<ArticleEntity?> GetArticleById(int id);
Task<Article?> GetArticleById(int id);
Task<IEnumerable<ArticleEntity?>> GetAllArticles();
Task<IEnumerable<Article?>> GetAllArticles();
}
}

@ -36,6 +36,16 @@ public class LibraryContext : DbContext
.WithMany(a => a.Articles)
.UsingEntity<ArticleUserEntity>();
modelBuilder.Entity<UserEntity>()
.HasMany(u => u.Forms)
.WithOne(f => f.User)
.HasForeignKey(f => f.UserEntityId);
modelBuilder.Entity<FormEntity>()
.HasOne(f => f.User)
.WithMany(u => u.Forms)
.HasForeignKey(f => f.UserEntityId);
modelBuilder.Entity<ArticleEntity>().HasData(
new ArticleEntity
{
@ -111,5 +121,32 @@ public class LibraryContext : DbContext
UserEntityId = 3
}
);
modelBuilder.Entity<FormEntity>().HasData(
new FormEntity
{
Id = 1,
Pseudo= "Form 1",
DatePublication = "Form 1 Description",
Link = "hhtp://form1.com",
UserEntityId = 1
},
new FormEntity
{
Id = 2,
Pseudo= "Form 2",
DatePublication = "Form 2 Description",
Link = "hhtp://form2.com",
UserEntityId = 2
},
new FormEntity
{
Id = 3,
Pseudo= "Form 3",
DatePublication = "Form 3 Description",
Link = "hhtp://form3.com",
UserEntityId = 3
}
);
}
}

@ -1,6 +1,6 @@
namespace Model;
public class ArticleEntity
public class Article
{
public long Id { get; set; }
public string Title { get; set; } = string.Empty;

@ -1,18 +1,17 @@
using Entities;
using Model;
using ArticleEntity = Model.ArticleEntity;
namespace StubbedContextLib;
public class StubTest
{
private List<ArticleEntity> _article;
private List<Article> _article;
public List<ArticleEntity> StubArticle()
public List<Article> StubArticle()
{
_article = new List<ArticleEntity>
_article = new List<Article>
{
new ArticleEntity
new Article
{
Id = 1,
Title = "Test",

Loading…
Cancel
Save