Exemple #1
0
        private async Task EnviarCorreoAprobacion(string solicitanteId, UserViewModel aprobador, SolicitudViewModel solicitud, string fileName)
        {
            var solicitante       = userService.ObtenerUsuarioPorId(solicitanteId);
            var nombreSolicitante = $"{solicitante.Nombre} {solicitante.PrimerApellido} {solicitante.SegundoApellido}";
            var jefe = new UserViewModel();

            if (solicitante.Role.Name.Equals("funcionario", StringComparison.OrdinalIgnoreCase))
            {
                jefe = userService.ObtenerJefePorUnidadTecnica(solicitante.UnidadTecnica.UnidadTecnicaId);
            }
            if (solicitante.Role.Name.Equals("jefatura", StringComparison.OrdinalIgnoreCase) || solicitante.Role.Name.Equals("recursos humanos", StringComparison.OrdinalIgnoreCase))
            {
                jefe = userService.ObtenerDirectorGeneral();
            }
            if (solicitante.Role.Name.Equals("director", StringComparison.OrdinalIgnoreCase))
            {
                jefe = userService.ObtenerUsuarioPorId(solicitanteId);
            }
            // var jefe = userService.ObtenerJefePorUnidadTecnica(solicitante.UnidadTecnica.UnidadTecnicaId);

            if (aprobador.Id == jefe.Id)
            {
                await emailNotification.SendEmailAsync(solicitante.Email, $"{jefe.Email},{ConfigurationManager.AppSettings["MailRH"]}", $"Vacaciones Aprobadas para {nombreSolicitante}", $"La solicitud de vacaciones: {solicitud.SolicitudId} para el colaborador {nombreSolicitante} fue <strong>aprobada</strong>. <br /> <br /> Observaciones: {solicitud.ComentarioJefatura}", Server.MapPath("~/PDFs/" + fileName));
            }
            else
            {
                await emailNotification.SendEmailAsync(solicitante.Email, $"{jefe.Email},{aprobador.Email},{ConfigurationManager.AppSettings["MailRH"]}", $"Vacaciones Aprobadas para {nombreSolicitante}", $"La solicitud de vacaciones: {solicitud.SolicitudId} para el colaborador {nombreSolicitante} fue <strong>aprobada</strong>. <br /> <br /> Observaciones: {solicitud.ComentarioJefatura}", Server.MapPath("~/PDFs/" + fileName));
            }
        }
Exemple #2
0
 public void Execute(object parameter) => _service.SendEmailAsync(_receiverEmail, _subject, _message);