# frozen_string_literal: true module EgovUtils module Iszr module NaturalPeople class CreateRequest < Request string :firstname string :lastname string :birth_date string :birth_place, default: nil private def body if birth_place.present? search_stage_two else search_stage_one end end def search_stage_one Nokogiri::XML::Builder.new do |xml| xml['e05'].RobCtiPodleUdaju( 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance', 'xsi:schemaLocation' => 'urn:cz:isvs:iszr:schemas:IszrRobCtiPodleUdaju:v1 IszrRobCtiPodleUdaju.xsd', 'xmlns:abs' => 'urn:cz:isvs:iszr:schemas:IszrAbstract:v1', 'xmlns:e05' => 'urn:cz:isvs:iszr:schemas:IszrRobCtiPodleUdaju:v1', 'xmlns:reg' => 'urn:cz:isvs:reg:schemas:RegTypy:v1', 'xmlns:rod' => 'urn:cz:isvs:rob:schemas:RobDotazyData:v1', 'xmlns:rob' => 'urn:cz:isvs:rob:schemas:RobTypy:v1' ) { xml['abs'].ZadostInfo { xml['reg'].CasZadosti Time.current xml['reg'].Agenda 'A482' xml['reg'].AgendovaRole 'CTENAR' xml['reg'].Ovm '00025429' xml['reg'].Ais '124' xml['reg'].Uzivatel 'Uzivatel156' xml['reg'].AgendaZadostId '5a7b9af0-f759-4632-ab96-7bb06df1b98c' } xml['abs'].AutorizaceInfo { xml['abs'].SeznamUdaju 'Aifo Prijmeni Jmeno AdresaPobytu DorucovaciAdresa DatumNarozeni MistoNarozeni DatumUmrti DatumPravniMociUmrti MistoUmrti DatovaSchrankaROB Doklad Obcanstvi' } xml['e05'].Zadost { xml['e05'].RobCtiPodleUdajuData { xml['rod'].DatumNarozeni birth_date xml['rod'].Jmeno firstname xml['rod'].Prijmeni lastname } } } end end def search_stage_two Nokogiri::XML::Builder.new do |xml| xml['e05'].RobCtiPodleUdaju( 'xmlns:xsi' => 'http://www.w3.org/2001/XMLSchema-instance', 'xsi:schemaLocation' => 'urn:cz:isvs:iszr:schemas:IszrRobCtiPodleUdaju:v1 IszrRobCtiPodleUdaju.xsd', 'xmlns:abs' => 'urn:cz:isvs:iszr:schemas:IszrAbstract:v1', 'xmlns:e05' => 'urn:cz:isvs:iszr:schemas:IszrRobCtiPodleUdaju:v1', 'xmlns:reg' => 'urn:cz:isvs:reg:schemas:RegTypy:v1', 'xmlns:rod' => 'urn:cz:isvs:rob:schemas:RobDotazyData:v1', 'xmlns:rob' => 'urn:cz:isvs:rob:schemas:RobTypy:v1' ) { xml['abs'].ZadostInfo { xml['reg'].CasZadosti Time.current xml['reg'].Agenda 'A482' xml['reg'].AgendovaRole 'CTENAR' xml['reg'].Ovm '00025429' xml['reg'].Ais '124' xml['reg'].Uzivatel 'Uzivatel156' xml['reg'].AgendaZadostId '5a7b9af0-f759-4632-ab96-7bb06df1b98c' } xml['abs'].AutorizaceInfo { xml['abs'].SeznamUdaju 'Aifo Prijmeni Jmeno AdresaPobytu DorucovaciAdresa DatumNarozeni MistoNarozeni DatumUmrti DatumPravniMociUmrti MistoUmrti DatovaSchrankaROB Doklad Obcanstvi' } xml['e05'].Zadost { xml['e05'].RobCtiPodleUdajuData { xml['rod'].MistoNarozeni birth_place xml['rod'].DatumNarozeni birth_date xml['rod'].Jmeno firstname xml['rod'].Prijmeni lastname } } } end end def service_id 'E05' end end end end end