<!-- Creado: Félix Ricardo Oliva Alonso, 07/07/2017. Se crea la vista para la búsqueda de pacientes -->
<?php
  use App\Libraries\ejLib;
  $var = ejLib::getInstance();
  $soapclient = $var->getWs();
  $wsClave = $var->get_wsClave();

  $Centro_Sal=0;
  $Nombre='eva';
  $PrimerAp='arteaga';
  $SegundoAp='';
  $TodosAtributos=1;
  $Activos = '1';

  $conexionWS = $soapclient->BuscarPaciente_getLstPorNombre($Centro_Sal, $Nombre, $PrimerAp, $SegundoAp, $TodosAtributos, $Activos, $wsClave);

  echo $conexionWS;

?>

@extends('layouts.master')
@section('titulo')
  {{ 'Buscar pacientes' }}
@endsection

@section('navegacion_admin')
  @include('layouts.navegacion_admin')
@endsection

@section('titulo_pagina')
  <div class="titulo_pagina"><h2>BÚSQUEDA DE PACIENTES</h2></div>
@endsection

<link rel="stylesheet" href="css/bootstrap.css">
<link rel="stylesheet" href="css/admingeneral.css">
<link rel="stylesheet" href="css/usuarioGeneral.css">
<link rel="stylesheet" href="css/usuariocm.css">
<script src="js/jquery-3.1.0.min.js"></script>
<script src="js/bootstrap.js"></script>

<script type="text/javascript">

var jqGetAjax = function (php_url_post, objetoHTML, array_datos) {
  var request = $.ajax({ url: php_url_post, method: "POST", data: array_datos, dataType: "html" });
  request.done(function( msg ) { $( "#"+objetoHTML ).html( msg ); });
  request.fail(function( jqXHR, textStatus ) { $( "#"+objetoHTML ).html(  "Request failed: " + textStatus ); });
}

//*************** Al cargar la página llamar al formulario base **************
$(document).ready(function(){     jqGetAjax("buscarpaciente-nombre","tblMovimientos", { });     });
//*************** Llamar a vistas **************
$(document).on("change", "#opcion_bp", function(){
  if( $('#opcion_bp').val() == "1") {  jqGetAjax("cerrar","tblMovimientos", {  }); jqGetAjax("buscarpaciente-nombre","tblMovimientos", { }); }
  if( $('#opcion_bp').val() == "2") {  jqGetAjax("cerrar","tblMovimientos", {  }); jqGetAjax("buscarpaciente-curp","tblMovimientos", { }); }
  if( $('#opcion_bp').val() == "3") {  jqGetAjax("cerrar","tblMovimientos", {  }); jqGetAjax("buscarpaciente-expediente","tblMovimientos", { }); }
  if( $('#opcion_bp').val() == "4") {  jqGetAjax("cerrar","tblMovimientos", {  }); jqGetAjax("buscarpaciente-folio","tblMovimientos", { }); }
});

