money_s3 0.5.0 → 0.6.0

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 (347) hide show
  1. checksums.yaml +4 -4
  2. data/lib/money_s3/builders/adresa_type.rb +8 -29
  3. data/lib/money_s3/builders/alternativa_prislusenstvi_type.rb +12 -33
  4. data/lib/money_s3/builders/bank_dokl.rb +65 -226
  5. data/lib/money_s3/builders/bank_spojeni_type.rb +7 -23
  6. data/lib/money_s3/builders/bank_ucet_pokladna_type.rb +28 -139
  7. data/lib/money_s3/builders/base_builder.rb +18 -4
  8. data/lib/money_s3/builders/castky.rb +19 -85
  9. data/lib/money_s3/builders/cena_type.rb +6 -17
  10. data/lib/money_s3/builders/cenova_hladina.rb +10 -31
  11. data/lib/money_s3/builders/cenova_hladina_type.rb +10 -31
  12. data/lib/money_s3/builders/child_kusovnik_type.rb +31 -142
  13. data/lib/money_s3/builders/cinnost.rb +6 -17
  14. data/lib/money_s3/builders/clen_dph.rb +15 -61
  15. data/lib/money_s3/builders/dalsi_sazba.rb +8 -29
  16. data/lib/money_s3/builders/data.rb +8 -5
  17. data/lib/money_s3/builders/def_sub_pol_type.rb +7 -8
  18. data/lib/money_s3/builders/definice_ceny.rb +4 -1
  19. data/lib/money_s3/builders/dl_prij.rb +66 -257
  20. data/lib/money_s3/builders/dl_vyd.rb +66 -257
  21. data/lib/money_s3/builders/dodavka_type.rb +7 -23
  22. data/lib/money_s3/builders/dokl_ref_type.rb +9 -25
  23. data/lib/money_s3/builders/doklad.rb +13 -49
  24. data/lib/money_s3/builders/doklad_firma_type.rb +36 -117
  25. data/lib/money_s3/builders/doklad_hraz.rb +9 -25
  26. data/lib/money_s3/builders/e_shop_info.rb +6 -17
  27. data/lib/money_s3/builders/eet_type.rb +31 -122
  28. data/lib/money_s3/builders/ekategorie_type.rb +12 -33
  29. data/lib/money_s3/builders/ekategorie_zasoba_type.rb +11 -37
  30. data/lib/money_s3/builders/error_info_type.rb +7 -23
  31. data/lib/money_s3/builders/eshop.rb +15 -61
  32. data/lib/money_s3/builders/eshop_zasoba_type.rb +10 -31
  33. data/lib/money_s3/builders/fakt_prij.rb +138 -494
  34. data/lib/money_s3/builders/fakt_vyd.rb +138 -494
  35. data/lib/money_s3/builders/faktura_type.rb +138 -494
  36. data/lib/money_s3/builders/firma.rb +64 -235
  37. data/lib/money_s3/builders/firma_type.rb +64 -235
  38. data/lib/money_s3/builders/header_kusovnik_type.rb +27 -118
  39. data/lib/money_s3/builders/import.rb +19 -20
  40. data/lib/money_s3/builders/int_dokl.rb +47 -183
  41. data/lib/money_s3/builders/inv_dokl_type.rb +11 -37
  42. data/lib/money_s3/builders/isdoc.rb +4 -1
  43. data/lib/money_s3/builders/km_karta.rb +55 -226
  44. data/lib/money_s3/builders/km_karta_type.rb +55 -226
  45. data/lib/money_s3/builders/komponenta_kusovnik_type.rb +8 -5
  46. data/lib/money_s3/builders/komponenta_type.rb +11 -12
  47. data/lib/money_s3/builders/konec_prij_firma_type.rb +28 -99
  48. data/lib/money_s3/builders/konfigurace.rb +4 -1
  49. data/lib/money_s3/builders/kurz_listek.rb +8 -19
  50. data/lib/money_s3/builders/kurz_rozd.rb +9 -25
  51. data/lib/money_s3/builders/kurz_type.rb +15 -61
  52. data/lib/money_s3/builders/kusovnik_type.rb +10 -7
  53. data/lib/money_s3/builders/mena_type.rb +6 -17
  54. data/lib/money_s3/builders/message_type.rb +9 -10
  55. data/lib/money_s3/builders/moje_firma_type.rb +30 -101
  56. data/lib/money_s3/builders/money_data.rb +98 -95
  57. data/lib/money_s3/builders/msg_fakt_poloz_type.rb +6 -3
  58. data/lib/money_s3/builders/msg_firma_type.rb +8 -5
  59. data/lib/money_s3/builders/msg_poloz_type.rb +8 -5
  60. data/lib/money_s3/builders/mz_priplatek.rb +7 -8
  61. data/lib/money_s3/builders/mzda_type.rb +17 -53
  62. data/lib/money_s3/builders/mzdove_obdobi_type.rb +8 -19
  63. data/lib/money_s3/builders/nab_prij.rb +73 -269
  64. data/lib/money_s3/builders/nab_vyd.rb +73 -269
  65. data/lib/money_s3/builders/nep_platba_type.rb +7 -13
  66. data/lib/money_s3/builders/nep_platidlo_type.rb +6 -17
  67. data/lib/money_s3/builders/nepritomnost_type.rb +20 -91
  68. data/lib/money_s3/builders/neskl_polozka.rb +25 -106
  69. data/lib/money_s3/builders/norm_poloz_id_type.rb +19 -85
  70. data/lib/money_s3/builders/norm_poloz_ud_type.rb +20 -91
  71. data/lib/money_s3/builders/obdobi_dph.rb +18 -79
  72. data/lib/money_s3/builders/obj_prij.rb +73 -269
  73. data/lib/money_s3/builders/obj_vyd.rb +73 -269
  74. data/lib/money_s3/builders/osoba_type.rb +27 -103
  75. data/lib/money_s3/builders/parametr_karta_type.rb +7 -13
  76. data/lib/money_s3/builders/parametr_type.rb +10 -41
  77. data/lib/money_s3/builders/pc.rb +26 -67
  78. data/lib/money_s3/builders/pohledavka_type.rb +79 -290
  79. data/lib/money_s3/builders/pok_dokl.rb +50 -191
  80. data/lib/money_s3/builders/pol_faktury_type.rb +29 -115
  81. data/lib/money_s3/builders/pol_inv_dokl_type.rb +16 -37
  82. data/lib/money_s3/builders/pol_objedn_type.rb +52 -178
  83. data/lib/money_s3/builders/pol_skl_dokl_type.rb +43 -154
  84. data/lib/money_s3/builders/popt_prij.rb +73 -269
  85. data/lib/money_s3/builders/popt_vyd.rb +73 -269
  86. data/lib/money_s3/builders/prac_pomer.rb +7 -23
  87. data/lib/money_s3/builders/predkontace.rb +17 -73
  88. data/lib/money_s3/builders/predkontace_de_type.rb +10 -41
  89. data/lib/money_s3/builders/prepr_dopln_udaj_type.rb +6 -17
  90. data/lib/money_s3/builders/prepravce_type.rb +7 -23
  91. data/lib/money_s3/builders/prevodka.rb +66 -257
  92. data/lib/money_s3/builders/prijemka.rb +66 -257
  93. data/lib/money_s3/builders/prodejka.rb +66 -257
  94. data/lib/money_s3/builders/reference.rb +8 -5
  95. data/lib/money_s3/builders/reference_type.rb +6 -3
  96. data/lib/money_s3/builders/rozuct_poloz_id_type.rb +17 -73
  97. data/lib/money_s3/builders/rozuct_poloz_ud_type.rb +21 -82
  98. data/lib/money_s3/builders/seznam_bank_dokl.rb +6 -3
  99. data/lib/money_s3/builders/seznam_cen_hladin.rb +6 -3
  100. data/lib/money_s3/builders/seznam_cinnosti.rb +6 -3
  101. data/lib/money_s3/builders/seznam_clen_dph.rb +6 -3
  102. data/lib/money_s3/builders/seznam_dl_prij.rb +6 -3
  103. data/lib/money_s3/builders/seznam_dl_vyd.rb +6 -3
  104. data/lib/money_s3/builders/seznam_fakt_prij.rb +6 -3
  105. data/lib/money_s3/builders/seznam_fakt_vyd.rb +6 -3
  106. data/lib/money_s3/builders/seznam_firem.rb +6 -3
  107. data/lib/money_s3/builders/seznam_int_dokl.rb +6 -3
  108. data/lib/money_s3/builders/seznam_inv_dokl.rb +6 -3
  109. data/lib/money_s3/builders/seznam_km_karta.rb +6 -3
  110. data/lib/money_s3/builders/seznam_kurz_listku.rb +6 -3
  111. data/lib/money_s3/builders/seznam_mezd.rb +6 -3
  112. data/lib/money_s3/builders/seznam_nab_prij.rb +6 -3
  113. data/lib/money_s3/builders/seznam_nab_vyd.rb +6 -3
  114. data/lib/money_s3/builders/seznam_obj_prij.rb +6 -3
  115. data/lib/money_s3/builders/seznam_obj_vyd.rb +6 -3
  116. data/lib/money_s3/builders/seznam_pok_dokl.rb +6 -3
  117. data/lib/money_s3/builders/seznam_popt_prij.rb +6 -3
  118. data/lib/money_s3/builders/seznam_popt_vyd.rb +6 -3
  119. data/lib/money_s3/builders/seznam_predkontaci.rb +6 -3
  120. data/lib/money_s3/builders/seznam_predkontaci_de.rb +6 -3
  121. data/lib/money_s3/builders/seznam_prevodka.rb +6 -3
  122. data/lib/money_s3/builders/seznam_prijemka.rb +6 -3
  123. data/lib/money_s3/builders/seznam_prodejka.rb +6 -3
  124. data/lib/money_s3/builders/seznam_skladu.rb +6 -3
  125. data/lib/money_s3/builders/seznam_stredisek.rb +6 -3
  126. data/lib/money_s3/builders/seznam_typ_kusovnik.rb +6 -3
  127. data/lib/money_s3/builders/seznam_type.rb +4 -1
  128. data/lib/money_s3/builders/seznam_uc_osnov.rb +6 -3
  129. data/lib/money_s3/builders/seznam_vazeb.rb +6 -3
  130. data/lib/money_s3/builders/seznam_vydejka.rb +6 -3
  131. data/lib/money_s3/builders/seznam_vyrobka.rb +6 -3
  132. data/lib/money_s3/builders/seznam_zak_kusovnik.rb +6 -3
  133. data/lib/money_s3/builders/seznam_zakazka.rb +6 -3
  134. data/lib/money_s3/builders/seznam_zamestnancu.rb +6 -3
  135. data/lib/money_s3/builders/seznam_zasoba.rb +6 -3
  136. data/lib/money_s3/builders/sk_doklad_firma_type.rb +34 -115
  137. data/lib/money_s3/builders/sklad.rb +34 -120
  138. data/lib/money_s3/builders/sklad_type.rb +34 -120
  139. data/lib/money_s3/builders/skupina_firem_type.rb +6 -17
  140. data/lib/money_s3/builders/skupina_kusovnik_type.rb +6 -17
  141. data/lib/money_s3/builders/skupina_zasob_type.rb +31 -117
  142. data/lib/money_s3/builders/souhrn_dph_pol_type.rb +9 -25
  143. data/lib/money_s3/builders/souhrn_dph_type.rb +10 -31
  144. data/lib/money_s3/builders/stav_zasoby_type.rb +6 -17
  145. data/lib/money_s3/builders/stredisko.rb +6 -17
  146. data/lib/money_s3/builders/sub_pol_obj_type.rb +7 -8
  147. data/lib/money_s3/builders/subpol_inv_d_type.rb +7 -8
  148. data/lib/money_s3/builders/telefon_type.rb +6 -17
  149. data/lib/money_s3/builders/typ_priplatku_type.rb +13 -49
  150. data/lib/money_s3/builders/typ_zasilky_type.rb +6 -17
  151. data/lib/money_s3/builders/uc_osnova_type.rb +20 -91
  152. data/lib/money_s3/builders/uc_pohyb_type.rb +8 -29
  153. data/lib/money_s3/builders/ucet.rb +7 -23
  154. data/lib/money_s3/builders/ucty_pohybu_type.rb +13 -49
  155. data/lib/money_s3/builders/uhrada_pduhrada.rb +16 -67
  156. data/lib/money_s3/builders/uhrada_type.rb +23 -59
  157. data/lib/money_s3/builders/valuty.rb +9 -10
  158. data/lib/money_s3/builders/valuty_hraz.rb +7 -8
  159. data/lib/money_s3/builders/valuty_uhr.rb +7 -8
  160. data/lib/money_s3/builders/vazba_type.rb +7 -13
  161. data/lib/money_s3/builders/vlajka_type.rb +13 -49
  162. data/lib/money_s3/builders/vlajky.rb +8 -5
  163. data/lib/money_s3/builders/vydejka.rb +66 -257
  164. data/lib/money_s3/builders/vyrobka.rb +66 -257
  165. data/lib/money_s3/builders/vyrobni_cislo.rb +6 -17
  166. data/lib/money_s3/builders/vyrobni_cislo_type.rb +6 -17
  167. data/lib/money_s3/builders/vysledek_odesl.rb +7 -8
  168. data/lib/money_s3/builders/vzor_komponenta_type.rb +10 -7
  169. data/lib/money_s3/builders/zakazka.rb +27 -103
  170. data/lib/money_s3/builders/zamestnanec_type.rb +10 -31
  171. data/lib/money_s3/builders/zasoba.rb +54 -175
  172. data/lib/money_s3/builders/zauctovani_dph_detype.rb +11 -37
  173. data/lib/money_s3/builders/zauctovani_dph_type.rb +13 -49
  174. data/lib/money_s3/builders/zavazek_type.rb +74 -280
  175. data/lib/money_s3/parsers/adresa_type.rb +13 -12
  176. data/lib/money_s3/parsers/alternativa_prislusenstvi_type.rb +17 -16
  177. data/lib/money_s3/parsers/bank_dokl.rb +85 -84
  178. data/lib/money_s3/parsers/bank_spojeni_type.rb +10 -9
  179. data/lib/money_s3/parsers/bank_ucet_pokladna_type.rb +49 -48
  180. data/lib/money_s3/parsers/base_parser.rb +19 -22
  181. data/lib/money_s3/parsers/castky.rb +31 -30
  182. data/lib/money_s3/parsers/cena_type.rb +8 -7
  183. data/lib/money_s3/parsers/cenova_hladina.rb +15 -14
  184. data/lib/money_s3/parsers/cenova_hladina_type.rb +15 -14
  185. data/lib/money_s3/parsers/child_kusovnik_type.rb +51 -50
  186. data/lib/money_s3/parsers/cinnost.rb +8 -7
  187. data/lib/money_s3/parsers/clen_dph.rb +22 -21
  188. data/lib/money_s3/parsers/dalsi_sazba.rb +13 -12
  189. data/lib/money_s3/parsers/data.rb +6 -5
  190. data/lib/money_s3/parsers/def_sub_pol_type.rb +6 -5
  191. data/lib/money_s3/parsers/dl_prij.rb +105 -104
  192. data/lib/money_s3/parsers/dl_vyd.rb +105 -104
  193. data/lib/money_s3/parsers/dodavka_type.rb +10 -9
  194. data/lib/money_s3/parsers/dokl_ref_type.rb +13 -12
  195. data/lib/money_s3/parsers/doklad.rb +19 -18
  196. data/lib/money_s3/parsers/doklad_firma_type.rb +53 -52
  197. data/lib/money_s3/parsers/doklad_hraz.rb +13 -12
  198. data/lib/money_s3/parsers/e_shop_info.rb +8 -7
  199. data/lib/money_s3/parsers/eet_type.rb +45 -44
  200. data/lib/money_s3/parsers/ekategorie_type.rb +17 -16
  201. data/lib/money_s3/parsers/ekategorie_zasoba_type.rb +17 -16
  202. data/lib/money_s3/parsers/error_info_type.rb +10 -9
  203. data/lib/money_s3/parsers/eshop.rb +22 -21
  204. data/lib/money_s3/parsers/eshop_zasoba_type.rb +15 -14
  205. data/lib/money_s3/parsers/fakt_prij.rb +187 -186
  206. data/lib/money_s3/parsers/fakt_vyd.rb +187 -186
  207. data/lib/money_s3/parsers/faktura_type.rb +187 -186
  208. data/lib/money_s3/parsers/firma.rb +99 -98
  209. data/lib/money_s3/parsers/firma_type.rb +99 -98
  210. data/lib/money_s3/parsers/header_kusovnik_type.rb +43 -42
  211. data/lib/money_s3/parsers/import.rb +19 -18
  212. data/lib/money_s3/parsers/int_dokl.rb +75 -74
  213. data/lib/money_s3/parsers/inv_dokl_type.rb +17 -16
  214. data/lib/money_s3/parsers/km_karta.rb +83 -82
  215. data/lib/money_s3/parsers/km_karta_type.rb +83 -82
  216. data/lib/money_s3/parsers/komponenta_kusovnik_type.rb +6 -5
  217. data/lib/money_s3/parsers/komponenta_type.rb +10 -9
  218. data/lib/money_s3/parsers/konec_prij_firma_type.rb +43 -42
  219. data/lib/money_s3/parsers/kurz_listek.rb +10 -9
  220. data/lib/money_s3/parsers/kurz_rozd.rb +13 -12
  221. data/lib/money_s3/parsers/kurz_type.rb +22 -21
  222. data/lib/money_s3/parsers/kusovnik_type.rb +8 -7
  223. data/lib/money_s3/parsers/mena_type.rb +8 -7
  224. data/lib/money_s3/parsers/message_type.rb +8 -7
  225. data/lib/money_s3/parsers/moje_firma_type.rb +45 -44
  226. data/lib/money_s3/parsers/money_data.rb +97 -96
  227. data/lib/money_s3/parsers/msg_fakt_poloz_type.rb +4 -3
  228. data/lib/money_s3/parsers/msg_firma_type.rb +6 -5
  229. data/lib/money_s3/parsers/msg_poloz_type.rb +6 -5
  230. data/lib/money_s3/parsers/mz_priplatek.rb +6 -5
  231. data/lib/money_s3/parsers/mzda_type.rb +24 -23
  232. data/lib/money_s3/parsers/mzdove_obdobi_type.rb +10 -9
  233. data/lib/money_s3/parsers/nab_prij.rb +113 -112
  234. data/lib/money_s3/parsers/nab_vyd.rb +113 -112
  235. data/lib/money_s3/parsers/nep_platba_type.rb +8 -7
  236. data/lib/money_s3/parsers/nep_platidlo_type.rb +8 -7
  237. data/lib/money_s3/parsers/nepritomnost_type.rb +33 -32
  238. data/lib/money_s3/parsers/neskl_polozka.rb +39 -38
  239. data/lib/money_s3/parsers/norm_poloz_id_type.rb +31 -30
  240. data/lib/money_s3/parsers/norm_poloz_ud_type.rb +33 -32
  241. data/lib/money_s3/parsers/obdobi_dph.rb +29 -28
  242. data/lib/money_s3/parsers/obj_prij.rb +113 -112
  243. data/lib/money_s3/parsers/obj_vyd.rb +113 -112
  244. data/lib/money_s3/parsers/osoba_type.rb +43 -42
  245. data/lib/money_s3/parsers/parametr_karta_type.rb +8 -7
  246. data/lib/money_s3/parsers/parametr_type.rb +17 -16
  247. data/lib/money_s3/parsers/pc.rb +35 -34
  248. data/lib/money_s3/parsers/pohledavka_type.rb +107 -106
  249. data/lib/money_s3/parsers/pok_dokl.rb +79 -78
  250. data/lib/money_s3/parsers/pol_faktury_type.rb +47 -46
  251. data/lib/money_s3/parsers/pol_inv_dokl_type.rb +20 -19
  252. data/lib/money_s3/parsers/pol_objedn_type.rb +67 -66
  253. data/lib/money_s3/parsers/pol_skl_dokl_type.rb +59 -58
  254. data/lib/money_s3/parsers/popt_prij.rb +113 -112
  255. data/lib/money_s3/parsers/popt_vyd.rb +113 -112
  256. data/lib/money_s3/parsers/prac_pomer.rb +10 -9
  257. data/lib/money_s3/parsers/predkontace.rb +27 -26
  258. data/lib/money_s3/parsers/predkontace_de_type.rb +17 -16
  259. data/lib/money_s3/parsers/prepr_dopln_udaj_type.rb +8 -7
  260. data/lib/money_s3/parsers/prepravce_type.rb +10 -9
  261. data/lib/money_s3/parsers/prevodka.rb +105 -104
  262. data/lib/money_s3/parsers/prijemka.rb +105 -104
  263. data/lib/money_s3/parsers/prodejka.rb +105 -104
  264. data/lib/money_s3/parsers/reference.rb +6 -5
  265. data/lib/money_s3/parsers/reference_type.rb +4 -3
  266. data/lib/money_s3/parsers/rozuct_poloz_id_type.rb +27 -26
  267. data/lib/money_s3/parsers/rozuct_poloz_ud_type.rb +31 -30
  268. data/lib/money_s3/parsers/seznam_bank_dokl.rb +4 -3
  269. data/lib/money_s3/parsers/seznam_cen_hladin.rb +4 -3
  270. data/lib/money_s3/parsers/seznam_cinnosti.rb +4 -3
  271. data/lib/money_s3/parsers/seznam_clen_dph.rb +4 -3
  272. data/lib/money_s3/parsers/seznam_dl_prij.rb +4 -3
  273. data/lib/money_s3/parsers/seznam_dl_vyd.rb +4 -3
  274. data/lib/money_s3/parsers/seznam_fakt_prij.rb +4 -3
  275. data/lib/money_s3/parsers/seznam_fakt_vyd.rb +4 -3
  276. data/lib/money_s3/parsers/seznam_firem.rb +4 -3
  277. data/lib/money_s3/parsers/seznam_int_dokl.rb +4 -3
  278. data/lib/money_s3/parsers/seznam_inv_dokl.rb +4 -3
  279. data/lib/money_s3/parsers/seznam_km_karta.rb +4 -3
  280. data/lib/money_s3/parsers/seznam_kurz_listku.rb +4 -3
  281. data/lib/money_s3/parsers/seznam_mezd.rb +4 -3
  282. data/lib/money_s3/parsers/seznam_nab_prij.rb +4 -3
  283. data/lib/money_s3/parsers/seznam_nab_vyd.rb +4 -3
  284. data/lib/money_s3/parsers/seznam_obj_prij.rb +4 -3
  285. data/lib/money_s3/parsers/seznam_obj_vyd.rb +4 -3
  286. data/lib/money_s3/parsers/seznam_pok_dokl.rb +4 -3
  287. data/lib/money_s3/parsers/seznam_popt_prij.rb +4 -3
  288. data/lib/money_s3/parsers/seznam_popt_vyd.rb +4 -3
  289. data/lib/money_s3/parsers/seznam_predkontaci.rb +4 -3
  290. data/lib/money_s3/parsers/seznam_predkontaci_de.rb +4 -3
  291. data/lib/money_s3/parsers/seznam_prevodka.rb +4 -3
  292. data/lib/money_s3/parsers/seznam_prijemka.rb +4 -3
  293. data/lib/money_s3/parsers/seznam_prodejka.rb +4 -3
  294. data/lib/money_s3/parsers/seznam_skladu.rb +4 -3
  295. data/lib/money_s3/parsers/seznam_stredisek.rb +4 -3
  296. data/lib/money_s3/parsers/seznam_typ_kusovnik.rb +4 -3
  297. data/lib/money_s3/parsers/seznam_uc_osnov.rb +4 -3
  298. data/lib/money_s3/parsers/seznam_vazeb.rb +4 -3
  299. data/lib/money_s3/parsers/seznam_vydejka.rb +4 -3
  300. data/lib/money_s3/parsers/seznam_vyrobka.rb +4 -3
  301. data/lib/money_s3/parsers/seznam_zak_kusovnik.rb +4 -3
  302. data/lib/money_s3/parsers/seznam_zakazka.rb +4 -3
  303. data/lib/money_s3/parsers/seznam_zamestnancu.rb +4 -3
  304. data/lib/money_s3/parsers/seznam_zasoba.rb +4 -3
  305. data/lib/money_s3/parsers/sk_doklad_firma_type.rb +51 -50
  306. data/lib/money_s3/parsers/sklad.rb +45 -44
  307. data/lib/money_s3/parsers/sklad_type.rb +45 -44
  308. data/lib/money_s3/parsers/skupina_firem_type.rb +8 -7
  309. data/lib/money_s3/parsers/skupina_kusovnik_type.rb +8 -7
  310. data/lib/money_s3/parsers/skupina_zasob_type.rb +49 -48
  311. data/lib/money_s3/parsers/souhrn_dph_pol_type.rb +13 -12
  312. data/lib/money_s3/parsers/souhrn_dph_type.rb +15 -14
  313. data/lib/money_s3/parsers/stav_zasoby_type.rb +8 -7
  314. data/lib/money_s3/parsers/stredisko.rb +8 -7
  315. data/lib/money_s3/parsers/sub_pol_obj_type.rb +6 -5
  316. data/lib/money_s3/parsers/subpol_inv_d_type.rb +6 -5
  317. data/lib/money_s3/parsers/telefon_type.rb +8 -7
  318. data/lib/money_s3/parsers/typ_priplatku_type.rb +19 -18
  319. data/lib/money_s3/parsers/typ_zasilky_type.rb +8 -7
  320. data/lib/money_s3/parsers/uc_osnova_type.rb +33 -32
  321. data/lib/money_s3/parsers/uc_pohyb_type.rb +13 -12
  322. data/lib/money_s3/parsers/ucet.rb +10 -9
  323. data/lib/money_s3/parsers/ucty_pohybu_type.rb +19 -18
  324. data/lib/money_s3/parsers/uhrada_pduhrada.rb +24 -23
  325. data/lib/money_s3/parsers/uhrada_type.rb +31 -30
  326. data/lib/money_s3/parsers/valuty.rb +8 -7
  327. data/lib/money_s3/parsers/valuty_hraz.rb +6 -5
  328. data/lib/money_s3/parsers/valuty_uhr.rb +6 -5
  329. data/lib/money_s3/parsers/vazba_type.rb +8 -7
  330. data/lib/money_s3/parsers/vlajka_type.rb +19 -18
  331. data/lib/money_s3/parsers/vlajky.rb +6 -5
  332. data/lib/money_s3/parsers/vydejka.rb +105 -104
  333. data/lib/money_s3/parsers/vyrobka.rb +105 -104
  334. data/lib/money_s3/parsers/vyrobni_cislo.rb +8 -7
  335. data/lib/money_s3/parsers/vyrobni_cislo_type.rb +8 -7
  336. data/lib/money_s3/parsers/vysledek_odesl.rb +6 -5
  337. data/lib/money_s3/parsers/vzor_komponenta_type.rb +8 -7
  338. data/lib/money_s3/parsers/zakazka.rb +43 -42
  339. data/lib/money_s3/parsers/zamestnanec_type.rb +15 -14
  340. data/lib/money_s3/parsers/zasoba.rb +79 -78
  341. data/lib/money_s3/parsers/zauctovani_dph_detype.rb +17 -16
  342. data/lib/money_s3/parsers/zauctovani_dph_type.rb +21 -20
  343. data/lib/money_s3/parsers/zavazek_type.rb +103 -102
  344. data/lib/money_s3/with_attributes.rb +13 -0
  345. data/lib/money_s3.rb +5 -15
  346. data/money_s3.gemspec +1 -1
  347. metadata +3 -2
