Exemple #1
0
    def generate_report(cls, start_time, end_time=None):
        if end_time is None:
            end_time = start_time + timedelta(days=1)

        assert (isinstance(start_time, datetime))
        assert (isinstance(start_time, datetime))

        path = cls.get_file_path(start_time, end_time)

        content = cls.generate_report_content(start_time, end_time)

        path = storage.save(path, ContentFile(content))
        report = Report(name=cls.get_report_name(start_time, end_time))
        report.file = path
        report.content = content
        report.save()
        return report
Exemple #2
0
    def generate_report(cls, start_time, end_time=None, **kwargs):
        if end_time is None:
            end_time = start_time + timedelta(days=1)

        assert (isinstance(start_time, datetime))
        assert (isinstance(start_time, datetime))

        path = cls.get_file_path(start_time, end_time)

        if kwargs.get('type'):
            content = cls.generate_report_content(start_time, end_time,
                                                  kwargs.get('type'))
        else:
            content = cls.generate_report_content(start_time, end_time)

        encrypted_content = ReportCrypto.encrypt_file(content)
        path = storage.save(path, ContentFile(encrypted_content))

        report = Report(name=cls.get_report_name(start_time, end_time))
        report.file = path
        report.content = content
        report.save()
        return report