public void Enviar_CajaWeb(int pIntIdWeb, int pIntIdLang, int pIntIdMail, string pStrHTMLBody, string pStrAsunto, string pStrEmailCounter) { NMMail objMail = new NMMail(); try { CorreoNM objCorreo = new CorreoNM(); objCorreo = Get_Correo_Web(pIntIdWeb, pIntIdLang, pIntIdMail); if (objCorreo != null) { objMail.MailServer = "10.75.102.2"; objMail.MailSubject = pStrAsunto; objMail.MailFrom = new System.Net.Mail.MailAddress(objCorreo.FromCorreo); if (!string.IsNullOrEmpty(pStrEmailCounter)) { objMail.MailTo = new System.Net.Mail.MailAddress(pStrEmailCounter); } if (!string.IsNullOrEmpty(objCorreo.ToCorreo)) { objMail.AddMailsTo = objCorreo.ToCorreo; } if (!string.IsNullOrEmpty(objCorreo.CCCorreo)) { if (objCorreo.CCCorreo != "") { objMail.AddMailsCC = objCorreo.CCCorreo; } } if (!string.IsNullOrEmpty(objCorreo.BCCCorreo)) { if (objCorreo.BCCCorreo != "") { objMail.AddMailsBCC = objCorreo.BCCCorreo; } } objMail.MailHTML = true; objMail.MailBody = objCorreo.StyleFileCorreo + objCorreo.HeaderCorreo + pStrHTMLBody + objCorreo.FooterCorreo; objMail.SendMail(objCorreo.UsuarioCredentials, objCorreo.PasswordCredentials); } } catch (Exception ex) { throw new Exception(ex.ToString()); } finally { objMail = null; } }
public void Enviar_Log(string pStrAsunto, string pStrBody, bool pBolGenerarArchivo, string pStrCarpeta, string pStrNomArchivo) { try { if (pBolGenerarArchivo) { NMMail objNMMail = new NMMail(); objNMMail.AddMailFrom = "*****@*****.**"; objNMMail.AddMailsTo = "[email protected] "; // objNMMail.AddMailsTo() = "*****@*****.**" objNMMail.MailServer = "10.75.103.230"; objNMMail.MailHTML = true; objNMMail.MailSubject = pStrAsunto; objNMMail.MailBody = pStrBody; objNMMail.SendMail("*****@*****.**", "1Nb0xplac3"); if (!string.IsNullOrEmpty(pStrCarpeta)) { string sFecha = DateTime.Now.ToString("yyyyMMdd"); string sHora = DateTime.Now.ToString("HHmmss"); string strRuta = pStrCarpeta + sFecha + @"\"; bool bolExiste = System.IO.Directory.Exists(strRuta); if (!(bolExiste == true)) { System.IO.Directory.CreateDirectory(strRuta); } System.IO.File.WriteAllText(strRuta + pStrNomArchivo, pStrBody); } } else { NMMail objNMMail = new NMMail(); objNMMail.AddMailFrom = "*****@*****.**"; objNMMail.AddMailsTo = "[email protected] "; // objNMMail.AddMailsTo() = "*****@*****.**" objNMMail.MailServer = "10.75.103.230"; objNMMail.MailHTML = true; objNMMail.MailSubject = pStrAsunto; objNMMail.MailBody = pStrBody; objNMMail.SendMail("*****@*****.**", "1Nb0xplac3"); } } catch (Exception ex) { } }
public void EnviarPromociones( Personal objPersonal, OportunidadRetailReq oportunidadRetailReq, bool chEnviarPromociones, string strNomCli, string strApeCli, string strEmailCli ) { int intIdOfi = objPersonal.IdOficina; // objUsuarioSession.IdOfi; int intIdDep = objPersonal.IdDepartamento; // objUsuarioSession.IdDep; try { if (oportunidadRetailReq.EnviarPromociones.Equals("0") & chEnviarPromociones) { if ( intIdDep != ConstantesOportunidadRetail.INT_ID_DEP_INTERNO || intIdDep != ConstantesOportunidadRetail.INT_ID_DEP_RECEPTIVO ) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, true); } if ( (intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL && intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) || (intIdOfi == Constantes_SRV.INT_ID_OFI_NMV & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) ) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, true); } } else if (oportunidadRetailReq.EnviarPromociones.Equals("1") & !chEnviarPromociones) { // Estaba suscrito y ahora ya no lo va a estar NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, false); if ( (intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL && intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) || (intIdOfi == Constantes_SRV.INT_ID_OFI_NMV & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) ) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, false); } } else if (oportunidadRetailReq.EnviarPromociones.Equals("") & chEnviarPromociones) { if ( intIdDep != ConstantesOportunidadRetail.INT_ID_DEP_INTERNO || intIdDep != ConstantesOportunidadRetail.INT_ID_DEP_RECEPTIVO ) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, true); } if ( (intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL && intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) || (intIdOfi == Constantes_SRV.INT_ID_OFI_NMV && intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) ) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (strNomCli + " " + strApeCli).ReplaceSpecialChars(), strEmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, true); } } } catch (Exception ex) { throw ex; } }
public IHttpActionResult Create(OportunidadVentaNM oportunidadVentaNM) { string exMessage = string.Empty; object objRespuesta = null; int? idCotizacion = 0; RptaOportunidadVentaNM rptaOportunidadVentaNM = new RptaOportunidadVentaNM(); _repository = new OportunidadRetailRepository(); try { int?intIdCliCot = null; List <ClienteCot> ListClientes = null; ClienteCot Cliente_Cot = null; CotizacionVta DtsCotizacionVta = null; UsuarioLogin usuarioLogin = null; DateTime _fechaIgnoredTriggerCuenta = Convert.ToDateTime(ConfigurationManager.AppSettings["DATO_IGNORED_TRIGGER_CUENTA"]); valCreateOportunidadNM(ref oportunidadVentaNM, ref rptaOportunidadVentaNM, ref usuarioLogin, ref DtsCotizacionVta); if (string.IsNullOrEmpty(rptaOportunidadVentaNM.codigo) == false) { return(Ok(new { respuesta = rptaOportunidadVentaNM })); } //int intIdUsuWeb = oportunidadVentaNM.UsuarioCrea; int intIdDep = usuarioLogin.IdDep; int intIdOfi = usuarioLogin.IdOfi; string strIPUsuario = "127.0.0.0"; string strTextoPost = string.Empty; bool bolCambioEstado = false, bolEsUrgenteEmision = false; DateTime?datFechaPlazoEmision = null; #region ProcesoClientes Cliente_Cot = (ClienteCot)_oportunidadVentaNMRepository.SelectByCodeSF(oportunidadVentaNM.idCuenta_SF)["pCurResult_out"]; if (!(Cliente_Cot != null)) { if (string.IsNullOrEmpty(oportunidadVentaNM.IdTipoDoc) == false && string.IsNullOrEmpty(oportunidadVentaNM.NumDoc) == false) { ListClientes = (List <ClienteCot>)_repository.SelectByDocumento(oportunidadVentaNM.IdTipoDoc, oportunidadVentaNM.NumDoc)["pCurResult_out"]; } else { ListClientes = (List <ClienteCot>)_repository.SelectByEmail(oportunidadVentaNM.EmailCli)["pCurResult_out"]; } if (ListClientes != null && ListClientes.Count > 0) { Cliente_Cot = ListClientes[0]; } } if (Cliente_Cot != null) { intIdCliCot = Cliente_Cot.IdCliCot; /*Update*/ _oportunidadVentaNMRepository._Update((int)intIdCliCot, oportunidadVentaNM.NombreCli, oportunidadVentaNM.ApePatCli, oportunidadVentaNM.ApeMatCli, oportunidadVentaNM.EmailCli, Cliente_Cot.EmailAlterCliCot, null, oportunidadVentaNM.EnviarPromociones.Equals("1"), Cliente_Cot.Direccion, oportunidadVentaNM.NumDoc, oportunidadVentaNM.IdTipoDoc, oportunidadVentaNM.IdUsuarioSrv_SF, Webs_Cid.ID_WEB_WEBFAREFINDER, null, _fechaIgnoredTriggerCuenta); bool valor = _oportunidadVentaNMRepository._Update_Estado_Promociones((int)intIdCliCot, oportunidadVentaNM.EnviarPromociones); if (Cliente_Cot.RecibePromo == false & oportunidadVentaNM.EnviarPromociones.Equals("1")) { // Antes no estaba suscrito NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, true); if ((intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) | (intIdOfi == Constantes_SRV.INT_ID_OFI_NMV & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER)) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, true); } else if (intIdOfi == Constantes_SRV.INT_ID_OFI_CALL_CENTER) { NMMail.Mail_AgregaEmailListaBoletinNMV(163, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_RIPLEY, true); } } else if (Cliente_Cot.RecibePromo == true & !oportunidadVentaNM.EnviarPromociones.Equals("1")) { // Estaba suscrito y ahora ya no lo va a estar NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, false); if (intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, false); } else if (intIdOfi == Constantes_SRV.INT_ID_OFI_CALL_CENTER) { NMMail.Mail_AgregaEmailListaBoletinNMV(163, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_RIPLEY, false); } } } else { /*Insert*/ intIdCliCot = (int)_repository.InsertaClienteCotizacion(oportunidadVentaNM.NombreCli, oportunidadVentaNM.ApePatCli, oportunidadVentaNM.ApeMatCli, oportunidadVentaNM.EmailCli, null, null, oportunidadVentaNM.EnviarPromociones.Equals("1"), null, oportunidadVentaNM.NumDoc, oportunidadVentaNM.IdTipoDoc, oportunidadVentaNM.IdUsuarioSrv_SF, Webs_Cid.ID_WEB_WEBFAREFINDER, null, false, null, _fechaIgnoredTriggerCuenta)["pNumIdNewCliCot_out"]; if (intIdCliCot != null && intIdCliCot > 0) { _oportunidadVentaNMRepository.RegistraCuenta(oportunidadVentaNM.idCuenta_SF, (int)intIdCliCot); } /*START INSERT PAX PTA (Consultar si lo sacamos)*/ //try //{ // string PrimerNombre = string.Empty; // string SegundoNombre = string.Empty; // if (oportunidadVentaNM.NombreCli.Split(' ').Length > 0) // PrimerNombre = oportunidadVentaNM.NombreCli.Split(' ')[0]; // if (oportunidadVentaNM.NombreCli.Split(' ').Length > 1) // { // SegundoNombre = oportunidadVentaNM.NombreCli.Split(' ')[1]; // if (oportunidadVentaNM.NombreCli.Split(' ').Length > 2) // SegundoNombre += " " + oportunidadVentaNM.NombreCli.Split(' ')[2]; // } // ws_pax_paxdoc InsertClienteNM = new ws_pax_paxdoc(); // ws_pax_aux.ws_pax_paxdoc.r_message[] respond = InsertClienteNM.prc_web_insert_pax(oportunidadVentaNM.IdTipoDoc, oportunidadVentaNM.NumDoc, // oportunidadVentaNM.ApePatCli, oportunidadVentaNM.ApeMatCli, PrimerNombre, SegundoNombre, string.Empty, oportunidadVentaNM.EmailCli, string.Empty, string.Empty, string.Empty, string.Empty, usuarioLogin.LoginUsuario); //} //catch (Exception ex) //{ // NMailAlerta oNMailAlerta = new NMailAlerta(); // oNMailAlerta.EnvioCorreoRegistrarError("Error de " + Constantes_SRV.APP_NAME, this, ex, strIPUsuario + "|btnGrabarCli_ServerClick"); // oNMailAlerta = null; //} /*END INSERT PAX PTA*/ if (oportunidadVentaNM.EnviarPromociones.Equals("1")) { if ((intIdOfi == Constantes_SRV.INT_ID_OFI_CORPORATIVO_VACACIONAL & intIdDep == Constantes_SRV.INT_ID_DEP_COUNTER)) { NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_CORPORATIVO_VACACIONAL, true); } NMMail.Mail_AgregaEmailListaBoletinNMV(7, 1, (oportunidadVentaNM.NombreCli + " " + oportunidadVentaNM.ApePatCli).ReplaceSpecialChars(), oportunidadVentaNM.EmailCli, Constantes_Mail.EMAIL_BOLETIN_NMV, true); } } #endregion #region ProcesoCotizacion if (oportunidadVentaNM.IdCotSRV == null) { /*Creamos la Cotizacion*/ if (usuarioLogin.IdUsuario == 1813) { intIdDep = 30; intIdOfi = 23; } idCotizacion = _oportunidadVentaNMRepository.Inserta_Cot_Vta(oportunidadVentaNM.ModoIngreso, oportunidadVentaNM.Comentario, usuarioLogin.NomCompletoUsuario, usuarioLogin.LoginUsuario, strIPUsuario, (int)intIdCliCot, usuarioLogin.IdUsuario, intIdDep, intIdOfi, Webs_Cid.ID_WEB_WEBFAREFINDER, Lang_Cid.IdLangSpa, oportunidadVentaNM.IdCanalVenta, oportunidadVentaNM.ServiciosAdicionales.Split(';'), oportunidadVentaNM.CiudadIata, null, 0, oportunidadVentaNM.IdDestino, oportunidadVentaNM.FechaIngreso, oportunidadVentaNM.Fecharegreso, oportunidadVentaNM.CantidadAdultos, oportunidadVentaNM.CantidadNinos, string.Empty, null, null, null, null, null, null, null, null, string.Empty, null); if (idCotizacion != null && idCotizacion > 0) { /*_repository.RegistraOportunidad(oportunidadVentaNM.IdOportunidad_SF, (int)idCotizacion);*/ _oportunidadVentaNMRepository.RegistraOportunidad(oportunidadVentaNM.IdOportunidad_SF, (int)idCotizacion); } /*DtsCotizacionVta = _cotizacionSRV_Repository.Get_Datos_CotizacionVta((int)idCotizacion);*/ } else { idCotizacion = oportunidadVentaNM.IdCotSRV; short?IdMotivoCierrePerdido = null; /**Cambios de Estado**/ if (oportunidadVentaNM.idEstado != DtsCotizacionVta.IdEstado) { bolCambioEstado = true; if (oportunidadVentaNM.idEstado == (short)ENUM_ESTADOS_COT_VTA.NoCompro) { IdMotivoCierrePerdido = Convert.ToInt16(oportunidadVentaNM.IdMotivoNoCompro); //strTextoPost = "<span class='texto_cambio_estado'>Cambio de estado a <strong>No Compro</strong></span>"; } } if (oportunidadVentaNM.idEstado == (short)ENUM_ESTADOS_COT_VTA.DerivadoCA || oportunidadVentaNM.idEstado == (short)ENUM_ESTADOS_COT_VTA.DerivadoCA_Paq) { bolEsUrgenteEmision = true; datFechaPlazoEmision = oportunidadVentaNM.fechaPlazoEmision; //Convert.ToDateTime(DateTime.Now.ToShortDateString() + " " + oportunidadVentaNM.HoraEmision + ":00"); //strTextoPost = "<span class='texto_cambio_estado'>EMISIÓN ANTES DE: " + string.Format("dd/MM/yyyy HH:mm", datFechaPlazoEmision) + "</span><br>"; } /*Es Emitido*/ if (oportunidadVentaNM.Emitido == true) { _cotizacionSRV_Repository._Update_EsEmitido((int)oportunidadVentaNM.IdCotSRV, true); } /*Validar las validaciones a considerar*/ /*if (usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_NMVCOM || (usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_NMV && usuarioLogin.IdDep == Constantes_SRV.INT_ID_DEP_EMERGENCIAS) || usuarioLogin.EsSupervisorSRV) * { * if ((!DtsCotizacionVta.EsEmitido) && oportunidadVentaNM.Emitido != null && oportunidadVentaNM.Emitido == true) * { * _cotizacionSRV_Repository._Update_EsEmitido((int)oportunidadVentaNM.IdCotSRV, true); * } * }*/ /*Asignarse*/ if (oportunidadVentaNM.Asignarse == true) { bool bolAsignado = _cotizacionSRV_Repository._Update_CounterAdministrativo((int)oportunidadVentaNM.IdCotSRV, oportunidadVentaNM.counterAsignado); //messageOK = (bolAsignado == false ? "La cotización ya ha sido asignado a un counter administrativo." : messageOK); } /*Requiere Firma Cliente (Consultar validacion de Pedidos - Del lado de SF?)*/ if (oportunidadVentaNM.RequiereFirmaCliente != null) { _cotizacionSRV_Repository._Update_Requiere_FirmaCliente_Cot((int)oportunidadVentaNM.IdCotSRV, (bool)oportunidadVentaNM.RequiereFirmaCliente); } /*Insertamos el Post*/ _cotizacionSRV_Repository.Inserta_Post_Cot(DtsCotizacionVta.IdCot, Constantes_SRV.ID_TIPO_POST_SRV_USUARIO, strTextoPost, strIPUsuario, usuarioLogin.LoginUsuario, usuarioLogin.IdUsuario, usuarioLogin.IdDep, usuarioLogin.IdOfi, null, null, oportunidadVentaNM.idEstado, bolCambioEstado, null, false, null, usuarioLogin.EsCounterAdminSRV, (usuarioLogin.EsCounterAdminSRV == true ? DtsCotizacionVta.IdUsuWeb : usuarioLogin.IdUsuario), (usuarioLogin.EsCounterAdminSRV == true ? DtsCotizacionVta.IdOfi : usuarioLogin.IdOfi), (usuarioLogin.EsCounterAdminSRV == true ? DtsCotizacionVta.IdDep : usuarioLogin.IdDep), bolEsUrgenteEmision, datFechaPlazoEmision, IdMotivoCierrePerdido, null, oportunidadVentaNM.MontoEstimado, 0); /*Notas: En caso soliciten habilitar el Post, para el valor Emitido la estructura del Post es diferente, habria que hacer unas condicionales adicionales*/ /*Notas: En caso soliciten habilitar el Post, para la AutoAsignacion la estructura del Post es diferente, habria que hacer unas condicionales adicionales*/ /*Actualizamos el estado de la oportunidad*/ _oportunidadVentaNMRepository.UpdateOportunidad(oportunidadVentaNM.IdOportunidad_SF, (int)idCotizacion, Estados_Oportunidad.ID_ST_REGI_NO_ENVIO); /*Modalidad de Compra*/ if (oportunidadVentaNM.idEstado == (short)ENUM_ESTADOS_COT_VTA.Facturado && (usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_NMVCOM || usuarioLogin.IdDep == Constantes_SRV.INT_ID_DEP_SISTEMAS || _oportunidadVentaNMRepository._EsCounterAdministratiivo(usuarioLogin.IdOfi))) //, usuarioLogin.IdDep, false)) { _cotizacionSRV_Repository._Update_ModalidadCompra(DtsCotizacionVta.IdCot, (short)oportunidadVentaNM.ModalidadCompra); } if (usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_NMVCOM | usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_TRAVEL_STORE | usuarioLogin.IdDep == Constantes_SRV.INT_ID_DEP_SISTEMAS | usuarioLogin.IdOfi == Constantes_SRV.INT_ID_OFI_NMV | usuarioLogin.IdOfi == 116) { if (oportunidadVentaNM.MontoCompra != null && oportunidadVentaNM.idEstado == (short)ENUM_ESTADOS_COT_VTA.DerivadoCA && DtsCotizacionVta.IdReservaVuelos == null) { _oportunidadVentaNMRepository._Update_DatosReservaVuelo_Manual_Cot(DtsCotizacionVta.IdCot, oportunidadVentaNM.CodReserva, Constantes_SRV.INT_ID_MONEDA_USD, System.Convert.ToDouble(oportunidadVentaNM.MontoCompra)); } } } #endregion rptaOportunidadVentaNM.codigo = "OK"; rptaOportunidadVentaNM.mensaje = (oportunidadVentaNM.Accion_SF.ToUpper().Trim() == "UPDATE" ? "Se actualizo correctamente" : "Se agregó correctamente"); rptaOportunidadVentaNM.IdCotSrv = idCotizacion; objRespuesta = new { respuesta = rptaOportunidadVentaNM }; return(Ok(objRespuesta)); } catch (Exception ex) { exMessage = ex.Message; //rptaOportunidadVentaNM.codigo = "ER"; //rptaOportunidadVentaNM.mensaje = ex.Message; //rptaOportunidadVentaNM.IdCotSrv = null; //objRespuesta = new { respuesta = rptaOportunidadVentaNM }; //return Ok(objRespuesta); return(InternalServerError(ex)); } finally { (new { Body = oportunidadVentaNM, Response = rptaOportunidadVentaNM, Exception = exMessage }).TryWriteLogObject(_logFileManager, _clientFeatures); } }
public bool Enviar_SolicitudPagoServicioSafetyPay(string IdUsuario, int pIntIdWeb, int pIntIdLang, int pIntIdCotVta, string pStrEmailTO, string pStrEMailCC, string pStrNomCli, string pStrApeCli, string pStrURLPago, string pStrNomCompletoUsuWeb, string pStrEmailUsuWeb, Int16 pIntIdFormaPago, string pStrIdTransaction, int pIntIdPedido, double pDblMontoPagar, string pStrFechaExpiraPago, List <AmountType> pLstAmountSafetyPay, List <PaymentLocationType> pLstPaymentLocationSafetyPay) { CorreoNM objCorreo = null; NMMail objNMMail = new NMMail(); EncriptaCadena objEncriptaCadena = new EncriptaCadena(); bool _return = false; try { string strNroPedidoEncriptado = objEncriptaCadena.DES_Encrypt(pIntIdPedido.ToString(), "m0t0rvu3l0s"); objCorreo = Get_Correo_Web(pIntIdWeb, pIntIdLang, Constantes_SafetyPay.ID_MAIL_SOLICITUD_PAGO_SERVICIO_SF); if (objCorreo != null) { objNMMail.MailServer = objCorreo.HostCorreo; objNMMail.AddMailFrom = objCorreo.FromCorreo; objNMMail.MailSubject = "Solicitud de Compra Nro. " + pIntIdCotVta + " para " + pStrNomCli + " " + pStrApeCli + " - SafetyPay"; objNMMail.AddMailsTo = pStrEmailTO; objNMMail.AddMailsCC = pStrEMailCC; objNMMail.AddMailsCC = objCorreo.CCCorreo; objNMMail.AddMailsBCC = objCorreo.BCCCorreo; objNMMail.AddMailsBCC = pStrEmailUsuWeb; if (objCorreo.FormatoCorreo.ToUpper() == "HTML") { objNMMail.MailHTML = true; } else { objNMMail.MailHTML = false; } string strFechaExpiraTmp = pStrFechaExpiraPago; if (pStrFechaExpiraPago.Split('(').Length >= 2) { strFechaExpiraTmp = pStrFechaExpiraPago.Split('(')[0]; } System.Text.StringBuilder objStringBuilder = new System.Text.StringBuilder(); objStringBuilder.Append("<div style='font-family: Arial; font-size:12px; padding:10px;'>" + Constants.vbCrLf); objStringBuilder.Append("<p>" + Constants.vbCrLf); objStringBuilder.Append("<strong>Estimado(a) " + pStrNomCli + ":</strong>" + Constants.vbCrLf); objStringBuilder.Append("</p>" + Constants.vbCrLf); objStringBuilder.Append("<p><strong></strong>" + Constants.vbCrLf); objStringBuilder.Append("A continuación, te enviamos la boleta de SafetyPay para que puedas realizar el pago de tu Solicitud de Compra Nro. <strong>" + pIntIdCotVta + "</strong>." + Constants.vbCrLf); objStringBuilder.Append("</p>" + Constants.vbCrLf); objStringBuilder.Append("<table cellpadding='2' class='texto_general'>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td>" + Constants.vbCrLf); objStringBuilder.Append("<table cellpadding='5' border='1' style='border-collapse:collapse; border-style:solid;border-color:black'><tr><td>" + Constants.vbCrLf); objStringBuilder.Append("<table class='texto_general' cellpadding='2'>" + Constants.vbCrLf); objStringBuilder.Append("<tr><td style='color:#CD0200;' align='center'><strong>Total a Pagar</strong></td></tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td align='center' class='total_pagar' style='font-size:20px'>" + Constants.vbCrLf); objStringBuilder.Append("US$ " + pDblMontoPagar.ToString("0.00") + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); objStringBuilder.Append("</td></tr></table>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='15'> </td>" + Constants.vbCrLf); objStringBuilder.Append("<td>" + Constants.vbCrLf); objStringBuilder.Append("<table class='texto_general'>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td align='center'>" + Constants.vbCrLf); objStringBuilder.Append("Tu código de SafetyPay es <span class='alerta'>" + pStrIdTransaction + "</span>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td>" + Constants.vbCrLf); objStringBuilder.Append("<table>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td>" + Constants.vbCrLf); objStringBuilder.Append("<img src='http://www.nmviajes.com/images/logos/safetypay.jpg'>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("<td>" + Constants.vbCrLf); objStringBuilder.Append(" " + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); objStringBuilder.Append("<br />" + Constants.vbCrLf); if (pLstPaymentLocationSafetyPay == null || pLstPaymentLocationSafetyPay.Count == 0) { objStringBuilder.Append("<table cellpadding='3'>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general'>-<span class='link_correo'><a href='https://www.viabcp.com/wps/portal/viabcpp/personas' target='_blank'>Banco de Crédito del Perú</a></span></td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='50'> </td>" + Constants.vbCrLf); objStringBuilder.Append("<td><a href='https://www.viabcp.com/wps/portal/viabcpp/personas' target='_blank'><img src='http://www.nmviajes.com/images/pagos/logo-banco-de-crédito.jpg' width='45' height='20' border='0'/></a></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>1. Ingrese a <strong><a href='https://www.viabcp.com/wps/portal/viabcpp/personas' target='_blank'>www.viabcp.com</a></strong> con su clave de acceso.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>2. Seleccione la opción <strong>'Pagos y Transferencias' - 'Pago de servicios'</strong>.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>3. Seleccione <strong>'Empresas Diversas' - 'SafetyPay'</strong> y el tipo de moneda.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>4. Ingrese su código de pago <strong>" + pStrIdTransaction + "</strong>, verifique el monto, confirme el pago con su <strong>clave token</strong> y listo!</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general'>-<span class='link_correo'><a href='https://www.bbvacontinental.pe/' target='_blank'>BBVA Continental</a></span></td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='50'> </td>" + Constants.vbCrLf); objStringBuilder.Append("<td><a href='https://www.bbvacontinental.pe/' target='_blank'><img src='http://www.nmviajes.com/images/pagos/logo-bbva.jpg' width='45' height='20' border='0'/></a></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>1. Ingrese a <strong><a href='https://www.bbvacontinental.pe/' target='_blank'>www.bbvacontinental.com</a></strong> con su clave de acceso.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>2. Seleccione <strong>'Pago de Servicios'</strong> y dentro <strong>'Otras Opciones'</strong> elija <strong>'Paga con SafetyPay'</strong>.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>3. Ingrese su código de pago <strong>" + pStrIdTransaction + "</strong>, monto a pagar y seleccione la cuenta de cargo.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>4. Confirme la transacción con su <strong>clave SMS</strong> y listo!</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general'>-<span class='link_correo'><a href='http://www.interbank.com.pe/' target='_blank'>Interbank</a></span></td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='50'> </td>" + Constants.vbCrLf); objStringBuilder.Append("<td><a href='http://www.interbank.com.pe/' target='_blank'><img src='http://www.nmviajes.com/images/pagos/logo-interbank.jpg' width='45' height='20' border='0'/></a></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>1. Ingrese a <strong><a href='http://www.interbank.com.pe/' target='_blank'>www.interbank.com.pe</a></strong> con su clave de acceso.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>2. Seleccione la opción <strong>'Pago de recibos' - 'Diversas Empresas'</strong>.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>3. Seleccione <strong>la cuenta de cargo</strong> - Elija <strong>'SafetyPay'</strong>.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>4. Ingrese su código de pago <strong>" + pStrIdTransaction + "</strong>, verifique el monto, confirme el pago con su <strong>clave SMS</strong> y listo!</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general'>-<span class='link_correo'><a href='http://www.scotiabank.com.pe/Personas/Default' target='_blank'>Scotiabank</a></span></td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='50'> </td>" + Constants.vbCrLf); objStringBuilder.Append("<td><a href='http://www.scotiabank.com.pe/Personas/Default' target='_blank'><img src='http://www.nmviajes.com/images/pagos/logo-scotiabank.jpg' width='45' height='20' border='0'/></a></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>1. Ingrese a <strong><a href='http://www.scotiabank.com.pe/Personas/Default' target='_blank'>www.scotiabank.com.pe</a></strong> con su clave de acceso.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>2. Seleccione la opción <strong>'Pagos' - 'Buscar empresas'</strong> y digite SafetyPay.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>3. Ingrese el <strong>código de pago " + pStrIdTransaction + "</strong> en <strong>'número de referencia'</strong> y confirme el importe a pagar.</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>4. Seleccione la <strong>cuenta de cargo</strong>, confirme la transacción con su <strong>clave token</strong> y listo!</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); } else { objStringBuilder.Append("<table class='texto_general'>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td colspan='2'>" + Constants.vbCrLf); objStringBuilder.Append("Puedes realizar el pago en los siguientes establecimientos antes del <span class='alerta'>" + strFechaExpiraTmp + "</span>:" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td colspan='2'> </td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td colspan='2'>" + Constants.vbCrLf); objStringBuilder.Append("<table cellpadding='3'>" + Constants.vbCrLf); foreach (PaymentLocationType objPaymentLocation in pLstPaymentLocationSafetyPay) { if (!objPaymentLocation.Name.ToUpper().Contains("CAJA")) { objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general'>-<span class='link_correo'><a href='http://www.nmviajes.com/pagos-online/safetypay?id=" + strNroPedidoEncriptado + "' target='_blank'>" + objPaymentLocation.Name + "</a></span></td>" + Constants.vbCrLf); objStringBuilder.Append("<td width='50'> </td>" + Constants.vbCrLf); if (pIntIdWeb.Equals(Webs_Cid.NM_WEB_ID)) { objStringBuilder.Append("<td><a href='http://www.nmviajes.com/pagos-online/safetypay?id=" + strNroPedidoEncriptado + "' target='_blank'><img src='http://www.nmviajes.com/images/logos/" + objPaymentLocation.Name.Replace(" ", "-").ToLower() + ".jpg' width='45' height='20' border='0'/></a></td>" + Constants.vbCrLf); } else { objStringBuilder.Append("<td><img src='http://www.nmviajes.com/images/logos/" + objPaymentLocation.Name.Replace(" ", "-").ToLower() + ".jpg' width='45' height='20' border='0'/></td>" + Constants.vbCrLf); } objStringBuilder.Append("</tr>" + Constants.vbCrLf); foreach (PaymentStepType objStep in objPaymentLocation.lstPaymentStepType) { objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'>" + objStep.Step + ". " + objStep.Value + "</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); } objStringBuilder.Append("<tr>" + Constants.vbCrLf); objStringBuilder.Append("<td class='texto_general' colspan='3'></td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); } } objStringBuilder.Append("</table>" + Constants.vbCrLf); objStringBuilder.Append("</td>" + Constants.vbCrLf); objStringBuilder.Append("</tr>" + Constants.vbCrLf); objStringBuilder.Append("</table>" + Constants.vbCrLf); } if (ConfigurationManager.AppSettings[Constantes_Pedido.USERAGCORPGENERAPEDIDOLOGO].Contains(IdUsuario)) { objCorreo.HeaderCorreo = objCorreo.HeaderCorreo.Replace("logo_correo", "logo_correo_AGCORP"); } objNMMail.MailBody = objCorreo.HeaderCorreo + objStringBuilder.ToString() + objCorreo.FooterCorreo; objNMMail.SendMail(objCorreo.UsuarioCredentials, objCorreo.PasswordCredentials); objNMMail = null; _return = true; } } catch (Exception ex) { /*throw new Exception(ex.ToString());*/ _return = false; } return(_return); }