$(document).ready(function (e) {
    $('#modalPlatosCategorias').on('shown.bs.modal', function (e) {
        //$('#tblPlatosCategorias_filter').children(0).children(0).focus();
    })
})

var primeraVez = true
var ultTexto = "COMIDAS";

function buscarComidas(btn) {
    var texto = $(btn).html();
    if (ultTexto != texto){
        ultTexto = texto;
        primeraVez = true
    }
    
    $('#modalSoloCategorias').modal('show')
    if (primeraVez) {
        Comidas_Click(texto)
        primeraVez = false
    }
    
    //$('#modalBusquedaPlatos').modal('show')
    //if (primeraVez) {
    //    $('#filaContenidoProductos').html('')
    //    $('#filaSeleccionaCategoria').html(_filaSeleccioneCategoria)
    //    Comidas_Click(texto)
    //    primeraVez = false
    //}
}

var _filaSeleccioneCategoria = '<div class="col-md-12"></div> <div class="col-md-12"> <span style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt"> ← Selecciona una Categoría </span> </div> <div class="col-md-12 pt-5"></div> '
var _abreviatura = ''

function Comidas_Click(abreviatura) {
    _abreviatura = abreviatura
    $('#tabComidasPestaña').removeClass('active')
    $('#tabBebidasPestaña').removeClass('active')
     $('#tabHeladasPestaña').removeClass('active')
      $('#tabOtrosPestaña').removeClass('active')
    $('#tabComidas').removeClass('active show')
    $('#tabBebidas').removeClass('active show')
     $('#tabHeladas').removeClass('active show')
       $('#tabOtros').removeClass('active show')
    
    $('#tabComidas').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Cargando...')
    $('#tabBebidas').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Cargando...')
    $('#tabHeladas').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Cargando...')
        $('#tabOtros').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Cargando...')


    $('#filaContenidoProductos').html('')
    $('#filaSeleccionaCategoria').html(_filaSeleccioneCategoria)
    
    if(abreviatura == 'HELADOS')
    {
     $('#tabHeladasPestaña').addClass('active')
        $('#tabHeladas').addClass('active show')
    }
    
    if (abreviatura == 'COMIDAS') {
        $('#tabComidasPestaña').addClass('active')
        $('#tabComidas').addClass('active show')
    } 
    if (abreviatura == 'BEBIDAS')
    {
        $('#tabBebidasPestaña').addClass('active')
        $('#tabBebidas').addClass('active show')
    }

    if (abreviatura == 'OTROS')
        {
            $('#tabOtrosPestaña').addClass('active')
            $('#tabOtros').addClass('active show')
        }

    $.ajax({
        type: 'GET',
        url: RUTA_API + 'ListarCategoriasPorAbreviatura/' + abreviatura,
        dataType: 'JSON',
        success: function (data) {
            var contenido = ''
            //if (esMovil()) contenido = '<div class="row"> <div class="col-md-12"><span style="font-size: 9pt">Toque una categoría y deslice hacia abajo...</span></div>'
            //else 
            contenido = '<div class="row"> '

            data.forEach(element => {
                contenido += '<div class="col-xl-2 col-lg-2 col-md-3 col-sm-3 col-6 pt-2"> ' +
                    '<button style="height:60px"; class="btn btn-block btn-outline-primary" onclick="Categoria_Click(' + "'" + element.CAT_Codigo + "'" + ')"> ' +
                    //'<i class="fas fa-utensils text-orange" style="font-size: 15pt"></i><br> ' +
                    '<span style="font-size: 9pt;">' + element.CAT_Nombre + '</span><br> ' +
                    '</button> ' +
                    '</div> '
            });
            contenido += '</div>'
            
           /* if(abreviatura == 'HELADOS')
            {
                 $('#tabHeladas').html(contenido)
            }*/

            if (abreviatura == 'COMIDAS') {
                $('#tabComidas').html(contenido)
            } else if (abreviatura == 'BEBIDAS') {
                $('#tabBebidas').html(contenido)
            }
            else if (abreviatura == 'HELADOS') {
                $('#tabHeladas').html(contenido)
            }
            else if (abreviatura == 'OTROS') {
                $('#tabOtros').html(contenido)
            }
        },
        error: function (error) {
            console.log(error)
        }
    })
}

