コード例 #1
0
 public static Rekommendation ToEntity(this RekommendationForCreationDto source)
 {
     return(new Rekommendation()
     {
         TechJobOpeningId = source.TechJobOpeningId,
         FirstName = source.FirstName,
         LastName = source.LastName,
         Position = source.Position.ToPosition(),
         Seniority = source.Seniority.ToSeniority(),
         Company = source.Company,
         Email = source.Email,
         Comment = source.Comment,
         HasAlreadyWorkedWithRekommender = source.HasAlreadyWorkedWithRekommender
     });
 }
コード例 #2
0
        public async Task <ActionResult <RekommendationDto> > CreateRekommendation(RekommendationForCreationDto rekommendationForCreationDto)
        {
            AppUser appUser = new AppUser
            {
                Id        = _userInfoService.UserId,
                FirstName = _userInfoService.FirstName,
                LastName  = _userInfoService.LastName,
                Email     = _userInfoService.Email,
                Company   = _userInfoService.Company,
                City      = _userInfoService.City,
                Country   = _userInfoService.Country,
                Seniority = _userInfoService.Seniority,
                Stack     = _userInfoService.Stack,
                Profile   = _userInfoService.Profile
            };

            var techJobOpeningId = rekommendationForCreationDto.TechJobOpeningId;

            if (await CheckTechJobOpeningIdIsValid(techJobOpeningId))
            {
                var rekommendation = rekommendationForCreationDto.ToEntity();

                _repository.AddRekommendation(appUser, rekommendation);

                await _repository.SaveChangesAsync();

                // Refetch the Rekommendation from the data store to include the rekommender
                await _repository.GetRekommendationAsync(rekommendation.Id);

                return(CreatedAtRoute("GetRekommendation", new { rekommendationId = rekommendation.Id }, rekommendation));
            }
            else
            {
                _logger.LogInformation($"Cannot create Rekommendation as wrong techJobOpeningId [{techJobOpeningId}]");
                return(BadRequest());
            }
        }