@@ -17,291 +17,100 @@ module MoneyS3
17
17
  include BaseBuilder
18
18
 
19
19
  def builder
20
- root = Ox::Element.new(element_name)
21
-
22
- if attributes.key? :cislo_dokla
23
- element = Ox::Element.new('CisloDokla')
24
- element << attributes[:cislo_dokla] if attributes[:cislo_dokla]
25
- root << element
26
- end
27
-
28
- if attributes.key? :zpusob_uctovani
29
- element = Ox::Element.new('ZpusobUctovani')
30
- element << attributes[:zpusob_uctovani] if attributes[:zpusob_uctovani]
31
- root << element
32
- end
33
-
34
- if attributes.key? :c_objednavk
35
- element = Ox::Element.new('CObjednavk')
36
- element << attributes[:c_objednavk] if attributes[:c_objednavk]
37
- root << element
38
- end
39
-
40
- if attributes.key? :kp_from_odb
41
- element = Ox::Element.new('KPFromOdb')
42
- element << attributes[:kp_from_odb] if attributes[:kp_from_odb]
43
- root << element
44
- end
45
-
46
- if attributes.key? :datum
47
- element = Ox::Element.new('Datum')
48
- element << attributes[:datum] if attributes[:datum]
49
- root << element
50
- end
51
-
52
- if attributes.key? :sleva
53
- element = Ox::Element.new('Sleva')
54
- element << attributes[:sleva] if attributes[:sleva]
55
- root << element
56
- end
57
-
58
- if attributes.key? :d_rada
59
- element = Ox::Element.new('DRada')
60
- element << attributes[:d_rada] if attributes[:d_rada]
61
- root << element
62
- end
63
-
64
- if attributes.key? :stredisko
65
- element = Ox::Element.new('Stredisko')
66
- element << attributes[:stredisko] if attributes[:stredisko]
67
- root << element
68
- end
69
-
70
- if attributes.key? :zakazka
71
- element = Ox::Element.new('Zakazka')
72
- element << attributes[:zakazka] if attributes[:zakazka]
73
- root << element
74
- end
75
-
76
- if attributes.key? :cinnost
77
- element = Ox::Element.new('Cinnost')
78
- element << attributes[:cinnost] if attributes[:cinnost]
79
- root << element
20
+ root = Ox::Element.new(name)
21
+ if data.respond_to? :attributes
22
+ data.attributes.each { |k, v| root[k] = v }
80
23
  end
