Untitled
unknown
plain_text
10 months ago
3.3 kB
6
Indexable
import os import requests from django.conf import settings from requests import ConnectionError from flowbot.tasks import import_zoebi06_file from global_settings.constants import ZBI06_NOTIFICATION_LIST from lib.utils import get_file_from_response def download_xlsxfile(buffer=None, path=None, endpoint=None): if not buffer and not path: return None if buffer: try: buffer.seek(0) except AttributeError: return None file = buffer else: if not os.path.exists(path): return None file = open(path, 'rb') proxies = { 'http': None, 'https': None } try: if endpoint: if endpoint == settings.XLS2XLSX_SAP_URL: print 'settings.XLS_FILE: ', settings.XLS_FILE file_name = settings.XLS_FILE else: print 'settings.MHTML_FILE: ', settings.MHTML_FILE file_name = settings.MHTML_FILE print 'endpoint: ', endpoint print 'proxies: ', proxies print 'file_name: ', file_name print 'file ', file response = requests.post( endpoint, proxies=proxies, files={'file': (file_name, file)} ) else: response = requests.post( settings.XLS2XLSX_URL, proxies=proxies, files={'file': ('tempfile.xls', file)} ) except ConnectionError: return None if response.status_code != 200: return None return get_file_from_response(response) def process_report_zoebi06(report_id): import os from settings import ROOT_PATH from django.core.files.base import ContentFile from reports.models import ReportsGeneratedByUser from global_settings.models import GlobalSettings email_list = GlobalSettings.get_or_create_instance(name=ZBI06_NOTIFICATION_LIST).get_formatted_value() report_to_send = ReportsGeneratedByUser.objects.get(id=report_id) filename = report_to_send.report_file.name.split('/')[1].split('.')[0] if report_to_send.report_file.name.split('/')[1].split('.')[1] == "MHTML": path = os.path.join(ROOT_PATH, 'zina_files/' + filename) print 'report_to_send.report_file.path: ', report_to_send.report_file.path print 'settings.MHTML2XLSX: ', settings.MHTML2XLSX print 'endpoint, settings.XLS2XLSX_SAP_URL: ', settings.MHTML2XLSX, settings.XLS2XLSX_SAP_URL print 'settings.XLS_FILE: ', settings.XLS_FILE print 'settings.MHTML_FILE: ', settings.MHTML_FILE file = download_xlsxfile(path=report_to_send.report_file.path, endpoint=settings.MHTML2XLSX) print 'file: ', file if file: content_file = ContentFile(file.read()) report_to_send.report_file.save(filename + '.xlsx', content_file) report_to_send.save() report_to_send.notify() report_to_send.send_email_report_link(email_list=email_list) import_zoebi06_file(filename + '.xlsx', content_file) if os.path.exists(path + '.xlsx'): os.remove(path + '.xlsx') process_report_zoebi06(2562865)
Editor is loading...
Leave a Comment