<?php 
include_once('../../../php/sessionStart.php'); 
include_once('../../../php/db/dbExec.php');
include_once('../../../php/timezone.php');

$dtFec=date("Y-m-d");
$nAnio=date("Y");
$nMes=date("m");

$empCod = $_SESSION['empCod'];
$empNom = $_SESSION['empNom'];
$empNit = $_SESSION['empNit'];
?>
<?php include_once('../includes/htmlOpen.php'); ?>
    <main class="main" style="">
      <?php 
        $li[0] = '<i class="fas fa-file-invoice"></i>';
        $li[1] = $_GET["opcNom"];
        include_once('../../../php/includes/ol.php');
      ?>

      <div class="container-as">
        <div class="row">
          <div class="col">
            <ul class="nav nav-pills mb-1" id="pills-tab" role="tablist">
              <li class="nav-item">
                <a class="nav-link active" id="pills-0-tab" data-toggle="pill" href="#pills-0" role="tab" aria-controls="pills-0" aria-selected="true">Anticipos</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" id="pills-1-tab" data-toggle="pill" href="#pills-1" role="tab" aria-controls="pills-1" aria-selected="true">Buscar Planillas</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" id="pills-2-tab" data-toggle="pill" href="#pills-2" role="tab" aria-controls="pills-2" aria-selected="true">Buscar Empleados</a>
              </li>
            </ul>
            <div class="tab-content bg-transparent border-0" id="pills-tabContent">
              <div class="tab-pane fade show active" id="pills-0" role="tabpanel" aria-labelledby="pills-0-tab">

                <form action="" name="thisform" autocomplete="off" enctype="multipart/form-data">
                  <div class="form-row">
                    <div class="col-md-10">
                      <div class="form-group">
                        <div class="form-row">
                          <div class="col-2.5">
                              <label class="font-size-sm" for="numNum">Número de Planilla</label>
                              <input type="number" class="form-control form-control-sm form-control-as" id="numNum" placeholder="0">
                          </div>
                          <div class="col-3">
                              <label class="font-size-sm" for="dtDel">Periodo del:</label>
                              <input type="date" class="form-control form-control-sm form-control-as" id="dtDel" placeholder="" disabled>
                          </div>
                          <div class="col-3">
                              <label class="font-size-sm" for="dtAl">Al</label>
                              <input type="date" class="form-control form-control-sm form-control-as" id="dtAl" maxlength="20" disabled>
                          </div>
                        </div>
                        <div class="form-row">
                          <div class="col-md-2">
                            <label class="font-size-sm text-success" for="numCoddm">Código Empleado</label>
                            <input type="number" class="form-control form-control-sm form-control-as" id="numCoddm">
                          </div>
                          <div class="col-sm-9 col-md-8">
                            <label class="font-size-sm text-success" for="txtNomdm">Nombre del Empleado:</label>
                            <input type="text" class="form-control form-control-sm form-control-as" id="txtNomdm" maxlength="120" disabled>
                          </div>
                        </div>
                      <div class="form-row">
                          <div class="col-3">
                              <label class="font-size-sm" for="numDtra">Dias Trabajados:</label>
                              <input type="number" class="form-control form-control-sm form-control-as" id="numDtra"  placeholder="0" oninput="numberDec(this, 14, 0);" min="0">
                          </div>
                          <div class="col-3">
                              <label class="font-size-sm" for="numAnti">Valor Anticipo:</label>
                              <input type="number" class="form-control form-control-sm form-control-as dec-2" id="numAnti"  placeholder="0.00" oninput="numberDec(this, 14, 2);" min="0">
                          </div>
                        </div>
                        <div class="form-row">
                        </div>
                      </div>

                      <h3 class="text-light"></h3>
                      <h3 class="text-light"></h3>
                      <div class="form-group">
                        <div class="form-row">
                        </div>
                      </div>
                    </div>

                    <div class="col-md-2">
                      <div class="form-group position-fixed-md">
                        <div class="form-row">
                          <div class="col-12 mt-2">
                            <button class="btn btn-outline-success btn-block" id="btnGrabar" type="button">Guardar</button>
                          </div>
                          <div class="col-3 col-md-12"></div>
                        </div>
                        <div class="form-row">
                          <div class="col-12 mt-2">
                            <button class="btn btn-outline-info btn-block" id="btnBorrar" type="button">Borrar Registro</button>
                          </div>
                          <div class="col-3 col-md-12"></div>
                        </div>
                      </div>
                    </div>
                  </div>
                </form>
              </div>
              <div class="tab-pane fade" id="pills-1" role="tabpanel" aria-labelledby="pills-1-tab">
                <?php
                  $a='0';
                  $b='1';
                  include('../busPlani/index.html');
                ?>
              </div>
              <div class="tab-pane fade" id="pills-2" role="tabpanel" aria-labelledby="pills-2-tab">
                <?php
                  $a='0';
                  $b='2';
                  include('../busEmpleado/index.html');
                ?>
              </div>
            </div>
          </div>
        </div>
      </div>
    </main>
