ajout début utilisation methodes d'extension pour lessons
continuous-integration/drone/push Build is failing Details

MethodeExtensions
Victor GABORIT 1 year ago
parent 668baf4c85
commit bbc9fd9a23

@ -3,6 +3,7 @@ using Entities;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Model.OrderCriteria; using Model.OrderCriteria;
using Shared; using Shared;
using Shared.ModelToEntities;
namespace DbDataManager.Service; namespace DbDataManager.Service;
@ -86,4 +87,40 @@ public class LessonDataService : ILessonService<LessonEntity>
DbContext.SaveChangesAsync(); DbContext.SaveChangesAsync();
return newLessonEntity; return newLessonEntity;
} }
public async Task<LessonEntity?> AddItem(LessonEntity? item)
{
using (var context = DbContext = new UserDbContext())
{
var lesson = await context.CreateItemAsync<LessonEntity>(item);
return item;
}
}
public async Task<bool> DeleteItem(int id)
{
using (var context = DbContext = new UserDbContext())
{
var succes = await context.DeleteItemAsync<LessonEntity>(id);
return succes;
}
}
public async Task<LessonEntity> UpdateItem<TDto>(int? id, TDto? newItem) where TDto : class
{
using (var context = DbContext = new UserDbContext())
{
var lesson = await context.UpdateItemAsync<LessonEntity, TDto>(id, newItem);
return lesson;
}
}
public async Task<IEnumerable<LessonEntity>> GetItems(int page, int count, object? orderCriteria = null, string? filter = null, object? valueFilter = null)
{
using (var context = DbContext = new UserDbContext())
{
var lessons = await context.GetItemsWithFilter<LessonEntity>(page, count, orderCriteria, filter, valueFilter);
return lessons;
}
}
} }

@ -7,7 +7,7 @@ using System.Threading.Tasks;
namespace Shared namespace Shared
{ {
public class DataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> : IdataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> where TUser : class where TInquiry : class public class DataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> : IdataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> where TUser : class where TInquiry : class where Tlesson : class
{ {
private UserDbContext _dbContext; private UserDbContext _dbContext;
public DataService(UserDbContext userDbContext, IUserService<TUser> userService, ILessonService<Tlesson> lessonService, IInquiryService<TInquiry> inquiryService, IParagraphService<TParagraphe> paragrapheService, ISuccessService<TSucesss> sucessService) public DataService(UserDbContext userDbContext, IUserService<TUser> userService, ILessonService<Tlesson> lessonService, IInquiryService<TInquiry> inquiryService, IParagraphService<TParagraphe> paragrapheService, ISuccessService<TSucesss> sucessService)

@ -2,7 +2,7 @@
namespace Shared; namespace Shared;
public interface ILessonService<TLesson> public interface ILessonService<TLesson> : IGenericDataService<TLesson> where TLesson : class
{ {
public IEnumerable<TLesson> GetLessons(int page, int number, LessonOrderCriteria orderCriteria); public IEnumerable<TLesson> GetLessons(int page, int number, LessonOrderCriteria orderCriteria);
public TLesson GetLessonById(int id); public TLesson GetLessonById(int id);

@ -6,7 +6,7 @@ using System.Threading.Tasks;
namespace Shared namespace Shared
{ {
public interface IdataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> where TUser : class where TInquiry : class public interface IdataService<TUser, Tlesson, TInquiry, TParagraphe, TSucesss> where TUser : class where TInquiry : class where Tlesson : class
{ {
IUserService<TUser> userService { get; } IUserService<TUser> userService { get; }
IInquiryService<TInquiry> inquiryService { get; } IInquiryService<TInquiry> inquiryService { get; }

@ -100,4 +100,24 @@ public class LessonDataService : ILessonDataService
DbContext.SaveChangesAsync(); DbContext.SaveChangesAsync();
return newLessonEntity; return newLessonEntity;
} }
public Task<LessonDTO?> AddItem(LessonDTO? item)
{
throw new NotImplementedException();
}
public Task<bool> DeleteItem(int id)
{
throw new NotImplementedException();
}
public Task<LessonDTO> UpdateItem<TDto>(int? id, TDto? newItem) where TDto : class
{
throw new NotImplementedException();
}
public Task<IEnumerable<LessonDTO>> GetItems(int page, int count, object? orderCriteria = null, string? filter = null, object? valueFilter = null)
{
throw new NotImplementedException();
}
} }

@ -28,7 +28,7 @@ using (var context = new UserDbContext(options))
var userController = new UsersController(userLogger, new DataService<UserDTO, LessonDTO, InquiryDTO, ParagraphDTO, SuccessDTO>(context, new Shared.UserDataService(context), new LessonDataService(context), new InquiryDataService(context), new ParagraphDataService(context), new SuccessDataService(context))); var userController = new UsersController(userLogger, new DataService<UserDTO, LessonDTO, InquiryDTO, ParagraphDTO, SuccessDTO>(context, new Shared.UserDataService(context), new LessonDataService(context), new InquiryDataService(context), new ParagraphDataService(context), new SuccessDataService(context)));
var inquiryController = new InquiriesController(new DataService<UserDTO, LessonDTO, InquiryDTO, ParagraphDTO, SuccessDTO>(context, new Shared.UserDataService(context), new LessonDataService(context), new InquiryDataService(context), new ParagraphDataService(context), new SuccessDataService(context)), inquiryLogger); var inquiryController = new InquiriesController(new DataService<UserDTO, LessonDTO, InquiryDTO, ParagraphDTO, SuccessDTO>(context, new Shared.UserDataService(context), new LessonDataService(context), new InquiryDataService(context), new ParagraphDataService(context), new SuccessDataService(context)), inquiryLogger);
var paragraphController = new ParagraphsController(new ParagraphDataService(context), paragraphLogger); var paragraphController = new ParagraphsController(new ParagraphDataService(context), paragraphLogger);
var lessonController = new LessonsController(new LessonDataService(context), lessonLogger); var lessonController = new LessonsController(new DataService<UserDTO, LessonDTO, InquiryDTO, ParagraphDTO, SuccessDTO>(context, new Shared.UserDataService(context), new LessonDataService(context), new InquiryDataService(context), new ParagraphDataService(context), new SuccessDataService(context)), lessonLogger);
var successController = new SuccessesController(new SuccessDataService(context), successLogger); var successController = new SuccessesController(new SuccessDataService(context), successLogger);
async void PrintUsers() async void PrintUsers()

Loading…
Cancel
Save