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
@@ -9,136 +9,55 @@ module MoneyS3
9
9
  include BaseBuilder
10
10
 
11
11
  def builder
12
- root = Ox::Element.new(element_name)
13
-
14
- if attributes.key? :obch_nazev
15
- element = Ox::Element.new('ObchNazev')
16
- element << attributes[:obch_nazev] if attributes[:obch_nazev]
17
- root << element
18
- end
19
-
20
- if attributes.key? :fakt_nazev
21
- element = Ox::Element.new('FaktNazev')
22
- element << attributes[:fakt_nazev] if attributes[:fakt_nazev]
23
- root << element
24
- end
25
-
26
- if attributes.key? :ico
27
- element = Ox::Element.new('ICO')
28
- element << attributes[:ico] if attributes[:ico]
29
- root << element
30
- end
31
-
32
- if attributes.key? :dic
33
- element = Ox::Element.new('DIC')
34
- element << attributes[:dic] if attributes[:dic]
35
- root << element
36
- end
37
-
38
- if attributes.key? :dicsk
39
- element = Ox::Element.new('DICSK')
40
- element << attributes[:dicsk] if attributes[:dicsk]
41
- root << element
42
- end
43
-
44
- if attributes.key? :guid
45
- element = Ox::Element.new('GUID')
46
- element << attributes[:guid] if attributes[:guid]
47
- root << element
48
- end
49
-
50
- if attributes.key? :nazev
51
- element = Ox::Element.new('Nazev')
52
- element << attributes[:nazev] if attributes[:nazev]
53
- root << element
54
- end
55
-
56
- if attributes.key? :e_mail
57
- element = Ox::Element.new('EMail')
58
- element << attributes[:e_mail] if attributes[:e_mail]
59
- root << element
60
- end
61
-
62
- if attributes.key? :www
63
- element = Ox::Element.new('WWW')
64
- element << attributes[:www] if attributes[:www]
65
- root << element
66
- end
67
-
68
- if attributes.key? :platce_dph
69
- element = Ox::Element.new('PlatceDPH')
70
- element << attributes[:platce_dph] if attributes[:platce_dph]
71
- root << element
72
- end
73
-
74
- if attributes.key? :fyz_osoba
75
- element = Ox::Element.new('FyzOsoba')
76
- element << attributes[:fyz_osoba] if attributes[:fyz_osoba]
77
- root << element
78
- end
79
-
80
- if attributes.key? :banka
81
- element = Ox::Element.new('Banka')
82
- element << attributes[:banka] if attributes[:banka]
83
- root << element
84
- end
85
-
86
- if attributes.key? :ucet
87
- element = Ox::Element.new('Ucet')
88
- element << attributes[:ucet] if attributes[:ucet]
89
- root << element
90
- end
91
-
92
- if attributes.key? :kod_banky
93
- element = Ox::Element.new('KodBanky')
94
- element << attributes[:kod_banky] if attributes[:kod_banky]
95
- root << element
96
- end
97
-
98
- if attributes.key? :v_symb
99
- element = Ox::Element.new('VSymb')
100
- element << attributes[:v_symb] if attributes[:v_symb]
101
- root << element
102
- end
103
-
104
- if attributes.key? :spec_sym
105
- element = Ox::Element.new('SpecSym')
106
- element << attributes[:spec_sym] if attributes[:spec_sym]
107
- root << element
12
+ root = Ox::Element.new(name)
13
+ if data.respond_to? :attributes
14
+ data.attributes.each { |k, v| root[k] = v }
108
15
  end
109
16
 
110
- if attributes.key? :kod_partn
111
- element = Ox::Element.new('KodPartn')
112
- element << attributes[:kod_partn] if attributes[:kod_partn]
113
- root << element
114
- end
17
+ root << build_element('ObchNazev', data[:obch_nazev]) if data.key? :obch_nazev
18
+ root << build_element('FaktNazev', data[:fakt_nazev]) if data.key? :fakt_nazev
19
+ root << build_element('ICO', data[:ico]) if data.key? :ico
20
+ root << build_element('DIC', data[:dic]) if data.key? :dic
21
+ root << build_element('DICSK', data[:dicsk]) if data.key? :dicsk
22
+ root << build_element('GUID', data[:guid]) if data.key? :guid
23
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
24
+ root << build_element('EMail', data[:e_mail]) if data.key? :e_mail
25
+ root << build_element('WWW', data[:www]) if data.key? :www
26
+ root << build_element('PlatceDPH', data[:platce_dph]) if data.key? :platce_dph
27
+ root << build_element('FyzOsoba', data[:fyz_osoba]) if data.key? :fyz_osoba
28
+ root << build_element('Banka', data[:banka]) if data.key? :banka
29
+ root << build_element('Ucet', data[:ucet]) if data.key? :ucet
30
+ root << build_element('KodBanky', data[:kod_banky]) if data.key? :kod_banky
31
+ root << build_element('VSymb', data[:v_symb]) if data.key? :v_symb
32
+ root << build_element('SpecSym', data[:spec_sym]) if data.key? :spec_sym
33
+ root << build_element('KodPartn', data[:kod_partn]) if data.key? :kod_partn
115
34
 
