Skip to content
Snippets Groups Projects
Commit 5ee62572 authored by Alexa Valentová's avatar Alexa Valentová
Browse files

update for new ARES API

parent 8f286ee0
Branches
Tags
No related merge requests found
Pipeline #17101 passed
import os import os
from xml.etree import ElementTree
import requests import requests
from django.conf import settings from django.conf import settings
...@@ -442,15 +441,9 @@ def get_ares_info(request, ico: int): ...@@ -442,15 +441,9 @@ def get_ares_info(request, ico: int):
raise HTTPExceptions.FORBIDDEN raise HTTPExceptions.FORBIDDEN
ares_info = requests.get( ares_info = requests.get(
f"https://wwwinfo.mfcr.cz/cgi-bin/ares/darv_std.cgi?ico={ico}" f"https://ares.gov.cz/ekonomicke-subjekty-v-be/rest/ekonomicke-subjekty/{ico}"
) )
tree = ElementTree.fromstring(ares_info.content)
for result_count in tree.iter("are:Pocet_zaznamu"):
if result_count.text == "0":
raise HTTPExceptions.NOT_FOUND
return HttpResponse( return HttpResponse(
content=ares_info.content, content=ares_info.content,
status=ares_info.status_code, status=ares_info.status_code,
......
...@@ -515,9 +515,9 @@ ...@@ -515,9 +515,9 @@
} }
}, },
"node_modules/caniuse-lite": { "node_modules/caniuse-lite": {
"version": "1.0.30001481", "version": "1.0.30001589",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz",
"integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==", "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==",
"funding": [ "funding": [
{ {
"type": "opencollective", "type": "opencollective",
...@@ -2582,9 +2582,9 @@ ...@@ -2582,9 +2582,9 @@
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA=="
}, },
"caniuse-lite": { "caniuse-lite": {
"version": "1.0.30001481", "version": "1.0.30001589",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz",
"integrity": "sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==" "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg=="
}, },
"chokidar": { "chokidar": {
"version": "3.5.3", "version": "3.5.3",
......
...@@ -93,67 +93,57 @@ $(window).ready( ...@@ -93,67 +93,57 @@ $(window).ready(
async (event) => { async (event) => {
const icoValue = $("#id_ico_number").val(); const icoValue = $("#id_ico_number").val();
const rawAresXMLResponse = await fetch( const rawAresJSONResponse = await fetch(
`/ares-info-proxy/${icoValue}` `/ares-info-proxy/${icoValue}`
); );
if (!rawAresXMLResponse.ok) { if (!rawAresJSONResponse.ok) {
alertify.error("Chyba při načítní dat z ARES."); alertify.error("Chyba při načítní dat z ARES.");
console.warn( console.warn(
"Error loading ARES data: ", "Error loading ARES data: ",
await rawAresXMLResponse.text() await rawAresJSONResponse.text()
); );
return; return;
} }
const formattedAresData = new DOMParser().parseFromString( const formattedAresData = await rawAresJSONResponse.json();
await rawAresXMLResponse.text(),
"text/xml"
);
const errors = formattedAresData.getElementsByTagName("are:Error"); let street = (
(formattedAresData["sidlo"]["nazevUlice"] !== undefined) ?
formattedAresData["sidlo"]["nazevUlice"] : ""
)
if (errors.length !== 0) { street += (
alertify.error("Chyba při načítní dat z ARES. Je IČO zadáno správně?"); (formattedAresData["sidlo"]["cisloDomovni"] !== undefined) ?
(" " + formattedAresData["sidlo"]["cisloDomovni"]) : ""
)
street += (
(formattedAresData["sidlo"]["cisloOrientacni"] !== undefined) ?
("/" + formattedAresData["sidlo"]["cisloOrientacni"]) : ""
)
console.warn( $("#id_name").val(
"Error(s) loading ARES data: ", (formattedAresData["obchodniJmeno"] !== undefined) ?
errors formattedAresData["obchodniJmeno"] : ""
)
$("#id_address_street_with_number").val(street);
$("#id_address_district").val(
(formattedAresData["sidlo"]["nazevCastiObce"] !== undefined) ?
formattedAresData["sidlo"]["nazevCastiObce"] : ""
);
$("#id_address_zip").val(
(formattedAresData["sidlo"]["psc"] !== undefined) ?
formattedAresData["sidlo"]["psc"] : ""
); );
return;
}
let streetResult = "";
const streetElements = formattedAresData.getElementsByTagName("dtt:Nazev_ulice");
if (streetElements.length !== 0) {
streetResult += streetElements[0].innerHTML;
}
const houseNumberElements = formattedAresData.getElementsByTagName("dtt:Cislo_domovni");
if (houseNumberElements.length !== 0) {
streetResult += ` ${houseNumberElements[0].innerHTML}`;
}
const orientationNumberElements = formattedAresData.getElementsByTagName("dtt:Cislo_orientacni");
if (orientationNumberElements.length !== 0) {
streetResult += `/${orientationNumberElements[0].innerHTML}`;
}
$("#id_name").val(formattedAresData.getElementsByTagName("are:Obchodni_firma")[0].innerHTML)
$("#id_address_street_with_number").val(streetResult);
$("#id_address_district").val(formattedAresData.getElementsByTagName("dtt:Nazev_obce")[0].innerHTML);
$("#id_address_zip").val(formattedAresData.getElementsByTagName("dtt:PSC")[0].innerHTML);
// IČO numbers will always be in the Czech Republic. // IČO numbers will always be in the Czech Republic.
$("#id_address_country").val("Česká Republika"); $("#id_address_country").val(
(formattedAresData["sidlo"]["nazevStatu"] !== undefined) ?
formattedAresData["sidlo"]["nazevStatu"] : ""
);
console.log(formattedAresData); console.info("Loaded ARES data: ", formattedAresData);
} }
); );
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment