Beispiel #1
0
        public static void UpdateCorreo(this CorreoBecario correo, CorreoBecarioRowViewModel createEditCorreoViewModel, int usuarioAplicacion)
        {
            if (createEditCorreoViewModel.CorreoId > 0)
            {
                correo.CorreoBecarioId = (int)createEditCorreoViewModel.CorreoId;

                correo.ModifiedBy = usuarioAplicacion;
                correo.Modified   = DateTime.Now;
            }
            else
            {
                correo.CreatedBy = usuarioAplicacion;
                correo.Created   = DateTime.Now;
            }
            correo.Asunto = createEditCorreoViewModel.Asunto;
            if (createEditCorreoViewModel.BecarioId > 0)
            {
                correo.BecarioId = createEditCorreoViewModel.BecarioId;
            }

            correo.Enviado = createEditCorreoViewModel.Enviado;
            if (createEditCorreoViewModel.FechaEnvio != null)
            {
                correo.FechaEnvio = createEditCorreoViewModel.FechaEnvio;
            }
            correo.PlantillaId   = createEditCorreoViewModel.PlantillaId;
            correo.Remitente     = createEditCorreoViewModel.Remitente;
            correo.Destinatarios = createEditCorreoViewModel.Destinatarios;
            correo.IsActivo      = createEditCorreoViewModel.Activo;
            correo.TipoAviso     = createEditCorreoViewModel.TipoAviso;
        }
Beispiel #2
0
        private CorreoBecario Save(CorreoBecarioRowViewModel createEditCorreoViewModel, int usuarioAplicacion)
        {
            var correo = new CorreoBecario();

            correo.UpdateCorreo(createEditCorreoViewModel, usuarioAplicacion);

            var newCorreo = _correoBecarioRepository.Create(correo);

            return(newCorreo);
        }
        public StringBuilder EnviarEmailBecario(NameValueCollection DiccEstadoBecarioPlantillaCorreo, NameValueCollection DiccConfiguracionServidorCorreo, int usuarioAplicacion)
        {
            _DiccConfiguracionServidorCorreo = DiccConfiguracionServidorCorreo;

            int           CentroId = 0;
            int           tipoMedioContactoEmail = GetTipoMedioContactoEmail();
            StringBuilder resultadoEnvio         = new StringBuilder();

            var IteradorEstadosEmails = DiccEstadoBecarioPlantillaCorreo.AllKeys.GetEnumerator();
            var response = _becarioService.GetBecariosEstadoDescartado();

            while (IteradorEstadosEmails.MoveNext())
            {
                if (response.IsValid)
                {
                    foreach (var becario in response.BecarioRowViewModel)
                    {
                        CentroId = _becarioService.GetCentroBecario(becario.BecarioId).CentroId;
                        var responsePlantilla = _correoPlantillaService.GetPlantillaIdByNombrePlantilla(DiccEstadoBecarioPlantillaCorreo[IteradorEstadosEmails.Current.ToString()], CentroId);

                        if (responsePlantilla.IsValid)
                        {
                            if (!ExisteCorreo(becario.BecarioId, responsePlantilla.PlantillaId))
                            {
                                var responseEmailBecario = _becarioService.GetEmailBecario(becario.BecarioId, tipoMedioContactoEmail);
                                var responseAsunto       = _correoPlantillaVariableService.GetValorDefectoNombreVariablePlantillaCorreo(responsePlantilla.PlantillaId, NombresVariablesPlantillaCorreoEnum.Asunto.ToString());
                                var responseRemitente    = _correoPlantillaVariableService.GetValorDefectoNombreVariablePlantillaCorreo(responsePlantilla.PlantillaId, NombresVariablesPlantillaCorreoEnum.Remitente.ToString());

                                if (responseEmailBecario.IsValid && responseAsunto.IsValid && responseRemitente.IsValid)
                                {
                                    CorreoBecario correoBecario = new CorreoBecario()
                                    {
                                        PlantillaId   = responsePlantilla.PlantillaId,
                                        Enviado       = false,
                                        BecarioId     = becario.BecarioId,
                                        Asunto        = responseAsunto.VarlorDefecto,
                                        Remitente     = responseRemitente.VarlorDefecto,
                                        Destinatarios = responseEmailBecario.EmailBecario,
                                        TipoAviso     = null,
                                        IsActivo      = true
                                    };

                                    var model        = CorreoBecarioMapper.ConvertToCorreoBecarioRowViewModel(correoBecario);
                                    var responseSave = _correoBecarioService.SaveCorreo(model, usuarioAplicacion);
                                }
                            }
                        }
                    }
                }
            }
            resultadoEnvio = resultadoEnvio.Append(ExecuteSendMailsEstadosCandidatura(DiccEstadoBecarioPlantillaCorreo, usuarioAplicacion));
            return(resultadoEnvio);
        }
Beispiel #4
0
        public static CorreoBecarioRowViewModel ConvertToCorreoBecarioRowViewModel(this CorreoBecario Correo)
        {
            var CorreoRowViewModel = new CorreoBecarioRowViewModel()
            {
                CorreoId      = Correo.CorreoBecarioId,
                BecarioId     = Correo.BecarioId,
                Asunto        = Correo.Asunto,
                Destinatarios = Correo.Destinatarios,
                PlantillaId   = Correo.PlantillaId,
                Remitente     = Correo.Remitente,
                Enviado       = Correo.Enviado,
                FechaEnvio    = Correo.FechaEnvio,
                Activo        = Correo.IsActivo,
                TipoAviso     = Correo.TipoAviso
            };

            return(CorreoRowViewModel);
        }