egov_utils 1.4.2 → 1.5.0.alpha1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/egov_utils/iszr_controller.rb +37 -0
  3. data/app/controllers/egov_utils/passwords_controller.rb +1 -1
  4. data/app/models/concerns/types.rb +3 -0
  5. data/app/models/egov_utils/abstract_person.rb +0 -2
  6. data/app/models/egov_utils/natural_person.rb +1 -1
  7. data/app/models/egov_utils/person.rb +46 -1
  8. data/app/models/egov_utils/services/iszr/legal_people.rb +11 -0
  9. data/app/models/egov_utils/services/iszr/natural_people.rb +13 -0
  10. data/app/modules/envelope.rb +22 -0
  11. data/app/services/egov_utils/archive_users.rb +2 -1
  12. data/app/services/egov_utils/iszr/addresses/fetch.rb +27 -0
  13. data/app/services/egov_utils/iszr/addresses/fetch_for_legal_person/from_sample_data.rb +31 -0
  14. data/app/services/egov_utils/iszr/addresses/fetch_for_legal_person.rb +23 -0
  15. data/app/services/egov_utils/iszr/addresses/fetch_for_natural_person/from_sample_data.rb +31 -0
  16. data/app/services/egov_utils/iszr/addresses/fetch_for_natural_person.rb +23 -0
  17. data/app/services/egov_utils/iszr/legal_people/create_request.rb +48 -0
  18. data/app/services/egov_utils/iszr/legal_people/dev_search.rb +39 -0
  19. data/app/services/egov_utils/iszr/legal_people/prod_search.rb +47 -0
  20. data/app/services/egov_utils/iszr/legal_people/search.rb +30 -0
  21. data/app/services/egov_utils/iszr/legal_people/search_by_remote_id.rb +39 -0
  22. data/app/services/egov_utils/iszr/natural_people/create_request.rb +97 -0
  23. data/app/services/egov_utils/iszr/natural_people/dev_search.rb +87 -0
  24. data/app/services/egov_utils/iszr/natural_people/prod_search.rb +91 -0
  25. data/app/services/egov_utils/iszr/natural_people/search.rb +31 -0
  26. data/app/services/egov_utils/iszr/natural_people/search_by_remote_id.rb +39 -0
  27. data/app/services/egov_utils/iszr/request.rb +36 -0
  28. data/app/services/egov_utils/registration_requests/check_auto_accept.rb +1 -1
  29. data/app/views/egov_utils/people/_new_form.html.haml +127 -0
  30. data/config/locales/cs.yml +8 -0
  31. data/config/locales/en.yml +7 -0
  32. data/config/routes.rb +1 -1
  33. data/lib/egov_utils/engine.rb +3 -0
  34. data/lib/egov_utils/iszr/e05_osoby_response.xml +87 -0
  35. data/lib/egov_utils/iszr/e20_ico_response.xml +70 -0
  36. data/lib/egov_utils/iszr/lp_addresses.json +112 -0
  37. data/lib/egov_utils/iszr/lp_results.json +52 -0
  38. data/lib/egov_utils/iszr/np_addresses.json +90 -0
  39. data/lib/egov_utils/iszr/np_results.json +58 -0
  40. data/lib/egov_utils/version.rb +1 -1
  41. metadata +102 -3
@@ -0,0 +1,87 @@
1
+ module EgovUtils
2
+ module Iszr
3
+ module NaturalPeople
4
+ class DevSearch < ActiveInteraction::Base
5
+ string :firstname
6
+ string :lastname
7
+ date :birth_date
8
+ string :birth_place, default: nil
9
+
10
+ validates :firstname, :lastname, :birth_date, presence: true
11
+
12
+ MAPPING_CLASS = EgovUtils::Services::Iszr::NaturalPeople
13
+
14
+ def execute
15
+ process_search
16
+ end
17
+
18
+ private
19
+
20
+ def sample_results
21
+ EgovUtils::Engine.root.join('lib/egov_utils/iszr/np_results.json')
22
+ end
23
+
24
+ def initialize_person
25
+ response = File.read(sample_results)
26
+
27
+ body = JSON.parse(response)
28
+
29
+ body.map do
30
+ MAPPING_CLASS.new(_1.deep_symbolize_keys!)
31
+ end
32
+ end
33
+
34
+ def find_person
35
+ return @natural_person if defined?(@natural_person)
36
+
37
+ @natural_person = begin
38
+ people = initialize_person.select do |person|
39
+ person.firstname == firstname &&
40
+ person.lastname == lastname &&
41
+ person.birth_date == birth_date
42
+ end
43
+
44
+ if people.count.zero?
45
+ errors.add(:base, :not_found)
46
+ nil
47
+ elsif people.count > 1
48
+ errors.add(:base, :multiple_results_found)
49
+ nil
50
+ elsif people.count == 1
51
+ people.first
52
+ end
53
+ end
54
+ end
55
+
56
+ def extended_search
57
+ natural_person = initialize_person.select do |person|
58
+ person.firstname == firstname && person
59
+ .lastname == lastname && person
60
+ .birth_date == birth_date && person.birth_place == birth_place
61
+ end
62
+
63
+ if natural_person.count == 1
64
+ natural_person.first
65
+ elsif natural_person.count > 1
66
+ errors.add(:base, :extended_search_multiple_records_found)
67
+ elsif natural_person.count.zero?
68
+ errors.add(:base, :extended_search_not_found)
69
+ end
70
+ end
71
+
72
+ def process_search
73
+ if birth_place.nil?
74
+ find_person
75
+ if errors.any?
76
+ errors
77
+ else
78
+ find_person
79
+ end
80
+ else
81
+ extended_search
82
+ end
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
@@ -0,0 +1,91 @@
1
+ module EgovUtils
2
+ module Iszr
3
+ module NaturalPeople
4
+ class ProdSearch < ActiveInteraction::Base
5
+ string :firstname
6
+ string :lastname
7
+ date :birth_date, converter: :parse
8
+ string :birth_place, default: nil
9
+
10
+ validates :firstname, :lastname, :birth_date, presence: true
11
+
12
+ MAPPING_CLASS = EgovUtils::Services::Iszr::NaturalPeople
13
+
14
+ def execute
15
+ process_search
16
+ end
17
+
18
+ private
19
+
20
+ def process_search
21
+ if birth_place.nil?
22
+ find_person_stage_one
23
+ if errors.any?
24
+ errors
25
+ else
26
+ @natural_person
27
+ end
28
+ else
29
+ find_person_stage_two
30
+ end
31
+ end
32
+
33
+ def request
34
+ result = EgovUtils::Iszr::Request.run(inputs).result
35
+ File.read(result)
36
+ end
37
+
38
+ def find_person_stage_one
39
+ # REQUEST WITHOUT BIRTHPLACE - RESPONSE SHOULD HAVE BIRTHPLACE IF FOUND
40
+
41
+ response = File.read(sample_results)
42
+
43
+ body = Nokogiri::XML(response)
44
+
45
+ @natural_person ||= MAPPING_CLASS.new(
46
+ firstname: body.at('//rod:Jmeno').text,
47
+ lastname: body.at('//rod:Prijmeni').text,
48
+ birth_date: body.at('//rod:DatumNarozeni').text,
49
+ birth_place: body.at('//rob:NarozeniCr').text, # KOD OBCE
50
+ remote_id: body.at('//rod:Aifo').text
51
+ )
52
+ if @natural_person.nil?
53
+ errors.add(
54
+ :base,
55
+ I18n.t('errors.messages.natural_person.not_found_without_birthplace')
56
+ )
57
+ else
58
+ @natural_person
59
+ end
60
+ end
61
+
62
+ def find_person_stage_two
63
+ # REQUEST MADE BASED ON PROVIDED ATTS (name, birthdate, birthplace)
64
+ response = File.read(sample_results)
65
+
66
+ body = Nokogiri::XML(response)
67
+
68
+ person = MAPPING_CLASS.new(
69
+ firstname: body.at('//rod:Jmeno').text,
70
+ lastname: body.at('//rod:Prijmeni').text,
71
+ birth_date: body.at('//rod:DatumNarozeni').text,
72
+ birth_place: body.at('//rob:NarozeniCr').text, # KOD OBCE
73
+ remote_id: body.at('//rod:Aifo').text
74
+ )
75
+ if person.nil?
76
+ errors.add(
77
+ :base,
78
+ I18n.t('errors.messages.natural_person.not_found')
79
+ )
80
+ else
81
+ person
82
+ end
83
+ end
84
+
85
+ def sample_results
86
+ 'lib/egov_utils/iszr/e05_osoby_response.xml'
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,31 @@
1
+ module EgovUtils
2
+ module Iszr
3
+ module NaturalPeople
4
+ class Search < ActiveInteraction::Base
5
+ string :firstname
6
+ string :lastname
7
+ date :birth_date, converter: :parse
8
+ string :birth_place, default: nil
9
+
10
+ validates :firstname, :lastname, :birth_date, presence: true
11
+
12
+ def execute
13
+ natural_person = find_person_service.run(inputs)
14
+ errors.merge!(natural_person.errors) unless natural_person.valid?
15
+
16
+ natural_person.result
17
+ end
18
+
19
+ private
20
+
21
+ def find_person_service
22
+ if Rails.env.development?
23
+ EgovUtils::Iszr::NaturalPeople::DevSearch
24
+ else
25
+ EgovUtils::Iszr::NaturalPeople::ProdSearch
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EgovUtils
4
+ module Iszr
5
+ module NaturalPeople
6
+ class SearchByRemoteId < ActiveInteraction::Base
7
+ MAPPING_CLASS = EgovUtils::Services::Iszr::NaturalPeople
8
+
9
+ string :remote_id
10
+
11
+ def execute
12
+ find_person
13
+ end
14
+
15
+ private
16
+
17
+ def find_person
18
+ initialize_person.find do |person|
19
+ person.remote_id == remote_id
20
+ end
21
+ end
22
+
23
+ def sample_results
24
+ EgovUtils::Engine.root.join('lib/egov_utils/iszr/np_results.json')
25
+ end
26
+
27
+ def initialize_person
28
+ response = File.read(sample_results)
29
+
30
+ body = JSON.parse(response)
31
+
32
+ body.map do
33
+ MAPPING_CLASS.new(_1.deep_symbolize_keys!)
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,36 @@
1
+ module EgovUtils
2
+ module Iszr
3
+ class Request < ActiveInteraction::Base
4
+ def execute
5
+ envelope.to_xml
6
+ end
7
+
8
+ private
9
+
10
+ def envelope
11
+ Nokogiri::XML::Builder.new do |xml|
12
+ xml.GateMessage {
13
+ xml.Version '2.0'
14
+ xml.Header {
15
+ xml.MessageDetails(type: 'request') {
16
+ xml.Class(mode: 'sync') {
17
+ xml.text service_id
18
+ }
19
+ }
20
+ xml.SenderDetails {
21
+ xml.Authentication(type: 'clear') {
22
+ xml.ISId '124'
23
+ }
24
+ }
25
+ }
26
+ xml.Body encoded_body(body)
27
+ }
28
+ end
29
+ end
30
+
31
+ def encoded_body(body)
32
+ Base64.encode64(body.to_xml)
33
+ end
34
+ end
35
+ end
36
+ end
@@ -15,7 +15,7 @@ module EgovUtils
15
15
 