116
- if attributes.key? :obch_adresa
117
- root << AdresaType.new(attributes[:obch_adresa], 'ObchAdresa').builder
35
+ if data.key? :obch_adresa
36
+ root << AdresaType.new('ObchAdresa', data[:obch_adresa]).builder
118
37
  end
119
38
 
120
- if attributes.key? :fakt_adresa
121
- root << AdresaType.new(attributes[:fakt_adresa], 'FaktAdresa').builder
39
+ if data.key? :fakt_adresa
40
+ root << AdresaType.new('FaktAdresa', data[:fakt_adresa]).builder
122
41
  end
123
42
 
124
- if attributes.key? :adresa
125
- root << AdresaType.new(attributes[:adresa], 'Adresa').builder
43
+ if data.key? :adresa
44
+ root << AdresaType.new('Adresa', data[:adresa]).builder
126
45
  end
127
46
 
128
- if attributes.key? :tel
129
- root << TelefonType.new(attributes[:tel], 'Tel').builder
47
+ if data.key? :tel
48
+ root << TelefonType.new('Tel', data[:tel]).builder
130
49
  end
131
50
 
132
- if attributes.key? :fax
133
- root << TelefonType.new(attributes[:fax], 'Fax').builder
51
+ if data.key? :fax
52
+ root << TelefonType.new('Fax', data[:fax]).builder
134
53
  end
135
54
 
136
- if attributes.key? :mobil
137
- root << TelefonType.new(attributes[:mobil], 'Mobil').builder
55
+ if data.key? :mobil
56
+ root << TelefonType.new('Mobil', data[:mobil]).builder
138
57
  end
139
58
 
140
- if attributes.key? :eshop
141
- root << Eshop.new(attributes[:eshop], 'eshop').builder
59
+ if data.key? :eshop
60
+ root << Eshop.new('eshop', data[:eshop]).builder
142
61
  end
143
62
 
144
63
  root
@@ -7,126 +7,40 @@ module MoneyS3
7
7
  include BaseBuilder
8
8
 
9
9
  def builder
