public void Run(string modoEjecucionIn) { try { modoEjecucion = modoEjecucionIn; if (modoEjecucion == "FLOW") { RunFlow(); } else { List <OpenPop.Mime.Message> listaCorreos = BL_AgenteObj.GetCorreos(modoEjecucion, 2, out int procesoCorreoId); if (procesoCorreoId > 0)//tiene mensajes nuevos { if (listaCorreos.Count > 0) { string correos = ""; //recorrer los mensajes encontrados for (int i = listaCorreos.Count - 1; i >= 0; i--) { string correo = listaCorreos[i].Headers.From.MailAddress.Address.ToString(); correos += correo + ","; //recorrer archivos adjuntos foreach (MessagePart attachment in listaCorreos[i].FindAllAttachments()) { if (attachment.FileName.ToLower().Contains(".xls")) { //Descarga excel BL_GenericoObj.SaveFile(pathAdjuntos, attachment.FileName, attachment.Body); //Leer archivo excel //GetDatosExcel(Path.Combine(pathAdjuntos, attachment.FileName)); GetDatosExcel(pathAdjuntos, attachment.FileName, correo); } } } DL_AgenteObj.InsertLog(modoEjecucion, "Run", "BL_PasePedido", "Se econtró " + listaCorreos.Count.ToString() + " correo(s)", "Se econtraron " + listaCorreos.Count.ToString() + " correo(s). Id correo: " + procesoCorreoId.ToString() + ". " + correos, "Pase pedido", EL_ParmTipoLog.Info); } DL_AgenteObj.UpdateCorreoId(EL_ParmPasePedido.Id, procesoCorreoId); } } //Envío archivos TXT por FTP cada X minutos SendTxtFTP(urlFileFtp, user, password, pathTxt); } catch (Exception ex) { DL_AgenteObj.InsertLog(modoEjecucion, "Run", "PasePedido", ex.Message, ex.ToString(), "Pase pedido", EL_ParmTipoLog.Error); } }
private void Dgv_Eventos_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) { try { if (e.RowIndex < 0) { return; } if (e.ColumnIndex == 1) { e.Paint(e.CellBounds, DataGridViewPaintParts.All); Image image = Properties.Resources.icon_info; string tipo = Dgv_Eventos.Rows[e.RowIndex].Cells["Tipo1"].Value.ToString(); switch (tipo) { case "HISTORIAL": image = Properties.Resources.icon_info; break; case "ERROR": image = Properties.Resources.icon_error; break; case "ALERTA": image = Properties.Resources.icon_alert; break; } var width = image.Width; var height = image.Height; var x = e.CellBounds.Left + (e.CellBounds.Width - width) / 2; var y = e.CellBounds.Top + (e.CellBounds.Height - height) / 2; e.Graphics.DrawImage(image, new System.Drawing.Rectangle(x, y, width, height)); e.Handled = true; } } catch (Exception ex) { DL_AgenteObj.InsertLog("Agente", "Dgv_Eventos_CellPainting", "FrmMonitoreo", ex.Message, ex.ToString(), "Agente", EL_ParmTipoLog.Error); } }
public List <OpenPop.Mime.Message> GetCorreos(string modoEjecucion, int procesoId, out int procesoCorreoId) { procesoCorreoId = 0; try { System.Data.DataTable dtDatosCorreo = DL_AgenteObj.GetCorreoDatos(procesoId); var myList = new List <string>(); //if (procesoId==1) //{ // System.Data.DataTable dtDatosCorreo2 = DL_AgenteObj.GetCorreoDatos(2); // myList.Add(dtDatosCorreo2.Rows[0]["ProcesoAsuntoCorreo"].ToString()); //} //test string[] asuntos = dtDatosCorreo.Rows[0]["ProcesoAsuntoCorreo"].ToString().Split(','); if (dtDatosCorreo.Rows.Count > 0) { List <OpenPop.Mime.Message> listaCorreos = BL_ServerMail.GetMessages( int.Parse(dtDatosCorreo.Rows[0]["ProcesoPuertoCorreo"].ToString()), //puerto dtDatosCorreo.Rows[0]["ProcesoHostnameCorreo"].ToString(), //host dtDatosCorreo.Rows[0]["ProcesoUsuarioCorreo"].ToString(), //usuario dtDatosCorreo.Rows[0]["ProcesoClaveCorreo"].ToString(), true, //clave dtDatosCorreo.Rows[0]["ProcesoAsuntoCorreo"].ToString(), //asunto int.Parse(dtDatosCorreo.Rows[0]["ProcesoIdCorreo"].ToString()), //idcorreo asuntos, out procesoCorreoId ); return(listaCorreos); } else { return(new List <OpenPop.Mime.Message>()); } } catch (Exception ex) { DL_AgenteObj.InsertLog(modoEjecucion, "GetCorreos", "BL_Agente", ex.Message, ex.ToString(), "Agente", EL_ParmTipoLog.Error); return(new List <OpenPop.Mime.Message>()); } }
public void RunEscuchaPeticiones(int robotId, string rutaUiPath) { try { List <OpenPop.Mime.Message> listaCorreos = BL_AgenteObj.GetCorreos("", 4, out int procesoCorreoId); if (procesoCorreoId > 0) { if (listaCorreos.Count > 0)//tiene mensajes nuevos { string correos = ""; for (int i = listaCorreos.Count - 1; i >= 0; i--) { correos += listaCorreos[i].Headers.From.MailAddress.Address.ToString() + ","; //validación para envío de resumen de estado if (listaCorreos[i].Headers.Subject.ToUpper().Trim() == "RPA") { ProcesarResumen(0, true, true, listaCorreos[i].Headers.From.MailAddress.Address.ToString(), listaCorreos[i]); } else { string minutos = DL_RPAMainObj.InsertCola(listaCorreos[i].Headers.Subject.ToUpper().Trim()); ConfirmarColar(minutos, listaCorreos[i], listaCorreos[i].Headers); } } DL_AgenteObj.InsertLog("", "RunEscuchaPeticiones", "RunEscuchaPeticiones", "Se econtró " + listaCorreos.Count.ToString() + " correo(s)", "Se econtraron " + listaCorreos.Count.ToString() + " correo(s). Id correo: " + procesoCorreoId.ToString() + ". " + correos, "RPA Main", EL_ParmTipoLog.Info); } DL_AgenteObj.UpdateCorreoId(EL_ParmRPAMain.Id, procesoCorreoId); } } catch (Exception ex) { DL_AgenteObj.InsertLog("", "RunEscuchaPeticiones", "RunEscuchaPeticiones", ex.Message, ex.ToString(), "RPA RunEscuchaPeticiones", EL_ParmTipoLog.Alerta); } }
public void MostrarForm(Form mdiChild, bool menu) { try { bool flg = false; foreach (Form frm in this.MdiChildren) { if (frm.AccessibilityObject.Name == mdiChild.AccessibilityObject.Name) { if (menu) { frm.Select(); } frm.WindowState = FormWindowState.Normal; flg = true; } else { if (!menu) { frm.WindowState = FormWindowState.Minimized; } } } if (flg == false) { mdiChild.MdiParent = this; mdiChild.Show(); mdiChild.BringToFront(); } } catch (Exception ex) { DL_AgenteObj.InsertLog("Agente", "MostrarForm", "FrmProcesoAdmin", ex.Message, ex.ToString(), "Agente", EL_ParmTipoLog.Alerta); } }
public void Run(string modoEjecucionIn) { string adjuntoTmp = ""; try { modoEjecucion = modoEjecucionIn; if (modoEjecucion == "FLOW") { RunFlow(); } else { List <Message> listaCorreos = BL_AgenteObj.GetCorreos(modoEjecucion, 1, out int procesoCorreoId); if (procesoCorreoId > 0) { if (listaCorreos.Count > 0)//tiene mensajes nuevos { string correos = ""; int rnd = new Random().Next(1000); //recorrer los mensajes encontrados for (int i = listaCorreos.Count - 1; i >= 0; i--) { correos += listaCorreos[i].Headers.From.MailAddress.Address.ToString() + ","; string consultoraId = ""; //Busca adjunto tipo Excel foreach (MessagePart adjunto in listaCorreos[i].FindAllAttachments()) { if (!adjunto.ContentDisposition.Inline) { string gerenteCorreo = listaCorreos[i].Headers.From.MailAddress.Address.ToString(); if (adjunto.ContentType.MediaType == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { adjuntoTmp = adjunto.FileName; int err = 0; try { //Descarga excel BL_GenericoObj.SaveFile(pathAdjuntos, procesoCorreoId.ToString() + rnd.ToString() + Path.GetExtension(adjunto.FileName), adjunto.Body); } catch (Exception) { DL_AgenteObj.UpdateCorreoId(EL_ParmActDatos.Id, procesoCorreoId); err = 1; throw; } if (err == 0) { //Leer archivo excel consultoraId = GetDatosExcel(Path.Combine(pathAdjuntos, procesoCorreoId.ToString() + rnd.ToString() + Path.GetExtension(adjunto.FileName)), gerenteCorreo, true, adjunto.FileName); } break; } } } //si se encontró un excel con datos if (consultoraId.Length == 9) { //Crea directorio de consultora if (!Directory.Exists(pathImagenes + "\\" + consultoraId)) { Directory.CreateDirectory(pathImagenes + "\\" + consultoraId); } int countImage = 0; if (codSolicitud.Length > 0) { //Busca adjunto tipo imagen foreach (MessagePart adjunto in listaCorreos[i].FindAllAttachments()) { if (!adjunto.ContentDisposition.Inline) { if (adjunto.ContentType.MediaType != "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { //Arma el nombre del archivo: 384_Imagen1.jpg , 384_Imagen2.jpg countImage += 1; string fileName = codSolicitud + "-Imagen" + countImage.ToString().ToString() + Path.GetExtension(adjunto.FileName); //Descarga todos los adjuntos de tipo imagen BL_GenericoObj.SaveFile(pathImagenes + "\\" + consultoraId, fileName, adjunto.Body); } } } } } else { //El excel no retornó código de consultora DL_AgenteObj.UpdateCorreoId(EL_ParmActDatos.Id, procesoCorreoId); } } DL_AgenteObj.InsertLog(modoEjecucion, "Run", "BL_ActualizacionDatos", "Se econtró " + listaCorreos.Count.ToString() + " correo(s)", "Se econtraron " + listaCorreos.Count.ToString() + " correo(s). Id correo: " + procesoCorreoId.ToString() + ". " + correos, "Actualizacion Datos", EL_ParmTipoLog.Info); } DL_AgenteObj.UpdateCorreoId(EL_ParmActDatos.Id, procesoCorreoId); } } } catch (Exception ex) { DL_AgenteObj.InsertLog(modoEjecucion, "Run", "BL_ActualizacionDatos", ex.Message, ex.ToString() + ", " + adjuntoTmp, "Actualizacion Datos", EL_ParmTipoLog.Alerta); } }