16
16
  registration_request.update(
17
17
  status: 'accepted',
18
- internal_note:
18
+ internal_reason:
19
19
  'Automaticky schválen na základě členství v LDAP skupině'
20
20
  )
21
21
 
@@ -0,0 +1,127 @@
1
+ .person-form
2
+ .row
3
+ .col-12= form.select :person_type, enum_values_for_select(person.class, :person_type), {}, class: 'person-type-toggle'
4
+ .natural-person-row.identification-form.natural_person.row
5
+ .col-12
6
+ .card
7
+ .card-header Ztotožnění fyzické osoby
8
+ .card-body
9
+ .form
10
+ .form-group
11
+ = label_tag 'firstname', 'Jméno'
12
+ = text_field_tag :firstname, {}, class: 'form-control'
13
+ .form-group
14
+ = label_tag 'lastname', 'Příjmení'
15
+ = text_field_tag :lastname, {}, class: 'form-control'
16
+ .form-group
17
+ = label_tag 'birth_date', 'Datum narození'
18
+ = date_field_tag :birth_date, {}, class: 'form-control'
19
+ = link_to 'Vyhledat', {}, class: 'btn btn-primary'
20
+ .legal-person-row.identification-form.legal_person.row
21
+ .col-12
22
+ .card
23
+ .card-header Ztotožnění právnické osoby
24
+ .card-body
25
+ .form
26
+ .form-group
27
+ = label_tag 'ico', 'IČO'
28
+ = text_field_tag :ico, {}, class: 'form-control'
29
+ = link_to 'Vyhledat', nil, class: 'btn btn-primary'
30
+ = form.hidden_field :remote_id
31
+
32
+ :javascript
33
+ $('.natural-person-row a').on('click', function(e) {
34
+ e.preventDefault();
35
+ $this = $(this);
36
+ $npr = $this.closest('.natural-person-row');
37
+
38
+ form_data = {
39
+ firstname: $npr.find('input[name=firstname]').val(),
40
+ lastname: $npr.find('input[name=lastname]').val(),
41
+ birth_date: $npr.find('input[name=birth_date]').val(),
42
+ birth_place: $npr.find('input[name=birth_place]').val()
43
+ }
44
+
45
+ $.ajax({
46
+ url: '/internals/iszr/search',
47
+ data: {
48
+ search: form_data
49
+ },
50
+ type: 'POST',
51
+ dataType: 'json',
52
+ success: function(data) {
53
+ $this.closest('.card-body').find('.alert').remove();
54
+
55
+ $icon = $('<i>').addClass('fa').addClass('fa-check');
56
+ $success_div = $('<div>').addClass('alert').addClass('alert-success').append($icon).append(` Ztotožněno: <b>${data.firstname} ${data.lastname}</b> (narozen ${new Date(Date.parse(data.birth_date)).toLocaleDateString()}, ${data.birth_place})`);
57
+ $npr.find('.card-body .form').hide();
58
+ $npr.find('.card-body').prepend($success_div);
59
+ $this.closest('.person-form').find("input[name*='[remote_id]']").val(data.remote_id);
60
+ },
61
+ error: function(xhr) {
62
+ $this.closest('.card-body').find('.alert').remove();
63
+
64
+ data = xhr.responseJSON;
65
+ error_kind = data.base ? data.base[0].error : 'not_found';
66
+
67
+ if(error_kind == 'not_found') {
68
+ $icon = $('<i>').addClass('fa').addClass('fa-times');
69
+ $error_div = $('<div>').addClass('alert').addClass('alert-danger').append($icon).append(' Nenalezeno');
70
+ $this.closest('.card-body').prepend($error_div);
71
+ }
72
+ else if(error_kind == 'multiple_results_found') {
73
+ $form_group = $('<div>').addClass('form-group');
74
+ $label = $('<label>').attr('for', 'birth_place').text('Místo narození');
75
+ $input = $('<input>').attr('type', 'text').attr('name', 'birth_place').addClass('form-control');
76
+ $form_group.append($label).append($input);
77
+ $npr.find('.card-body .form .btn').before($form_group);
78
+
79
+ $icon = $('<i>').addClass('fa').addClass('fa-times');
80
+ $error_div = $('<div>').addClass('alert').addClass('alert-danger').append($icon).append(' Nalezeno více osob, zadejte místo narození');
81
+ $npr.find('.card-body').prepend($error_div);
82
+ }
83
+ else if(error_kind == 'extended_search_multiple_records_found') {
84
+ $icon = $('<i>').addClass('fa').addClass('fa-times');
85
+ $error_div = $('<div>').addClass('alert').addClass('alert-danger').append($icon).append(' Nalezeno více osob, pokračujte, prosím, ručním zadáním údajů');
86
+
87
+ $('.old-person-form').prepend($error_div);
88
+ $('.new-person-form').addClass('hidden').hide();
89
+ $('.old-person-form').removeClass('hidden').show();
90
+ eGovUtilities.initPeople($('.old-person-form'));
91
+
92
+ // Fill in the form with the data
93
+ $('.old-person-form').find("input[name*='[firstname]']").val(form_data.firstname);
94
+ $('.old-person-form').find("input[name*='[lastname]']").val(form_data.lastname);
95
+ $('.old-person-form').find("input[name*='[birth_place]']").val(form_data.birth_place);
96
+ $('.old-person-form').find("input[name*='[birth_date]']").val(form_data.birth_date);
97
+ }
98
+ }
99
+ });
100
+ });
101
+ $('.legal-person-row a').on('click', function(e) {
102
+ e.preventDefault();
103
+ $this = $(this);
104
+ $lpr = $this.closest('.legal-person-row');
105
+ $.ajax({
106
+ url: '/internals/iszr/search',
107
+ data: { search: { ico: $lpr.find('input[name=ico]').val() } },
108
+ type: 'POST',
109
+ dataType: 'json',
110
+ success: function(data) {
111
+ $this.closest('.card-body').find('.alert').remove();
112
+
113
+ $icon = $('<i>').addClass('fa').addClass('fa-check');
114
+ $success_div = $('<div>').addClass('alert').addClass('alert-success').append($icon).append(` Ztotožněno: <b>${data.name}</b> (IČO: ${data.ico})`);
115
+ $lpr.find('.card-body .form').hide();
116
+ $lpr.find('.card-body').prepend($success_div);
117
+ $this.closest('.person-form').find("input[name*='[remote_id]']").val(data.remote_id);
118
+ },
119
+ error: function(data) {
120
+ $this.closest('.card-body').find('.alert').remove();
121
+
122
+ $icon = $('<i>').addClass('fa').addClass('fa-times');
123
+ $error_div = $('<div>').addClass('alert').addClass('alert-danger').append($icon).append(' Nenalezeno');
124
+ $lpr.find('.card-body').prepend($error_div);
125
+ }
126
+ });
127
+ });
@@ -249,6 +249,14 @@ cs:
249
249
  in_past: Musí být v minulosti
