handle bytes/string in hash methods

This commit is contained in:
Frédéric Péters 2020-06-14 10:36:16 +02:00
parent 747e776472
commit d903fa705d
1 changed files with 3 additions and 2 deletions

View File

@ -7,6 +7,7 @@ from suds.transport import Reply
import suds.sudsobject
from django.db import models
from django.utils.encoding import force_bytes, force_text
from django.utils.translation import ugettext_lazy as _
from django.core.cache import cache
@ -103,7 +104,7 @@ class grandlyonIodas(BaseResource):
deltafindroit = nb if (datetime.strptime(tache['datearret'], "%d/%m/%Y") - dateutil.relativedelta.relativedelta(months=nb)) == datetime.now().replace(hour=0, minute=0, second=0, microsecond=0) else 0
droits.append({"libl":tache['produit']['libl'], "dateproposition":tache['dateproposition'], "datearret":tache['datearret'], "dateeffet":tache['dateeffet'], "deltafindroit":deltafindroit})
return {'hash': hashlib.sha224(json.dumps(data)).hexdigest(),
return {'hash': force_text(hashlib.sha224(force_bytes(json.dumps(data)).hexdigest()),
'libl': data['procedures']['procedures']['procedure'][nbProc]['libl'] if 'procedures' in data else '',
'etapes': sorted(data['procedures']['procedures']['procedure'][nbProc]['etapes']['etape'], key=lambda x: x['id'], reverse=True) if 'procedures' in data else '',
'droits': droits,
@ -127,7 +128,7 @@ class grandlyonIodas(BaseResource):
test = proc['libl']
procedures.append(proc)
#print >> open('/home/grandlyon/marln/debug.test', 'a+'), self.get_client().service.ODA_getProceduresPA()
return {'hash': hashlib.sha224(json.dumps(data)).hexdigest(),
return {'hash': force_text(hashlib.sha224(force_bytes(json.dumps(data))).hexdigest()),
#'libl': data['procedurespa']['procedurespa']['procedurepa'][nbProc]['libl'] if 'procedurespa' in data else '',
#'procedures': data['procedurespa']['procedurespa']['procedurepa'][nbProc] if 'procedurespa' in data else '',
#'procedures': data['procedurespa']['procedurespa']['procedurepa'] if 'procedurespa' in data else '',