Exemplo n.º 1
0
def _send_email(user, report, hash_id):
    domain = report.domain or user.get_domains()[0]
    link = absolute_reverse("export_report",
                            args=[domain,
                                  str(hash_id), report.export_format])

    send_report_download_email(report.name, user, link)
Exemplo n.º 2
0
def export_ucr_async(export_table, download_id, title, user):
    use_transfer = settings.SHARED_DRIVE_CONF.transfer_enabled
    filename = u'{}.xlsx'.format(title.replace(u'/', u'?'))
    file_path = get_download_file_path(use_transfer, filename)
    export_from_tables(export_table, file_path, Format.XLS_2007)
    expose_download(use_transfer, file_path, filename, download_id, 'xlsx')
    link = reverse("retrieve_download", args=[download_id], params={"get_file": '1'}, absolute=True)

    send_report_download_email(title, user, link)
Exemplo n.º 3
0
def export_ucr_async(report_export, download_id, user):
    use_transfer = settings.SHARED_DRIVE_CONF.transfer_enabled
    ascii_title = report_export.title.encode('ascii', 'replace').decode('utf-8')
    filename = '{}.xlsx'.format(ascii_title.replace('/', '?'))
    file_path = get_download_file_path(use_transfer, filename)

    report_export.create_export(file_path, Format.XLS_2007)
    expose_download(use_transfer, file_path, filename, download_id, 'xlsx', owner_ids=[user.get_id])
    link = reverse("retrieve_download", args=[download_id], params={"get_file": '1'}, absolute=True)

    send_report_download_email(report_export.title, user.get_email(), link)
Exemplo n.º 4
0
def export_ucr_async(report_export, download_id, user):
    use_transfer = settings.SHARED_DRIVE_CONF.transfer_enabled
    ascii_title = report_export.title.encode('ascii', 'replace').decode('utf-8')
    filename = '{}.xlsx'.format(ascii_title.replace('/', '?'))
    file_path = get_download_file_path(use_transfer, filename)

    report_export.create_export(file_path, Format.XLS_2007)

    expose_download(use_transfer, file_path, filename, download_id, 'xlsx')
    link = reverse("retrieve_download", args=[download_id], params={"get_file": '1'}, absolute=True)

    send_report_download_email(report_export.title, user.get_email(), link)
Exemplo n.º 5
0
def prepare_issnip_monthly_register_reports(domain, user, awcs, pdf_format,
                                            month, year):

    utc_now = datetime.now(pytz.utc)
    india_now = utc_now.astimezone(india_timezone)

    selected_date = date(year, month, 1)
    report_context = {'reports': []}

    pdf_files = []

    for awc in awcs:
        pdf_hash = uuid.uuid4().hex

        awc_location = SQLLocation.objects.get(location_id=awc)
        pdf_files.append({
            'uuid': pdf_hash,
            'location_name': awc_location.name.replace(' ', '_')
        })
        report = ISSNIPMonthlyReport(
            config={
                'awc_id': awc_location.location_id,
                'month': selected_date,
                'domain': domain
            })
        qrcode = get_qrcode("{} {}".format(awc_location.site_code,
                                           india_now.strftime('%d %b %Y')))
        context = {'qrcode_64': b64encode(qrcode), 'report': report}

        if pdf_format == 'one':
            report_context['reports'].append(context)
        else:
            report_context['reports'] = [context]
            create_pdf_file(pdf_hash, report_context)

    if pdf_format == 'many':
        cache_key = zip_folder(pdf_files)
    else:
        cache_key = create_pdf_file(uuid.uuid4().hex, report_context)

    params = {'domain': 'icds-cas', 'uuid': cache_key, 'format': pdf_format}
    send_report_download_email(
        'ISSNIP monthly register', user,
        reverse('icds_download_pdf',
                params=params,
                absolute=True,
                kwargs={'domain': domain}))
Exemplo n.º 6
0
def _send_email(user, report, hash_id, recipient, subject=None):
    link = absolute_reverse("export_report", args=[report.domain, str(hash_id),
                                                   report.export_format])

    send_report_download_email(report.name, recipient, link, subject)
Exemplo n.º 7
0
def _send_email(user, report, hash_id, recipient):
    domain = report.domain or user.get_domains()[0]
    link = absolute_reverse("export_report", args=[domain, str(hash_id),
                                                   report.export_format])

    send_report_download_email(report.name, recipient, link)