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);
}
}
});
}
}