81
24
 
82
- if attributes.key? :popis
83
- element = Ox::Element.new('Popis')
84
- element << attributes[:popis] if attributes[:popis]
85
- root << element
86
- end
87
-
88
- if attributes.key? :vystavil
89
- element = Ox::Element.new('Vystavil')
90
- element << attributes[:vystavil] if attributes[:vystavil]
91
- root << element
92
- end
93
-
94
- if attributes.key? :vyriz_faktu
95
- element = Ox::Element.new('VyrizFaktu')
96
- element << attributes[:vyriz_faktu] if attributes[:vyriz_faktu]
97
- root << element
98
- end
99
-
100
- if attributes.key? :text_pred_po
101
- element = Ox::Element.new('TextPredPo')
102
- element << attributes[:text_pred_po] if attributes[:text_pred_po]
103
- root << element
104
- end
105
-
106
- if attributes.key? :text_za_pol
107
- element = Ox::Element.new('TextZaPol')
108
- element << attributes[:text_za_pol] if attributes[:text_za_pol]
109
- root << element
110
- end
111
-
112
- if attributes.key? :nadpis
113
- element = Ox::Element.new('Nadpis')
114
- element << attributes[:nadpis] if attributes[:nadpis]
115
- root << element
116
- end
117
-
118
- if attributes.key? :zkrat_typu_d
119
- element = Ox::Element.new('ZkratTypuD')
120
- element << attributes[:zkrat_typu_d] if attributes[:zkrat_typu_d]
121
- root << element
122
- end
123
-
124
- if attributes.key? :poriz_cena
125
- element = Ox::Element.new('PorizCena')
126
- element << attributes[:poriz_cena] if attributes[:poriz_cena]
127
- root << element
128
- end
129
-
130
- if attributes.key? :popis_x
131
- element = Ox::Element.new('PopisX')
132
- element << attributes[:popis_x] if attributes[:popis_x]
133
- root << element
134
- end
135
-
136
- if attributes.key? :fiskal
137
- element = Ox::Element.new('Fiskal')
138
- element << attributes[:fiskal] if attributes[:fiskal]
139
- root << element
140
- end
141
-
142
- if attributes.key? :fis_doklad
143
- element = Ox::Element.new('FisDoklad')
144
- element << attributes[:fis_doklad] if attributes[:fis_doklad]
145
- root << element
146
- end
147
-
148
- if attributes.key? :dat_sk_poh
149
- element = Ox::Element.new('DatSkPoh')
150
- element << attributes[:dat_sk_poh] if attributes[:dat_sk_poh]
151
- root << element
152
- end
153
-
154
- if attributes.key? :stat_moss
155
- element = Ox::Element.new('StatMOSS')
156
- element << attributes[:stat_moss] if attributes[:stat_moss]
157
- root << element
158
- end
159
-
160
- if attributes.key? :sazba_dph1
161
- element = Ox::Element.new('SazbaDPH1')
162
- element << attributes[:sazba_dph1] if attributes[:sazba_dph1]
163
- root << element
164
- end
165
-
166
- if attributes.key? :sazba_dph2
167
- element = Ox::Element.new('SazbaDPH2')
168
- element << attributes[:sazba_dph2] if attributes[:sazba_dph2]
169
- root << element
170
- end
171
-
172
- if attributes.key? :prim_doklad
173
- element = Ox::Element.new('PrimDoklad')
174
- element << attributes[:prim_doklad] if attributes[:prim_doklad]
175
- root << element
176
- end
177
-
178
- if attributes.key? :var_symbol
179
- element = Ox::Element.new('VarSymbol')
180
- element << attributes[:var_symbol] if attributes[:var_symbol]
181
- root << element
182
- end
183
-
184
- if attributes.key? :par_symbol
185
- element = Ox::Element.new('ParSymbol')
186
- element << attributes[:par_symbol] if attributes[:par_symbol]
187
- root << element
188
- end
189
-
190
- if attributes.key? :typ_transakce
191
- element = Ox::Element.new('TypTransakce')
192
- element << attributes[:typ_transakce] if attributes[:typ_transakce]
193
- root << element
194
- end
195
-
196
- if attributes.key? :dodaci_podm
197
- element = Ox::Element.new('DodaciPodm')
198
- element << attributes[:dodaci_podm] if attributes[:dodaci_podm]
199
- root << element
200
- end
201
-
202
- if attributes.key? :druh_dopravy
203
- element = Ox::Element.new('DruhDopravy')
204
- element << attributes[:druh_dopravy] if attributes[:druh_dopravy]
205
- root << element
206
- end
207
-
208
- if attributes.key? :st_odesl_urc
209
- element = Ox::Element.new('StOdeslUrc')
210
- element << attributes[:st_odesl_urc] if attributes[:st_odesl_urc]
211
- root << element
212
- end
213
-
214
- if attributes.key? :doprav_tuz
215
- element = Ox::Element.new('DopravTuz')
216
- element << attributes[:doprav_tuz] if attributes[:doprav_tuz]
217
- root << element
218
- end
219
-
220
- if attributes.key? :doprav_zahr
221
- element = Ox::Element.new('DopravZahr')
222
- element << attributes[:doprav_zahr] if attributes[:doprav_zahr]
223
- root << element
224
- end
225
-
226
- if attributes.key? :datum_its
227
- element = Ox::Element.new('DatumITS')
228
- element << attributes[:datum_its] if attributes[:datum_its]
229
- root << element
230
- end
231
-
232
- if attributes.key? :sleva
233
- element = Ox::Element.new('Sleva')
234
- element << attributes[:sleva] if attributes[:sleva]
235
- root << element
236
- end
237
-
238
- if attributes.key? :i_doklad_id
239
- element = Ox::Element.new('iDokladID')
240
- element << attributes[:i_doklad_id] if attributes[:i_doklad_id]
241
- root << element
242
- end
243
-
244
- if attributes.key? :i_dokl_agend
245
- element = Ox::Element.new('iDoklAgend')
246
- element << attributes[:i_dokl_agend] if attributes[:i_dokl_agend]
247
- root << element
248
- end
249
-
250
- if attributes.key? :celkem
251
- element = Ox::Element.new('Celkem')
252
- element << attributes[:celkem] if attributes[:celkem]
253
- root << element
254
- end
25
+ root << build_element('CisloDokla', data[:cislo_dokla]) if data.key? :cislo_dokla
26
+ root << build_element('ZpusobUctovani', data[:zpusob_uctovani]) if data.key? :zpusob_uctovani
27
+ root << build_element('CObjednavk', data[:c_objednavk]) if data.key? :c_objednavk
28
+ root << build_element('KPFromOdb', data[:kp_from_odb]) if data.key? :kp_from_odb
29
+ root << build_element('Datum', data[:datum]) if data.key? :datum
30
+ root << build_element('Sleva', data[:sleva]) if data.key? :sleva
31
+ root << build_element('DRada', data[:d_rada]) if data.key? :d_rada
32
+ root << build_element('Stredisko', data[:stredisko]) if data.key? :stredisko
33
+ root << build_element('Zakazka', data[:zakazka]) if data.key? :zakazka
34
+ root << build_element('Cinnost', data[:cinnost]) if data.key? :cinnost
35
+ root << build_element('Popis', data[:popis]) if data.key? :popis
36
+ root << build_element('Vystavil', data[:vystavil]) if data.key? :vystavil
37
+ root << build_element('VyrizFaktu', data[:vyriz_faktu]) if data.key? :vyriz_faktu
38
+ root << build_element('TextPredPo', data[:text_pred_po]) if data.key? :text_pred_po
39
+ root << build_element('TextZaPol', data[:text_za_pol]) if data.key? :text_za_pol
40
+ root << build_element('Nadpis', data[:nadpis]) if data.key? :nadpis
41
+ root << build_element('ZkratTypuD', data[:zkrat_typu_d]) if data.key? :zkrat_typu_d
42
+ root << build_element('PorizCena', data[:poriz_cena]) if data.key? :poriz_cena
43
+ root << build_element('PopisX', data[:popis_x]) if data.key? :popis_x
44
+ root << build_element('Fiskal', data[:fiskal]) if data.key? :fiskal
45
+ root << build_element('FisDoklad', data[:fis_doklad]) if data.key? :fis_doklad
46
+ root << build_element('DatSkPoh', data[:dat_sk_poh]) if data.key? :dat_sk_poh
47
+ root << build_element('StatMOSS', data[:stat_moss]) if data.key? :stat_moss
48
+ root << build_element('SazbaDPH1', data[:sazba_dph1]) if data.key? :sazba_dph1
49
+ root << build_element('SazbaDPH2', data[:sazba_dph2]) if data.key? :sazba_dph2
50
+ root << build_element('PrimDoklad', data[:prim_doklad]) if data.key? :prim_doklad
51
+ root << build_element('VarSymbol', data[:var_symbol]) if data.key? :var_symbol
52
+ root << build_element('ParSymbol', data[:par_symbol]) if data.key? :par_symbol
53
+ root << build_element('TypTransakce', data[:typ_transakce]) if data.key? :typ_transakce
54
+ root << build_element('DodaciPodm', data[:dodaci_podm]) if data.key? :dodaci_podm
55
+ root << build_element('DruhDopravy', data[:druh_dopravy]) if data.key? :druh_dopravy
56
+ root << build_element('StOdeslUrc', data[:st_odesl_urc]) if data.key? :st_odesl_urc
57
+ root << build_element('DopravTuz', data[:doprav_tuz]) if data.key? :doprav_tuz
58
+ root << build_element('DopravZahr', data[:doprav_zahr]) if data.key? :doprav_zahr
59
+ root << build_element('DatumITS', data[:datum_its]) if data.key? :datum_its
60
+ root << build_element('Sleva', data[:sleva]) if data.key? :sleva
61
+ root << build_element('iDokladID', data[:i_doklad_id]) if data.key? :i_doklad_id
62
+ root << build_element('iDoklAgend', data[:i_dokl_agend]) if data.key? :i_dokl_agend
63
+ root << build_element('Celkem', data[:celkem]) if data.key? :celkem
255
64
 
