Avance implementacion correo, falta hacer script para normalizar

encriptacion del usuario
parent 5bc01160
......@@ -22,6 +22,8 @@
<select class="form-control" id="opciones" name="opciones">
<option value="tel">Teléfono</option>
<option value="mail">Correo</option>
<option value="rut">Rut</option>
<option value="any">ANY</option>
</select>
<form id="fmBuscar" class="form-inline" action="/" method="POST">
<input type="hidden" id="selectedOption" name="selectedOption" value="tel">
......@@ -37,6 +39,16 @@
<input type="text" id="mail" name="mail" class="form-control" placeholder="abc@mail.cl" maxlength="255" value="">
</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>
</form>
</div>
......@@ -73,6 +85,10 @@
formData.append("valorBusqueda", $("#msisdn").val());
}else if(option === "mail"){
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);
......@@ -201,7 +217,7 @@
},
});
}else if(tipoSeteado == "sms"){
//TODO
}else if(tipoSeteado == null){
errorMessage("Debe seleccionar un tipo de envio.", "#message-container-busqueda");
}
......@@ -213,9 +229,23 @@
if($("#selectedOption").val() === "tel"){
$("#busquedaMsisdn").show();
$("#busquedaMail").hide();
}else{
$("#busquedaRut").hide();
$("#busquedaAny").hide();
}else if($("#selectedOption").val() === "mail"){
$("#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").show();
$("#busquedaMail").hide();
}
});
......
......@@ -135,5 +135,108 @@ class EnvioEmail extends BaseEnvioEmail
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,130 +9,174 @@ use Symfony\Component\HttpFoundation\JsonResponse;
use AppBundle\Lib\Utiles;
use AppBundle\Model\UsuarioMcafee;
use AppBundle\Model\UsuarioMcafeeQuery;
use AppBundle\Model\EnvioEmail;
use AppBundle\Model\EnvioEmailQuery;
use AppBundle\Model\Emailing;
use AppBundle\Model\EmailingQuery;
class ResearchController extends Controller {
public function busquedaUsuarioAction(){
public function busquedaUsuarioAction() {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:busquedaUsuarioAction', 'backend/backend');
$log->debug('Entrando a busqueda');
return $this->render('backend/research/busqueda.html.twig');
}
public function buscarAction(Request $request){
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:buscarAction', 'backend/backend');
$log->debug("Entrando a busqueda de usuario");
$tipo = $request->get("opcionBusqueda",null);
$valorBusqueda = $request->get("valorBusqueda",null);
$usuario = null;
if($tipo == "tel"){
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovil($valorBusqueda)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
}else if($tipo == "mail"){
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovistarEmail($valorBusqueda)->filterByUmcPermiteEmail(1)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
}
return $this->render('backend/research/includes/cuadroInformacionUsuario.html.twig', array("usuario" => $usuario));
public function buscarAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:buscarAction', 'backend/backend');
$log->debug("Entrando a busqueda de usuario");
$tipo = $request->get("opcionBusqueda", null);
$valorBusqueda = $request->get("valorBusqueda", null);
$usuario = null;
if ($tipo == "tel") {
$usuario = UsuarioMcafeeQuery::create()->filterByUmcMovil($valorBusqueda)->filterByUmcEliminado(UsuarioMcafee::ELIMINADO_FALSE)->findOne();
} else if ($tipo == "mail") {
$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));
}
public function editarAction(Request $request){
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:editarAction', 'backend/backend');
$log->debug("Entrando a edicion de usuario");
$json = new JsonResponse();
$telefono = $request->get("telefonoUsuario",null);
$mail = $request->get("correoUsuario", null);
$idUsuario = $request->get("idUsuario", null);
$log->debug("telefono $telefono | mail $mail | idUsuario $idUsuario");
if (!is_numeric($idUsuario)) {
public function editarAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:editarAction', 'backend/backend');
$log->debug("Entrando a edicion de usuario");
$json = new JsonResponse();
$telefono = $request->get("telefonoUsuario", null);
$mail = $request->get("correoUsuario", null);
$idUsuario = $request->get("idUsuario", null);
$log->debug("telefono $telefono | mail $mail | idUsuario $idUsuario");
if (!is_numeric($idUsuario)) {
$log->debug("Id usuario invalido $idUsuario...");
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Id usuario ingresado inválido.');
$json->setData(array('errors' => 'El usuario no es válido.'));
return $json;
}
if (Utiles::validarCorreo($mail) == 0) {
}
if (Utiles::validarCorreo($mail) == 0) {
$log->debug("Mail Invalido $mail...");
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Correo ingresado inválido.');
$json->setData(array('errors' => 'El correo ingresado no es válido.'));
return $json;
}
if (!is_numeric($telefono)) {
}
if (!is_numeric($telefono)) {
$log->debug("Numero telefonico invalido $telefono...");
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Numero ingresado inválido.');
$json->setData(array('errors' => 'El numero ingresado no es válido.'));
return $json;
}
$usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne();
$usuarioMcafee->setUmcMovistarEmail($mail);
$usuarioMcafee->setUmcMovil($telefono);
$usuarioMcafee->save();
$log->debug("retornando...");
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK");
return $json;
}
$usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne();
$usuarioMcafee->setUmcMovistarEmail($mail);
$usuarioMcafee->setUmcMovil($telefono);
$usuarioMcafee->save();
$log->debug("retornando...");
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK");
return $json;
}
public function enviarCorreoAction(Request $request){
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:enviarCorreo', 'backend/backend');
$log->debug("Entrando a envio de correo de usuario");
$json = new JsonResponse();
$idUsuario = $request->get("idUsuario", null);
$log->debug("telefono $telefono | mail $mail | idUsuario $idUsuario");
if (!is_numeric($idUsuario)) {
public function enviarCorreoAction(Request $request) {
$log = Utiles::setLog('BackendBundle\Controller\ResearchController:enviarCorreo', 'backend/backend');
$log->debug("Entrando a envio de correo de usuario");
$json = new JsonResponse();
$idUsuario = $request->get("idUsuario", null);
$log->debug("telefono $telefono | mail $mail | idUsuario $idUsuario");
if (!is_numeric($idUsuario)) {
$log->debug("Id usuario invalido $idUsuario...");
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Id usuario ingresado inválido.');
$json->setData(array('errors' => 'El usuario no es válido.'));
return $json;
}
$usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne();
if (Utiles::validarCorreo($usuarioMcafee->getUmcMovistarEmail()) == 0) {
$log->debug("Mail Invalido". $usuarioMcafee->getUmcMovistarEmail());
}
$usuarioMcafee = UsuarioMcafeeQuery::create()->filterByUmcId($idUsuario)->findOne();
if (Utiles::validarCorreo($usuarioMcafee->getUmcMovistarEmail()) == 0) {
$log->debug("Mail Invalido" . $usuarioMcafee->getUmcMovistarEmail());
$json->setStatusCode(JsonResponse::HTTP_BAD_REQUEST, 'Correo ingresado inválido.');
$json->setData(array('errors' => 'El correo del usuario no es válido.'));
return $json;
}
//Envio de correo
$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(),
)
),
'text/html'
);
$log->debug('enviando E-mail...');
if($this->get('mailer')->send($correo)){
$log->debug('email enviado a '.$usuarioMcafee->getUmcMovistarEmail());
$log->debug("retornando...");
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK");
return $json;
}
else{
$log->debug("error al enviar 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.'));
return $json;
//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;
}
if ($terminarEnvio == false && $usuarioMcafee->isTrakingDescarga() == true) {
$log->warn('usuario ya realizo descarga... umcId:' . $usuarioMcafee->getUmcId());
$tYaDescargo++;
$tNoProcesado++;
$terminarEnvio = true;
}
if ($terminarEnvio == false && $usuarioMcafee->isEmailMovistarCorrecto() == false) {
$log->warn('usuario sin correo... umcId:' . $usuarioMcafee->getUmcId());
$tSinEmail++;
$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...');
if ($envioEmail) {
$log->debug('email enviado a ' . $usuarioMcafee->getUmcMovistarEmail());
$log->debug("retornando...");
$json->setStatusCode(JsonResponse::HTTP_OK, 'OK');
$json->setData("OK");
return $json;
} else {
}
} else {
$log->debug("el usuario no existe...");
$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.'));
return $json;
}
/* $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