using AutoMapper; using BeReadyBackend.DTO.Achievements; using BeReadyBackend.DTO.Friends; using BeReadyBackend.DTO.Groups; using BeReadyBackend.DTO.Users; using BeReadyBackend.Models; using NSwag.Generation.Processors; namespace BeReadyBackend.MappingProfiles; public class EntityToDtoMappings : Profile { public EntityToDtoMappings() { CreateMap(); CreateMap() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.Achievement!.Id)) .ForMember(dest => dest.Label, opt => opt.MapFrom(src => src.Achievement!.Label)) .ForMember(dest => dest.Description, opt => opt.MapFrom(src => src.Achievement!.Description)); CreateMap() .ForMember(dest => dest.GetUserStatsDto, opt => opt.MapFrom(src => src)); CreateMap() .ForMember(dest => dest.GetUserStatsDto, opt => opt.MapFrom(src => src)); CreateMap(); CreateMap(); CreateMap(); CreateMap() .ForMember(dest => dest.ChallengeTitle, opt => opt.MapFrom(src => src.Libelle)) .ForMember(dest => dest.ChallengeDuration, opt => opt.MapFrom(src => src.Duration)); CreateMap() .ForMember(dest => dest.ChallengeTitle, opt => opt.MapFrom(src => src.Title)) .ForMember(dest => dest.ChallengeDescription, opt => opt.MapFrom(src => src.Description)) .ForMember(dest => dest.ChallengeDuration, opt => opt.MapFrom(src => src.Duration)); CreateMap() .ForMember(dest => dest.Username, opt => opt.MapFrom(src => src.Friend!.Username)) .ForMember(dest => dest.Score, opt => opt.MapFrom(src => src.Friend!.Score)); CreateMap() .ForMember(dest => dest.Username, opt => opt.MapFrom(src => src.User!.Username)) .ForMember(dest => dest.Score, opt => opt.MapFrom(src => src.User!.Score)); CreateMap() .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.UserId)) .ForMember(dest => dest.Username, opt => opt.MapFrom(src => src.User!.Username)) .ForMember(dest => dest.Score, opt => opt.MapFrom(src => src.User!.Score)); } }