Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 21

<%--

Document : ingresoRequerimientosJS
Created on : 18-oct-2016, 10:34:30
Author : shidalgo
--%>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sb" uri="/struts-bootstrap-tags" %>

<!--script async defer src="https://maps.googleapis.com/maps/api/js?


key=AIzaSyAF3wxK3XyUoXbGSSvUqvA8p34qKSXhIOQ&callback=myMap"></script-->

<script>

require([
"esri/config",
"esri/Map",
"esri/views/MapView",
"esri/Graphic",
"esri/rest/locator",
"esri/layers/FeatureLayer"
], (esriConfig, Map, MapView, Graphic, locator, FeatureLayer) => {

esriConfig.apiKey =
"AAPK78a31f70adc04e49b9d92b53546a88baQM220D8a6JK9Z9yIccpAw7V-wXRP2sL1-
PqwuiUvIyohPWz3-TNWnRfpKkgY_eaj";

const layer = new FeatureLayer({


// autocasts as new PortalItem()
portalItem: {
id: "0414e9dcc37646a29f0f9ae27ceb3585"
}, //f87e2decacdd46b1922e478bd9d22135 rutas
outFields: ["*"]
});

const layer2 = new FeatureLayer({


// autocasts as new PortalItem()
portalItem: {
id: "f87e2decacdd46b1922e478bd9d22135"
}, //
outFields: ["*"]
});

const map = new Map({


basemap: "streets-vector", //Basemap layer service
layers: [layer]
});

const map2 = new Map({


basemap: "topo-vector",
layers: [layer2]
});

const view = new MapView({


container: "viewDiv",
map: map,
constraints: {
snapToZoom: false
}
});

const view2 = new MapView({


container: "viewDiv2",
map: map2,
constraints: {
snapToZoom: false
}
});

//*** Muestra lat, lon al momento de hacer click ***//

view.popup.actions = [];

var comSelect = $( "#comuna option:selected" ).text();


var comuna_text = comSelect + ", Chile";
//var x = "Maipu , Santiago";

view.when(() => {
const geocodingServiceUrl =
"https://geocode-api.arcgis.com/arcgis/rest/services/World/GeocodeServer";

const params = {
address: {
"address": comuna_text
}
}

locator.addressToLocations(geocodingServiceUrl, params).then((results)
=> {
showResult(results);
});

function showResult(results) {
if (results.length) {
const result = results[0];
console.log(result.address)
view.graphics.add(new Graphic({
symbol: {
type: "simple-marker",
color: "#000000",
size: "8px",
outline: {
color: "#ffffff",
width: "1px"
}
},
geometry: result.location,
attributes: {
title: "Address",
address: result.address,
score: result.score
},
popupTemplate: {
title: "{title}",
content: result.address + "<br><br>" +
result.location.longitude.toFixed(5) + "," + result.location.latitude.toFixed(5)
}
}
));
if (results.length) {
const g = view.graphics.getItemAt(0);
view.popup.open({
features: [g],
location: g.geometry

});

}
view.goTo({
target: result.location,
zoom: 11.5
});
}
}

});

view.ui.add("optionsDiv", "top-right");
view2.ui.add("optionsDiv2", "top-right");

// additional query fields initially set to null for basic query


let distance = null;
let units = null;
//additional query fields initially set to null for basic querY - Mapa Rutas MOP
let distance2 = null;
let units2 = null;

//create graphic for mouse point click


const pointGraphic = new Graphic({
symbol: {
type: "simple-marker", // autocasts as new SimpleMarkerSymbol()
color: [0, 0, 139],
outline: {
color: [255, 255, 255],
width: 1.5
}
}
});

//create graphic for mouse point click - Mapa Rutas Mop


const pointGraphic2 = new Graphic({
symbol: {
type: "simple-marker", // autocasts as new SimpleMarkerSymbol()
color: [0, 0, 139],
outline: {
color: [255, 255, 255],
width: 1.5
}
}
});

// Create graphic for distance buffer


const bufferGraphic = new Graphic({
symbol: {
type: "simple-fill", // autocasts as new SimpleFillSymbol()
color: [173, 216, 230, 0.2],
outline: {
// autocasts as new SimpleLineSymbol()
color: [255, 255, 255],
width: 1
}
}
});

// Create graphic for distance buffer - Mapa Ruta MOP


const bufferGraphic2 = new Graphic({
symbol: {
type: "simple-fill", // autocasts as new SimpleFillSymbol()
color: [173, 216, 230, 0.2],
outline: {
// autocasts as new SimpleLineSymbol()
color: [255, 255, 255],
width: 1
}
}
});

// when query type changes, set appropriate values


const queryOpts = document.getElementById("query-type");
const queryOpts2 = document.getElementById("query-type2");

queryOpts.addEventListener("change", () => {
switch (queryOpts.value) {
// values set for distance query
case "distance":
distance = 0.5;
units = "miles";
break;
default:
// Default set to basic query
distance = null;
units = null;
}
});

queryOpts2.addEventListener("change", () => {
switch (queryOpts2.value) {
// values set for distance query
case "distance2":
distance2 = 0.5;
units2 = "miles";
break;
default:
// Default set to basic query
distance2 = null;
units2 = null;
}
});

layer.load()
.then(() => {
// Set the view extent to the data extent
view.extent = layer.fullExtent;
layer.popupTemplate = layer.createPopupTemplate();
});

layer2.load()
.then(() => {
// Set the view extent to the data extent
view2.extent = layer2.fullExtent;
layer2.popupTemplate = layer2.createPopupTemplate();
});

view.on("click", (event) => {


view.graphics.remove(pointGraphic);
if (view.graphics.includes(bufferGraphic)) {
view.graphics.remove(bufferGraphic);
}
queryFeatures(event);
});

function queryFeatures(screenPoint) {
const point = view.toMap(screenPoint);
layer.queryFeatures({
geometry: point,
// distance and units will be null if basic query selected
distance: distance,
units: units,
spatialRelationship: "intersects",
returnGeometry: false,
returnQueryGeometry: true,
outFields: ["*"],
})
.then((featureSet) => {
// set graphic location to mouse pointer and add to mapview
pointGraphic.geometry = point;
view.graphics.add(pointGraphic);
// open popup of query result
view.popup.open({
location: point,
features: featureSet.features,
featureMenuOpen: true
});

console.log(featureSet.features);
if (featureSet.queryGeometry) {
bufferGraphic.geometry = featureSet.queryGeometry;
view.graphics.add(bufferGraphic);
}
let mapReg = featureSet.features[0].attributes.COD_REGION;
let mapComu = featureSet.features[0].attributes.COD_COMUNA;
let localid =
featureSet.features[0].attributes.LOCALIDAD_CIUDAD_PUEBLO;
let habitantes =
featureSet.features[0].attributes.TOTAL_PERS;

var hab = $("#poblacion").val(habitantes);


var reg = $("#region").val(mapReg);
var comu = $("#mapComu").val(mapComu);
var local = $("#localidad").val(localid);

//Pasa los valores por parametro al momento de hacer click


en el mapa y carga los Select de región y comuna
cargaComunasMap(reg.val(), mapComu);

cargarLocalidadhabitantes(local.val(), hab.val());

});
}

/*Punto 2 */
view2.on("click", (event) => {
view2.graphics.remove(pointGraphic2);
if (view2.graphics.includes(bufferGraphic2)) {
view2.graphics.remove(bufferGraphic2);
}
queryFeaturesMop(event);
});
function queryFeaturesMop(screenPoint) {
const point2 = view2.toMap(screenPoint);
layer2.queryFeatures({
geometry: point2,
// distance and units will be null if basic query selected
distance: distance2,
units: units2,
spatialRelationship: "intersects",
returnGeometry: false,
returnQueryGeometry: true,
outFields: ["*"]
})

.then((featureSet2) => {
// set graphic location to mouse pointer and add to mapview
pointGraphic2.geometry = point2;
view2.graphics.add(pointGraphic2);

view.popup.close();
// open popup of query result
debugger;
view2.popup.open({
location: point2,
features: featureSet2.features,
featureMenuOpen: true
});
if (featureSet2.queryGeometry) {
debugger;
bufferGraphic.geometry = featureSet2.queryGeometry;
view2.graphics.add(bufferGraphic);
console.log(bufferGraphic);
}

});
}

//Pasa las coordenadas al campo de latitud y longitud del mapa de poligonos


function showCoordinates(pt) {
$('input[name="latitud"]').val(pt.latitude.toFixed(3));
$('input[name="longitud"]').val(pt.longitude.toFixed(3));

//*** Add event to show mouse coordinates on click ***//


view.on(["click"], function (evt) {
showCoordinates(view.toMap({x: evt.x, y: evt.y}));
});
});

var requerimientos = {"usuario": {}, "datos": []};


var numEditar;

function borrarRequisitos() {
$('#ingresarRequerimientoForm').data('bootstrapValidator').destroy();
$('#formularioRequerimiento').find('input[type=number]').val('');
$('#formularioRequerimiento').find('input[type=text]').val('');
$('#formularioRequerimiento').find('textarea').val('');
$('#formularioRequerimiento').find('input:checkbox').prop('checked',
false);
$("#region").prop('selectedIndex', 0);
$("#selectEmplazamiento").prop('selectedIndex', 0);
$("#comuna").get(0).options.length = 0;
$("#comuna").get(0).options[0] = new Option("-- Seleccione --", "");
$('input[name="desarrollo"]').prop('checked', false);
$('input[name="electrificacion"]').prop('checked', false);

function borrarRequisitosNoValidate() {
$('#formularioRequerimiento').find('input[type=number]').val('');
$('#formularioRequerimiento').find('input[type=text]').val('');
$('#formularioRequerimiento').find('textarea').val('');
$('#formularioRequerimiento').find('input:checkbox').prop('checked',
false);
$("#region").prop('selectedIndex', 0);
$("#selectEmplazamiento").prop('selectedIndex', 0);
$("#comuna").get(0).options.length = 0;
$("#comuna").get(0).options[0] = new Option("-- Seleccione --", "");
$('input[name="desarrollo"]').prop('checked', false);
$('input[name="electrificacion"]').prop('checked', false);

function volverRequerimiento() {
//$('#requerimientos').show();
$('#formularioRequerimiento').hide();
//$('#guardar').show();
$('#botonRequerimientoDetalle').hide();
//borrarRequisitos();

$('#mensaje').show();
$('#datosPersonales').show();
//$('#requerimientos').hide();
$('#siguiente').show();
//$('#guardar').hide();
}

function irRequerimiento() {
$('#requerimientos').show();
$('#formularioRequerimiento').hide();
$('#guardar').show();
$('#botonRequerimientoDetalle').hide();
borrarRequisitosNoValidate();
}

$(document).ready(function () {
$('[data-toggle="tooltip"]').tooltip()
$('#botonSiguiente').click(function (e) {
e.preventDefault();
var form = $('#ingresarUsuarioForm').data('bootstrapValidator');
form.validate();
if (form.isValid()) {
$(document).scrollTop(0);
$('#datosPersonales').hide();
$('#mensaje').hide();
$('#siguiente').hide();
$('#requerimientos').hide();
$('#formularioRequerimiento').show();
$('#guardar').hide();
$('#botonRequerimientoDetalle').show();
$('#ingresarRequerimientoForm').bootstrapValidator({
live: 'enabled',
feedbackIcons: {valid: 'glyphicon glyphicon-ok', invalid:
'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh'},
fields: {
'tipoBusqueda': {validators: {notEmpty: {message:
'Seleccione una opción'}}},
'region': {validators: {notEmpty: {message: 'Seleccione una
Región'}}},
'comuna': {validators: {notEmpty: {message: 'Seleccione una
Comuna'}}},
'latitud': {validators: {notEmpty: {message: 'Ingrese una
latitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'longitud': {validators: {notEmpty: {message: 'Ingrese una
longitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'tipoEmplazamiento': {validators: {notEmpty: {message:
'Seleccione un Tipo de Emplazamiento'}}},
'superficie': {validators: {notEmpty: {message: 'Ingrese la
superficie estimada'}, integer: {message: 'Introduzca un número válido'}}},
'servicios': {validators: {notEmpty: {message: 'Ingrese a
lo menos 1 servicio'}}},
'electrificacion': {validators: {notEmpty: {message:
'Seleccione el tipo de electrificación'}}},
'caracteristicaRequerimiento': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'localidad': {validators: {notEmpty: {message: 'Ingrese
una localidad'}}},
// 'desarrollo': {validators: {notEmpty: {message:
'Seleccione una opción'}}},
// 'poblacion': {validators: {message: 'Ingrese la
población estimada'}, integer: {message: 'Introduzca un número válido'}}},
// 'caracteristicaLocalidad': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'caracteristicasTerritorio': {validators:
{stringLength: {min: 0, max: 140, message: 'Por favor, introduzca no más de 140
caracteres'}}},
// 'condicionEconomica': {validators: {stringLength: {min:
0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'aspectos': {validators: {stringLength: {min: 0, max:
140, message: 'Por favor, introduzca no más de 140 caracteres'}}}
}
});
}
});

$('#botonVolver').click(function (e) {
e.preventDefault();
$(document).scrollTop(0);
$('#formularioRequerimiento').show();
//$('#guardar').hide();
$('#botonRequerimientoDetalle').show();
$('#ingresarRequerimientoForm').bootstrapValidator({
live: 'enabled',
feedbackIcons: {valid: 'glyphicon glyphicon-ok', invalid:
'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh'},
fields: {

'tipoBusqueda': {validators: {notEmpty: {message: 'Seleccione


una opción'}}},
'region': {validators: {notEmpty: {message: 'Seleccione una
Región'}}},
'comuna': {validators: {notEmpty: {message: 'Seleccione una
Comuna'}}},
'latitud': {validators: {notEmpty: {message: 'Ingrese una
latitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'longitud': {validators: {notEmpty: {message: 'Ingrese una
longitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'tipoEmplazamiento': {validators: {notEmpty: {message:
'Seleccione un Tipo de Emplazamiento'}}},
'superficie': {validators: {notEmpty: {message: 'Ingrese la
superficie estimada'}, integer: {message: 'Introduzca un número válido'}}},
'servicios': {validators: {notEmpty: {message: 'Ingrese a lo
menos 1 servicio'}}},
'electrificacion': {validators: {notEmpty: {message:
'Seleccione el tipo de electrificación'}}},
'caracteristicaRequerimiento': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}}
//'poblacion': {validators: {notEmpty: {message: 'Ingrese la
población estimada'}, integer: {message: 'Introduzca un número válido'}}},
//'superficie': {validators: {notEmpty: {message: 'Ingrese la
superficie estimada'}, integer: {message: 'Introduzca un número válido'}}},
//'caracteristicaLocalidad': {validators: {stringLength: {min:
0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
//'localidad': {validators: {notEmpty: {message: 'Ingrese una
localidad'}}},
// 'caracteristicasTerritorio': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'condicionEconomica': {validators: {stringLength: {min: 0,
max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'aspectos': {validators: {stringLength: {min: 0, max: 140,
message: 'Por favor, introduzca no más de 140 caracteres'}}},

}
});
//$('#datosPersonales').show();
$('#requerimientos').hide();
//$('#siguiente').show();
$('#guardar').hide();
$('#contenedorRequerimientos').empty();
// requerimientos.datos=[];

});

// 'poblacion': {validators: {notEmpty: {message: 'Ingrese la


población estimada'}, integer: {message: 'Introduzca un número válido'}}},
// 'caracteristicaLocalidad': {validators: {stringLength: {min: 0,
max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
//
// 'caracteristicasTerritorio': {validators: {stringLength: {min:
0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'condicionEconomica': {validators: {stringLength: {min: 0, max:
140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'aspectos': {validators: {stringLength: {min: 0, max: 140,
message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'localidad': {validators: {notEmpty: {message: 'Ingrese una
localidad'}}},

$('#nuevoRequerimiento').click(function (e) {
e.preventDefault();
borrarRequisitos();
$(document).scrollTop(0);
$('#requerimientos').hide();
$('#formularioRequerimiento').show();
$('#guardar').hide();
$('#botonRequerimientoDetalle').show();
$('#ingresarRequerimientoForm').bootstrapValidator({
live: 'enabled',
feedbackIcons: {valid: 'glyphicon glyphicon-ok', invalid:
'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh'},
fields: {
'tipoBusqueda': {validators: {notEmpty: {message: 'Seleccione
una opción'}}},
'region': {validators: {notEmpty: {message: 'Seleccione una
Región'}}},
'comuna': {validators: {notEmpty: {message: 'Seleccione una
Comuna'}}},
'latitud': {validators: {notEmpty: {message: 'Ingrese una
latitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'longitud': {validators: {notEmpty: {message: 'Ingrese una
longitud válida'}, numeric: {message: 'Introduzca un número válido'}}},
'tipoEmplazamiento': {validators: {notEmpty: {message:
'Seleccione un Tipo de Emplazamiento'}}},
'superficie': {validators: {notEmpty: {message: 'Ingrese la
superficie estimada'}, integer: {message: 'Introduzca un número válido'}}},
'servicios': {validators: {notEmpty: {message: 'Ingrese a lo
menos 1 servicio'}}},
'electrificacion': {validators: {notEmpty: {message:
'Seleccione el tipo de electrificación'}}},
'caracteristicaRequerimiento': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}}

}
});
});

$('#botonVolverRequerimiento').click(function (e) {
$(document).scrollTop(0);
volverRequerimiento();
//irRequerimiento();
});
$('#agregarRequerimiento').click(function (e) {
e.preventDefault();
var form = $('#ingresarRequerimientoForm').data('bootstrapValidator');
form.validate();
if (form.isValid()) {
var obj = new Object();
//alert($('#txtId').val());
if ($('#txtId').val() === '' || $('#txtId').val() === null) {
obj.id = guid();
} else {
delete requerimientos.datos[numEditar];
obj.id = $('#txtId').val();
}
obj.txtId = $('#txtId').val();
obj.comuna = $('#comuna option:selected').val();
obj.longitud = $('#longitud').val();
obj.latitud = $('#latitud').val();
obj.tipoEmplazamiento = $('#selectEmplazamiento
option:selected').val();
obj.servicios = $('input[name="servicios"]:checked').map(function
(_, e) {
return $(e).val(); //.parent().text().trim().split('Ingrese')
[0].trim();
}).get();

obj.electrificacion = $
('input[name="electrificacion"]:checked').val();
if ($('input[name="electrificacion"]:checked').val() ==
'electOtra') {
obj.otraOpcion = $('#otraOpcion').val();

} else {
obj.otraOpcion = null;
}

obj.superficie = $('#superficie').val();
obj.tipoBusqueda = $('input[name="tipoBusqueda"]:checked').val();
obj.glosaRequerimiento = $('#caracteristicaRequerimiento').val();
obj.habitantes = $('#poblacion').val();
obj.localidad = $('#localidad').val();

requerimientos.datos.push(obj);

var div = '<div id="' + obj.id + '" class="requerimiento">' +


'<div class="col-md-12">' +
'<div class="col-md-2">' +
'<div class="col-md-12">' +
'<button class="btn btn-danger" onclick="eliminar(\'' +
obj.id + '\')">Eliminar</button>' +
'</div><br>' +
'<!--div class="col-md-12">' +
'<button class="btn btn-primary" onclick="editar(\'' +
obj.id + '\')">Editar</button>' +
'</div-->' +
'</div>' +
'<div class="col-md-10">';
if (obj.tipoBusqueda === 'L') {
div = div + '<div class="col-md-12">' +
'<label class="col-md-2
control-label">Localidad</label>' +
'<div class="col-md-10 interno">' +
obj.localidad +
'</div>' +
'</div>';
} else {
div = div + '<div class="col-md-12">' +
'<label class="col-md-2 control-label">Ruta</label>' +
'<div class="col-md-10 interno">' +
obj.origen + ' - ' + obj.destino +
'</div>' +
'</div>';
}
div = div + '<div class="col-md-12">' +
'<label class="col-md-2 control-label">Coordenadas</label>'
+
'<div class="col-md-4 interno">' +
'Lat: ' + obj.latitud +
'</div>' +
'<div class="col-md-4 interno">' +
'Long: ' + obj.longitud +
'</div>' +
'</div>' +
'<div class="col-md-12">' +
'<label class="col-md-2 control-label">Servicios</label>' +
'<div class="col-md-10 interno">';
for (var i = 0; i < obj.servicios.length; i++) {
div = div + '<div class="col-md-12">' + obj.servicios[i] +
'</div>';
}
div = div + '</div>' +
'</div>' +
'<div class="col-md-12">' +
'<label class="col-md-2
control-label">Electrificación</label>' +
'<div class="col-md-10 interno">' +
obj.electrificacion +
'</div>' +
'</div>' +
'<div class="col-md-12">' +
'<label class="col-md-2 control-label">Habitantes</label>'
+
'<div class="col-md-10 interno">' +
obj.habitantes +
'</div>' +
'</div>' +
'</div>' +
'</div>' +
'</div>';
$('#contenedorRequerimientos').append(div);
//$('#ingresarRequerimientoForm').bootstrapValidator('resetForm',
true);
//volverRequerimiento();
irRequerimiento();
}
});
$('#botonGuardar').click(function (e) {
e.preventDefault();
if (requerimientos.datos.length == 0) {
alert("debe Ingresar al menos 1 requerimiento");
return;
}
$('#modalRequerimiento').modal('show');
});

$('#terminar').click(function (e) {
//var usuarioForm = $
('#ingresarUsuarioForm').data('bootstrapValidator');
//var requerimientoForm = $
('#ingresarRequerimientoForm').data('bootstrapValidator');

var datos = $('#ingresarUsuarioForm').serialize() + '&requerimientos='


+ JSON.stringify(requerimientos.datos);

$.ajax({
type: "POST",
url: "guardarRequerimiento",
data: datos
}).done(function (data) {
console.log(data);
if (data.status == 'OK') {
window.location = "IngresoRequerimiento";
} else {

if (data.status == 'NOK_REQUISITOS') {
var mensaje = 'Error al ingresar los datos del
requerimiento';
} else {
var mensaje = 'Error al ingresar los datos del usuario';
}
alert("Error: \n" + mensaje);
}
});
});
$('#ingresarUsuarioForm').bootstrapValidator({
live: 'enabled',
feedbackIcons: {valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon
glyphicon-remove', validating: 'glyphicon glyphicon-refresh'},
fields: {
'usuario.rut': {validators: {id: {country: 'CL', message: 'El Rut
Ingresado no es válido'}, notEmpty: {message: 'Ingrese su RUT'}}},
'usuario.entidad': {validators: {notEmpty: {message: 'Seleccione
una Entidad'}}},
'usuario.email': {validators: {notEmpty: {message: 'Ingrese su
correo'}, emailAddress: {message: 'Ingrese un correo válido'}}},
'usuario.telefono': {validators: {notEmpty: {message: 'Ingrese un
Teléfono'}, integer: {message: 'Introduzca un número válido'}, stringLength: {min:
9, max: 9, message: 'El formato de teléfono debe tener 9 dígitos'}}},
'usuario.direccion': {validators: {stringLength: {min: 5, max: 200,
message: 'Por favor, introduzca al menos 5 caracteres y no más de 200'}, notEmpty:
{message: 'Ingrese su direccion'}}},
'usuario.region': {validators: {notEmpty: {message: 'Seleccione una
Región'}}},
'usuario.comuna': {validators: {notEmpty: {message: 'Seleccione una
Comuna'}}},
'usuario.regionGore': {validators: {notEmpty: {message: 'Seleccione
una Región'}}},
'usuario.representa': {validators: {notEmpty: {message: 'Ingrese
otra persona u orgnización que representa'}}},
'usuario.financiado': {validators: {notEmpty: {message: 'Favor
seleccione si posee financiamiento'}}},
'usuario.rutRepresentado': {validators: {id: {country: 'CL',
message: 'El Rut Ingresado no es válido'}, notEmpty: {message: 'Ingrese el RUT del
representado'}}},
'usuario.representado': {validators: {stringLength: {min: 10, max:
200, message: 'Por favor, introduzca al menos 10 caracteres y no más de 200'},
notEmpty: {message: 'Ingrese el Nombre o Razón Social del representado'}}}

}
});
llenarDatos();

$('input:text[name="usuario.rut"]').change(function () {
$(this).val($(this).val().replace(/\./gi, ""));
var rut = $(this).val();
if (rut.indexOf('-') == -1) {
$(this).val(rut.slice(0, rut.length - 1) + "-" +
rut.charAt(rut.length - 1));
}
$('input:text[name="usuario.rut"]').trigger('input');
});
$('input:text[name="user"]').change(function () {
$(this).val($(this).val().replace(/\./gi, ""));
var rut = $(this).val();
if (rut.indexOf('-') == -1) {
$(this).val(rut.slice(0, rut.length - 1) + "-" +
rut.charAt(rut.length - 1));
}
});
$('input:text[name="usuario.rutRepresentante"]').change(function () {
$(this).val($(this).val().replace(/\./gi, ""));
var rut = $(this).val();
if (rut.indexOf('-') == -1) {
$(this).val(rut.slice(0, rut.length - 1) + "-" +
rut.charAt(rut.length - 1));
}
});
$('input:text[name="usuario.rutRepresentado"]').change(function () {
$(this).val($(this).val().replace(/\./gi, ""));
var rut = $(this).val();
if (rut.indexOf('-') == -1) {
$(this).val(rut.slice(0, rut.length - 1) + "-" +
rut.charAt(rut.length - 1));
}
});
});
$('input[name="usuario.representa"]').click(function () {
if ($(this).val() == 'N') {
$
('#ingresarUsuarioForm').data('bootstrapValidator').resetField('usuario.representad
o');
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.representa
do');
$
('#ingresarUsuarioForm').data('bootstrapValidator').resetField('usuario.entidad');
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.entidad');
$('textarea[name="usuario.representado"]').attr('disabled', true);
$('textarea[name="usuario.representado"]').val("");
$('textarea[name="usuario.representado"]').show;
$('#selectEntidad').attr('disabled', true);
$('#selectEntidad').val(0);
$('#regionGore').hide();
$('#goreFinanciado').hide();
//$("#selectEntidad").get(0).options[0] = new Option("-- Seleccione
--", "");
} else {
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.representado'
, {validators: {stringLength: {min: 10, max: 200, message: 'Por favor, introduzca
al menos 10 caracteres y no más de 200'}, notEmpty: {message: 'Ingrese el Nombre o
Razón Social del representado'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.entidad',
{validators: {notEmpty: {message: 'Seleccione una Entidad'}}});
/* $
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.regionGore',
{validators: {notEmpty: {message: 'Seleccione una region'}}});*/
$('textarea[name="usuario.representado"]').attr('disabled',
false).focus();
$('#selectEntidad').attr('disabled', false);
/* $('#selectRegionGore').attr('disabled', false);*/
}
});
$('input[name="tipoBusqueda"]').click(function () {
if ($(this).val() == 'R') {
$('#comunaRequerimiento').hide();
$('#mapPoligono').hide();
$('#idLatitud').hide();
$('#idLongitud').hide();
$('#mapRuta').show();
document.getElementById("latitud").value = "";
document.getElementById("longitud").value = "";

} else {
if ($(this).val() == 'L') {
$('#comunaRequerimiento').show();
$('#mapRuta').hide();
$('#mapPoligono').show();
$('#idLatitud').show();
$('#idLongitud').show();
}
}

});
$('input[name="electrificacion"]').click(function () {
if ($(this).val() == 'electOtra') {
$('#divOtro').show();

} else {
if ($(this).val() != 'electOtra') {
$('textarea[name="electrificacion"]').val("");
$('#divOtro').hide();
}
}

});
function seleccionarGore() {
var opt = $('#selectEntidad').val();
if (opt == "1") {
$('#regionGore').show();
$('#goreFinanciado').show();
$('#nombreRepresentante').hide();
} else {
if (opt != "1")
$('#nombreRepresentante').show();
$('#divRepresentado').show();
$('#regionGore').hide();
$('#goreFinanciado').hide();
}
}

/*$('input[name="usuario\\.tipoPersona"]').click(function () {
mostrarPersonalidad($(this).val());
});*/

function llenarDatos() {
var representado = 'N';
var tipoBusqueda = 'L';
$('input[name="tipoBusqueda"][value="' + tipoBusqueda +
'"]').prop("checked", true);
$('input[name="usuario.representa"][value="' + representado +
'"]').prop("checked", true);
var personalidad = 'N';
//$('input[name="usuario\\.tipoPersona"][value="' + personalidad +
'"]').prop("checked", true);
mostrarPersonalidad(personalidad);
}
;
function mostrarPersonalidad(personalidad) {
/*if (personalidad == 'J') {
$('.dataPNatural').addClass("hidden");
$('.dataPJuridica').removeClass("hidden");

$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.rsocial',
{validators: {stringLength: {min: 10, max: 200, message: 'Por favor, introduzca al
menos 10 caracteres y no más de 200'},notEmpty: {message: 'Ingrese su Razón
Social'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.representante
', {validators: {notEmpty: {message: 'Ingrese Nombre del Representante Legal'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.rutRepresenta
nte', {validators: {id: {country: 'CL', message: 'El Rut Ingresado no es
válido'},notEmpty: {message: 'Ingrese el RUT del Representante Legal'}}});

$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.nombres');
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.apaterno')
;
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.amaterno')
;
}
else {*/
$('.dataPNatural').removeClass("hidden");
$('.dataPJuridica').addClass("hidden");
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.nombres',
{validators: {stringLength: {min: 7, max: 50, message: 'Por favor, introduzca al
menos 7 caracteres y no más de 50'}, notEmpty: {message: 'Ingrese su Nombre'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.apaterno',
{validators: {stringLength: {min: 3, max: 50, message: 'Por favor, introduzca al
menos 3 caracteres y no más de 50'}, notEmpty: {message: 'Ingrese su Apellido
Paterno'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').addField('usuario.amaterno',
{validators: {stringLength: {min: 3, max: 50, message: 'Por favor, introduzca al
menos 3 caracteres y no más de 50'}, notEmpty: {message: 'Ingrese su Apellido
Materno'}}});
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.rsocial');
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.representa
nte');
$
('#ingresarUsuarioForm').data('bootstrapValidator').removeField('usuario.rutReprese
ntante');
//}
}

function cargaComunas(region, selectComuna) {


$("#selectComuna" + selectComuna).get(0).options.length = 0;
$("#selectComuna" + selectComuna).get(0).options[0] = new Option("Cargando
Comunas...", "");
$.ajax({
type: "POST",
url: "comunasjson?region=" + region.value,
contentType: "application/json; charset=ISO-8859-1",
dataType: "json",
success: function (data) {
$("#selectComuna" + selectComuna).get(0).options.length = 0;
$("#selectComuna" + selectComuna).get(0).options[0] = new
Option("-- Seleccione --", "");
$.each(data, function (index, element) {
$("#selectComuna" + selectComuna).get(0).options[$
("#selectComuna" + selectComuna).get(0).options.length] = new
Option(element.nombreComuna, element.codigoComuna);
});
},
error: function () {
$("#selectComuna" + selectComuna).get(0).options.length = 0;
alert("Error al obtener comunas");
}
});
}

function cargaComunasMap(region, selectComuna) {


$("#comuna").get(0).options.length = 0;
$("#comuna").get(0).options[0] = new Option("Cargando Comunas...", "");
$.ajax({
type: "POST",
url: "comunasjson?region=" + region,
contentType: "application/json; charset=ISO-8859-1",
dataType: "json",
success: function (data) {
$("#comuna").get(0).options.length = 0;
$("#comuna").get(0).options[0] = new Option("-- Seleccione --",
"");
$.each(data, function (index, element) {
$("#comuna").get(0).options[$("#comuna").get(0).options.length]
= new Option(element.nombreComuna, element.codigoComuna);

if (selectComuna !== "") {


$('#comuna option[value="' + selectComuna +
'"]').attr("selected", true);
}
});
},
error: function () {
$("#comuna" + selectComuna).get(0).options.length = 0;
alert("Error al obtener comunas");
}
});
}

function cargarLocalidadhabitantes(localidad, habitantes) {


$("#localidad").val(localidad);
$("#poblacion").val(habitantes);

function guid() {
function s4() {
return Math.floor((1 + Math.random()) * 0x10000)
.toString(16)
.substring(1);
}
return "id" + s4() + s4() + s4() + s4();
}

function eliminar(id) {
requerimientos.datos = $.grep(requerimientos.datos, function (item) {
return item.id != id;
});
$('#' + id).remove();
/*$('button.btn-circulo').each(function(index,element){
$(this).html(index+1);
});*/
}

function editar(id) {
//e.preventDefault();

$('#formularioRequerimiento').show();
//$('#guardar').hide();
$('#botonRequerimientoDetalle').show();
$('#ingresarRequerimientoForm').bootstrapValidator({
live: 'enabled',
feedbackIcons: {valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon
glyphicon-remove', validating: 'glyphicon glyphicon-refresh'},
fields: {
'region': {validators: {notEmpty: {message: 'Seleccione una
Región'}}},
'comuna': {validators: {notEmpty: {message: 'Seleccione una
Comuna'}}},
'tipoEmplazamiento': {validators: {notEmpty: {message: 'Seleccione
una Comuna'}}},
// 'localidad': {validators: {notEmpty: {message: 'Ingrese
una localidad'}}},
// 'desarrollo': {validators: {notEmpty: {message:
'Seleccione una opción'}}},
'latitud': {validators: {notEmpty: {message: 'Ingrese una latitud
válida'}, numeric: {message: 'Introduzca un número válido'}}},
'longitud': {validators: {notEmpty: {message: 'Ingrese una longitud
válida'}, numeric: {message: 'Introduzca un número válido'}}},
'servicios': {validators: {notEmpty: {message: 'Ingrese a lo menos
1 servicio'}}},
'electrificacion': {validators: {notEmpty: {message: 'Seleccione el
tipo de electrificación'}}},
// 'poblacion': {validators: {notEmpty: {message: 'Ingrese
la población estimada'}, integer: {message: 'Introduzca un número válido'}}},
// 'caracteristicaLocalidad': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
'superficie': {validators: {notEmpty: {message: 'Ingrese la
superficie estimada'}, integer: {message: 'Introduzca un número válido'}}},
'caracteristicaRequerimiento': {validators: {stringLength: {min: 0,
max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'caracteristicasTerritorio': {validators: {stringLength:
{min: 0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'condicionEconomica': {validators: {stringLength: {min:
0, max: 140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
// 'aspectos': {validators: {stringLength: {min: 0, max:
140, message: 'Por favor, introduzca no más de 140 caracteres'}}},
'tipoBusqueda': {validators: {notEmpty: {message: 'Seleccione una
opción'}}}
//pregunta: {selector:' .pregunta', validators: {notEmpty:
{message: 'Seleccione un Submotivo'}}, date: {format: 'DD/MM/YYYY'}},
//'usuario.descripcion': {validators: {stringLength: {min: 10, max:
500, message: 'Por favor, introduzca al menos 10 caracteres y no más de 500'},
notEmpty: {message: 'Ingrese un mensaje'}}}
}
});
//$('#datosPersonales').show();
$('#requerimientos').hide();
//$('#siguiente').show();
$('#guardar').hide();
//$('#contenedorRequerimientos').empty();
//requerimientos.datos=[];

//$(document).scrollTop(0);
for (var i in requerimientos.datos) {

if (id === requerimientos.datos[i].id) {

$('#txtId').val(requerimientos.datos[i].txtId);
$('#comuna option:selected').val(requerimientos.datos[i].comuna);
$('#longitud').val(requerimientos.datos[i].longitud);
$('#latitud').val(requerimientos.datos[i].latitud);
$('input[name="electrificacion"][value=' +
requerimientos.datos[i].electrificacion + ']').attr('checked', 'checked');
$
('#caracteristicaRequerimiento').val(requerimientos.datos[i].glosaRequerimiento);
$('input[name="tipoBusqueda"][value=' +
requerimientos.datos[i].tipoBusqueda + ']').attr('checked', 'checked');
$('#superficie').val(requerimientos.datos[i].superficie);
$(requerimientos.datos[i].servicios).each(function () {
this.checked = true;
alert('elemento');
$('input[name="servicios"]').prop('checked', $
(this).prop("checked"));
});
numEditar = i;
break;
// $('#ruta').val(requerimientos.datos[i].ruta);
// $('#localidad').val(requerimientos.datos[i].localidad);
// $
('#caracteristicaLocalidad').val(requerimientos.datos[i].glosaLocalidad);
// $
('#caracteristicasTerritorio').val(requerimientos.datos[i].glosaTerritorio);
// $
('#condicionEconomica').val(requerimientos.datos[i].condicionEconomica);
// $('#aspectos').val(requerimientos.datos[i].aspectos);
// $('input[name="desarrollo"][value=' +
requerimientos.datos[i].desarrollo + ']').attr('checked', 'checked');
/*$('input[name="desarrollo"]').each(function(){
if ( $(this).val() === requerimientos.datos[i].desarrollo ){
$(this).attr('checked', true);
}else{
$(this).attr('checked', false);
}
});*/

// $('#poblacion').val(requerimientos.datos[i].habitantes);
// $('#origen').val(requerimientos.datos[i].origen);
// $('#destino').val(requerimientos.datos[i].destino);

</script>

<!--script src="https://maps.googleapis.com/maps/api/js?
key=AIzaSyAF3wxK3XyUoXbGSSvUqvA8p34qKSXhIOQ&callback=myMap"></script-->
<!--script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyC8-MaivsmQc9D3O-
xU9Rx8A8qyqxKctoc&callback=myMap"></script-->

You might also like