$("#formCatalogo").EnableValidationToolTip(); var DataCatalogo; var id_column = 1; var Item = {}; jQuery(document).ready(function () { GetControlsSettings("Cathay_CriterioSeleccion", "Cathay_CriterioSeleccion", "formCatalogo",true); }); this.getDataModel = function () { $('#btnGuardar').hide(); $('#btnInsertar').show(); $('#btnLimpiar').click(function () { limpiar(); $('#btnGuardar').hide(); $('#btnInsertar').show(); }); $('#btnGuardar').click(function () { ActualizarItem(); }); $('#btnInsertar').click(function () { InsertarItem(); }); obtenerItems(); } this.obtenerItems = function () { var uri = 'api/CriterioSeleccionAPI/ObtenerCriterioSeleccion/'; $.getJSON(server + uri).done(function (data) { $('#TableItems').TableInit(0, false, true, true, false, null, null); var TableItems = $('#TableItems').DataTable(); $.each(data, function (key, item) { var option = $("#ucItemsCatalogo").html(); option = replaceAll("[$CodItem]", item.IdCriterioSeleccion, option); var stateIcon = $("#ucItemsIcon").html(); var esPonderado = $("#ucItemsIcon").html(); //EsPonderado if (item.EsPonderado != true) { esPonderado = replaceAll("[$icon]", "fa-check-circle", esPonderado); esPonderado = replaceAll("[$state_color]", "muted", esPonderado); } else { esPonderado = replaceAll("[$icon]", "fa-check-circle", esPonderado); esPonderado = replaceAll("[$state_color]", "success", esPonderado); } //Estado//Opciones if (item.Estado != true) { stateIcon = replaceAll("[$icon]", "fa-check-circle", stateIcon); stateIcon = replaceAll("[$state_color]", "muted", stateIcon); option = replaceAll("[$opcion]", "Habilitar", option); option = replaceAll("[$icon]", "fa-check", option); option = replaceAll("[$value]", "1", option); } else { stateIcon = replaceAll("[$icon]", "fa-check-circle", stateIcon); stateIcon = replaceAll("[$state_color]", "success", stateIcon); option = replaceAll("[$opcion]", "Deshabilitar", option); option = replaceAll("[$icon]", "fa-times", option); option = replaceAll("[$value]", "0", option); } TableItems.row.add([stateIcon, item.IdCriterioSeleccion, item.Descripcion, item.TipoControlCriterio.DescripcionTipoCriterio, esPonderado, option, item.IdTipoControlCriterio, item.EsPonderado]).draw(); }); TableItems.column(6).visible(false); TableItems.column(7).visible(false); }).fail(function (jqxhr, textStatus, error) { toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo mas tarde"); console.log("Request Failed: " + textStatus + ', ' + error); ENDREQUEST(); }).then(function (value) { ENDREQUEST(); }); } this.EditarItem = function (id) { TableItems = $('#TableItems').DataTable(); limpiar(); var indexes = getRowIndex(TableItems, id_column, id); if (indexes != null) { $('#hiddenId').val(id) $('#txtDescripcionCriterio').val(TableItems.cell(indexes, 2).data()); $('#txtTipoControlCriterio').val(TableItems.cell(indexes, 3).data()); $('#hiddenTipoControlCriterio').val(TableItems.cell(indexes, 6).data()); $("#btnsEsPonderado").ButtonSwitch('set', TableItems.cell(indexes, 7).data() == null ? null : (TableItems.cell(indexes, 7).data() == true ? 0 : 1)); $("#formCatalogo").validateElement("#txtDescripcionCriterio"); $("#formCatalogo").validateElement("#txtTipoControlCriterio"); $('#lbTituloAccion').empty(); $('#lbTituloAccion').append('Editar Valor de Campo ID: ' + id); $('#btnInsertar').hide(); $('#btnGuardar').show(); } } this.toggleEnabledItem = function (id, value) { var msg = 'Está seguro que desea habilitar el Criterio Selección?'; if (value == 0) { msg = 'Está seguro que desea deshabilitar el Criterio Selección?'; } if (id == null || value == null) { toastr.warning("No se pudo obtener el ID del Criterio Selección seleccionado."); return; } if (!confirm(msg)) { return; } TableItems = $('#TableItems').DataTable(); Item = { IdCriterioSeleccion: id, Estado: value, UsuarioModificado: $("#hiddenUserID").val() } var uri = 'api/CriterioSeleccionAPI/toggleStateItem/'; var DTO = JSON.stringify(Item); $.ajax({ type: 'POST', url: server + uri, cache: false, data: DTO, contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (data) { if (data == "EXITOSO") { toastr.info('Información actualizada con exito', 'Completado'); limpiar(); $('#btnGuardar').hide(); $('#btnInsertar').show(); TableItems.clear().draw(); obtenerItems(); ENDREQUEST(); } else { toastr.error("Ha ocurrido un error."); ENDREQUEST(); } } }).fail(function (jqxhr, textStatus, error) { toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo."); ENDREQUEST(); }).then(function (value) { ENDREQUEST(); }); } this.ActualizarItem = function () { if (!$("#formCatalogo").valid()) { toastr.warning("Ingresar todos los campos que son requeridos."); return false; } if (!confirm("Se guardarán los cambios.\n ¿Desea continuar?")) { return; } TableItems = $('#TableItems').DataTable(); Item = { IdCriterioSeleccion: $('#hiddenId').val(), IdTipoControlCriterio: $('#hiddenTipoControlCriterio').val(), Descripcion: $('#txtDescripcionCriterio').val(), EsPonderado: $("#btnsEsPonderado").val() == "0" ? true : (IsNullOrEmpty($("#btnsEsPonderado").val()) ? null : false), UsuarioModificado: $("#hiddenUserID").val() } var uri = 'api/CriterioSeleccionAPI/ModificarItem/'; var DTO = JSON.stringify(Item); $.ajax({ type: 'POST', url: server + uri, cache: false, data: DTO, contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (data) { if (data == "EXITOSO") { toastr.info('Información guardada con exito', 'Completado'); limpiar(); $('#btnGuardar').hide(); $('#btnInsertar').show(); $('#lbTituloAccion').empty(); $('#lbTituloAccion').append('Ingresar Nuevo Criterio de Selección'); TableItems.clear().draw(); obtenerItems(); ENDREQUEST(); } else { toastr.error("Ha ocurrido un error."); ENDREQUEST(); } } }).fail(function (jqxhr, textStatus, error) { toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo."); ENDREQUEST(); }).then(function (value) { ENDREQUEST(); }); } this.InsertarItem = function () { if (!$("#formCatalogo").valid()) { toastr.warning("Ingresar todos los campos que son requeridos."); return false; } if (!confirm("Va a Ingresar un Nuevo Criterio de Selección.\n ¿Desea continuar?")) { return; } TableItems = $('#TableItems').DataTable(); CriterioSeleccion = { IdTipoControlCriterio:$("#hiddenTipoControlCriterio").val(), Descripcion: $("#txtDescripcionCriterio").val(), EsPonderado: $("#btnsEsPonderado").val() == "0" ? true : (IsNullOrEmpty($("#btnsEsPonderado").val()) ? null : false), UsuarioCreador: $("#hiddenUserID").val() } var uri = 'api/CriterioSeleccionAPI/InsertarItem/'; var DTO = JSON.stringify(CriterioSeleccion); $.ajax({ type: 'POST', url: server + uri, cache: false, data: DTO, contentType: 'application/json; charset=utf-8', dataType: 'json', success: function (data) { if (data == "EXITOSO") { toastr.info('Información guardada con exito', 'Completado'); limpiar(); $('#btnGuardar').hide(); $('#btnInsertar').show(); TableItems.clear().draw(); obtenerItems(); ENDREQUEST(); } else { toastr.error("Ha ocurrido un error."); ENDREQUEST(); } } }).fail(function (jqxhr, textStatus, error) { toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo."); ENDREQUEST(); }).then(function (value) { ENDREQUEST(); }); } this.limpiar = function () { $('#lbTituloAccion').empty(); $('#lbTituloAccion').append('Ingresar Nuevo Criterio Selección'); $("#txtDescripcionCriterio").val(''); $("#btnsEsPonderado").ButtonSwitch('set', null); $("#formCatalogo").validateElement("#txtDescripcionCriterio"); $("#txtTipoControlCriterio").val(''); $("#formCatalogo").validateElement("#txtTipoControlCriterio"); }