<?php include_once('../../../php/includes/htmlClose.php'); ?>

<script>
  var pressEnter = false;
  var nuevo = true;
  var nuevoArtic = true;
  var mesCerrado = false;
  var inputCtaMov = "txtCta";
  var totant = 0;
  var inputPlani = "numNum";
  var tblNomperAnt;
  var btnAddEdit = "00";
  var inputEmple = "txtCoddm";
  var unimed = "XXX";
  var ctaInc = false;
  
  const numNum = document.thisform.numNum;
  const dtDel = document.thisform.dtDel;
  const dtAl = document.thisform.dtAl;
  const txtCoddm = document.thisform.txtCoddm;
  const txtNomdm = document.thisform.txtNomdm;
  const numDtra = document.thisform.numDtra;
  const numAnti = document.thisform.numAnti;


  function restriccion(consultar = false){
    if (!consultar) {
      if (isNullPer(numNum.value)  || numNum.value == 0) {
        numNum.focus();
        alWarning({"msg":{"title":"Campo Vacío","text":"Es necesario ingresar el NO. DE PLANILLA"}});
        return true;
      }
    } else {
      if (isNullPer(numNum.value)) {
        numNum.focus();
        alWarning({"msg":{"title":"Campo Vacío","text":"Es necesario ingresar el NO. DE PLANILLA"}});
        return true;
      }
    }
    return false;
  }

  function restriccionCamposVacios() {
    if (isNullPer(numNum.value)) {
      numNum.focus();
      alWarning({"msg":{"title":"Campo Vacío","text":"Es necesario ingresar el NO. DE PLANILLA"}});
      return true;
    }
    return false;
  }


  function consultarPla(){
    if (restriccion(true)) {return};
    
    if (!isNullPer(numNum.value)) {
      const parametros = new FormData();
      parametros.append("action", "consultarPla");

      parametros.append("numNum", numNum.value);

      //txtNext.focus()

      $.ajax({
        data:  parametros,
        url:   window.location.origin+window.location.pathname+"actions.php",
        type:  "post",
        contentType: false,
        processData: false,
        success: function (jsonPhp) {
          //console.log(jsonPhp);
          const jsonJS = JSON.parse(jsonPhp);
          tblNomperAnt = JSON.stringify(jsonJS.nomper);

          if(jsonJS.error == true){
            alError(jsonJS);
          } else {
            if (isNullPer(jsonJS.ctrpla)) {
              numNum.focus();
              alWarning({"msg":{"title":"PLANILLA NO REGISTRADA","text":"Esta Planilla no ha sido registrada, revise."}});
              return true;
            } else {
              dtDel.value = jsonJS.ctrpla.ctrp_fini;
              dtAl.value = jsonJS.ctrpla.ctrp_ffin;
            }
          }
        }
      });
    }      
  }

  function consultarAnti(){
    if (isNullPer(numCoddm.value)) {
      numCoddm.focus();
      alWarning({"msg":{"title":"NO INGRESO CODIGO","text":"Debe ingresar el codigo de algun empleado"}});
      return true;
    } else {
      const parametros = new FormData();
      parametros.append("action", "consultarAnti");
      parametros.append("numNum", numNum.value);
      parametros.append("numCod", numCoddm.value);

      $.ajax({
        data:  parametros,
        url:   window.location.origin+window.location.pathname+"actions.php",
        type:  "post",
        contentType: false,
        processData: false,
        success: function (jsonPhp) {
          //console.log(jsonPhp);
          const jsonJS = JSON.parse(jsonPhp);

          if(jsonJS.error == true){
            alError(jsonJS);
          } else {
            if (isNullPer(jsonJS.maestro)) {
              numCoddm.focus();
              alWarning({"msg":{"title":"EMPLEADO NO REGISTRADO","text":"Este Codigo de empleado, no ha sido registrado, revise."}});
              return true;
            } else {
              if (isNullPer(jsonJS.antipla)) {
                nuevo=true;
                txtNomdm.value = jsonJS.maestro.mae_nom+" "+jsonJS.maestro.mae_ape;
                numDtra.value=0;
                numAnti.value=0;
              } else {
                txtNomdm.value = jsonJS.antipla.mae_nom+" "+jsonJS.antipla.mae_ape;
                numDtra.value=jsonJS.antipla.ant_dtra;
                numAnti.value=jsonJS.antipla.ant_sord;
                nuevo=false;
              }
            }
          }
        }
      });
    } 
  }  


  function limpiar(){
    dtAl.value= '<?php echo $dtFec; ?>';
    dtDel.value= '<?php echo $dtFec; ?>';
    numCoddm.value = "";
    txtNomdm.value = "";
    numDtra.value=0;
    numAnti.value=0;
  }



  $(document).ready(function() {
    $(this).find('input:visible:first').focus();
    //document.thisform.dtFec.value = '<?php echo $dtFec; ?>';
    //document.thisform.dtFvalida.value = '<?php echo $dtFec; ?>';
    numNum.value="";
    dtDel.value = dateToday();
    dtAl.value = dateToday();
    numDtra.value=0;
    numAnti.value=0;

    // SHOW MODAL
    $('#modalNomper').on('shown.bs.modal', function() {
      if (!isMobile()) {
        $(this).find('input:visible:first').focus();
      }
    });

    // SUBMIT FORM
    $('form').submit(function() {
      return false;
    });

    // FOCUS NUMERO DE ORDEN
    $("#numNum").focus(function() {
      inputPlani = $(this).attr('id');
      numNum.value="";
      limpiar();
    })
    .keypress(function(e) {
      const keycode = e.keyCode || e.which;
      if (keycode == '13') {pressEnter = true;}
    })
    .keydown(function(e){
      if(ctrlBus(e)) { document.getElementById("pills-1-tab").click(); }
    })
    .change(function (){
      consultarPla();
    });

    // VALID CODIGO
    $("#numCoddm")
    .focus(function (){
      inputEmple = $(this).attr('id');
      numCoddm.value = "";
      txtNomdm.value = "";
      numDtra.value=0;
      numAnti.value=0;
    })
    .keypress(function(e) {
      const keycode = e.keyCode || e.which;
      if (keycode == '13') {pressEnter = true;}
    })
    .keydown(function(e){
      if(ctrlBus(e)) { document.getElementById("pills-2-tab").click(); }
    })    
    .change(function (){
      consultarAnti();
    });

  });


  // CLICK GUARDAR
  $("#btnGrabar").click(function (){
    if (restriccion()) {return};

    const parametros = new FormData();
    parametros.append("action", "guardar");

    parametros.append("nuevo", nuevo);
    parametros.append("numNum", numNum.value);
    parametros.append("dtDel", dtDel.value);
    parametros.append("dtAl", dtAl.value);
    parametros.append("numCod", numCoddm.value);
    parametros.append("txtNom", txtNomdm.value);
    parametros.append("numDtra", numDtra.value);
    parametros.append("numAnti", numAnti.value);

    numCoddm.focus();
    
    $.ajax({
      data:  parametros,
      url:   window.location.origin+window.location.pathname+"actions.php",
      type:  "post",
      contentType: false,
      processData: false,
      beforeSend: function () {
        alLoad("Cargando...")
      },
      success: function (jsonPhp) {
        console.log(jsonPhp)
        const jsonJS = JSON.parse(jsonPhp);

        if(jsonJS.error==true){
          alError(jsonJS);
        } else {
          alSuccess(jsonJS);
          numCoddm.value = "";
          txtNomdm.value = "";
          numDtra.value=0;
          numAnti.value=0;
        }
      }
    });
  });

  // CLICK BORRAR
  $("#btnBorrar").click(function (){
    if (restriccion()) {return};
    const fnT = function(){

      const parametros = new FormData();
      parametros.append("action", "borrar");

      parametros.append("numNum", numNum.value);
      parametros.append("dtDel", dtDel.value);
      parametros.append("dtAl", dtAl.value);
      parametros.append("numCoddm", numCoddm.value);
      
      $.ajax({
        data:  parametros,
        url:   window.location.origin+window.location.pathname+"actions.php",
        type:  "post",
        contentType: false,
        processData: false,
        beforeSend: function () {
          alLoad("Cargando...")
        },
        success: function (jsonPhp) {
          console.log(jsonPhp)
          const jsonJS = JSON.parse(jsonPhp);

          if(jsonJS.error==true){
            alError(jsonJS);
          } else {
            alSuccess(jsonJS);
            //numNum.value = "";
            limpiar();
            numNum="";
            numCoddm="";
          }
        }
      });
    }

    const fnF = function(){
      return true;
    }

    usuClave(fnT, fnF);
  });


  // FOCUS PILL
  $('a[data-toggle="pill"]').on('shown.bs.tab', function (e) {
    if (!isMobile()) {
      const target = e.target.attributes.href.value;
      const relatedTarget = e.relatedTarget.attributes.href.value;

      if (target != "#pills-0") {
        $(target+' input:visible:first').focus();
      } else {
        (relatedTarget == "#pills-1") ? numCoddm.focus() : 0;
        (relatedTarget == "#pills-2") ? numDtra.focus() : 0;
      }
      //$(target+' input:visible:first').focus();
    }
  });

</script>