10
- root = Ox::Element.new(element_name)
11
-
12
- if attributes.key? :nazev
13
- element = Ox::Element.new('Nazev')
14
- element << attributes[:nazev] if attributes[:nazev]
15
- root << element
16
- end
17
-
18
- if attributes.key? :kod_skladu
19
- element = Ox::Element.new('KodSkladu')
20
- element << attributes[:kod_skladu] if attributes[:kod_skladu]
21
- root << element
22
- end
23
-
24
- if attributes.key? :guid
25
- element = Ox::Element.new('GUID')
26
- element << attributes[:guid] if attributes[:guid]
27
- root << element
28
- end
29
-
30
- if attributes.key? :cenik_sklad
31
- element = Ox::Element.new('CenikSklad')
32
- element << attributes[:cenik_sklad] if attributes[:cenik_sklad]
33
- root << element
34
- end
35
-
36
- if attributes.key? :platno_od
37
- element = Ox::Element.new('PlatnoOd')
38
- element << attributes[:platno_od] if attributes[:platno_od]
39
- root << element
40
- end
41
-
42
- if attributes.key? :platno_do
43
- element = Ox::Element.new('PlatnoDo')
44
- element << attributes[:platno_do] if attributes[:platno_do]
45
- root << element
46
- end
47
-
48
- if attributes.key? :minus
49
- element = Ox::Element.new('Minus')
50
- element << attributes[:minus] if attributes[:minus]
51
- root << element
52
- end
53
-
54
- if attributes.key? :neupoz
55
- element = Ox::Element.new('Neupoz')
56
- element << attributes[:neupoz] if attributes[:neupoz]
57
- root << element
58
- end
59
-
60
- if attributes.key? :vyber_cen
61
- element = Ox::Element.new('Vyber_cen')
62
- element << attributes[:vyber_cen] if attributes[:vyber_cen]
63
- root << element
64
- end
65
-
66
- if attributes.key? :vyber_dod
67
- element = Ox::Element.new('Vyber_dod')
68
- element << attributes[:vyber_dod] if attributes[:vyber_dod]
69
- root << element
70
- end
71
-
72
- if attributes.key? :zpusob
73
- element = Ox::Element.new('Zpusob')
74
- element << attributes[:zpusob] if attributes[:zpusob]
75
- root << element
76
- end
77
-
78
- if attributes.key? :prod_ceny_d
79
- element = Ox::Element.new('ProdCenyD')
80
- element << attributes[:prod_ceny_d] if attributes[:prod_ceny_d]
81
- root << element
82
- end
83
-
84
- if attributes.key? :prepocet
85
- element = Ox::Element.new('Prepocet')
86
- element << attributes[:prepocet] if attributes[:prepocet]
87
- root << element
88
- end
89
-
90
- if attributes.key? :ceny
91
- element = Ox::Element.new('Ceny')
92
- element << attributes[:ceny] if attributes[:ceny]
93
- root << element
94
- end
95
-
96
- if attributes.key? :uc_vyrobk_vv
97
- element = Ox::Element.new('UcVyrobkVV')
98
- element << attributes[:uc_vyrobk_vv] if attributes[:uc_vyrobk_vv]
99
- root << element
100
- end
101
-
102
- if attributes.key? :prodejk_vz
103
- element = Ox::Element.new('ProdejkVz')
104
- element << attributes[:prodejk_vz] if attributes[:prodejk_vz]
105
- root << element
106
- end
107
-
108
- if attributes.key? :v_dod_lst_vz
109
- element = Ox::Element.new('VDodLstVz')
110
- element << attributes[:v_dod_lst_vz] if attributes[:v_dod_lst_vz]
111
- root << element
112
- end
113
-
114
- if attributes.key? :p_dod_lst_vz
115
- element = Ox::Element.new('PDodLstVz')
116
- element << attributes[:p_dod_lst_vz] if attributes[:p_dod_lst_vz]
117
- root << element
118
- end
119
-
120
- if attributes.key? :uc_pohyb_m
121
- root << UctyPohybuType.new(attributes[:uc_pohyb_m], 'UcPohybM').builder
122
- end
123
-
124
- if attributes.key? :uc_pohyb_z
125
- root << UctyPohybuType.new(attributes[:uc_pohyb_z], 'UcPohybZ').builder
126
- end
127
-
128
- if attributes.key? :uc_pohyb_v
129
- root << UctyPohybuType.new(attributes[:uc_pohyb_v], 'UcPohybV').builder
10
+ root = Ox::Element.new(name)
11
+ if data.respond_to? :attributes
12
+ data.attributes.each { |k, v| root[k] = v }
13
+ end
14
+
15
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
16
+ root << build_element('KodSkladu', data[:kod_skladu]) if data.key? :kod_skladu
17
+ root << build_element('GUID', data[:guid]) if data.key? :guid
18
+ root << build_element('CenikSklad', data[:cenik_sklad]) if data.key? :cenik_sklad
19
+ root << build_element('PlatnoOd', data[:platno_od]) if data.key? :platno_od
20
+ root << build_element('PlatnoDo', data[:platno_do]) if data.key? :platno_do
21
+ root << build_element('Minus', data[:minus]) if data.key? :minus
22
+ root << build_element('Neupoz', data[:neupoz]) if data.key? :neupoz
23
+ root << build_element('Vyber_cen', data[:vyber_cen]) if data.key? :vyber_cen
24
+ root << build_element('Vyber_dod', data[:vyber_dod]) if data.key? :vyber_dod
25
+ root << build_element('Zpusob', data[:zpusob]) if data.key? :zpusob
26
+ root << build_element('ProdCenyD', data[:prod_ceny_d]) if data.key? :prod_ceny_d
27
+ root << build_element('Prepocet', data[:prepocet]) if data.key? :prepocet
28
+ root << build_element('Ceny', data[:ceny]) if data.key? :ceny
29
+ root << build_element('UcVyrobkVV', data[:uc_vyrobk_vv]) if data.key? :uc_vyrobk_vv
30
+ root << build_element('ProdejkVz', data[:prodejk_vz]) if data.key? :prodejk_vz
31
+ root << build_element('VDodLstVz', data[:v_dod_lst_vz]) if data.key? :v_dod_lst_vz
32
+ root << build_element('PDodLstVz', data[:p_dod_lst_vz]) if data.key? :p_dod_lst_vz
33
+
34
+ if data.key? :uc_pohyb_m
35
+ root << UctyPohybuType.new('UcPohybM', data[:uc_pohyb_m]).builder
36
+ end
37
+
38
+ if data.key? :uc_pohyb_z
39
+ root << UctyPohybuType.new('UcPohybZ', data[:uc_pohyb_z]).builder
40
+ end
41
+
42
+ if data.key? :uc_pohyb_v
43
+ root << UctyPohybuType.new('UcPohybV', data[:uc_pohyb_v]).builder
130
44
  end