256
- if attributes.key? :eet
257
- root << EETType.new(attributes[:eet], 'EET').builder
65
+ if data.key? :eet
66
+ root << EETType.new('EET', data[:eet]).builder
258
67
  end
259
68
 
260
- if attributes.key? :valuty
261
- root << Valuty.new(attributes[:valuty], 'Valuty').builder
69
+ if data.key? :valuty
70
+ root << Valuty.new('Valuty', data[:valuty]).builder
262
71
  end
263
72
 
264
- if attributes.key? :dod_odb
265
- root << SkDokladFirmaType.new(attributes[:dod_odb], 'DodOdb').builder
73
+ if data.key? :dod_odb
74
+ root << SkDokladFirmaType.new('DodOdb', data[:dod_odb]).builder
266
75
  end
267
76
 
268
- if attributes.key? :konec_prij
269
- root << KonecPrijFirmaType.new(attributes[:konec_prij], 'KonecPrij').builder
77
+ if data.key? :konec_prij
78
+ root << KonecPrijFirmaType.new('KonecPrij', data[:konec_prij]).builder
270
79
  end
271
80
 
272
- if attributes.key? :import
273
- root << Import.new(attributes[:import], 'Import').builder
81
+ if data.key? :import
82
+ root << Import.new('Import', data[:import]).builder
274
83
  end
