var urlServicio = "https://www.arba.gov.ar/Aplicaciones/Organismos/invocarServiciosInternos.asp"; var urlImagen = "https://www.arba.gov.ar//Recursos/Imagenes/ImagenesCSS/ajax-carga.gif"; $.support.cors = true; function org_strToDate(fechaString){ var result; if (typeof fechaString != 'undefined'){ var p_fecha = fechaString.split("/"); if (p_fecha.length == 3){ result = new Date(p_fecha[2], p_fecha[1]-1, p_fecha[0], 0, 0, 0, 0); } } return result; } function org_hoy(){ var hoy = new Date(); var dd = hoy.getDate(); var mm = hoy.getMonth()+1; var yyyy = hoy.getFullYear(); if(dd<10) {dd='0'+dd;} if(mm<10) {mm='0'+mm;} hoy = dd+'/'+mm+'/'+yyyy; return hoy; } function Error(tipo, codigo, mensaje, nroTransaccion, traceException){ this.tipo = tipo; this.codigo = codigo; this.mensaje = mensaje; this.nroTransaccion = nroTransaccion; this.traceException = traceException; } function Vigencia(desde, hasta){ this.desde = org_strToDate(desde) this.hasta = org_strToDate(hasta); this.isVigente = function(p_fecha){ var fecha = new Date(); if (typeof p_fecha != 'undefined'){ fecha = p_fecha; } return (this.desde < fecha) && ((typeof this.hasta == 'undefined') || (fecha < this.hasta)); } } function Escalafon(id, descripcion){ this.id = id; this.descripcion = descripcion; } function Origen(id, descripcion){ this.id = id; this.descripcion = descripcion; } function Organismo(id, descripcion, codOficina, codDistrito, codPosicional, codSiape, descripcionCorta, escalafon, vigencia, origen, fecha, idPadre){ this.id = id; this.descripcion = descripcion; this.codOficina = codOficina; this.codDistrito = codDistrito; this.codPosicional = codPosicional; this.codSiape = codSiape; this.descripcionCorta = descripcionCorta; this.escalafon = escalafon; this.vigencia = vigencia; this.origen = origen; this.fecha = fecha; this.idPadre = idPadre; this.getHijos = function(callback, callbackError){ var xml = ""; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hijosResult = new Array(); var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(new Array()); } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgHijo; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgHijo = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); hijosResult[i] = orgHijo; }); callback(hijosResult); } }, dataType: 'xml' }); } this.getPadre = function(callback, callbackError){ var xml = ""; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(null); } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgResult; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgResult = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); callback(orgResult); }); } }, dataType: 'xml' }); } this.getAncestros = function(callback, callbackError){ var xml = ""; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hijosResult = new Array(); var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(new Array()); }else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgHijo; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgHijo = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); hijosResult[i] = orgHijo; }); callback(hijosResult); } }, dataType: 'xml' }); } this.getDescendientes = function(callback, callbackError){ var xml = ""; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hijosResult = new Array(); var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(new Array()); }else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgHijo; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgHijo = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); hijosResult[i] = orgHijo; }); callback(hijosResult); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.isVigente = function(p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } return this.vigencia.isVigente(fecha); } } function OrganismosFacade(){ this.getOrganismoXId = function(id, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(null); } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgResult; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgResult = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); callback(orgResult); }); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrganismosQueContengan = function(nombreParcial, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var orgsResult = new Array(); if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var org; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) org = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); orgsResult[i] = org; }); callback(orgsResult); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrganismosConEscalafon = function(idEscalafon, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var orgsResult = new Array(); if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var org; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) org = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); orgsResult[i] = org; }); callback(orgsResult); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrganismosConOrigen = function(idOrigen, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var orgsResult = new Array(); if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var org; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) org = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); orgsResult[i] = org; }); callback(orgsResult); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getEscalafonXId = function(id, callback, callbackError){ var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var escalafon = null; var hayError = $(p_xml).find("ERROR").length > 0; var hayEscalafon = $(p_xml).find("OBJETO[nombre='escalafon']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayEscalafon){ callback(null); } else { $(p_xml).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); callback(escalafon); }); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrigenXId = function(id, callback, callbackError){ var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var hayOrigen = $(p_xml).find("OBJETO[nombre='origen']").length > 0; var origen; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrigen){ callback(null); } else { $(p_xml).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }); callback(origen); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrganismoXCodOficina = function(cod, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(null); } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgResult; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgResult = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); callback(orgResult); }); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } this.getOrganismoXCodSIAPE = function(cod, callback, callbackError, p_fecha){ var fecha = org_hoy(); if (typeof p_fecha !== 'undefined'){ fecha = p_fecha; } var xml = ""; var orgResult; $.ajax({url: urlServicio, data: {data:xml}, method: "POST", success: function(p_xml) { var hayError = $(p_xml).find("ERROR").length > 0; var hayOrgs = $(p_xml).find("OBJETO[nombre='organismo']").length > 0; if(hayError){ if (typeof callbackError != 'undefined'){ var error = new Error($(p_xml).find("CAMPO[nombre='tipo']").attr('valor'), $(p_xml).find("CAMPO[nombre='codigo']").attr('valor'), $(p_xml).find("CAMPO[nombre='mensaje']").attr('valor'), $(p_xml).find("CAMPO[nombre='nroTransaccion']").attr('valor'), $(p_xml).find("CAMPO[nombre='traceExcepcion']").attr('valor')); callbackError(error); } else{ callback(null); } } else if (!hayOrgs){ callback(null); } else { $(p_xml).find("OBJETO[nombre='organismo']").each(function(i){ var orgResult; var escalafon; var vigencia; var origen; $(this).find("OBJETO[nombre='escalafon']").each(function(i){ escalafon = new Escalafon($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='origen']").each(function(i){ origen = new Origen($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor')); }) $(this).find("OBJETO[nombre='vigencia']").each(function(i){ vigencia = new Vigencia($(this).find("CAMPO[nombre='fechaDesde']").attr('valor'), $(this).find("CAMPO[nombre='fechaHasta']").attr('valor')); }) orgResult = new Organismo($(this).find("CAMPO[nombre='id']").attr('valor'), $(this).find("CAMPO[nombre='descripcion']").attr('valor'), $(this).find("CAMPO[nombre='codigoOficina']").attr('valor'), $(this).find("CAMPO[nombre='codigoDistrito']").attr('valor'), $(this).find("CAMPO[nombre='codigoPosicional']").attr('valor'), $(this).find("CAMPO[nombre='codigoSIAPE']").attr('valor'), $(this).find("CAMPO[nombre='descripcionCorta']").attr('valor'), escalafon, vigencia, origen, fecha, $(this).find("CAMPO[nombre='idPadre']").attr('valor')); callback(orgResult); }); } }, dataType: 'xml', error: function(jqXHR, textStatus, errorThrown ){ if (typeof callbackError != 'undefined'){ var error = new Error('APLICACION', 0, textStatus, 0, errorThrown); callbackError(error); } else{ callback(null); } } }); } }