131
45
 
132
46
  root
@@ -7,126 +7,40 @@ module MoneyS3
7
7
  include BaseBuilder
8
8
 
9
9
  def builder
10
- root = Ox::Element.new(element_name)
11
-
12
- if attributes.key? :nazev
13
- element = Ox::Element.new('Nazev')
14
- element << attributes[:nazev] if attributes[:nazev]
15
- root << element
16
- end
17
-
18
- if attributes.key? :kod_skladu
19
- element = Ox::Element.new('KodSkladu')
20
- element << attributes[:kod_skladu] if attributes[:kod_skladu]
21
- root << element
22
- end
23
-
24
- if attributes.key? :guid
25
- element = Ox::Element.new('GUID')
26
- element << attributes[:guid] if attributes[:guid]
27
- root << element
28
- end
29
-
30
- if attributes.key? :cenik_sklad
31
- element = Ox::Element.new('CenikSklad')
32
- element << attributes[:cenik_sklad] if attributes[:cenik_sklad]
33
- root << element
34
- end
35
-
36
- if attributes.key? :platno_od
37
- element = Ox::Element.new('PlatnoOd')
38
- element << attributes[:platno_od] if attributes[:platno_od]
39
- root << element
40
- end
41
-
42
- if attributes.key? :platno_do
43
- element = Ox::Element.new('PlatnoDo')
44
- element << attributes[:platno_do] if attributes[:platno_do]
45
- root << element
46
- end
47
-
48
- if attributes.key? :minus
49
- element = Ox::Element.new('Minus')
50
- element << attributes[:minus] if attributes[:minus]
51
- root << element
52
- end
53
-
54
- if attributes.key? :neupoz
55
- element = Ox::Element.new('Neupoz')
56
- element << attributes[:neupoz] if attributes[:neupoz]
57
- root << element
58
- end
59
-
60
- if attributes.key? :vyber_cen
61
- element = Ox::Element.new('Vyber_cen')
62
- element << attributes[:vyber_cen] if attributes[:vyber_cen]
63
- root << element
64
- end
65
-
66
- if attributes.key? :vyber_dod
67
- element = Ox::Element.new('Vyber_dod')
68
- element << attributes[:vyber_dod] if attributes[:vyber_dod]
69
- root << element
70
- end
71
-
72
- if attributes.key? :zpusob
73
- element = Ox::Element.new('Zpusob')
74
- element << attributes[:zpusob] if attributes[:zpusob]
75
- root << element
76
- end
77
-
78
- if attributes.key? :prod_ceny_d
79
- element = Ox::Element.new('ProdCenyD')
80
- element << attributes[:prod_ceny_d] if attributes[:prod_ceny_d]
81
- root << element
82
- end
83
-
84
- if attributes.key? :prepocet
85
- element = Ox::Element.new('Prepocet')
86
- element << attributes[:prepocet] if attributes[:prepocet]
87
- root << element
88
- end
89
-
90
- if attributes.key? :ceny
91
- element = Ox::Element.new('Ceny')
92
- element << attributes[:ceny] if attributes[:ceny]
93
- root << element
94
- end
95
-
96
- if attributes.key? :uc_vyrobk_vv
97
- element = Ox::Element.new('UcVyrobkVV')
98
- element << attributes[:uc_vyrobk_vv] if attributes[:uc_vyrobk_vv]
99
- root << element
100
- end
101
-
102
- if attributes.key? :prodejk_vz
103
- element = Ox::Element.new('ProdejkVz')
104
- element << attributes[:prodejk_vz] if attributes[:prodejk_vz]
105
- root << element
106
- end
107
-
108
- if attributes.key? :v_dod_lst_vz
109
- element = Ox::Element.new('VDodLstVz')
110
- element << attributes[:v_dod_lst_vz] if attributes[:v_dod_lst_vz]
111
- root << element
112
- end
113
-
114
- if attributes.key? :p_dod_lst_vz
115
- element = Ox::Element.new('PDodLstVz')
116
- element << attributes[:p_dod_lst_vz] if attributes[:p_dod_lst_vz]
117
- root << element
118
- end
119
-
120
- if attributes.key? :uc_pohyb_m
121
- root << UctyPohybuType.new(attributes[:uc_pohyb_m], 'UcPohybM').builder
122
- end
123
-
124
- if attributes.key? :uc_pohyb_z
125
- root << UctyPohybuType.new(attributes[:uc_pohyb_z], 'UcPohybZ').builder
126
- end
127
-
128
- if attributes.key? :uc_pohyb_v
129
- root << UctyPohybuType.new(attributes[:uc_pohyb_v], 'UcPohybV').builder
10
+ root = Ox::Element.new(name)
11
+ if data.respond_to? :attributes
12
+ data.attributes.each { |k, v| root[k] = v }
13
+ end
14
+
15
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
16
+ root << build_element('KodSkladu', data[:kod_skladu]) if data.key? :kod_skladu
17
+ root << build_element('GUID', data[:guid]) if data.key? :guid
18
+ root << build_element('CenikSklad', data[:cenik_sklad]) if data.key? :cenik_sklad
19
+ root << build_element('PlatnoOd', data[:platno_od]) if data.key? :platno_od
20
+ root << build_element('PlatnoDo', data[:platno_do]) if data.key? :platno_do
21
+ root << build_element('Minus', data[:minus]) if data.key? :minus
22
+ root << build_element('Neupoz', data[:neupoz]) if data.key? :neupoz
23
+ root << build_element('Vyber_cen', data[:vyber_cen]) if data.key? :vyber_cen
24
+ root << build_element('Vyber_dod', data[:vyber_dod]) if data.key? :vyber_dod
25
+ root << build_element('Zpusob', data[:zpusob]) if data.key? :zpusob
26
+ root << build_element('ProdCenyD', data[:prod_ceny_d]) if data.key? :prod_ceny_d
27
+ root << build_element('Prepocet', data[:prepocet]) if data.key? :prepocet
28
+ root << build_element('Ceny', data[:ceny]) if data.key? :ceny
29
+ root << build_element('UcVyrobkVV', data[:uc_vyrobk_vv]) if data.key? :uc_vyrobk_vv
30
+ root << build_element('ProdejkVz', data[:prodejk_vz]) if data.key? :prodejk_vz
31
+ root << build_element('VDodLstVz', data[:v_dod_lst_vz]) if data.key? :v_dod_lst_vz
32
+ root << build_element('PDodLstVz', data[:p_dod_lst_vz]) if data.key? :p_dod_lst_vz
33
+
34
+ if data.key? :uc_pohyb_m
35
+ root << UctyPohybuType.new('UcPohybM', data[:uc_pohyb_m]).builder
36
+ end
37
+
38
+ if data.key? :uc_pohyb_z
39
+ root << UctyPohybuType.new('UcPohybZ', data[:uc_pohyb_z]).builder
40
+ end
41
+
42
+ if data.key? :uc_pohyb_v
43
+ root << UctyPohybuType.new('UcPohybV', data[:uc_pohyb_v]).builder
130
44
  end