275
84
 
276
- if attributes.key? :sklad_pro_pr
277
- root << SkladType.new(attributes[:sklad_pro_pr], 'SkladProPr').builder
85
+ if data.key? :sklad_pro_pr
86
+ root << SkladType.new('SkladProPr', data[:sklad_pro_pr]).builder
278
87
  end
279
88
 
280
- if attributes.key? :moje_firma
281
- root << MojeFirmaType.new(attributes[:moje_firma], 'MojeFirma').builder
89
+ if data.key? :moje_firma
90
+ root << MojeFirmaType.new('MojeFirma', data[:moje_firma]).builder
282
91
  end
283
92
 
284
- if attributes.key? :vlajky
285
- root << Vlajky.new(attributes[:vlajky], 'Vlajky').builder
93
+ if data.key? :vlajky
94
+ root << Vlajky.new('Vlajky', data[:vlajky]).builder
286
95
  end
287
96
 
288
- if attributes.key? :souhrn_dph
289
- root << SouhrnDPHType.new(attributes[:souhrn_dph], 'SouhrnDPH').builder
97
+ if data.key? :souhrn_dph
98
+ root << SouhrnDPHType.new('SouhrnDPH', data[:souhrn_dph]).builder
290
99
  end
291
100
 
292
- if attributes.key? :polozka
293
- attributes[:polozka].each { |i| root << PolSklDoklType.new(i, 'Polozka').builder }
101
+ if data.key? :polozka
102
+ data[:polozka].each { |i| root << PolSklDoklType.new('Polozka', i).builder }
294
103
  end
