<script class='controller'>
    setTimeout(function() {

        /*           ACTUALIZAR CONTADORES               */
        $(document).off('click', "#updateCharts");
        $(document).on('click', '#updateCharts', function(e) {
            var userIntel = JSON.parse(window.localStorage.getItem("userIntel")),
                panelToShow = userIntel.panelUsuario,
                userId = $('#sidebarLoaded').attr('userIdPanel');
            $("#loading").fadeIn("fast", function() {
                showPanel(panelToShow, userId);
            });
        });

        /*           ACTUALIZAR CONTADORES               */
        $(document).off('click', "a.header-brand.changePanel");
        $(document).on('click', 'a.header-brand.changePanel', function(e) {
            e.preventDefault();
            e.stopImmediatePropagation();
        });
        $('a.header-brand.changePanel').removeClass('changePanel');

        /** CUANDO INICIA EL MODULO CARGAMOS LAS PRIMERAS TARJETAS */
        $('.anim1').velocity("transition.slideUpBigIn", {
            stagger: 250,
            complete: function() {

            }
        });

        $(document).off('click', ".getNewPicking button");
        $(document).on('click', '.getNewPicking button', function(e) 
		{
            getThisPick();
        });

        /** LE RESTAMOS 1 UNIDAD AL LISTADO SELECCIONADO */
        $(document).off('click', ".restarUnidad");
        $(document).on('click', '.restarUnidad', function(e) {

            var codigoBarrasDevuelto = $(this).parent().parent().parent().find('.codigoBarrasDevuelto').html(),
                unidTotales = $(this).parent().parent().parent().find('.unidTotales').html(),
                isListed = 0,
                unidXDevolver = $(this).parent().parent().parent().find('.unidXDevolver').html();


            $(document).find('.listadoPicking tbody tr').each(function(i, n) {
                var codbarras = $(n).find('.codbarras').html(),
                    numlin = $(n).find('.numlin').html(),
                    supedido = $(n).find('.supedido').html(),
                    unidadesLeidas = $(n).find('.unidadesLeidas').html(),
                    unidades = $(n).find('.unidades').html();

                if (codbarras == codigoBarrasDevuelto && isListed == 0 && unidadesLeidas != 0) {
                    isListed = 1
                    restantes = +unidadesLeidas - 1;
                    $(n).find('.unidadesLeidas').html(restantes.toFixed(0));
                    $(n).removeClass('fullyReadPicki');
                    $(n).slideDown('slow');
                }

            });

            var totalEscan = $('.unidadesEscaenadasTotal span').html();
            console.log(totalEscan);
            totalEscan = +totalEscan - 1;
            $('.unidadesEscaenadasTotal span').html(totalEscan);
            console.log(totalEscan);
            unidXDevolver--;
            if (unidXDevolver == 0) {
                $(this).parent().parent().parent().parent().remove();
                return;
            }
            var newPropor = (+unidXDevolver * 100) / +unidTotales
            $(this).parent().parent().parent().find('.unidXDevolver').html(unidXDevolver);
            $(this).parent().parent().parent().find('.unidXDevolverPropor').attr('style', 'width: ' + newPropor.toFixed(0) + '%');

        });

        /** ELIMINAMOS EL LISTADO SELECCIONADO */
        $(document).off('click', ".eliminarUnidades");
        $(document).on('click', '.eliminarUnidades', function(e) {

            var codigoBarrasDevuelto = $(this).parent().parent().parent().find('.codigoBarrasDevuelto').html(),
                unidTotales = $(this).parent().parent().parent().find('.unidTotales').html(),
                isListed = 0,
                unidXDevolver = $(this).parent().parent().parent().find('.unidXDevolver').html();

            $(document).find('.listadoPicking tbody tr').each(function(i, n) {
                var codbarras = $(n).find('.codbarras').html(),
                    numlin = $(n).find('.numlin').html(),
                    supedido = $(n).find('.supedido').html(),
                    unidadesLeidas = $(n).find('.unidadesLeidas').html(),
                    unidades = $(n).find('.unidades').html();

                if (codbarras == codigoBarrasDevuelto && isListed == 0) {
                    isListed = 1
                    restantes = +unidadesLeidas - +unidXDevolver;
                    $(n).find('.unidadesLeidas').html(restantes.toFixed(0));
                    $(n).removeClass('fullyReadPicki');
                    $(n).slideDown('slow');
                }

            });



            var totalEscan = $('.unidadesEscaenadasTotal span').html();
            totalEscan = +totalEscan - +unidXDevolver;
            $('.unidadesEscaenadasTotal span').html(totalEscan);
            $(this).parent().parent().parent().parent().remove();
            return;
        });

        /** GUARDAMOS LA  DEVOLUCION */
        $(document).off('click', "#saveNewPickingf");
        $(document).on('click', '#saveNewPickingf', function(e) {

            var rowsCount = 0,
                devoldetail = [],
                userId = $('#sidebarLoaded').attr('userIdPanel'),
				carritonBox = $(document).find('#boxidpicking').val(),		
                carritonBox = $('#boxidpicking').val()
 if (carritonBox == '') {
                $.growl.error({
                    message: "Debe ingresar el PICKING ID"
                });
                return;
            }
                 
                    var devolRow = {};
                    devolRow.usuario = userId;
                    devolRow.carrito = carritonBox;

                    devoldetail.push(devolRow);
			
            if (rowsCount == 0) {
                  
                $(this).velocity("transition.slideUpOut", {
                    duration: 200,
					
                    complete: function() {
						
                        $('#saveNewPickingFake').velocity("transition.slideUpIn", {
                            duration: 200,
                            complete: function() {
								
                                var formData = new FormData(),
                                    userId = $('#sidebarLoaded').attr('userIdPanel');
									
                                formData.append('userDevol', userId);
								formData.append('devol', JSON.stringify(devoldetail));
								formData.append('meth', 'guardarpackingemp');
                                apiCall(formData, function(data) {
							//	alert("Aqui toy6");
						//alert(bod);
						     //  alert(JSON.stringify(data));
                                    console.log(data);
                                    if (data.status == "saved") {
                                        $('.anim3,.porDevolInfoBox,#saveNewPickingFake').velocity("transition.slideUpOut", {
                                            duration: 200,
                                            complete: function() {
                                                swal({
                                                    title: "Felicitaciones",
                                                    text: "Su Picking ha sido registrado en el sistema exitosamente.",
                                                    type: "success",
                                                    showCancelButton: false,
                                                    confirmButtonText: 'Entendido',
                                                    cancelButtonText: 'salir'
                                                }, function(isConfirm) {
                                                    $(document).find('#sidebarLoaded > li:nth-child(1) > a').click();
                                                });
                                                $('.porDevolInfoBox').remove();
                                                $('.anim11,#saveNewDevol').velocity("transition.slideUpIn", {
                                                    duration: 200
                                                })
                                            }
                                        });
                                    } else {
                                        $('#saveNewPickingFake').velocity("transition.slideUpOut", {
                                            duration: 200,
                                            complete: function() {
                                                swal({
                                                    title: "Lo Sentimos",
                                                    text: "Hubo un problema para guardar sus datos, intente de nuevo",
                                                    type: "error",
                                                    showCancelButton: false,
                                                    confirmButtonText: 'Entendido',
                                                    cancelButtonText: 'salir'
                                                });
                                                $('#saveNewDevol').velocity("transition.slideUpIn", {
                                                    duration: 200
                                                })
                                            }
                                        });
                                    }
                                });

                            }
                        });
                    }
                });
            } else {
                if (carritonBox == '0000') {

                    var devolRow = {};
                    devolRow.codbarras = '';
                    devolRow.numlin = '';
                    devolRow.supedido = $(document).find('.ordenTitleNumbr').html();
                    devolRow.unidades = '';
                    devolRow.usuario = userId;
                    devolRow.carrito = carritonBox;

                    devoldetail.push(devolRow);

                    $(this).velocity("transition.slideUpOut", {
                        duration: 200,
                        complete: function() {
                            $('#saveNewPickingFake').velocity("transition.slideUpIn", {
                                duration: 200,
                                complete: function() {
                                    var formData = new FormData(),
									    idpicking = $(document).find('#boxidpicking').val(),
                                        userId = $('#sidebarLoaded').attr('userIdPanel');
                                    formData.append('userDevol', userId);
									alert("Aqui toy fake");
                                    formData.append('devol', JSON.stringify(devoldetail));
                                    formData.append('meth', 'guardarpackingemp');
                                    apiCall(formData, function(data) {
										
						//alert(bod);
						alert(JSON.stringify(data));
                                        console.log(data);
                                        if (data.status == "saved") {
                                            $('.anim3,.porDevolInfoBox,#saveNewPickingFake').velocity("transition.slideUpOut", {
                                                duration: 200,
                                                complete: function() {
                                                    swal({
                                                        title: "Información",
                                                        text: "Pedido Negado.",
                                                        type: "warning",
                                                        showCancelButton: false,
                                                        confirmButtonText: 'Entendido',
                                                        cancelButtonText: 'salir'
                                                    }, function(isConfirm) {
                                                        $(document).find('#sidebarLoaded > li:nth-child(1) > a').click();
                                                    });
                                                    $('.porDevolInfoBox').remove();
                                                    $('.anim11,#saveNewDevol').velocity("transition.slideUpIn", {
                                                        duration: 200
                                                    })
                                                }
                                            });
                                        } else {
                                            $('#saveNewPickingFake').velocity("transition.slideUpOut", {
                                                duration: 200,
                                                complete: function() {
                                                    swal({
                                                        title: "Lo Sentimos",
                                                        text: "Hubo un problema para guardar sus datos, intente de nuevo",
                                                        type: "error",
                                                        showCancelButton: false,
                                                        confirmButtonText: 'Entendido',
                                                        cancelButtonText: 'salir'
                                                    });
                                                    $('#saveNewDevol').velocity("transition.slideUpIn", {
                                                        duration: 200
                                                    })
                                                }
                                            });
                                        }
                                    });

                                }
                            });
                        }
                    });
                } else {
                    $.growl.error({
                        message: "No hay productos leidos para recibir"
                    });
                }
            }

        });

        enterSubm();
    }, 1000);


    /** OBTENEMOS LOS DATOS DE LA ORDEN DE DEVOLUCION */
    function getThisPick() {
        $('#updateCharts i').addClass('fa-spin');
        var userId = $('#sidebarLoaded').attr('userIdPanel'),
		   idpicking = $(document).find('#boxidpicking').val(),		
		formData = new FormData();
           
		formData.append('userId', userId);
		formData.append('idpicking', idpicking);
		formData.append('meth', 'consultarpackingemb');
        apiCall(formData, function(data) {
            $('#updateCharts i').removeClass('fa-spin');
            var resp = JSON.parse(data.resp.GetPackingGuiaResult);
            console.log(resp.pickingDetail);
            var dets = resp.pickingDetail;
			//alert (dets); 
            console.log(resp.pickingDetail);
            console.log(dets.length);
            if (resp.pickingDetail.length > 0) {
                $('.anim3').velocity("transition.slideUpBigOut", {
                    duration: 200,
                    complete: function() {
                        var code = '';
                        $('.listadoPicking tbody').html(code);
                        for (i = 0; i < resp.pickingDetail.length; i++) {
                            $('.listadoPicking tbody').append(' <tr class="thisPickingProd">' + ' </tr>');
                            $('.ordenTitleNumbr').html(idpicking);
                        }
                        $('.anim11').velocity("transition.slideUpBigOut", {
                            stagger: 250,
                            complete: function() {
                                $('.anim3').velocity("transition.slideUpBigIn", {
                                    stagger: 250,
                                    complete: function() {
                                        $('#cajamasterBox').focus();
                                    }
                                });
                            }
                        });
                    }
                });
            } else {
				
                $.growl.error({
                    message: "No existen documentos por procesar"
                });
                return;
            }
        });
    }