$(document).on("click", "#btn_listar_bp", function(){


//*************** Buscar por Nombre **************
  if( $('#opcion_bp').val() == "1") {

    $('#nombre').removeClass('red'); $('#apellidop').removeClass('red');
    var nombre = $('#nombre').val();
    var apellidop = $('#apellidop').val();
    var apellidom = $('#apellidom').val();
    if( $('#cp_completa').is(':checked')) {var tipoconsulta = 1;}
    else{var tipoconsulta = 0;}

    if (nombre.length > 2 && apellidop.length > 2) {
      $.post({
        url:  'ajax-buscarpaciente-nombre',
        type: "POST",
        data:  {'nombre':nombre,'apellidop':apellidop,'apellidom':apellidom, 'tipoconsulta':tipoconsulta},

        success:  function (data)
        {
          $('#contenedor_tabla tr').remove();
          if (tipoconsulta==0){consultaParcial(data);}
          else {consultaCompleta(data);}
        },

        error : function(xhr, status)
        {$.notify("Ha ocurrido un problema", "error");},

      });
    }
    else
    {
      {$.notify("Indispensable capturar el nombre y uno de los apellidos", "error");}
      $('#nombre').addClass('red'); $('#apellidop').addClass('red');
    }
  }
//*************** Buscar por CURP **************
if( $('#opcion_bp').val() == "2") {

  var curp = $('#curp').val();
  if( $('#cp_completa').is(':checked')) {var tipoconsulta = 1;}
  else{var tipoconsulta = 0;}

  if (curp.length > 9 && curp.length < 19) {
    $.post({
      url:  'ajax-buscarpaciente-curp',
      type: "POST",
      data:  {'curp':curp, 'tipoconsulta':tipoconsulta},

      success:  function (data)
      {
        $('#contenedor_tabla tr').remove();
        if (tipoconsulta==0){consultaParcial(data);}
        else {consultaCompleta(data);}
      },

      error : function(xhr, status)
      {$.notify("Ha ocurrido un problema", "error");},
    });
  }
  else {  {$.notify("Indispensable capturar de 10-18 caracteres", "error");}  }
}

//*************** Buscar por Expediente **************
if( $('#opcion_bp').val() == "3") {
  var nexpediente = $('#expediente').val();
  if( $('#cp_completa').is(':checked')) {var tipoconsulta = 1;}
  else{var tipoconsulta = 0;}

  if (nexpediente.length > 0 && nexpediente.length < 16) {
    $.post({
      url:  'ajax-buscarpaciente-nexpediente',
      type: "POST",
      data:  {'nexpediente':nexpediente, 'tipoconsulta':tipoconsulta},

      success:  function (data)
      {
        $('#contenedor_tabla tr').remove();
        if (tipoconsulta==0){consultaParcial(data);}
        else {consultaCompleta(data);}
      },

      error : function(xhr, status)
      {$.notify("Ha ocurrido un problema", "error");},
    });
  }
  else {  {$.notify("Indispensable capturar de 1-15 caracteres", "error");}   }
}

//*************** Buscar por Folio **************
if( $('#opcion_bp').val() == "4") {
  var folio = $('#folio').val();
  if( $('#cp_completa').is(':checked')) {var tipoconsulta = 1;}
  else{var tipoconsulta = 0;}

  if (folio.length > 0 && folio.length < 14) {
    $.post({
      url:  'ajax-buscarpaciente-folio',
      type: "POST",
      data:  {'folio':folio, 'tipoconsulta':tipoconsulta},

      success:  function (data)
      {
        $('#contenedor_tabla tr').remove();
        if (tipoconsulta==0){consultaParcial(data);}
        else {consultaCompleta(data);}
      },

      error : function(xhr, status)
      {$.notify("Ha ocurrido un problema", "error");},
    });
  }
  else {  {$.notify("Indispensable capturar de 1-13 caracteres", "error");}   }

}

//*************** Checkbox desactivado **************
function consultaParcial(data){

    var tabla = '<table border="1" class="table table-bordered" style="cursor: pointer;">';
        tabla += '<tr>';
        tabla += '<th style="text-align: center;">N°</th>'+
                 '<th> Nombre </th>'+
                 '<th> Primer Apellido </th>'+
                 '<th> Segundo Apellido </th>'+
                 '<th> CURP </th>'+
                 '<th> Expediente </th>';
        tabla += '</tr>';
        tr = '';

    xmlDoc = $.parseXML(data),
    $xml = $( xmlDoc );
    var con = 1;
    $($xml).find("respuesta").each(function() {

        var clave_pac = ($(this).find("respuesta>clave_pac").text());
        var nombre = ($(this).find("respuesta>nombre").text());
        var primer_ap = ($(this).find("respuesta>primer_ap").text());
        var segundo_ap = ($(this).find("respuesta>segundo_ap").text());
        var curp = ($(this).find("respuesta>curp").text());
        var nexpediente = ($(this).find("respuesta>nexpediente").text());
        var error = ($(this).find("respuesta>error").text());
        var tituloerror = ($(this).find("respuesta>tituloerror").text());
        var descripcionerror = ($(this).find("respuesta>descripcionerror").text());

        tr += '<tr class="trpaciente">';
        tr += '<td style="text-align: center;">'+con+'</td>'+
              '<td class="nombre">'+nombre+'</td>'+
              '<td class="primerap">'+primer_ap+'</td>'+
              '<td class="segundoap">'+segundo_ap+'</td>'+
              '<td>'+curp+'</td>'+
              '<td>'+nexpediente+'</td>';
        tr += '</tr>';
        con++;

      if(error == "1"){$.notify(descripcionerror, "info");}

    });

    tabla += tr;
    tabla += '</table>';
    $('#contenedor_tabla').html( tabla );
  }

//*************** Checkbox activado **************
function consultaCompleta(data){
    var tabla = '<table border="1" class="table table-bordered" style="cursor:pointer">';
        tabla += '<tr>';
        tabla += '<th style="text-align: center;">N°</th>'+
                 '<th> Nombre </th>'+
                 '<th> Primer Apellido </th>'+
                 '<th> Segundo Apellido </th>'+
                 '<th> CURP </th>'+
                 '<th> Expediente </th>'+
                 '<th> Fecha Nacimiento </th>'+
                 '<th> Edad </th>'+
                 '<th> Folio Afil. </th>'+
                 '<th> Consecu </th>'+
                 '<th> Inicio Vig. </th>'+
                 '<th> Fin Vig. </th>'+
                 '<th> Consul </th>';
        tabla += '</tr>';
        tr = '';

    xmlDoc = $.parseXML(data),
    $xml = $( xmlDoc );
    var con = 1;
    $($xml).find("respuesta").each(function() {

        var clave_pac = ($(this).find("respuesta>clave_pac").text());
        var nombre = ($(this).find("respuesta>nombre").text());
        var primer_ap = ($(this).find("respuesta>primer_ap").text());
        var segundo_ap = ($(this).find("respuesta>segundo_ap").text());
        var curp = ($(this).find("respuesta>curp").text());
        var nexpediente = ($(this).find("respuesta>nexpediente").text());
        var fecha_nac = ($(this).find("respuesta>fecha_nac").text());
        var edad = ($(this).find("respuesta>edad").text());
        var folio_afil = ($(this).find("respuesta>folio_afil").text());
        var tipo_afil = ($(this).find("respuesta>tipo_afil").text());
        var consecutivo = ($(this).find("respuesta>consecutivo").text());
        var inicio_vig = ($(this).find("respuesta>inicio_vig").text());
        var fin_vig = ($(this).find("respuesta>fin_vig").text());
        var nconsultas = ($(this).find("respuesta>nconsultas").text());
        var error = ($(this).find("respuesta>error").text());
        var tituloerror = ($(this).find("respuesta>tituloerror").text());
        var descripcionerror = ($(this).find("respuesta>descripcionerror").text());

        tr += '<tr class="trpaciente">';
        tr += '<td style="text-align: center;">'+con+'</td>'+
              '<td class="nombre">'+nombre+'</td>'+
              '<td class="primerap">'+primer_ap+'</td>'+
              '<td class="segundoap">'+segundo_ap+'</td>'+
              '<td>'+curp+'</td>'+
              '<td>'+nexpediente+'</td>'+
              '<td>'+fecha_nac+'</td>'+
              '<td>'+edad+'</td>'+
              '<td>'+folio_afil+'</td>'+
              '<td>'+consecutivo+'</td>'+
              '<td>'+inicio_vig+'</td>'+
              '<td>'+fin_vig+'</td>'+
              '<td>'+nconsultas+'</td>';
        tr += '</tr>';
        con++;

      if(error == "1"){$.notify(descripcionerror, "info");}

    });
    tabla += tr;
    tabla += '</table>';
    $('#contenedor_tabla').html( tabla );

  }

});