295
104
 
296
- if attributes.key? :seznam_nep_plateb
105
+ if data.key? :seznam_nep_plateb
297
106
  element = Ox::Element.new('SeznamNepPlateb')
298
- attributes[:seznam_nep_plateb].each { |i| element << NepPlatbaType.new(i, 'NepPlatba').builder }
107
+ data[:seznam_nep_plateb].each { |i| element << NepPlatbaType.new('NepPlatba', i).builder }
299
108
  root << element
300
109
  end
301
110
 
302
- if attributes.key? :dokumenty
111
+ if data.key? :dokumenty
303
112
  element = Ox::Element.new('Dokumenty')
304
- attributes[:dokumenty].map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i }
113
+ data[:dokumenty].map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i }
305
114
  root << element
306
115
  end
307
116
 
@@ -6,25 +6,14 @@ module MoneyS3
6
6
  include BaseBuilder
7
7
 
8
8
  def builder
9
- root = Ox::Element.new(element_name)
10
-
11
- if attributes.key? :vyrobni_cis
12
- element = Ox::Element.new('VyrobniCis')
13
- element << attributes[:vyrobni_cis] if attributes[:vyrobni_cis]
14
- root << element
15
- end
16
-
17
- if attributes.key? :dat_vyr
18
- element = Ox::Element.new('DatVyr')
19
- element << attributes[:dat_vyr] if attributes[:dat_vyr]
20
- root << element
9
+ root = Ox::Element.new(name)
10
+ if data.respond_to? :attributes
11
+ data.attributes.each { |k, v| root[k] = v }
21
12
  end