131
45
 
132
46
  root
@@ -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? :zkratka
12
- element = Ox::Element.new('Zkratka')
13
- element << attributes[:zkratka] if attributes[:zkratka]
14
- root << element
15
- end
16
-
17
- if attributes.key? :nazev
18
- element = Ox::Element.new('Nazev')
19
- element << attributes[:nazev] if attributes[:nazev]
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? :poznamka
24
- element = Ox::Element.new('Poznamka')
25
- element << attributes[:poznamka] if attributes[:poznamka]
26
- root << element
27
- end
14
+ root << build_element('Zkratka', data[:zkratka]) if data.key? :zkratka
15
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
16
+ root << build_element('Poznamka', data[:poznamka]) if data.key? :poznamka
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? :zkratka
12
- element = Ox::Element.new('Zkratka')
13
- element << attributes[:zkratka] if attributes[:zkratka]
14
- root << element
15
- end
16
-
17
- if attributes.key? :nazev
18
- element = Ox::Element.new('Nazev')
19
- element << attributes[:nazev] if attributes[:nazev]
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? :poznamka
24
- element = Ox::Element.new('Poznamka')
25
- element << attributes[:poznamka] if attributes[:poznamka]
26
- root << element
27
- end
14
+ root << build_element('Zkratka', data[:zkratka]) if data.key? :zkratka
15
+ root << build_element('Nazev', data[:nazev]) if data.key? :nazev
16
+ root << build_element('Poznamka', data[:poznamka]) if data.key? :poznamka
28
17
 
29
18
  root
30
19
  end