Skip to content

Commit

Permalink
Merge branch 'developer' into deprecations
Browse files Browse the repository at this point in the history
Conflicts:
	switching/messages/F1.py
  • Loading branch information
Carles Pey committed Feb 6, 2012
2 parents bb612f5 + 26fc254 commit 72d538d
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 12 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.project
.pydevproject
.settings
*.swp
*.pyc
30 changes: 20 additions & 10 deletions switching/messages/F1.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@

_ = gettext.gettext

UOMS = {'W': 1000, 'kW': 1}


class F1(Message):
"""Classe que implementa F1."""
Expand Down Expand Up @@ -194,11 +196,12 @@ def get_info_activa(self):
"""Retornat els periodes d'energia"""
periode = []
total = 0
p = 0
try:
for i in self.factura.EnergiaActiva.TerminoEnergiaActiva.Periodo:
p += 1
periode.append(PeriodeActiva(i, 'P%d' % p))
for ea in self.factura.EnergiaActiva.TerminoEnergiaActiva:
p = 0
for i in ea.Periodo:
p += 1
periode.append(PeriodeActiva(i, 'P%d' % p))
total = float(self.factura.EnergiaActiva.
ImporteTotalEnergiaActiva.text)
except AttributeError:
Expand Down Expand Up @@ -412,24 +415,27 @@ def update_name(self, name):

class PeriodePotencia(object):

def __init__(self, periode, name):
def __init__(self, periode, name, uom='W'):
self.periode = periode
self._name = name
if uom not in UOMS:
raise Exception('UOM %s not supported' % uom)
self.uom = uom

@property
def quantitat(self):
"Retorna kw"
return float(self.periode.PotenciaAFacturar.text) / 1000
return float(self.periode.PotenciaAFacturar.text) / UOMS[self.uom]

@property
def maximetre(self):
"Retorna la potència màxima demanada"
return float(self.periode.PotenciaMaxDemandada.text) / 1000
return float(self.periode.PotenciaMaxDemandada.text) / UOMS[self.uom]

@property
def preu_unitat(self):
"Retorna el preu del kw"
return float(self.periode.PrecioPotencia.text) * 1000
return float(self.periode.PrecioPotencia.text) * UOMS[self.uom]

@property
def name(self):
Expand All @@ -438,14 +444,17 @@ def name(self):


class PeriodeExces(object):
def __init__(self, periode, name):
def __init__(self, periode, name, uom='W'):
self.periode = periode
self._name = name
if uom not in UOMS:
raise Exception('UOM %s not supported' % uom)
self.uom = uom

@property
def quantitat(self):
"Retorna kw"
return float(self.periode.ValorExcesoPotencia.text) / 1000
return float(self.periode.ValorExcesoPotencia.text) / UOMS[self.uom]

@property
def name(self):
Expand Down Expand Up @@ -497,6 +506,7 @@ def consum(self):
def periode(self):
# taula 42
relacio = {'01': 'P1',
'21': 'P1',
'03': 'P2',
'10': 'P1',
'61': 'P1',
Expand Down
4 changes: 2 additions & 2 deletions switching/messages/message.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ def __init__(self, xml, force_tipus=''):
# <?xml version="1.0" encoding="ISO-8859-1"?>
try:
root = etree.fromstring(xml)
except etree.XMLSyntaxError, e:
raise except_f1('Error', 'Fitxer XML erroni')
except etree.XMLSyntaxError:
raise except_f1('Error', 'Fitxer XML erroni')
uxml = etree.tostring(root).decode('iso-8859-1')
self.str_xml = uxml
self.tipus = force_tipus
Expand Down

0 comments on commit 72d538d

Please sign in to comment.