22
13
 
23
- if attributes.key? :car_kod
24
- element = Ox::Element.new('CarKod')
25
- element << attributes[:car_kod] if attributes[:car_kod]
26
- root << element
27
- end
14
+ root << build_element('VyrobniCis', data[:vyrobni_cis]) if data.key? :vyrobni_cis
15
+ root << build_element('DatVyr', data[:dat_vyr]) if data.key? :dat_vyr
16
+ root << build_element('CarKod', data[:car_kod]) if data.key? :car_kod
28
17
 
29
18
  root
30
19
  end
@@ -6,25 +6,14 @@ module MoneyS3
6
6
  include BaseBuilder
7
7
 
8
8
  def builder
9
- root = Ox::Element.new(element_name)
10
-
11
- if attributes.key? :vyrobni_cis
12
- element = Ox::Element.new('VyrobniCis')
13
- element << attributes[:vyrobni_cis] if attributes[:vyrobni_cis]
14
- root << element
15
- end
16
-
17
- if attributes.key? :datum_vyrob
18
- element = Ox::Element.new('DatumVyrob')
19
- element << attributes[:datum_vyrob] if attributes[:datum_vyrob]
20
- root << element
9
+ root = Ox::Element.new(name)
10
+ if data.respond_to? :attributes
11
+ data.attributes.each { |k, v| root[k] = v }
21
12
  end
22
13
 
23
- if attributes.key? :carovy_kod
24
- element = Ox::Element.new('CarovyKod')
25
- element << attributes[:carovy_kod] if attributes[:carovy_kod]
26
- root << element
27
- end
14
+ root << build_element('VyrobniCis', data[:vyrobni_cis]) if data.key? :vyrobni_cis
15
+ root << build_element('DatumVyrob', data[:datum_vyrob]) if data.key? :datum_vyrob
16
+ root << build_element('CarovyKod', data[:carovy_kod]) if data.key? :carovy_kod
28
17
 
29
18
  root
30
19
  end
@@ -6,16 +6,15 @@ module MoneyS3
6
6
  include BaseBuilder
7
7
 
8
8
  def builder
9
- root = Ox::Element.new(element_name)
10
-
11
- if attributes.key? :chyba
12
- element = Ox::Element.new('Chyba')
13
- element << attributes[:chyba] if attributes[:chyba]
14
- root << element
9
+ root = Ox::Element.new(name)
10
+ if data.respond_to? :attributes
11
+ data.attributes.each { |k, v| root[k] = v }
15
12
  end
16
13
 
17
- if attributes.key? :varovani
18
- attributes[:varovani].map { |i| Ox::Element.new('Varovani') << i }.each { |i| root << i }
14
+ root << build_element('Chyba', data[:chyba]) if data.key? :chyba
15
+
16
+ if data.key? :varovani
17
+ data[:varovani].map { |i| Ox::Element.new('Varovani') << i }.each { |i| root << i }
19
18
  end
20
19
 
21
20
  root
@@ -9,18 +9,21 @@ module MoneyS3
9
9
  include BaseBuilder
10
10
 
11
11
  def builder
12
- root = Ox::Element.new(element_name)
12
+ root = Ox::Element.new(name)
13
+ if data.respond_to? :attributes
14
+ data.attributes.each { |k, v| root[k] = v }
15
+ end
13
16
 
14
- if attributes.key? :header
15
- root << HeaderKusovnikType.new(attributes[:header], 'Header').builder
17
+ if data.key? :header
18
+ root << HeaderKusovnikType.new('Header', data[:header]).builder
16
19
  end
17
20
 
18
- if attributes.key? :child
19
- root << ChildKusovnikType.new(attributes[:child], 'Child').builder
21
+ if data.key? :child
22
+ root << ChildKusovnikType.new('Child', data[:child]).builder
20
23
  end
