Ejemplo n.º 1
0
def show(report_id):
    """
        Get report
    """
    try:
        report = Report.objects.filter(id=report_id).values(*REPORT_FIELDS)[0]
    except (IndexError, ValueError):
        return 404, {'status': 'Not Found', 'code': 404}

    # Convert date
    for key, val in report.iteritems():
        if isinstance(val, datetime):
            report[key] = time.mktime(val.timetuple())

    # Add related infos
    if report.get('plaintiff'):
        report['plaintiff'] = model_to_dict(Plaintiff.objects.get(id=report['plaintiff']))
    if report.get('service'):
        report['service'] = model_to_dict(Service.objects.get(id=report['service']))
    if report.get('defendant'):
        report['defendant'] = DefendantsController.show(report['defendant'])[1]
    if report.get('provider'):
        report['provider'] = ProvidersController.show(report['provider'])[1]

    tags = Report.objects.get(id=report['id']).tags.all()
    report['tags'] = [model_to_dict(tag) for tag in tags]

    return 200, report
Ejemplo n.º 2
0
def get_defendant(defendant=None):
    """ Get a defendant
    """
    code, resp = DefendantsController.show(defendant)
    return code, resp