- Changement du typage #18
@ -14,7 +14,7 @@ public interface IServiceBase<T, TDto, TCreateDto, TUpdateDto>
|
|||||||
Task<IResponseDataModel<TDto>> GetByIdWithRelations(int id, params Expression<Func<T, object>>[] relationsAInclures); // préciser avec une ou des fonctions lambda les relations à inclure dans la réponse
|
Task<IResponseDataModel<TDto>> GetByIdWithRelations(int id, params Expression<Func<T, object>>[] relationsAInclures); // préciser avec une ou des fonctions lambda les relations à inclure dans la réponse
|
||||||
Task<IResponseDataModel<List<TDto>>> GetAllWithRelationsAsync(int pageNumber, int pageSize, params Expression<Func<T, object>>[] relationsAInclure);
|
Task<IResponseDataModel<List<TDto>>> GetAllWithRelationsAsync(int pageNumber, int pageSize, params Expression<Func<T, object>>[] relationsAInclure);
|
||||||
|
|
||||||
Task<IResponseDataModel<PaginatedList<TDto>>> SearchWithRelations(string searchTerm, int pageNumber, int pageSize,
|
Task<IResponseDataModel<List<TDto>>> SearchWithRelations(string searchTerm, int pageNumber, int pageSize,
|
||||||
params Expression<Func<T, object>>[] includeProperties);
|
params Expression<Func<T, object>>[] includeProperties);
|
||||||
Task<IResponseDataModel<T>> Create(TCreateDto dto);
|
Task<IResponseDataModel<T>> Create(TCreateDto dto);
|
||||||
Task<IResponseDataModel<T>> Update(TUpdateDto dto);
|
Task<IResponseDataModel<T>> Update(TUpdateDto dto);
|
||||||
|
@ -269,11 +269,11 @@ public class ServiceBase<T, TDto, TCreateDto, TUpdateDto> : IServiceBase<T, TDto
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual async Task<IResponseDataModel<PaginatedList<TDto>>> SearchWithRelations(string searchTerm, int pageNumber, int pageSize, params Expression<Func<T, object>>[] includeProperties)
|
public virtual async Task<IResponseDataModel<List<TDto>>> SearchWithRelations(string searchTerm, int pageNumber, int pageSize, params Expression<Func<T, object>>[] includeProperties)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrWhiteSpace(searchTerm) || searchTerm.Length < 2)
|
if (string.IsNullOrWhiteSpace(searchTerm) || searchTerm.Length < 2)
|
||||||
{
|
{
|
||||||
return new ResponseDataModel<PaginatedList<TDto>>
|
return new ResponseDataModel<List<TDto>>
|
||||||
{
|
{
|
||||||
Success = false,
|
Success = false,
|
||||||
Message = "Le terme de recherche doit contenir au moins deux caractères.",
|
Message = "Le terme de recherche doit contenir au moins deux caractères.",
|
||||||
@ -284,18 +284,15 @@ public class ServiceBase<T, TDto, TCreateDto, TUpdateDto> : IServiceBase<T, TDto
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
var predicate = BuildSearchPredicate(searchTerm);
|
var predicate = BuildSearchPredicate(searchTerm);
|
||||||
var entities = await _repository.SearchAsync(predicate, pageNumber, pageSize, includeProperties);
|
var response = await _repository.SearchAsync(predicate, pageNumber, pageSize, includeProperties);
|
||||||
var dtos = _mapper.Map<List<TDto>>(entities);
|
var dtos = _mapper.Map<List<TDto>>(response.Data);
|
||||||
var totalCount = await _repository.CountAsync(predicate);
|
|
||||||
|
|
||||||
var response = new PaginatedList<TDto>(dtos, totalCount, pageNumber, pageSize);
|
|
||||||
|
|
||||||
return new ResponseDataModel<PaginatedList<TDto>>
|
return new ResponseDataModel<List<TDto>>
|
||||||
{
|
{
|
||||||
Success = true,
|
Success = true,
|
||||||
Data = response,
|
Data = dtos,
|
||||||
TotalPages = response.TotalPages,
|
TotalPages = response.TotalPages,
|
||||||
TotalCount = response.TotalCount,
|
TotalCount = response.TotalItems,
|
||||||
StatusCode = 200,
|
StatusCode = 200,
|
||||||
Message = "Recherche effectuée avec succès."
|
Message = "Recherche effectuée avec succès."
|
||||||
};
|
};
|
||||||
@ -303,7 +300,7 @@ public class ServiceBase<T, TDto, TCreateDto, TUpdateDto> : IServiceBase<T, TDto
|
|||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
_logger.LogError(ex, "Une erreur s'est produite lors de la recherche des entités.");
|
_logger.LogError(ex, "Une erreur s'est produite lors de la recherche des entités.");
|
||||||
return new ResponseDataModel<PaginatedList<TDto>>
|
return new ResponseDataModel<List<TDto>>
|
||||||
{
|
{
|
||||||
Success = false,
|
Success = false,
|
||||||
Message = "Une erreur s'est produite lors de la recherche des entités.",
|
Message = "Une erreur s'est produite lors de la recherche des entités.",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user