Пример #1
0
 def load_ehpa_signings(self):
     print("Processing EHPA signings.")
     writer = BatchWriter(models.EmergencyHPASigning)
     signings = DocusignEnvelope.objects.filter(
         status=HP_DOCUSIGN_STATUS_CHOICES.SIGNED, )
     with writer.atomic_transaction(using=settings.DWH_DATABASE, wipe=True):
         for signing in signings:
             writer.write(
                 models.EmergencyHPASigning(created_at=signing.created_at))
Пример #2
0
 def load_loc_requests(self):
     print("Processing letter of complaint requests.")
     writer = BatchWriter(models.LetterOfComplaintRequest)
     kwargs = {
         f"{name}_uuid": uuid_from_url(url)
         for (name, url) in LOC_GROUP_URLS.items()
     }
     with connection.cursor() as cursor:
         cursor.execute(LOC_SQLFILE.read_text(), kwargs)
         with writer.atomic_transaction(using=settings.DWH_DATABASE,
                                        wipe=True):
             for row_dict in iter_cursor_dicts(cursor):
                 req = models.LetterOfComplaintRequest(**row_dict)
                 writer.write(req)
Пример #3
0
 def load_online_rent_history_requests(self):
     print("Processing online rent history requests.")
     writer = BatchWriter(models.OnlineRentHistoryRequest)
     with connection.cursor() as cursor:
         cursor.execute("""
             SELECT rh.created_at, rapidpro_contact.uuid AS user_uuid
             FROM rh_rentalhistoryrequest AS rh
             LEFT JOIN rapidpro_contact ON rh.phone_number = rapidpro_contact.phone_number
             """)
         with writer.atomic_transaction(using=settings.DWH_DATABASE,
                                        wipe=True):
             for row_dict in iter_cursor_dicts(cursor):
                 req = models.OnlineRentHistoryRequest(**row_dict)
                 writer.write(req)