$(document).on("dblclick", ".trpaciente", function(){
  var currentRow = $(this).closest("tr");
  var nombre = currentRow.find(".nombre").html();
  var primerap = currentRow.find(".primerap").html();
  var segundoap = currentRow.find(".segundoap").html();

//  alert("Paciente: [ "+nombre+' '+primerap+' '+segundoap+' ]');


});
</script>


@section('content')
  <div id="contenedor">
    <div class="row" style="margin-bottom: 10px;">

        <div class="col-sm-4 input-group-sm form-group-sm">
            <label>BUSCAR POR:</label>
            <select id="opcion_bp" name="opcion_bp" class="form-control" style="height: 27px;">
              <option value="1">Nombre</option>
              <option value="2">CURP</option>
              <option value="3">Expediente</option>
              <option value="4">Folio de Seguro Popular</option>
            </select>
        </div>

        <div class="col-md-offset-5 col-md-1"><br>
          <div class="input-group input-group-sm">
            <span class="input-group-addon"><input type="checkbox" id="cp_completa" name="cp_completa"></span>
            <span class="input-group-addon">Ver todos los datos</span>
          </div>
        </div>

    </div>


    <div class="row" id="tblMovimientos" name="tblMovimientos"></div>

    <div id="contenedor_tabla"></div>

    <div class="sombra_cm">
      <div class="form-group-sm">
          <button type="button"  id="btn_cancelar_bp" name="btn_cancelar_bp" >Cancelar</button>
      </div>
    </div>

  </div>
@endsection
