예제 #1
0
        public async Task <IActionResult> ContactSeller([FromBody] SendEmailToFreelancerRequest sendEmailToFreelancerRequest)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(error: "Please enter all required fields."));
                }


                var user = await _userManager.FindByIdAsync(sendEmailToFreelancerRequest.FreeLancerUserId);

                if (user != null)
                {
                    await _listingCommand.SendEmailToFreelancer(sendEmailToFreelancerRequest, user);

                    return(Ok(new
                    {
                        Message = "Successfully send Email to Freelancer!"
                    }));
                }
                else
                {
                    _logger.LogError($"error user does not exis");
                    return(StatusCode((int)HttpStatusCode.InternalServerError, "error user does not exist"));
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"error while updated the listing: {ex}");
                return(StatusCode((int)HttpStatusCode.InternalServerError, "error while updating the listing"));
            }
        }
예제 #2
0
        public async Task SendEmailToFreelancer(SendEmailToFreelancerRequest sendEmailToFreelancerRequest, UserModel freelancerUser)
        {
            try
            {
                var emailService = new EmailService();

                await emailService.SendEmailToFreelancer(sendEmailToFreelancerRequest.FromEmail,
                                                         sendEmailToFreelancerRequest.Message,
                                                         freelancerUser.Email, freelancerUser.FirstName + freelancerUser.LastName);

                await _logService.AddSendEmailLog(sendEmailToFreelancerRequest.Message, sendEmailToFreelancerRequest.FromEmail,
                                                  freelancerUser.Email, freelancerUser.Id);
            }
            catch (Exception ex)
            {
                _logger.LogError($"error while sending Email to freelancer: {ex}");
                throw ex.GetBaseException();
            }
        }