/// mostramos la foto del prodcuto
        
        $(document).off('click', ".thisPickingProd");
        $(document).on('click', '.thisPickingProd', function(e) {
            $('.refreshPageIcon').addClass('fa-spin');
            var formData = new FormData(),
                codbarras = $(this).find('.codbarras').html(),
                referencia = $(this).find('.referencia').html(),
				color = $(this).find('.color').html(),
				descripcion = $(this).find('.descripcion').html(),
                
				img = 'https://agora.burtoncloud.com/tta/assets/syncimgs/prods/'+referencia+'-'+color+'-1.jpg'
			     
			formData.append('codbarras', codbarras);
            formData.append('referencia', referencia);
            formData.append('meth', 'consultarimg');
		//	alert(img);
            apiCall(formData, function(data) {
                console.log(data);

                if (data.rows.length > 0) {
                    $('.boxProductInfoView').slideUp(800, function() {
                        var oldCod = $('.viewThisProdNumbr').html();
                        if (oldCod == codbarras) {
                            $('.refreshPageIcon').removeClass('fa-spin');
                            return;
                        }
                        $('.viewThisProdNumbr').html(descripcion);
                        $('.listadoUbics tbody').html('');
                        $(data.rows).each(function(i, n) {
                            $('.listadoUbics tbody').append(' <tr class="thisUBicProd">' +
                                '<td class="b3"><figure><img src='+img+' width="230" height="200" align="middle"></figure>  </td>'+
                                ' </tr>');
                        });
                        $('.boxProductInfoView').slideDown(800, function() {
                            $('.refreshPageIcon').removeClass('fa-spin');
                        });
                    });
                } else {
                    $.growl.error({
                        message: "Este producto no devolvio ubicaciones registradas"
                    });
                    return;
                }
            });
        });
        enterSubm();
    /** AL LEER CON PISTOLA UN CODIGO DE BARRA */
    function getThisProd() {
        var codbar = $(document).find('#productoBox').val(),
            codubic = $(document).find('#locationBox').val(),
            isInvoked = 0,
            isListed = 0,
            isPresent = 0;
        $(document).find('.listadoPicking tbody tr').not('.fullyReadPicki').each(function(i, n) {
            var codbarras = $(n).find('.codbarras').html(),
			    codbarras3 = $(n).find('.codbarras3').html(),
				codbarras2 = $(n).find('.codbarras2').html(),
                numlin = $(n).find('.numlin').html(),
                supedido = $(n).find('.supedido').html(),
                unidadesLeidas = $(n).find('.unidadesLeidas').html(),
                unidades = $(n).find('.unidades').html();

           // if (codbarras == codbar && isPresent == 0) {
				if ((codbarras == codbar && isPresent == 0) || (codbarras3 == codbar && isPresent == 0) || (codbarras2 == codbar && isPresent == 0)) {
                isPresent = 1;
                $(document).find('.porDevolInfoBox').each(function(ii, nn) {
                    var codigoBarrasDevuelto = $(nn).find('.codigoBarrasDevuelto').html();
                    var numlinDevuelto = $(nn).find('td.numlin').html();
                    if (codbarras == codigoBarrasDevuelto && numlinDevuelto == numlin) {
                        isInvoked = 1;
                        var unidXDevolver = $(nn).find('.unidXDevolver').html();
                        if (+unidXDevolver < +unidades) {
                            unidXDevolver++;
                            var newPropor = (+unidXDevolver * 100) / +unidades
                            $(nn).find('.unidXDevolver').html(unidXDevolver);
                            $(n).find('.unidadesLeidas').html(unidXDevolver);
                            $(nn).find('.unidXDevolverPropor').attr('style', 'width: ' + newPropor.toFixed(0) + '%');
                            if (+unidXDevolver == +unidades) {
                                $(nn).find('.card').addClass('bg-info text-white');
                                $(n).addClass('fullyReadPicki');
                                $(n).slideUp('slow');
                            }
                            var totalEscan = $('.unidadesEscaenadasTotal span').html();
                            totalEscan++;
                            $('.unidadesEscaenadasTotal span').html(totalEscan);
                        } else {
                            $.growl.error({
                                message: "No puedes exceder el límite de la Orden"
                            });
                        }
                    }
                });
                if (isInvoked == 0) {
                    var newPropor = 100 / +unidades;
                    var fullCard = '';
                    if (unidades == 1) {
                        fullCard = 'bg-info text-white';
                        $(n).addClass('fullyReadPicki');
                        $(n).slideUp('slow');
                    }
                    var invoke = `
                        <div class="col-sm-12 col-lg-12 col-xl-6 porDevolInfoBox">
                            <div class="card anim cod_` + codbarras + ` ` + fullCard + `">
                                <div class="card-header">
                                    <div class="card-title"><i class="fa fa-barcode "></i> <strong class=" codigoBarrasDevuelto">` + codbarras + `</strong></div>
                                    <div class="card-options ">
                                        <span class="btn btn-info mr30 float-left restarUnidad"><i class="fa fa-minus"></i> </span>
                                        <span class="btn btn-join text-white float-left pull-left mr10 eliminarUnidades"><i class="fa fa-times  "></i> </span>
                                    </div>
                                </div>
                                <div class="table-responsive">
                                    <table class="table table-bordered border-top card-table table-vcenter text-nowrap table-primary thisReadDevol">
                                        <thead class="bg-info text-white text-center">
                                            <tr>
                                                <th class="text-white">Producto</th>
                                                <th class="text-white">NumLin</th>
                                                <th class="text-white">supedido</th>
                                            </tr>
                                        </thead>
                                        <tbody>
                                            <tr>
                                                <td class="text-dark codbarras text-center">` + codbarras + `</td>
                                                <td class="text-dark numlin text-center">` + numlin + `</td>
                                                <td class="text-dark supedido text-center offscreen">` + supedido + `</td>
                                            </tr>
                                        </tbody>
                                    </table>
                                    <div class="offscreen "></div>
                                </div>
                                <div class="card-body">
                                    <div class="row">
                                        <div class="col text-center">
                                            <label class="tx-12">Unidades Totales</label>
                                            <h2 class="font-weight-normal unidTotales">` + unidades + `</h2>
                                        </div>
                                        <div class="col border-left text-center">
                                            <label class="tx-12">Por Recibir</label>
                                            <h2 class="font-weight-normal unidXDevolver">1</h2>
                                        </div>
                                    </div>
                                    <div class="progress mt-4">
                                        <div class="progress-bar progress-bar-striped progress-bar-animated bg-join unidXDevolverPropor" style="width: ` + newPropor + `%"></div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        `;


                    var totalEscan = $('.unidadesEscaenadasTotal span').html();
                    totalEscan++;
                    $('.unidadesEscaenadasTotal span').html(totalEscan);
                    $(n).find('.unidadesLeidas').html('1');
                    $(invoke).insertAfter('.readerPistolBox');
                    $('.cod_' + codbarras).velocity("transition.slideUpBigIn", {
                        stagger: 250
                    });
                }
            }
        });
        if (isPresent == 0) {
            $.growl.error({
                message: "Este producto no se encuentra en la Orden "
            });
        }
        $(document).find('#productoBox').val('');
        $(document).find('#productoBox').focus();

    }

    /** FUNCIONALIDAD DE LOS INPUT */
    function enterSubm() {
        $('.productoBoxInp').keypress(function(e) {
            if (e.which == 13) {
                var devolVal = $(document).find('#productoBox').val(),
                    codubic = $(document).find('#locationBox').val();
                if (devolVal == '' || codubic == '') {
                    $.growl.error({
                        message: "Debe llenar todos los campos"
                    });
                    return;
                }
                getThisProd();
            }
        });

        /** AL PRESIONAR EL BOTON EL CODIGO DE BARRA Y LO CARGAMOS AL LISTADO */
        $(document).off('click', ".readerPistolBox button.envi");
        $(document).on('click', '.readerPistolBox button.envi', function(e) {

            var devolVal = $(document).find('#productoBox').val(),
                codubic = $(document).find('#locationBox').val();
            if (devolVal == '' || codubic == '') {
                $.growl.error({
                    message: "Debe llenar todos los campos"
                });
                return;
            }
            getThisProd();
        });

    }
</script>