public Boolean Reenviar(ref string error, UsuarioDto usuario, int facturaId, HttpContext context) { Modelo.Factura _factura = new Modelo.Factura(); ServicioXml _servicioXml = new ServicioXml(this._logger); string _nombre = ""; GetFile(ref _nombre, ref _factura, 1, facturaId, context); GetFile(ref _nombre, ref _factura, 2, facturaId, context); Ruta _ruta = new Ruta(context, _factura); if (!File.Exists(_ruta.RutaGuardadoXML) || !File.Exists(_ruta.RutaPDF)) { error = "No se recuperaron los archivos necesarios."; return(false); } ServicioCorreo.Enviar(_factura.Sucursal.Asunto, _factura.Sucursal.Mensaje, _factura.Cliente.Correo, _ruta.RutaPDF, _ruta.RutaGuardadoXML, this._logger); return(true); }
public Boolean Post(ref string error, Modelo.Factura factura, UsuarioDto usuario, HttpContext context) { var _servicioRelacion = new ServicioRelaciones(this._logger, this._contexto); _servicioRelacion.ObtenerRelacionFactura(ref factura); Ruta ruta = new Ruta(context, factura); if (!ValidarFactura(ref error, ref factura)) { return(false); } ServicioXml _servicioXml = new ServicioXml(this._logger); if (!_servicioXml.GeneraCFDI(ref error, factura, ruta.RutaGuardadoXML, ruta.RutaCertificado, ruta.RutaKey, ruta.RutaArchivosXSLT, ruta.RutaCarpetaFacturasClientes)) { return(false); } XmlDocument _xmlDocument = new XmlDocument(); if (!_servicioXml.Timbrar(ref error, ref _xmlDocument, ruta.RutaGuardadoXML, ruta.RutaGuardadoXML)) { return(false); } Put(ref error, ref factura, _xmlDocument); try { factura.ImagenCbb = ruta.RutaImagenCBB; _servicioXml.GeneraCBB(ref error, factura.Sucursal.Rfc, factura.Cliente.Rfc, factura.FolioFiscal, factura.Total, ruta.RutaCBB); var correo = factura.Cliente.Correo; GenerarPDF(factura, ruta); ServicioCorreo.Enviar(factura.Sucursal.Asunto, factura.Sucursal.Mensaje, correo, ruta.RutaPDF, ruta.RutaGuardadoXML, this._logger); _servicioRelacion.SanitizarFactura(ref factura); Save(ref error, factura); return(true); } catch (Exception e) { this._logger.EscribirError(e.ToString()); error = "Ocurrio un error al guardar la factura"; return(false); } }
public static void Enviar(string asunto, string mensaje, String correos, string rutaPDF, string rutaXML, Logger logger) { Task.Run(() => { List <Object> Correos = null; try { Correos = JsonConvert.DeserializeObject <List <object> >(correos); if (Correos != null) { if (Correos.Count() > 0) { new Smtp().EnviarCorreo(ServicioCorreo.GetMensaje(asunto, mensaje, rutaPDF, rutaXML, Correos, logger)); } } } catch (Exception e) { logger.EscribirError(e.ToString(), "Enviar Correo"); } }); }