250
250
  after_1920: Musí být po roce 1920
251
251
  fileuid_format: Nesprávný tvar spisové značky
252
+ legal_person:
253
+ not_found: Osoba nebyla nalezena
254
+ natural_person:
255
+ multiple_results_found: Nalezeno více shod, je nutné doplnit místo narození
256
+ extended_search_not_found: Nebylo možné nalézt osobu
257
+ extended_search_multiple_records_found: Nalezeno více shod, je nutné údaje ručně vyplnit
258
+ not_found: Osobu nebylo možné najít
259
+
252
260
 
253
261
  egov_utils:
254
262
  current_users:
@@ -0,0 +1,7 @@
1
+ en:
2
+ errors:
3
+ messages:
4
+ multiple_results_found: Multiple results found
5
+ extended_search_not_found: No results found
6
+ extended_search_multiple_records_found: Multiple results found
7
+ not_found: No results found
data/config/routes.rb CHANGED
@@ -46,5 +46,5 @@ EgovUtils::Engine.routes.draw do
46
46
  namespace :redmine do
47
47
  resources :issues, only: :index
48
48
  end
49
-
49
+ post '/iszr/search', to: 'iszr#search', as: 'iszr_search'
50
50
  end
@@ -7,6 +7,9 @@ require 'audited'
7
7
  require 'paranoia'