21
24
 
22
- if attributes.key? :km_karta
23
- root << KmKartaType.new(attributes[:km_karta], 'KmKarta').builder
25
+ if data.key? :km_karta
26
+ root << KmKartaType.new('KmKarta', data[:km_karta]).builder
24
27
  end
25
28
 
26
29
  root
@@ -9,121 +9,45 @@ module MoneyS3
9
9
  include BaseBuilder
10
10
 
11
11
  def builder
12
- root = Ox::Element.new(element_name)
13
-
14
- if attributes.key? :zkrat
15
- element = Ox::Element.new('Zkrat')
16
- element << attributes[:zkrat] if attributes[:zkrat]
17
- root << element
18
- end
19
-
20
- if attributes.key? :nazev
21
- element = Ox::Element.new('Nazev')
22
- element << attributes[:nazev] if attributes[:nazev]
23
- root << element
24
- end
25
-
26
- if attributes.key? :obch_prip
27
- element = Ox::Element.new('ObchPrip')
28
- element << attributes[:obch_prip] if attributes[:obch_prip]
29
- root << element
30
- end
31
-
32
- if attributes.key? :pozn
33
- element = Ox::Element.new('Pozn')
34
- element << attributes[:pozn] if attributes[:pozn]
35
- root << element
36
- end
37
-
38
- if attributes.key? :dat_pl_zah
39
- element = Ox::Element.new('DatPlZah')
40
- element << attributes[:dat_pl_zah] if attributes[:dat_pl_zah]
41
- root << element
42
- end
43
-
44
- if attributes.key? :dat_zah
45
- element = Ox::Element.new('DatZah')
46
- element << attributes[:dat_zah] if attributes[:dat_zah]
47
- root << element
48
- end
49
-
50
- if attributes.key? :dat_pl_pred
51
- element = Ox::Element.new('DatPlPred')
52
- element << attributes[:dat_pl_pred] if attributes[:dat_pl_pred]
53
- root << element
54
- end
55
-
56
- if attributes.key? :dat_pred
57
- element = Ox::Element.new('DatPred')
58
- element << attributes[:dat_pred] if attributes[:dat_pred]
59
- root << element
12
+ root = Ox::Element.new(name)
13
+ if data.respond_to? :attributes
14
+ data.attributes.each { |k, v| root[k] = v }
60
15
  end
61
16
 
62
- if attributes.key? :zaruka_do
63
- element = Ox::Element.new('ZarukaDo')
64
- element << attributes[:zaruka_do] if attributes[:zaruka_do]
65
- root << element
66
- end
67
-
68
- if attributes.key? :odp_os
69
- element = Ox::Element.new('OdpOs')
70
- element << attributes[:odp_os] if attributes[:odp_os]
71
- root << element
72
- end
73
-
74
- if attributes.key? :druh_zak
75
- element = Ox::Element.new('DruhZak')
76
- element << attributes[:druh_zak] if attributes[:druh_zak]
77
- root << element
78
- end
79
-
80
- if attributes.key? :typ_zak
81
- element = Ox::Element.new('TypZak')
82
- element << attributes[:typ_zak] if attributes[:typ_zak]
83
- root << element
84
- end
85
-
86
- if attributes.key? :stav_zak
87
- element = Ox::Element.new('StavZak')
88
- element << attributes[:stav_zak] if attributes[:stav_zak]
89
- root << element
90
- end
91
-
92
- if attributes.key? :hodnoceni
93
- element = Ox::Element.new('Hodnoceni')
94
- element << attributes[:hodnoceni] if attributes[:hodnoceni]
95
- root << element
96
- end
97
-
98
- if attributes.key? :c_objednavk
99
- element = Ox::Element.new('CObjednavk')
100
- element << attributes[:c_objednavk] if attributes[:c_objednavk]
101
- root << element
102
- end
103
-
104
- if attributes.key? :vystavil
105
- element = Ox::Element.new('Vystavil')
106
- element << attributes[:vystavil] if attributes[:vystavil]
107
- root << element
108
- end
17
+ root << build_element('Zkrat', data[:zkrat]) if data.key? :zkrat
18
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
19
+ root << build_element('ObchPrip', data[:obch_prip]) if data.key? :obch_prip
20
+ root << build_element('Pozn', data[:pozn]) if data.key? :pozn
21
+ root << build_element('DatPlZah', data[:dat_pl_zah]) if data.key? :dat_pl_zah
22
+ root << build_element('DatZah', data[:dat_zah]) if data.key? :dat_zah
23
+ root << build_element('DatPlPred', data[:dat_pl_pred]) if data.key? :dat_pl_pred
24
+ root << build_element('DatPred', data[:dat_pred]) if data.key? :dat_pred
25
+ root << build_element('ZarukaDo', data[:zaruka_do]) if data.key? :zaruka_do
26
+ root << build_element('OdpOs', data[:odp_os]) if data.key? :odp_os
27
+ root << build_element('DruhZak', data[:druh_zak]) if data.key? :druh_zak
28
+ root << build_element('TypZak', data[:typ_zak]) if data.key? :typ_zak
29
+ root << build_element('StavZak', data[:stav_zak]) if data.key? :stav_zak
30
+ root << build_element('Hodnoceni', data[:hodnoceni]) if data.key? :hodnoceni
31
+ root << build_element('CObjednavk', data[:c_objednavk]) if data.key? :c_objednavk
32
+ root << build_element('Vystavil', data[:vystavil]) if data.key? :vystavil
109
33
 
110
- if attributes.key? :dod_odb
111
- root << FirmaType.new(attributes[:dod_odb], 'DodOdb').builder
34
+ if data.key? :dod_odb
35
+ root << FirmaType.new('DodOdb', data[:dod_odb]).builder
112
36
  end
113
37
 
114
- if attributes.key? :vlajky
115
- root << Vlajky.new(attributes[:vlajky], 'Vlajky').builder
38
+ if data.key? :vlajky
39
+ root << Vlajky.new('Vlajky', data[:vlajky]).builder
116
40
  end
117
41
 
118
- if attributes.key? :seznam_zakazkovy_kusovnik
42
+ if data.key? :seznam_zakazkovy_kusovnik
119
43
  element = Ox::Element.new('SeznamZakazkovyKusovnik')
120
- attributes[:seznam_zakazkovy_kusovnik].each { |i| element << KusovnikType.new(i, 'ZakazkovyKusovnik').builder }
44
+ data[:seznam_zakazkovy_kusovnik].each { |i| element << KusovnikType.new('ZakazkovyKusovnik', i).builder }
121
45
  root << element
122
46
  end
123
47
 
124
- if attributes.key? :dokumenty
48
+ if data.key? :dokumenty
125
49
  element = Ox::Element.new('Dokumenty')
126
- attributes[:dokumenty].map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i }
50
+ data[:dokumenty].map { |i| Ox::Element.new('Dokument') << i }.each { |i| element << i }
127
51
  root << element
128
52
  end
129
53