changeset 3464:c168199e9f18

HMIS . health_gyneco: Fix bug bug #57292: OBS command generates a traceback https://savannah.gnu.org/bugs/index.php?57292
author Luis Falcon <falcon@gnuhealth.org>
date Sat, 23 Nov 2019 11:49:32 +0000
parents 68120e929bd1
children aa23b5337446
files tryton/health_gyneco/health_gyneco.py
diffstat 1 files changed, 5 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/tryton/health_gyneco/health_gyneco.py
+++ b/tryton/health_gyneco/health_gyneco.py
@@ -121,7 +121,7 @@
             'invisible': Bool(Eval('current_pregnancy')),
             })
 
-    pregnancy_end_age = fields.Function(fields.Char('Weeks', help='Weeks at'
+    pregnancy_end_age = fields.Function(fields.Integer('Weeks', help='Weeks at'
         ' the end of pregnancy'), 'get_pregnancy_data')
     iugr = fields.Selection([
         (None, ''),
@@ -142,7 +142,6 @@
         'patient_obstetric_info')
     premature = fields.Function(fields.Integer('Premature',
      help="Preterm < 37 wks live births"),'patient_obstetric_info')
-     
     abortions = fields.Function(fields.Integer('Abortions'),
         'patient_obstetric_info')
     stillbirths = fields.Function(fields.Integer('Stillbirths'),
@@ -236,11 +235,10 @@
         pregnancy = Table('gnuhealth_patient_pregnancy')
         cursor = Transaction().connection.cursor()
         patient_id = int(self.name.id)
-        
         cursor.execute (*pregnancy.select(Count(pregnancy.name),
             where=(pregnancy.current_pregnancy == 'true') &
             (pregnancy.name == patient_id))) 
-                                       
+
         records = cursor.fetchone()[0]
         if records > 1:
             self.raise_user_error('patient_already_pregnant')
@@ -270,8 +268,8 @@
         if (self.reverse_weeks and self.pregnancy_end_date):
             estimated_lmp = datetime.datetime.date(self.pregnancy_end_date - 
                 datetime.timedelta(self.reverse_weeks*7))
-                        
-            return estimated_lmp 
+
+            return estimated_lmp
 
     def get_pregnancy_data(self, name):
         """ Calculate the Pregnancy Due Date and the Number of
@@ -281,12 +279,11 @@
         """
         if name == 'pdd':
                 return self.lmp + datetime.timedelta(days=280)
-                
         if name == 'pregnancy_end_age':
             if self.pregnancy_end_date:
                 gestational_age = datetime.datetime.date(
                     self.pregnancy_end_date) - self.lmp
-                return (gestational_age.days) / 7
+                return int((gestational_age.days) / 7)
             else:
                 return 0
 
@@ -639,7 +636,6 @@
 
         counter=0
         pregnancies = len(self.pregnancy_history)
-         
         if (name == "gravida"):
             return pregnancies