public void ProcesarEnvioACajas(List <BoletoRobotDTO> lboletosDeudaPendiente, string mensaje, string asunto, string lcorreoDisplay) { var lcorreoFrom = string.Format("{0}[email protected]", Configuracion.Gds).ToLower(); var lcajas = lboletosDeudaPendiente.GroupBy(p => new { p.CorreoCaja }).Select(s => s.Key.CorreoCaja).ToList(); lcajas.ForEach(lcaja => { var lboletosPorCaja = lboletosDeudaPendiente.Where(boleto => boleto.CorreoCaja.Equals(lcaja)).ToList(); var lencabezado = string.Format("Caja: {0}, ", lboletosPorCaja[0].DescripcionSucursal); var factoryReporte = ReporteFactory.getReporteFactory(tipoProceso, lboletosPorCaja); var lcorreoBody = factoryReporte.ConstruirCorreo(lencabezado, mensaje.ToString()); var lcorreoAsunto = string.Format(asunto, lboletosPorCaja[0].DescripcionSucursal); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = lboletosPorCaja[0].CorreoCaja, EmailCC = "*****@*****.**", EmailBCC = Configuracion.correo_EmailRobotAlertas, EmailDisplay = lcorreoDisplay, EmailBody = lcorreoBody, EmailSubject = lcorreoAsunto }; lscorreo.Enviar(); }); }
public void ProcesarEnvioAAgencias(List <BoletoRobotDTO> lboletosDeudaPendiente, string mensaje, string asunto, string lcorreoDisplay) { var lcorreoFrom = string.Format("{0}[email protected]", Configuracion.Gds).ToLower(); var lclientes = lboletosDeudaPendiente.GroupBy(p => new { p.IdCliente }).Select(s => s.Key.IdCliente).ToList(); lclientes.ForEach(lcliente => { var lboletosPorCliente = lboletosDeudaPendiente.Where(boleto => boleto.IdCliente == lcliente).ToList(); var lencabezado = string.Format("Estimado Cliente : {0}, ", lboletosPorCliente[0].NombreCliente); var lcorreoAsunto = string.Format(asunto, lboletosPorCliente[0].NombreCliente, lboletosPorCliente[0].IdCliente); lcorreoDisplay = string.Format("{0} - Robot Anulaciones Avisos - Agencia", Configuracion.Gds); var factoryReporte = ReporteFactory.getReporteFactory(tipoProceso, lboletosPorCliente); var lcorreoBody = factoryReporte.ConstruirCorreo(lencabezado, mensaje.ToString()); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = lboletosPorCliente[0].CorreoCliente, EmailCC = (string.IsNullOrEmpty(lboletosPorCliente[0].CorreoPromotor) ? Configuracion.correo_EmailPromotorAlternativo : lboletosPorCliente[0].CorreoPromotor) + ";" + Configuracion.correo_EmailCoordConsolidador, EmailDisplay = lcorreoDisplay, EmailBody = lcorreoBody, EmailSubject = lcorreoAsunto }; lscorreo.Enviar(); }); }
public void ProcesarEnvioAVendedores(List <BoletoRobotDTO> lboletosDeudaPendiente, string mensaje, string asunto, string lcorreoDisplay) { var lcorreoFrom = string.Format("{0}[email protected]", Configuracion.Gds).ToLower(); var lvendedores = lboletosDeudaPendiente.GroupBy(p => new { p.IdVendedor }).Select(s => s.Key.IdVendedor).ToList(); lvendedores.ForEach(lvendedor => { var lboletosPorVendedor = lboletosDeudaPendiente.Where(boleto => boleto.IdVendedor.Equals(lvendedor)).ToList(); var lencabezado = string.Format("Estimado(a): {0}, ", lboletosPorVendedor[0].Vendedor.Nombre); var factoryReporte = ReporteFactory.getReporteFactory(tipoProceso, lboletosPorVendedor); var lcorreoBody = factoryReporte.ConstruirCorreo(lencabezado, mensaje.ToString()); var lcorreoAsunto = string.Format(asunto, lboletosPorVendedor[0].Vendedor.Nombre); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = lboletosPorVendedor[0].Vendedor.Correo, EmailCC = (string.IsNullOrEmpty(lboletosPorVendedor[0].CorreoPromotor) ? Configuracion.correo_EmailPromotorAlternativo : lboletosPorVendedor[0].CorreoPromotor), EmailDisplay = lcorreoDisplay, EmailBody = lcorreoBody, EmailSubject = lcorreoAsunto }; lscorreo.Enviar(); }); }
public void ProcesoEnvioNoFacturados() { var lvendedores = boletos.GroupBy(p => new { p.IdVendedor }).Select(s => s.Key.IdVendedor).ToList(); lvendedores.ForEach(lvendedor => { var lboletosPorVendedor = boletos.Where(boleto => boleto.IdVendedor.Equals(lvendedor)).ToList(); var lpseudos = lboletosPorVendedor.GroupBy(p => new { p.Pseudo }).Select(s => s.Key.Pseudo).ToList(); lpseudos.ForEach(lpseudo => { var lboletosPorPseudo = lboletosPorVendedor.Where(boleto => boleto.Pseudo.Equals(lpseudo)).ToList(); var lencabezado = string.Format("Estimado(a): {0}, ", lboletosPorPseudo[0].Vendedor.Nombre); mensaje = new StringBuilder(); mensaje.Append("Se hace de tu conocimiento que los siguientes boletos emitidos no están facturados."); var factoryReporte = ReporteFactory.getReporteFactory(tipoProceso, lboletosPorPseudo); var lcorreoBody = factoryReporte.ConstruirCorreo(lencabezado, mensaje.ToString()); var lcorreoDisplay = string.Format("Alertas GDS [{0}]", lboletosPorPseudo[0].Pseudo); var lcorreoFrom = string.Format("{0}[email protected]", lboletosPorPseudo[0].Pseudo); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = lboletosPorPseudo[0].Vendedor.Correo, EmailCC = lboletosPorPseudo[0].Vendedor.CorreoJefe, EmailDisplay = lcorreoDisplay, EmailBody = lcorreoBody, EmailSubject = "Boletos No Facturados" }; lscorreo.Enviar(); }); }); }
public void ProcesarEnvioPromotores(List <BoletoRobotDTO> lboletosDeudaPendiente, string mensaje, string asunto, string lcorreoDisplay) { var lcorreoFrom = string.Format("{0}[email protected]", Configuracion.Gds).ToLower(); ReporteFactory lreporteFactory = null; var lpromotores = lboletosDeudaPendiente.GroupBy(p => new { p.IdPromotor }).Select(s => s.Key.IdPromotor).ToList(); lpromotores.ForEach(lpromotor => { var lboletosPorPomotor = lboletosDeudaPendiente.Where(boleto => boleto.IdPromotor == lpromotor).ToList(); var lcorreoAsunto = string.Format(asunto, lboletosPorPomotor[0].NombrePromotor); var lencabezado = string.Format("Estimado(a): {0}, ", lboletosPorPomotor[0].NombrePromotor); var lconsolidado = new StringBuilder(); var lclientesPromotor = lboletosPorPomotor.GroupBy(p => new { p.IdCliente }).Select(s => s.Key.IdCliente).ToList(); lclientesPromotor.ForEach(lcliente => { var lboletosPorCliente = lboletosDeudaPendiente.Where(boleto => boleto.IdCliente == lcliente).ToList(); lreporteFactory = ReporteFactory.getReporteFactory(tipoProceso, lboletosPorCliente); var ltabla = lreporteFactory.ConstruirTablaReporte(); lconsolidado.AppendLine(string.Format("<span class='textContenidoNegrita'> AGENCIA : {0} DK : {1} </span>", lboletosPorCliente[0].NombreCliente, lboletosPorCliente[0].IdCliente)); lconsolidado.AppendLine(string.Format("<br>{0}<br>", ltabla)); }); var lcorreoBody = lreporteFactory.ConstruirCorreo(lencabezado, mensaje.ToString(), lconsolidado.ToString()); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = lboletosPorPomotor[0].CorreoPromotor, EmailCC = (string.IsNullOrEmpty(lboletosPorPomotor[0].CorreoJefePromotor) ? string.Empty : lboletosPorPomotor[0].CorreoJefePromotor), EmailDisplay = lcorreoDisplay, EmailBody = lcorreoBody, EmailSubject = lcorreoAsunto }; lscorreo.Enviar(); }); }
public void ProcesoEnvioNOAnulados(List <BoletoRobotDTO> boletosNoAnulados) { display = string.Format("{0} - Robot Anulaciones Avisos", Configuracion.Gds); asunto = string.Format("El Robot de Anulaciones {0} NO PUDO ANULAR boletos pendientes de pago.", Configuracion.Gds); mensaje = new StringBuilder(); mensaje.Append(string.Format("El robot de Anulaciones {0} NO PUDO ANULAR los siguientes boletos. Verificar los mensajes de error devueltos por el GDS : ", Configuracion.Gds)); var factoryReporte = ReporteFactory.getReporteFactory(tipoProceso, boletosNoAnulados); var lcorreoBody = factoryReporte.ConstruirCorreo("", mensaje.ToString()); var lcorreoFrom = string.Format("{0}[email protected]", Configuracion.Gds).ToLower(); var lscorreo = new GestorCorreo { EmailFrom = lcorreoFrom, EmailTo = Configuracion.correo_EmailCoordConsolidador, EmailCC = Configuracion.correo_EmailCounterTurno + ";" + Configuracion.correo_EmailSupervisorCounterIA, EmailBCC = Configuracion.correo_EmailRobotAlertas + ";" + Configuracion.correo_EmailNotificacion, EmailDisplay = display, EmailBody = lcorreoBody, EmailSubject = asunto }; lscorreo.Enviar(); }