public EmailResult EnviarNotificacionTicket(NotificacionTicketModel data, string baseUrl)
        {
            var variables = new List <merge_var>
            {
                new merge_var()
                {
                    name = "TITULO", content = data.Titulo
                },
                new merge_var()
                {
                    name = "FECHA", content = data.Fecha
                },
                new merge_var()
                {
                    name = "MENSAJE", content = data.Mensaje
                },
                new merge_var()
                {
                    name = "TICKETID", content = data.TicketId.ToString()
                },
                new merge_var()
                {
                    name = "BASEURL", content = baseUrl
                }
            };
            var subject = String.Format("Han respondido tu mensaje [Ticket: #{0}]", data.TicketId);

            return(EmailHelper.SendMailTemplate(data.Emails, "notificacionmensaje", variables, subject).FirstOrDefault());
        }
Example #2
0
        public ActionResult EnviarMensaje(MensajeModel model)
        {
            var mensaje = new MensajeTicketError()
            {
                Fecha         = DateTime.Now,
                Texto         = model.NuevoMensaje,
                TicketErrorId = model.TicketId,
                UsuarioId     = UsuarioActual.Usuario.UsuarioId,
                EsDeAdmin     = UsuarioActual.EsRol("SuperAdministrador")
            };

            Uow.MensajesTicketError.Agregar(mensaje);
            Uow.Commit();
            var ticket = Uow.TicketErrores.Obtener(model.TicketId);
            var emails = UsuarioActual.EsRol("SuperAdministrador")
                            ? new List <string>()
            {
                ticket.Email
            }
                            : ConfigurationManager.AppSettings["ReportarErrorDevelopersEmails"].Split(',').ToList();

            var data = new NotificacionTicketModel()
            {
                Emails   = emails,
                Mensaje  = mensaje.Texto,
                TicketId = mensaje.TicketErrorId,
                Titulo   = String.Format("[{0}] {1}", ticket.TicketErrorId, ticket.Titulo),
                Fecha    = String.Format("{0} {1}", DateTime.Now.ToShortDateString(), DateTime.Now.ToShortTimeString())
            };
            var result = _notificationService.EnviarNotificacionTicket(data, AppSettings.BaseURL);

            return(Json(new { success = result.Status == EmailResultStatus.Sent }, JsonRequestBehavior.AllowGet));
        }