Fix: Tabs estavam "zuados"
[cascardo/irpf-gui.git] / src / bens.py
1 #
2 #   Copyright 2013 Thadeu Lima de Souza Cascardo <cascardo@cascardo.info>
3 #
4 #   This program is free software: you can redistribute it and/or modify
5 #   it under the terms of the GNU General Public License as published by
6 #   the Free Software Foundation, either version 3 of the License, or
7 #   (at your option) any later version.
8 #
9 #   This program is distributed in the hope that it will be useful,
10 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
11 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 #   GNU General Public License for more details.
13 #
14 #   You should have received a copy of the GNU General Public License
15 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 # -*- mode: python; encoding: utf-8; -*-
17 import xml.dom.minidom
18 from contribuinte import Contribuinte
19
20 class Bem:
21     def __init__(self, el):
22         self.bem = el
23
24     def get_attr(self, attr):
25         if attr in self.bem.attributes.keys():
26             return self.bem.attributes[attr].nodeValue
27
28         return None
29
30     def set_attr(self, attr, val):
31         self.bem.attributes[attr].nodeValue = val
32
33 class Bens:
34     def __init__(self, contribuinte):
35         self.contribuinte = contribuinte
36         self.bens = self.contribuinte.dados.getElementsByTagName("bens")[0]
37         self.items = []
38
39         for i in self.bens.getElementsByTagName("item"):
40             self.items.append(Bem(i))
41
42     def _get_attr(self, el, attr):
43         if attr in el.attributes.keys():
44             return el.attributes[attr].nodeValue
45         return None
46
47     def _set_attr(self, el, attr, val):
48         el.attributes[attr].nodeValue = val
49
50     def get_bens(self, attr):
51         return self._get_attr(self.bens, attr)
52
53     def set_bens(self, attr, val):
54         self._set_attr(self.bens, attr, val)
55
56 if __name__ == '__main__':
57     import sys
58
59     contribuinte = Contribuinte(sys.argv[1])
60     bens = Bens(contribuinte)
61     print "anterior: " + bens.get_bens("totalExercicioAnterior")
62     print "atual: " + bens.get_bens("totalExercicioAtual")
63
64     for i in bens.items:
65         print i.get_attr("valorExercicioAtual") + " " + i.get_attr("discriminacao")
66
67 # vim:tabstop=4:expandtab:smartindent