Created
January 8, 2021 15:04
-
-
Save ItsMeAndrea/97eb69ee043e461717ee577d99c7ed60 to your computer and use it in GitHub Desktop.
Asis
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const updateArcgis = async (request, response) => { | |
| //Se obtiene el token | |
| const token = await getArcgisToken(); | |
| //Se obtienen los valores de la peticion | |
| const { | |
| nombres, | |
| apellidos, | |
| razon_social, | |
| Estado, | |
| id_uso_inmueble, | |
| tipo_inmueble, | |
| tipo_naturaleza, | |
| id_impuesto, | |
| id_contribuyente, | |
| } = request.body; | |
| //Si los id_impuesto o id_contribuyente estan vacios no | |
| //se puede hace la peticion | |
| if (isEmpty(id_impuesto) || isEmpty(id_contribuyente)) { | |
| errorMessage.error = | |
| "Los campos id_impusto o id_contribuyente no pueden estar vacios"; | |
| return response.status(status.bad).send(errorMessage); | |
| } | |
| //data utilizada para buscar el inmueble a actualizar | |
| const data = { | |
| f: "json", | |
| token, | |
| outFields: "*", | |
| where: `id_impuesto=${id_impuesto} AND id_contribuyente=${id_contribuyente}`, | |
| }; | |
| const options = { | |
| method: "POST", | |
| headers: { "content-type": "application/x-www-form-urlencoded" }, | |
| data: qs.stringify(data), | |
| url: inmueble_url + "/query", | |
| }; | |
| //Peticion del inmueble | |
| axios(options) | |
| .then((res) => { | |
| //si no hay resultados el inmueble no esta registrado en arcgis online | |
| if (!res.data.features.length) { | |
| errorMessage.error = "No hay informacion sobre el inmueble"; | |
| return response.status(status.notfound).send(errorMessage); | |
| } | |
| //se obtiene la informacion el inmueble | |
| const resInmueble = res.data.features[0].attributes; | |
| //Se especifica que si se pasa el paramentro por el endpoint | |
| //se actualiza si no, se deja el valor que estaba anteriormente | |
| const inmuebleUpdate = [ | |
| { | |
| attributes: { | |
| ...resInmueble, | |
| nombres: nombres ? nombres : resInmueble.nombres, | |
| apellidos: apellidos ? apellidos : resInmueble.apellidos, | |
| razon_social: razon_social | |
| ? razon_social | |
| : resInmueble.razon_social, | |
| Estado: Estado ? Estado : resInmueble.Estado, | |
| id_uso_inmueble: id_uso_inmueble | |
| ? id_uso_inmueble | |
| : resInmueble.id_uso_inmueble, | |
| tipo_inmueble: tipo_inmueble | |
| ? tipo_inmueble | |
| : resInmueble.tipo_inmueble, | |
| tipo_naturaleza: tipo_naturaleza | |
| ? tipo_naturaleza | |
| : resInmueble.tipo_naturaleza, | |
| }, | |
| }, | |
| ]; | |
| //Data para actualizar el inmueble | |
| const data = { | |
| f: "json", | |
| token, | |
| updates: JSON.stringify(inmuebleUpdate), | |
| }; | |
| const options = { | |
| method: "POST", | |
| headers: { "content-type": "application/x-www-form-urlencoded" }, | |
| data: qs.stringify(data), | |
| url: inmueble_url + "/applyEdits", | |
| }; | |
| //Peticion para actualizar el inmueble | |
| axios(options) | |
| .then((res) => { | |
| successMessage.data = res.data; | |
| return response.status(status.success).send(successMessage); | |
| }) | |
| .catch((err) => { | |
| errorMessage.error = "Hubo un error al actualizar los datos"; | |
| return response.status(status.error).send(errorMessage); | |
| }); | |
| }) | |
| .catch((err) => { | |
| console.log(err); | |
| }); | |
| }; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment