Ejemplo n.º 1
0
def test_pdf_print(example_record):
    record_summary = RecordSummarizer.summarize(example_record, {})
    record = json.loads(json.dumps(record_summary, cls=ExpungeModelEncoder))
    aliases = [
        {"first_name": "john", "middle_name": "", "last_name": "smith", "birth_date": "2/2/2020"},
        {"first_name": "john", "middle_name": "", "last_name": "doe", "birth_date": ""},
    ]
    header = MarkdownSerializer.default_header(aliases)
    source = MarkdownSerializer.to_markdown(record, header)
    assert source == EXPECTED_MARKDOWN
Ejemplo n.º 2
0
 def post(self):
     response = Search().post()
     record = json.loads(response)["record"]
     request_data = request.get_json()
     aliases = request_data["aliases"]
     header = MarkdownSerializer.default_header(aliases)
     source = MarkdownSerializer.to_markdown(record, header)
     pdf = MarkdownToPDF.to_pdf("Expungement analysis", source)
     response = make_response(pdf)
     response.headers["Content-Type"] = "application/pdf"
     filename = Pdf.build_filename(aliases)
     response.headers["Content-Disposition"] = f"inline; filename={filename}"
     return response
Ejemplo n.º 3
0
def handle_person(output, client, row):
    alias = {
        "first_name": row.get("First Short", ""),
        "last_name": row.get("Last Short", ""),
        "birth_date": row.get("Birth Date", ""),
        "middle_name": "",
    }
    aliases = [alias]
    response = client.post("http://localhost:5000/api/search", json={"aliases": aliases})
    record = json.loads(response.text)["record"]
    first_name = row.get("First Name", "").upper()
    middle = row.get("Middle", "").upper()
    last_name = row.get("Last Name", "").upper()
    name = f"{first_name} {middle} {last_name}"
    birth_date = row.get("Birth Date", "")
    officer = row.get("Officer", "").upper()
    header = build_header(aliases, name, birth_date, officer)
    if record.get("cases"):
        print(f"PROCESSING ANALYSIS FOR {name}")
        source = MarkdownSerializer.to_markdown(record, header)
        pdf = MarkdownToPDF.to_pdf("Expungement analysis", source)
        Path(f"{output}/{officer}/").mkdir(parents=True, exist_ok=True)
        filename = f"{output}/{officer}/{first_name}_{last_name}_{officer}.pdf"
        with open(filename, "wb") as f:
            f.write(pdf)
    else:
        print(f"BLANK RECORD: {name} {aliases}")