Avance implementacion correo, falta hacer script para normalizar

encriptacion del usuario
parent 5bc01160
...@@ -22,6 +22,8 @@ ...@@ -22,6 +22,8 @@
<select class="form-control" id="opciones" name="opciones"> <select class="form-control" id="opciones" name="opciones">
<option value="tel">Teléfono</option> <option value="tel">Teléfono</option>
<option value="mail">Correo</option> <option value="mail">Correo</option>
<option value="rut">Rut</option>
<option value="any">ANY</option>
</select> </select>
<form id="fmBuscar" class="form-inline" action="/" method="POST"> <form id="fmBuscar" class="form-inline" action="/" method="POST">
<input type="hidden" id="selectedOption" name="selectedOption" value="tel"> <input type="hidden" id="selectedOption" name="selectedOption" value="tel">
...@@ -37,6 +39,16 @@ ...@@ -37,6 +39,16 @@
<input type="text" id="mail" name="mail" class="form-control" placeholder="abc@mail.cl" maxlength="255" value=""> <input type="text" id="mail" name="mail" class="form-control" placeholder="abc@mail.cl" maxlength="255" value="">
</div> </div>
</div> </div>
<div id="busquedaRut" style="display:none">
<div class="input-group">
<input type="text" id="rut" name="rut" title="sin puntos" class="form-control" placeholder="ej: 17356704-9" maxlength="10" value="">
</div>
</div>
<div id="busquedaAny" style="display:none">
<div class="input-group">
<input type="text" id="any" name="any" title="" class="form-control" placeholder="ingrese el numero identificador" maxlength="" value="">
</div>
</div>
<button id="searchButton" name="searchButton" type="button" class="btn btn-primary" onclick="buscar(event)" data-loading-text="<i class='fa fa-circle-o-notch fa-spin'></i> Cargando resultados..."><i class="fa fa-search"></i> Buscar</button> <button id="searchButton" name="searchButton" type="button" class="btn btn-primary" onclick="buscar(event)" data-loading-text="<i class='fa fa-circle-o-notch fa-spin'></i> Cargando resultados..."><i class="fa fa-search"></i> Buscar</button>
</form> </form>
</div> </div>
...@@ -73,6 +85,10 @@ ...@@ -73,6 +85,10 @@
formData.append("valorBusqueda", $("#msisdn").val()); formData.append("valorBusqueda", $("#msisdn").val());
}else if(option === "mail"){ }else if(option === "mail"){
formData.append("valorBusqueda", $("#mail").val()); formData.append("valorBusqueda", $("#mail").val());
}else if(option === "rut"){
formData.append("valorBusqueda", $("#rut").val());
}else if(option === "any"){
formData.append("valorBusqueda", $("#any").val());
} }
$("#searchButton").prop("disabled", true); $("#searchButton").prop("disabled", true);
...@@ -201,7 +217,7 @@ ...@@ -201,7 +217,7 @@
}, },
}); });
}else if(tipoSeteado == "sms"){ }else if(tipoSeteado == "sms"){
//TODO
}else if(tipoSeteado == null){ }else if(tipoSeteado == null){
errorMessage("Debe seleccionar un tipo de envio.", "#message-container-busqueda"); errorMessage("Debe seleccionar un tipo de envio.", "#message-container-busqueda");
} }
...@@ -213,9 +229,23 @@ ...@@ -213,9 +229,23 @@
if($("#selectedOption").val() === "tel"){ if($("#selectedOption").val() === "tel"){
$("#busquedaMsisdn").show(); $("#busquedaMsisdn").show();
$("#busquedaMail").hide(); $("#busquedaMail").hide();
}else{ $("#busquedaRut").hide();
$("#busquedaMsisdn").hide(); $("#busquedaAny").hide();
}else if($("#selectedOption").val() === "mail"){
$("#busquedaMail").show(); $("#busquedaMail").show();
$("#busquedaMsisdn").hide();
$("#busquedaRut").hide();
$("#busquedaAny").hide();
}else if($("#selectedOption").val() === "rut"){
$("#busquedaRut").show();
$("#busquedaMsisdn").hide();
$("#busquedaMail").hide();
$("#busquedaAny").hide();
}else if($("#selectedOption").val() === "any"){
$("#busquedaAny").show();
$("#busquedaRut").hide();
$("#busquedaMsisdn").hide();
$("#busquedaMail").hide();
} }
}); });
......
...@@ -135,5 +135,108 @@ class EnvioEmail extends BaseEnvioEmail ...@@ -135,5 +135,108 @@ class EnvioEmail extends BaseEnvioEmail
return $envioEmail; return $envioEmail;
} }
public static function enviarEmailV2($url, $urlDesuscripcion, $email, UsuarioMcafee $usuarioMcafee, Emailing $emailing=null, $campana=0, $asunto, $fromEmail, $fromNombreEmail, $tipoEmail, $transIdCliente=null, Logger $log, Container $container) {
$envioEmail = null;
$tag = '[enviarEmail]';
$log->debug($tag."entrando... tipoEmail:$tipoEmail | campana:$campana | email:$email | umcId:".$usuarioMcafee->getUmcId());
try{
$template = "";
$auxTemplate = $campana;
if($tipoEmail == EnvioEmail::TIPO_UNITARIO)
$auxTemplate = 'webCall';
switch ($usuarioMcafee->getUmcMcafeeTipoProducto()):
case UsuarioMcafee::TIPO_MULTIDEVICE:
$template = "emailing/multidevice/$auxTemplate.html.twig";
break;
case UsuarioMcafee::TIPO_ANTIVIRUS:
$template = "emailing/antivirus/$auxTemplate.html.twig";
break;
endswitch;
$log->debug($tag.'template:'.$template);
$log->debug($tag.'generando objeto EnvioEmail...');
$envioEmail = new EnvioEmail();
if($emailing != null)
$envioEmail->setEmailing($emailing);
$envioEmail->setEemTipo($tipoEmail);
$envioEmail->setUsuarioMcafee($usuarioMcafee);
$envioEmail->setEemEstado(EnvioEmail::ESTADO_PREENVIO);
if($campana != null)
$envioEmail->setEemCampana($campana);
$envioEmail->setEemEmail($email);
$envioEmail->setEemFechaEnvio(new \DateTime());
$envioEmail->setEemFromEmail($fromEmail);
$envioEmail->setEemFromNombreEmail($fromNombreEmail);
$envioEmail->setEemFromAsunto($asunto);
if($transIdCliente !=null)
$envioEmail->setEemTransIdCliente ($transIdCliente);
$envioEmail->setEemEliminado(EnvioEmail::ELIMINADO_FALSE);
$envioEmail->save();
$url = str_replace('#CAMPANA', $campana,$url);
$url = str_replace('#STRUSUARIO', $usuarioMcafee->getUmcParametroEncriptado(),$url);
$url = str_replace('#EMAILID', $envioEmail->getEemId(),$url);
if($tipoEmail == EnvioEmail::TIPO_MASIVO)
$url = str_replace('#PROCEDENCIA', Tracking::PROCEDENCIA_EMAILING,$url);
else
$url = str_replace('#PROCEDENCIA', Tracking::PROCEDENCIA_EMAILWEBCALL,$url);
$urlAperturaTrack = str_replace('#ROUTING', 'emailtrack',$url);
$urlAperturaWeb = str_replace('#ROUTING', 'emailtracktemplate',$url);
$urlDescarga = str_replace('#ROUTING', 'descargar',$url);
$urlDesuscripcion = str_replace('#STRUSUARIO', $usuarioMcafee->getUmcParametroEncriptado(),$urlDesuscripcion);
$message = \Swift_Message::newInstance()
->setSubject($asunto)
->setFrom(array($fromEmail => $fromNombreEmail))
->setTo($email)
->setBody(
$container->get('templating')->render($template,
array(
'urlDescarga' => $urlDescarga,
'urlAperturaTrack' => $urlAperturaTrack,
'urlAperturaWeb' => $urlAperturaWeb,
'urlDesuscripcion' =>$urlDesuscripcion
)
),
'text/html'
);
$log->debug($tag.'enviando email...');
if($container->get('mailer')->send($message)){
$log->debug($tag.'email enviado OK a '.$email);
$envioEmail->setEemEstado(EnvioEmail::ESTADO_ENVIADO);
$envioEmail->save();
}
else{
$envioEmail->setEemEstado(EnvioEmail::ESTADO_ENVIADO_NO_OK);
$envioEmail->save();
$logError = Utiles::setLog('AppBundle/Model/EnvioEmail', 'error/enviarEmail');
$logError->err($tag.'error enviar email... email'.$email.' | '.print_r(array(
)));
$log->err($tag.'Se produjo un error al intentar enviar el E-mail');
}
}
catch(\Exception $e){
$log->err($tag."Execption:$e | campana:$campana email:$email | umcId:".$usuarioMcafee->getUmcId());
$logError = Utiles::setLog('AppBundle/Model/EnvioEmail', 'error/enviarEmail');
$logError->err($tag."usuarioMcafee no encontrado... campana:$campana | email:$email | umcId:".$usuarioMcafee->getUmcId());
return null;
}
return $envioEmail;
}
} }
...@@ -9,36 +9,43 @@ use Symfony\Component\HttpFoundation\JsonResponse; ...@@ -9,36 +9,43 @@ use Symfony\Component\HttpFoundation\JsonResponse;
use AppBundle\Lib\Utiles; use AppBundle\Lib\Utiles;
use AppBundle\Model\UsuarioMcafee; use AppBundle\Model\UsuarioMcafee;
use AppBundle\Model\UsuarioMcafeeQuery; use AppBundle\Model\UsuarioMcafeeQuery;
use AppBundle\Model\EnvioEmail;
use AppBundle\Model\EnvioEmailQuery;
use AppBundle\Model\Emailing;
use AppBundle\Model\EmailingQuery;
class ResearchController extends Controller { class ResearchController extends Controller {
public function busquedaUsuarioAction(){ public function busquedaUsuarioAction() {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:busquedaUsuarioAction', 'backend/backend'); $log = Utiles::setLog('BackendBundle\Controller\ResearchController:busquedaUsuarioAction', 'backend/backend');
$log->debug('Entrando a busqueda'); $log->debug('Entrando a busqueda');
return $this->render('backend/research/busqueda.html.twig'); return $this->render('backend/research/busqueda.html.twig');
} }
public function buscarAction(Request $request){ public function buscarAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:buscarAction', 'backend/backend'); $log = Utiles::setLog('BackendBundle\Controller\ResearchController:buscarAction', 'backend/backend');
$log->debug("Entrando a busqueda de usuario"); $log->debug("Entrando a busqueda de usuario");
$tipo = $request->get("opcionBusqueda",null); $tipo = $request->get("opcionBusqueda", null);
$valorBusqueda = $request->get("valorBusqueda",null); $valorBusqueda = $request->get("valorBusqueda", null);
$usuario = null; $usuario = null;
if($tipo == "tel"){ if ($tipo == "tel") {
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovil($valorBusqueda)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne(); $usuario = UsuarioMcafeeQuery::create()->filterByUmcMovil($valorBusqueda)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
}else if($tipo == "mail"){ } else if ($tipo == "mail") {
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovistarEmail($valorBusqueda)->filterByUmcPermiteEmail(1)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne(); $usuario = UsuarioMcafeeQuery::create()->filterByUmcMovistarEmail($valorBusqueda)->filterByUmcPermiteEmail(1)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
} else if ($tipo == "rut") {
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovistarRut(explode($valorBusqueda, "-")[0])->filterByUmcPermiteEmail(1)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
} else if ($tipo == "any") {
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovistarAny($valorBusqueda)->filterByUmcPermiteEmail(1)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
} }
return $this->render('backend/research/includes/cuadroInformacionUsuario.html.twig', array("usuario" => $usuario)); return $this->render('backend/research/includes/cuadroInformacionUsuario.html.twig', array("usuario" => $usuario));
} }
public function editarAction(Request $request){ public function editarAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:editarAction', 'backend/backend'); $log = Utiles::setLog('BackendBundle\Controller\ResearchController:editarAction', 'backend/backend');
$log->debug("Entrando a edicion de usuario"); $log->debug("Entrando a edicion de usuario");
$json = new JsonResponse(); $json = new JsonResponse();
$telefono = $request->get("telefonoUsuario",null); $telefono = $request->get("telefonoUsuario", null);
$mail = $request->get("correoUsuario", null); $mail = $request->get("correoUsuario", null);
$idUsuario = $request->get("idUsuario", null); $idUsuario = $request->get("idUsuario", null);
...@@ -74,10 +81,9 @@ class ResearchController extends Controller { ...@@ -74,10 +81,9 @@ class ResearchController extends Controller {
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK'); $json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK"); $json->setData("OK");
return $json; return $json;
} }
public function enviarCorreoAction(Request $request){ public function enviarCorreoAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:enviarCorreo', 'backend/backend'); $log = Utiles::setLog('BackendBundle\Controller\ResearchController:enviarCorreo', 'backend/backend');
$log->debug("Entrando a envio de correo de usuario"); $log->debug("Entrando a envio de correo de usuario");
$json = new JsonResponse(); $json = new JsonResponse();
...@@ -94,7 +100,7 @@ class ResearchController extends Controller { ...@@ -94,7 +100,7 @@ class ResearchController extends Controller {
$usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne(); $usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne();
if (Utiles::validarCorreo($usuarioMcafee->getUmcMovistarEmail()) == 0) { if (Utiles::validarCorreo($usuarioMcafee->getUmcMovistarEmail()) == 0) {
$log->debug("Mail Invalido". $usuarioMcafee->getUmcMovistarEmail()); $log->debug("Mail Invalido" . $usuarioMcafee->getUmcMovistarEmail());
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Correo ingresado inválido.'); $json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Correo ingresado inválido.');
$json->setData(array('errors' => 'El correo del usuario no es válido.')); $json->setData(array('errors' => 'El correo del usuario no es válido.'));
return $json; return $json;
...@@ -102,31 +108,56 @@ class ResearchController extends Controller { ...@@ -102,31 +108,56 @@ class ResearchController extends Controller {
//Envio de correo //Envio de correo
$urlBase = Utiles::getParametroConfiguracion("url_base");
$urlDescarga = $urlBase . '/#ROUTING/#CAMPANA/#STRUSUARIO/#PROCEDENCIA/#EMAILID';
$urlDesuscripcion = $urlBase . '/email/desuscripcion/#STRUSUARIO';
if ($usuarioMcafee) {
if ($usuarioMcafee->getUmcPermiteEmail() == false) {
$log->warn('usuario ya realizo descarga... umcId:' . $usuarioMcafee->getUmcId());
$tNoPermiteEmail++;
$tNoProcesado++;
$terminarEnvio = true;
}
$correo = \Swift_Message::newInstance() if ($terminarEnvio == false && $usuarioMcafee->isTrakingDescarga() == true) {
->setSubject(Utiles::getParametroConfiguracion("titulo_correo_licencia")) $log->warn('usuario ya realizo descarga... umcId:' . $usuarioMcafee->getUmcId());
->setFrom(array(Utiles::getParametroConfiguracion("from_correo_licencia") => Utiles::getParametroConfiguracion("alias_correo_licencia"))) $tYaDescargo++;
->setTo($usuarioMcafee->getUmcMovistarEmail()) $tNoProcesado++;
->setBody( $terminarEnvio = true;
$this->get('templating')->render('emailing/research/licencia.html.twig', }
array(
'licencia' => $usuarioMcafee->getUmcMcafeeKeycard(), if ($terminarEnvio == false && $usuarioMcafee->isEmailMovistarCorrecto() == false) {
) $log->warn('usuario sin correo... umcId:' . $usuarioMcafee->getUmcId());
), $tSinEmail++;
'text/html' $tNoProcesado++;
); $terminarEnvio = true;
}
$tProcesado++;
$tPermiteEmail++;
$asunto = Utiles::getParametroConfiguracion("titulo_correo_licencia");
$fromNombreEmail = Utiles::getParametroConfiguracion("from_correo_licencia");
$fromEmail = Utiles::getParametroConfiguracion("alias_correo_licencia");
$email = $usuarioMcafee->getUmcMovistarEmail();
$log->debug($cont . " email:" . $email . " | umcId:" . $usuarioMcafee->getUmcId() . " | campana:" . $campana);
$envioEmail = EnvioEmail::enviarEmailV2($urlDescarga, $urlDesuscripcion, $email, $usuarioMcafee, $emailing, $campana, $asunto, $fromEmail, $fromNombreEmail, EnvioEmail::TIPO_MASIVO, null, $log, $this->getContainer());
$log->debug('enviando E-mail...'); $log->debug('enviando E-mail...');
if($this->get('mailer')->send($correo)){ if ($envioEmail) {
$log->debug('email enviado a '.$usuarioMcafee->getUmcMovistarEmail()); $log->debug('email enviado a ' . $usuarioMcafee->getUmcMovistarEmail());
$log->debug("retornando..."); $log->debug("retornando...");
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK'); $json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK"); $json->setData("OK");
return $json; return $json;
} else {
} }
else{ } else {
$log->debug("error al enviar mail..."); $log->debug("el usuario no existe...");
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Ocurrio un error al tratar de enviar el mail...'); $json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Ocurrio un error al tratar de enviar el mail...');
$json->setData(array('errors' => 'Ocurrio un error al tratar de enviar el mail.')); $json->setData(array('errors' => 'Ocurrio un error al tratar de enviar el mail.'));
return $json; return $json;
...@@ -134,5 +165,18 @@ class ResearchController extends Controller { ...@@ -134,5 +165,18 @@ class ResearchController extends Controller {
/* $correo = \Swift_Message::newInstance()
->setSubject(Utiles::getParametroConfiguracion("titulo_correo_licencia"))
->setFrom(array(Utiles::getParametroConfiguracion("from_correo_licencia") => Utiles::getParametroConfiguracion("alias_correo_licencia")))
->setTo($usuarioMcafee->getUmcMovistarEmail())
->setBody(
$this->get('templating')->render('emailing/research/licencia.html.twig', array(
//'licencia' => $usuarioMcafee->getUmcMcafeeKeycard(),
'urlDescarga' => $a,
)
), 'text/html
); */
} }
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment