class SpreadsheetReport(Report, ISpreadsheetReport): XLSX = FileConverter.XLSX def __init__(self, *args, **kwargs): super(SpreadsheetReport, self).__init__(*args, **kwargs) xlsx_file = FileConverter(self.file).build(self.XLSX) self.report = XLSXWrapper( FileProxy(xlsx_file) ) def get_sections(self): u""" Возвращает все секции """ return self.report.get_sections() def get_section(self, section_name): u""" Возвращает секцию по имени """ self.report.get_section(section_name) def build(self, dst_file_path, file_type=XLSX): u""" Генерирует выходной файл в нужном формате """ ffile = FileProxy(dst_file_path, new_file=True) self.report.pack(ffile) return FileConverter(ffile).build(file_type)
def __init__(self, *args, **kwargs): super(SpreadsheetReport, self).__init__(*args, **kwargs) xlsx_file = FileConverter(self.file).build(self.XLSX) self.report = XLSXWrapper( FileProxy(xlsx_file) )