public JsonResult NotificarEnvioTramite(string HomoclaveEnviada, string ProyectoEnviado, string RFCRL) { try { EstatusTramite EstatusTramiteEnviado = new EstatusTramite(); EstatusTramiteEnviado.estatus = "ENVIADO"; EstatusTramiteEnviado.fechaRegistro = DateTime.Now.ToString(); EstatusTramiteEnviado.nota = "Enviado a dependencia desde ENREL"; EstatusTramiteEnviado.resolucion = "PENDIENTE"; int IdProyecto = Convert.ToInt32(ProyectoEnviado); LogicaTramite.L_ActualizarEstatusTramiteDesdeENREL(IdProyecto, HomoclaveEnviada); WSBPM_Nivel3.ProcessNivel3PortTypeClient EnviarEstatus = new WSBPM_Nivel3.ProcessNivel3PortTypeClient(); EnviarEstatus.receiveTask(ProyectoEnviado, HomoclaveEnviada, "enviado", 0); MetodoGeneral.RegistroDeError("IDPROYECTO = '" + IdProyecto.ToString() + "', HOMOCLAVE ='" + HomoclaveEnviada + "', ESTATUS = 'enviado'", "Invocación Nivel 3 - "); MetodoGeneral.RegistroDeError(EnviarEstatus.Endpoint.Address.ToString(), "Invocación Nivel 3 - "); string FechaHora = DateTime.Now.ToString("dd / MMM / yyy hh:mm:ss"); //Enviar correo a dependencia y RL: int IdProyectoRecibido = Convert.ToInt32(IdProyecto); NotificacionInicioTramite DatosNotificacion = new NotificacionInicioTramite(); DatosNotificacion = LogicaProyecto.L_SeleccionarDatosNotificacionInicioTramite(IdProyecto, HomoclaveEnviada, RFCRL); //Primer Correo (Dependencia): MailMessage email = new MailMessage("*****@*****.**", DatosNotificacion.CorreoResponsable); email.To.Add(new MailAddress(ConfigurationManager.AppSettings["CorreoAdministrador"].ToString())); email.Subject = "Notificación de inicio de trámite desde ENREL"; //Primer Correo - Obtener la plantilla en HTML: string ContenidoCorreo = ""; string path = ConfigurationManager.AppSettings["Html_NotificacionInicioTramiteDependencia"].ToString(); ContenidoCorreo = System.IO.File.ReadAllText(path); //Primer Correo - Datos del correo ContenidoCorreo = ContenidoCorreo.Replace("#IdGlobalMacro#", DatosNotificacion.IdGlobal); ContenidoCorreo = ContenidoCorreo.Replace("#FechaHora#", FechaHora); ContenidoCorreo = ContenidoCorreo.Replace("#Tecnologia#", DatosNotificacion.Tecnologia); ContenidoCorreo = ContenidoCorreo.Replace("#Homoclave#", DatosNotificacion.HomoclaveGeneral); ContenidoCorreo = ContenidoCorreo.Replace("#Dependencia#", DatosNotificacion.Dependencia); ContenidoCorreo = ContenidoCorreo.Replace("#RFCRL#", RFCRL); AlternateView htmlView = AlternateView.CreateAlternateViewFromString(ContenidoCorreo, null, "text/html"); //Primer Correo - Obtener imágenes: LinkedResource Logotipo_SENER = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_SENER"].ToString()); Logotipo_SENER.ContentId = "Logotipo_SENER"; htmlView.LinkedResources.Add(Logotipo_SENER); LinkedResource Logotipo_MEXICO = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_MEXICO"].ToString()); Logotipo_MEXICO.ContentId = "Logotipo_MEXICO"; htmlView.LinkedResources.Add(Logotipo_MEXICO); email.AlternateViews.Add(htmlView); email.IsBodyHtml = true; email.Priority = MailPriority.High; SmtpClient smtp = new SmtpClient(); smtp.Host = "172.16.70.110"; smtp.Port = 25; smtp.EnableSsl = false; smtp.UseDefaultCredentials = false; smtp.Send(email); email.Dispose(); //Segundo Correo (RL): email = new MailMessage("*****@*****.**", DatosNotificacion.CorreoRL); email.To.Add(new MailAddress(ConfigurationManager.AppSettings["CorreoAdministrador"].ToString())); email.Subject = "Notificación de inicio de trámite desde ENREL"; //Segundo Correo - Obtener la plantilla en HTML: ContenidoCorreo = ""; path = ConfigurationManager.AppSettings["Html_NotificacionInicioTramiteRL"].ToString(); ContenidoCorreo = System.IO.File.ReadAllText(path); //Segundo Correo - Datos del correo ContenidoCorreo = ContenidoCorreo.Replace("#IdGlobalMacro#", DatosNotificacion.IdGlobal); ContenidoCorreo = ContenidoCorreo.Replace("#FechaHora#", FechaHora); ContenidoCorreo = ContenidoCorreo.Replace("#Tecnologia#", DatosNotificacion.Tecnologia); ContenidoCorreo = ContenidoCorreo.Replace("#Homoclave#", DatosNotificacion.HomoclaveGeneral); ContenidoCorreo = ContenidoCorreo.Replace("#Dependencia#", DatosNotificacion.Dependencia); ContenidoCorreo = ContenidoCorreo.Replace("#NombreRL#", DatosNotificacion.NombreRL); htmlView = AlternateView.CreateAlternateViewFromString(ContenidoCorreo, null, "text/html"); //Segundo Correo - Obtener imágenes: Logotipo_SENER = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_SENER"].ToString()); Logotipo_SENER.ContentId = "Logotipo_SENER"; htmlView.LinkedResources.Add(Logotipo_SENER); Logotipo_MEXICO = new LinkedResource(ConfigurationManager.AppSettings["Logotipo_MEXICO"].ToString()); Logotipo_MEXICO.ContentId = "Logotipo_MEXICO"; htmlView.LinkedResources.Add(Logotipo_MEXICO); email.AlternateViews.Add(htmlView); email.IsBodyHtml = true; email.Priority = MailPriority.High; smtp = new SmtpClient(); smtp.Host = "172.16.70.110"; smtp.Port = 25; smtp.EnableSsl = false; smtp.UseDefaultCredentials = false; smtp.Send(email); email.Dispose(); return(new JsonResult { Data = "ok" }); } catch (Exception ex) { MetodoGeneral.RegistroDeError(ex.Message, "Proyectos: Enviar Trámite a BPM"); return(new JsonResult { Data = "error" }); } }
public int D_ActualizarEstatusTramite(EstatusTramite EstatusTramite, int IdProyecto, string HomoclaveAsignada, string idGlobalTramite) { int IdTecnologia; DtAuxiliar.Rows.Clear(); DtAuxiliar.Columns.Clear(); SqlConnection Conexion = MetodoGeneral.EstablecerConexionBD(); int IdEstatusTramiteENREL; string Observacion; int Prorroga; switch (EstatusTramite.estatus) { case "ENVIADO": IdEstatusTramiteENREL = 3; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "RECIBIDO": IdEstatusTramiteENREL = 4; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "INICIADO": IdEstatusTramiteENREL = 5; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "RECHAZADO": IdEstatusTramiteENREL = 11; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "EN PROCESO": IdEstatusTramiteENREL = 6; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "DETENIDO": IdEstatusTramiteENREL = 7; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "CANCELADO": IdEstatusTramiteENREL = 12; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; case "TERMINADO": string opcion = EstatusTramite.resolucion.ToUpper(); switch (opcion) { case "ACEPTADO": IdEstatusTramiteENREL = 9; break; case "RECHAZADO": IdEstatusTramiteENREL = 16; break; default: IdEstatusTramiteENREL = 14; break; } Observacion = EstatusTramite.nota; Prorroga = 0; break; case "PREVENCION": IdEstatusTramiteENREL = 8; Observacion = "Se agregaron " + EstatusTramite.nota + " días de prórroga"; Prorroga = 0; //Prorroga = Convert.ToInt16(EstatusTramite.nota); break; case "PRORROGA": IdEstatusTramiteENREL = 13; Observacion = "Se agregaron " + EstatusTramite.nota + " días de prórroga"; Prorroga = 0; try { Prorroga = Convert.ToInt32(EstatusTramite.nota); } catch { } break; default: IdEstatusTramiteENREL = 14; if (EstatusTramite.nota != null) { Observacion = EstatusTramite.nota; } else { Observacion = "Sin información"; }; Prorroga = 0; break; } SQLComandoAuxiliar = MetodoGeneral.CrearLlamadaStoredProcedure("SpActualizarEstatusTramite", Conexion); SQLComandoAuxiliar.Parameters.AddWithValue("@IdProyecto", IdProyecto); SQLComandoAuxiliar.Parameters.AddWithValue("@HomoclaveAsignada", HomoclaveAsignada); SQLComandoAuxiliar.Parameters.AddWithValue("@IdEstatus", IdEstatusTramiteENREL); SQLComandoAuxiliar.Parameters.AddWithValue("@Resolutivo", EstatusTramite.resolucion); string Fecha = (Convert.ToDateTime(EstatusTramite.fechaRegistro)).ToString("dd-MM-yyyy HH:mm:ss"); SQLComandoAuxiliar.Parameters.AddWithValue("@FechaRealDeActividad", Fecha); //SQLComandoAuxiliar.Parameters.AddWithValue("@FechaRealDeActividad", DateTime.ParseExact(EstatusTramite.fechaRegistro,"dd-MM-yyyy HH:mm:ss",System.Globalization.CultureInfo.InvariantCulture)); SQLComandoAuxiliar.Parameters.AddWithValue("@Observacion", Observacion); SQLComandoAuxiliar.Parameters.AddWithValue("@DiasAgregados", Prorroga); SQLComandoAuxiliar.Parameters.AddWithValue("@IdGlobalTramite", idGlobalTramite); SQLComandoAuxiliar.ExecuteNonQuery(); SqlDataAdapter adp = new SqlDataAdapter(SQLComandoAuxiliar); SQLComandoAuxiliar.Connection.Dispose(); return(1); }