leonardo-m
3/8/2019 - 8:47 PM

Datatable example



function listarTipoPago() {

    loading();

    let tipoPago = {
        "Tipo_Pago_Id": 0,
        "Tipo_Pago": "",
        "Emp_Id": "",
        "Nombre": "",
        "Comentario": "",
        "Tipo_Pago_Fijo": false,
        "Periocidad": "",
        "Cuenta_Contable_Id": 0,
        "Cuenta_Contable_Nombre": "",
        "EmpleadoList": []

    }

    $.ajax({
        url: routesTipoPago.Tipo_Pago_Listar,
        type: 'POST',
        data: { Tipo_Pago: JSON.stringify(tipoPago) },
        dataType: 'JSON',
        //contentType: false,
        //processData: false,
        success: function ($data) {
            var datatableTipoPago = $('#TipoPagosInicio').DataTable();
            datatableTipoPago.clear();
            datatableTipoPago.rows.add($data);
            datatableTipoPago.draw();
            


            loadingClose();
        },
        error: function (res) {
            loadingClose();
            toastr.error("Error al obtener los tipo de pago");
            console.log(res.responseText);

        },
    });
   


}




    $('#TipoPagosInicio').DataTable({
        'lengthChange': false,
        dom: 'Bfrtip',
        columns: [
            { "data": 'Tipo_Pago_Nombre' },
            {
                "data": 'Periocidad',
                'render': function (data, type, row) {
                    return row.Periocidad == "QU" ? "Quincenal" : row.Periocidad == "SE" ? "Semanal" : row.Periocidad == "ME" ? "Mensual": ""
                }
            },
            { "data": 'Usuario_Crea_Login' },
            {
                "data": 'null',
                'render': function (data, type, row) {
                      
                    let Fecha_Crea = moment(row.Fecha_Crea).format('L');
                    return Fecha_Crea
                }
            },
            { "data": 'Usuario_Modifica_Login' },
            {
                "data": 'Fecha_Modifica',
                'render': function(data, type, row) {
                    let Fecha_Modifica = "";
                    if (moment(row.Fecha_Modifica).format('YYYY') != "1900") {
                         Fecha_Modifica = moment(row.Fecha_Modifica).format('L');
                    }
                    
                    return Fecha_Modifica
                }
            },
            {
                "data": 'null',
                'render': function (data, type, row) {
                    return `<a href="../TipoPagos/Index?tipoPago=${row.Tipo_Pago_Id}"><button class="btn btn-primary btn-xs"  data-Id="${row.Tipo_Pago_Id}" >Editar</button></a>
                            <button class="btn btn-primary btn-xs" onclick="generarPago(this);" data-Id="${row.Tipo_Pago_Id}" >Generar</button>
                            <button type="button" class="btn btn-danger btn-xs" onclick="mostrarAlerta(this);" data-nom="${row.Tipo_Pago_Nombre}" data-Id="${row.Tipo_Pago_Id}" >Anular</button>`
                }
            }


        ],
        buttons: [
            {
                text: 'Nuevo',
                action: function (e, dt, node, config) {
                    window.location.href = '../TipoPagos/Index'; 
                },
                className: 'btn btn-success btn-md '
                
            },
            /*{
                text: 'Generar Pagos',
                action: function (e, dt, node, config) {
                    $('#modal-generaPagos').modal('show');
                },
                className: 'btn btn-primary btn-md'

            }*/
        ],
        language: {
            "decimal": "",
            "emptyTable": "No hay información",
            "info": "Mostrando _START_ a _END_ de _TOTAL_ Entradas",
            "infoEmpty": "Mostrando 0 to 0 of 0 Entradas",
            "infoFiltered": "(Filtrado de _MAX_ total entradas)",
            "infoPostFix": "",
            "thousands": ",",
            "lengthMenu": "Mostrar _MENU_ Entradas",
            "loadingRecords": "Cargando...",
            "processing": "Procesando...",
            "search": "Buscar:",
            "zeroRecords": "Sin resultados encontrados",
            "paginate": {
                "first": "Primero",
                "last": "Ultimo",
                "next": "Siguiente",
                "previous": "Anterior"
            }
        }
    });