8
8
  require 'azahara_schema'
9
9
  require 'azahara_schema_currency'
10
+ require 'active_interaction'
11
+ require 'dry-types'
12
+ require 'dry-struct'
10
13
 
11
14
  require 'font-awesome-sass'
12
15
  require 'modernizr-rails'
@@ -0,0 +1,87 @@
1
+ <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
2
+ xmlns:autocont1="urn:cz:isvs:iszr:services:IszrProbe:v1"
3
+ xmlns:abs="urn:cz:isvs:iszr:schemas:IszrAbstract:v1"
4
+ xmlns:e05="urn:cz:isvs:iszr:schemas:IszrRobCtiPodleUdaju:v1"
5
+ xmlns:reg="urn:cz:isvs:reg:schemas:RegTypy:v1" xmlns:xlinl="http://www.w3.org/1999/xlink"
6
+ xmlns:rod="urn:cz:isvs:rob:schemas:RobDotazyData:v1"
7
+ xmlns:rob="urn:cz:isvs:rob:schemas:RobTypy:v1"
8
+ xmlns:autocont2="urn:cz:isvs:ruian:schemas:CtiProRob:v1"
9
+ xmlns:autocont3="urn:cz:isvs:ruian:schemas:CtiAdresa:v1">
10
+ <soapenv:Header />
11
+ <soapenv:Body>
12
+ <e05:RobCtiPodleUdajuResponse>
13
+ <abs:OdpovedInfo>
14
+ <reg:CasOdpovedi>2015-05-10T09:47:11.7390778+02:00</reg:CasOdpovedi>
15
+ <reg:Status>
16
+ <reg:VysledekKod>OK</reg:VysledekKod>
17
+ </reg:Status>
18
+ <reg:AgendaZadostId>acccd106-b16c-4fcc-800c-c8785c5baa33</reg:AgendaZadostId>
19
+ <reg:IszrZadostId>f8daee48-98b4-13ae-9470-1fe429118000</reg:IszrZadostId>
20
+ </abs:OdpovedInfo>
21
+ <abs:MapaAifo lokalniAifoOd="2">
22
+ <reg:PrevodAifo>
23
+ <reg:LokalniAifo stavOvereniAifo="true">1</reg:LokalniAifo>
24
+ <reg:GlobalniAifo>xxxxxxxxxxxxxxxxx=</reg:GlobalniAifo>
25
+ </reg:PrevodAifo>
26
+ </abs:MapaAifo>
27
+ <abs:SeznamIdAdres>
28
+ <reg:AdresniMisto stavOvereniPrvku="existuje">6052771</reg:AdresniMisto>
29
+ <reg:AdresniLokalita stavOvereniPrvku="existuje"
30
+ typPrvku="OB">533416</reg:AdresniLokalita>
31
+ </abs:SeznamIdAdres>
32
+ <e05:RobOdpoved>
33
+ <e05:RobCtiPodleUdajuDataResponse>
34
+ <rod:RobAplikacniStatus>
35
+ <rob:VysledekRobKodType>OK</rob:VysledekRobKodType>
36
+ </rod:RobAplikacniStatus>
37
+ <rod:Osoba>
38
+ <rod:AdresaPobytu stav="spravny">6052771</rod:AdresaPobytu>
39
+ <rod:Aifo stav="spravny">1</rod:Aifo>
40
+ <rod:AifoKontrolaType>Q94cRDuOVyakFhM3ZG7LD8yBAMGErOw9C4ptaqtcxOEaVkIkoFOoEFoEhXYzvYHh5dWfca0KNO
41
+ vEQo2CdvoM6A==</rod:AifoKontrolaType>
42
+ <rod:DatumNarozeni stav="spravny">1990-09-09</rod:DatumNarozeni>
43
+ <rod:Jmeno stav="spravny">ZUZANA</rod:Jmeno>
44
+ <rod:MistoNarozeni stav="spravny">
45
+ <rob:NarozeniCr obec="true">533416</rob:NarozeniCr>
46
+ </rod:MistoNarozeni>
47
+ <rod:Prijmeni stav="spravny">STOHELICKÁ</rod:Prijmeni>
48
+ <rod:Obcanstvi stav="spravny" zmenaCas="2012-09-19T14:30:33">203</rod:Obcanstvi>
49
+ </rod:Osoba>
50
+ </e05:RobCtiPodleUdajuDataResponse>
51
+ </e05:RobOdpoved>
52
+ <e05:RuianOdpoved>
53
+ <e05:RuianCtiProRobDataResponse>
54
+ <autocont2:SeznamAdres>
55
+ <autocont2:PolozkovaAdresa> Správa základních registrů tel.: +420 236 031 752 Na Vápence
56
+ 14 Strana 11 z 11 www.szrcr.cz 130 00 Praha 3 – Žižkov <autocont3:OkresKod>3209</autocont3:OkresKod>
57
+ <autocont3:ObecKod>
58
+ 533416</autocont3:ObecKod>
59
+ <autocont3:ObecNazev>Kostelec nad Černými lesy</autocont3:ObecNazev>
60
+ <autocont3:CastObceKod>
61
+ 70165</autocont3:CastObceKod>
62
+ <autocont3:CastObceNazev>Kostelec nad Černými lesy</autocont3:CastObceNazev>
63
+ <autocont3:UliceKod>
64
+ 229857</autocont3:UliceKod>
65
+ <autocont3:UliceNazev>náměstí Smiřických</autocont3:UliceNazev>
66
+ <autocont3:PostaKod>
67
+ 28163</autocont3:PostaKod>
68
+ <autocont3:PostaNazev>Kostelec nad Černými Lesy</autocont3:PostaNazev>
69
+ <autocont3:StavebniObjektKod>
70
+ 6016715</autocont3:StavebniObjektKod>
71
+ <autocont3:AdresniMistoKod>6052771</autocont3:AdresniMistoKod>
72
+ <autocont3:TypCislaDomovnihoKod>
73
+ 1</autocont3:TypCislaDomovnihoKod>
74
+ <autocont3:CisloDomovni>53</autocont3:CisloDomovni>
75
+ </autocont2:PolozkovaAdresa>
76
+ </autocont2:SeznamAdres>
77
+ <autocont2:SeznamLokalit>
78
+ <autocont2:Lokalita TypPrvku="OB">
79
+ <autocont2:Kod>533416</autocont2:Kod>
80
+ <autocont2:Nazev>Kostelec nad Černými lesy</autocont2:Nazev>
81
+ </autocont2:Lokalita>
82
+ </autocont2:SeznamLokalit>
83
+ </e05:RuianCtiProRobDataResponse>
84
+ </e05:RuianOdpoved>
85
+ </e05:RobCtiPodleUdajuResponse>
86
+ </soapenv:Body>
87
+ </soapenv:Envelope>
@@ -0,0 +1,70 @@
1
+ <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
2
+ xmlns:autocont1="urn:cz:isvs:iszr:services:IszrProbe:v1"
3
+ xmlns:abs="urn:cz:isvs:iszr:schemas:IszrAbstract:v1"
4
+ xmlns:e20="urn:cz:isvs:iszr:schemas:IszrRosCtiIco:v1"
5
+ xmlns:reg="urn:cz:isvs:reg:schemas:RegTypy:v1"
6
+ xmlns:xlinl="http://www.w3.org/1999/xlink"
7
+ xmlns:sdo="urn:cz:isvs:ros:schemas:RosDotazyData:v2"
8
+ xmlns:ros="urn:cz:isvs:ros:schemas:RosTypy:v2"
9
+ xmlns:dot="urn:cz:isvs:ros:schemas:RosDotazyTypy:v1"
10
+ xmlns:autocont2="urn:cz:isvs:ruian:schemas:CtiProRob:v1"
11
+ xmlns:autocont3="urn:cz:isvs:ruian:schemas:CtiAdresa:v1">
12
+ <soapenv:Header />
13
+ <soapenv:Body>
14
+ <e20:RosCtiIcoResponse>
15
+ <abs:OdpovedInfo>
16
+ <reg:CasOdpovedi>2015-05-
17
+ 10T20:46:34.1867140+02:00</reg:CasOdpovedi>
18
+ <reg:Status>
19
+ <reg:VysledekKod>OK</reg:VysledekKod>
20
+ </reg:Status>
21
+ <reg:AgendaZadostId>b15ed167-530f-4145-ba48-
22
+ cdc3e2fb97a1</reg:AgendaZadostId>
23
+ <reg:IszrZadostId>19b5713c-9c4e-13ae-9992-
24
+ 158dbe232001</reg:IszrZadostId>
25
+ </abs:OdpovedInfo>
26
+ <abs:MapaAifo lokalniAifoOd="2">
27
+ <reg:PrevodAifo>
28
+ <reg:LokalniAifo>1</reg:LokalniAifo>
29
+ <reg:GlobalniAifo>zAxpZYYV6PXZ2v60XN1/n0s=</reg:GlobalniAifo>
30
+ </reg:PrevodAifo>
31
+ </abs:MapaAifo>
32
+ <abs:SeznamIdAdres>
33
+ <reg:AdresniMisto
34
+ stavOvereniPrvku="existuje">14612623</reg:AdresniMisto>
35
+ </abs:SeznamIdAdres>
36
+ <e20:RosOdpoved>
37
+ <e20:RosCtiIcoDataResponse>
38
+ <sdo:AplikacniStatus>
39
+ <ros:VysledekKod>OK</ros:VysledekKod>
40
+ </sdo:AplikacniStatus>
41
+ <sdo:FyzickaOsoba>
42
+ <dot:Ico>870731</dot:Ico>
43
+ <dot:IdZmeny>223</dot:IdZmeny>
44
+ <dot:PravniForma>
45
+ <dot:KodPravniFormy>100</dot:KodPravniFormy>
46
+ <dot:NazevPravniFormy>Podnikající fyzická osoba
47
+ tuzemská</dot:NazevPravniFormy>
48
+ </dot:PravniForma>
49
+ <dot:OsobyAgendy>
50
+ <dot:OsobaAgendy>
51
+ <dot:KodAgendy>A481</dot:KodAgendy>
52
+ <dot:KodOvm>00215678</dot:KodOvm>
53
+ <dot:NazevOsoby>Mikuláš ze Slova</dot:NazevOsoby>
54
+ <dot:DatumVznikuOpravneni>2024-07-
55
+ 01+02:00</dot:DatumVznikuOpravneni>
56
+ <dot:AdresaSidla>
57
+ <ros:OdkazRuian>14612623</ros:OdkazRuian>
58
+ </dot:AdresaSidla>
59
+ </dot:OsobaAgendy>
60
+ </dot:OsobyAgendy>
61
+ <dot:Fo>
62
+ <ros:Aifo>1</ros:Aifo>
63
+ </dot:Fo>
64
+ </sdo:FyzickaOsoba> Správa
65
+ základních registrů tel.: +420 225 514 758 Na Vápence 14 www.szrcr.cz 130 00 Praha 3 –
66
+ Žižkov </e20:RosCtiIcoDataResponse>
67
+ </e20:RosOdpoved>
68
+ </e20:RosCtiIcoResponse>
69
+ </soapenv:Body>
70
+ </soapenv:Envelope>