fetch dossiers every hour (#41842)

This commit is contained in:
Emmanuel Cazenave 2020-04-19 08:46:12 +02:00
parent 364986ad4c
commit e1b70814ea
1 changed files with 16 additions and 11 deletions

View File

@ -255,6 +255,11 @@ query getDossiers($demarcheNumber: Int!, $createdSince: ISO8601DateTime, $first:
'data': self._ds_get_dossiers()
}
def hourly(self):
self.logger.info('start fetch dossier')
dossiers = self._fetch_dossiers()
self.logger.info('num new dossiers fetched: %s' % len(dossiers))
@endpoint(
methods=['get'], perm='can_access', name='fetch-dossiers',
description=_('Fetch dossiers from DS and consolidate into local data')
@ -268,7 +273,7 @@ query getDossiers($demarcheNumber: Int!, $createdSince: ISO8601DateTime, $first:
}
}
def _fetch_dossiers(self, request):
def _fetch_dossiers(self, request=None):
res = []
for dossier in self._ds_get_dossiers()['dossiers']:
id_dossier = dossier['id']
@ -464,17 +469,17 @@ class DSDossier(models.Model):
csv_checksum = models.CharField(max_length=256)
last_update_datetime = models.DateTimeField(auto_now=True)
def to_json(self, request):
csv_file_url = request.build_absolute_uri(
reverse(
'generic-endpoint',
kwargs={
'connector': self.resource.get_connector_slug(),
'slug': self.resource.slug,
'endpoint': 'get-dossier-file'
}
)
def to_json(self, request=None):
csv_file_url = reverse(
'generic-endpoint',
kwargs={
'connector': self.resource.get_connector_slug(),
'slug': self.resource.slug,
'endpoint': 'get-dossier-file'
}
) + '/%s/' % self.id
if request is not None:
csv_file_url = request.build_absolute_uri(csv_file_url)
return {
'id': str(self.pk),