function Categoria_Click(CAT_Codigo) {
   
    $('#tblPlatosCategorias').dataTable().fnDestroy();
    $('#modalSoloCategorias').modal('hide')
    
    $('#filaSeleccionaCategoria').html('')
    if (_abreviatura == 'COMIDAS')
        $('#filaContenidoProductos').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Obteniendo platos...')
    else
        $('#filaContenidoProductos').html('<i class="spinner-border spinner-border-sm mr-2 text-green"></i> Obteniendo bebidas...')
    
    $.ajax({
        type: 'GET',
        url: RUTA_API + 'ListarArticulosxCategoria/' + CAT_Codigo,
        dataType: 'JSON',
        success: function (data) {
             
            var contenido = '' 
            data.forEach(element => {
           // element.

                var platos = element.PLATOS
                var segundo = ''
                var vendidos = element.VENDIDOS
                var estaprogramado = element.ESTAPROGRAMADO

                var texto = ''
                if (estaprogramado == 'SI') 
                    texto = '[' + (platos - vendidos) + '] - ' + element.ART_Descripcion
                else
                    texto = element.ART_Descripcion
           
                contenido += '<tr>'+
                    '<td hidden>'+element.CAT_Nombre+'</td>'+
                    '<td>'+element.ART_Descripcion+'</td>'+
                    '<td>'+element.ART_Precio1+'</td>'+ 
                  
                     '<td class="text-center">'+'<button type="button" class="btn btn-sm btn-success"';
                      if (_abreviatura=='HELADOS')
                      {
                      if ($.trim(element.ART_EB1).length == 0 || element.ART_EB1=="null" && $.trim(element.ART_EB2).length == 0 || element.ART_EB2=="null" && $.trim(element.ART_EB3).length == 0 || element.ART_EB3=="null") 
                      {
                        contenido += 'onclick="Helados2segundo_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                      }
                      else
                      {
                          contenido += 'onclick="Helados2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' +  "'" + element.ART_EB1 + "'" + ',' + "'" + element.ART_EB2 + "'" + ',' + "'" + element.ART_EB3 + "'" + ')"> ';   
                      }
                  //  }
                  //  contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' + + "'" + element.ART_HELADO + "'" + ',' + "'" + element.ART_CALIENTE + "'" + ',' + "'" + element.ART_TEMPERADO + "'" + ',' + "'" + element.ART_TERMINOMEDIO + "'" + ')"> ';   
                     //contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                }
                   
                   
                     if (_abreviatura=='OTROS'){
                      if ($.trim(element.ART_EB1).length == 0 || element.ART_EB1=="null" && $.trim(element.ART_EB2).length == 0 || element.ART_EB2=="null" && $.trim(element.ART_EB3).length == 0 || element.ART_EB3=="null") 
                      {
                        contenido += 'onclick="Otros2segundo_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                      }
                      else
                      {
                          contenido += 'onclick="Otros2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' +  "'" + element.ART_EB1 + "'" + ',' + "'" + element.ART_EB2 + "'" + ',' + "'" + element.ART_EB3 + "'" + ')"> ';   
                      }
                  //  }
                  //  contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' + + "'" + element.ART_HELADO + "'" + ',' + "'" + element.ART_CALIENTE + "'" + ',' + "'" + element.ART_TEMPERADO + "'" + ',' + "'" + element.ART_TERMINOMEDIO + "'" + ')"> ';   
                     //contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                }
                   
                     
                     
                     if (_abreviatura=='BEBIDAS'){
                      if ($.trim(element.ART_EB1).length == 0 || element.ART_EB1=="null" && $.trim(element.ART_EB2).length == 0 || element.ART_EB2=="null" && $.trim(element.ART_EB3).length == 0 || element.ART_EB3=="null") 
                      {
                        contenido += 'onclick="Bebida2segundo_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                      }
                      else
                      {
                          contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' +  "'" + element.ART_EB1 + "'" + ',' + "'" + element.ART_EB2 + "'" + ',' + "'" + element.ART_EB3 + "'" + ')"> ';   
                      }
                  //  }
                  //  contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' + + "'" + element.ART_HELADO + "'" + ',' + "'" + element.ART_CALIENTE + "'" + ',' + "'" + element.ART_TEMPERADO + "'" + ',' + "'" + element.ART_TERMINOMEDIO + "'" + ')"> ';   
                     //contenido += 'onclick="Bebida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';
                }
                if (_abreviatura=='COMIDAS')
                {  
                    if ($.trim(element.ART_EB1).length == 0 || element.ART_EB1=="null" &&  $.trim(element.ART_EB2).length == 0 || element.ART_EB2=="null" &&  $.trim(element.ART_EB3).length == 0 || element.ART_EB3=="null") 
                    {
                        contenido += 'onclick="Comida2segundo_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ',' +  "'" + element.ART_EB1 + "'" + ',' + "'" + element.ART_EB2 + "'" + ',' + "'" + element.ART_EB3 + "'" + ')"> ';   
                    }
                    else
                    {
                      contenido += 'onclick="Comida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';      
                    }
                  
                  //  contenido += 'onclick="Comida2_Click(' + "'" + element.ART_Codigo + "'" + ', ' + "'" + element.ART_Descripcion + "'" + ', ' + "'" + element.ART_Precio1 + "'" + ', ' + "'000000    '" + ', ' + "'" + platos + "'" + ', ' + "'" + vendidos + "'" + ', ' + "'" + estaprogramado + "'" + ')"> ';   
                }
                
                contenido += '<i class="fas fa-check-circle"></i>';
                    
            });
            
            $('#bodyTblPlatosCategorias').html('')
            $('#bodyTblPlatosCategorias').html(contenido)
            $('#modalPlatosCategorias').modal('show')
            
            $('#tblPlatosCategorias').DataTable({        
                language: {
                    "url": "/files/newJS/datatables/Spanish.json",
                },     
                pageLength : 50,
                responsive: true,//responsivo activado
                scrollCollapse: true,//colapso del scroll
                autoWidth: false,//cambio del ancho de celdas desactivado
                columnDefs: [
                    { className: "dt-left", "targets": [1] },
                    { className: "dt-right", "targets": [2] },
                    { className: "dt-center", "targets": [3] },
                    { responsivePriority: 1, targets: 1 },//mostrar columna clientes 
                    { responsivePriority: 2, targets: 2},//mostrar columna estado
                ],
            })
        },
        beforeSend: function() {
            mostrarCargando('Obteniendo datos...');
        },
        complete: function() {
            cerrarCangando();
        },
        error: function (error) {
            console.log(error)
            alert(error)
        }
    })
}

function ObtenerTexto(texto) {
    return texto;
    if (texto.length < 9) return texto
    return texto.substring(0, 9) + '...';
}

function Producto_Click(ART_Codigo, ART_Descripcion, ART_Precio1, ART_Codigo2, platos, vendidos, estaprogramado) {

    platos = parseInt(platos)
    vendidos = parseInt(vendidos)
    if (estaprogramado == 'SI') {
        if (platos - vendidos <= 0) {
            swal({
                title: 'ADVERTENCIA',
                text: 'EL PLATO ' + ART_Descripcion + " SE ENCUENTRA AGOTADO",
                timer: 2500
            })
            return
        }
    }

    var _ART_CodigoTABLA = ''
    var ART_DescripcionTABLA = ''
    var _Cantidad = 0
    var _Stock = 0
    var _Precio = 0

    var pos = -1
    var table = document.getElementById('tblPedido');
    for (i = 1; i < table.rows.length; i++) {
        if (table.rows[i].style.display != 'none') {

            var fila = $(table.rows[i])
            _ART_CodigoTABLA = table.rows[i].cells[0].innerText
            _Cantidad = table.rows[i].cells[1].innerText
            _ART_DescripcionTABLA = table.rows[i].cells[2].innerText
            _Precio = table.rows[i].cells[3].innerText
            _Stock = table.rows[i].cells[7].innerText

            if (_ART_CodigoTABLA == ART_Codigo && _ART_DescripcionTABLA == ART_Descripcion) {
                pos = i
                break
            }
        }
    }

    if (pos != -1) {
        _Cantidad = parseFloat(_Cantidad)
        _Stock = parseInt(_Stock)
        _Cantidad += 1

        if (estaprogramado == 'SI') {
            if (_Stock - 1 < 0) {
                var msj = 'CANTIDAD DE PLATOS LIBRES DE ' + ART_Descripcion + ': ' + _Stock
                if (_Stock < 0) {
                    msj = 'EL PLATO ' + ART_Descripcion + ' SE ENCUENTRA AGOTADO'
                }

                swal({
                    title: 'ADVERTENCIA',
                    text: msj,
                    timer: 2500
                })
                return
            }
            _Stock -= 1
        }

        table.rows[pos].cells[1].innerText = _Cantidad
        table.rows[pos].cells[7].innerText = _Stock
        table.rows[pos].cells[4].innerText = _Cantidad * ART_Precio1

    } else {
        var _MeQuedan = parseInt(platos) - parseInt(vendidos)
        if (estaprogramado == 'SI') _MeQuedan -= 1

        var fila = '<tr style="cursor: pointer" estaprogramado="' + estaprogramado + '" codigo="' + ART_Codigo + '" codigoacompanante="' + ART_Codigo2 + '" eliminar="SI"> ' +

            '<td hidden>' + ART_Codigo + '</td>' + //0
            '<td>' + 1 + '</td> ' + //1
            '<td>' + ART_Descripcion + '</td> ' + //2
            '<td class="text-right">' + ART_Precio1 + '</td> ' + //3
            '<td class="text-right">' + ART_Precio1 + '</td> ' + //4
            '<td hidden>-</td>' + //5
            '<td hidden>' + ART_Descripcion + '</td>' + //6
            '<td class="text-center" hidden>' + _MeQuedan + '</td> ' + //7
            '<td hidden>' + estaprogramado + '</td>' + //8

            '</tr> '
        $('#tblPedido').append(fila)
    }

    $("#tblPedido tr").click(function () {
        $(this).addClass('selected').siblings().removeClass('selected');
        filaSeleccionada = $(this)
    });

    calcularTotal()
    $('#modalBusquedaPlatos').modal('hide')
}
