def handle_adddocmeta(docid, court, casenum, de_seq_num, dm_id, docnum, subdocnum): docid = ParsePacer.coerce_docid(docid) query = Document.objects.filter(court=court, casenum=casenum, docnum=docnum, subdocnum=subdocnum) try: doc = query[0] except IndexError: doc = Document(docid=docid, court=court, casenum=casenum, de_seq_num=de_seq_num, dm_id=dm_id, docnum=docnum, subdocnum=subdocnum) else: doc.de_seq_num = de_seq_num doc.dm_id = dm_id doc.docnum = docnum doc.docid = docid try: doc.save() except IntegrityError: logging.error("handle_adddocmeta: could not save docid %s" % (docid))
def test_add_document_object(self): d1 = Document(court='nysd', casenum='1234', docnum='2', subdocnum='3', de_seq_num='20', dm_id='12', docid='789', sha1='hash', available='1', free_import=1, lastdate='lastdate', modified='1') expected_dict = { 'doc_num': '2', 'attachment_num': '3', 'pacer_doc_id': '789', 'pacer_de_seq_num': '20', 'pacer_dm_id': '12', 'upload_date': 'lastdate', 'available': '1', 'free_import': '1', 'sha1': 'hash' } self.doc_xml.add_document_object(d1) actual_dict = self.doc_xml.get_document_metadict('2', '3') self.assertEquals(expected_dict, actual_dict)
def test_update_local_db_updates_existing(self): d1 = Document(court='nysd', casenum='1234', docnum='1', subdocnum='2') d1.save() self.assertEquals(1, Document.objects.count()) doc_meta = self.doc_xml.get_document_metadict('1', '2') doc_meta['pacer_doc_id'] = '12' DocumentManager.update_local_db(self.doc_xml) created_doc = Document.objects.all()[0] self.assertEquals(1, Document.objects.count()) self.assertEquals('12', created_doc.docid)
def test_update_local_db_doesnt_overwrite_local(self): d1 = Document(court='nysd', casenum='1234', docnum='1', subdocnum='2', docid='120') d1.save() self.assertEquals(1, Document.objects.count()) # This document doesn't have docid, but we shouldn't overwrite DocumentManager.update_local_db(self.doc_xml) created_doc = Document.objects.all()[0] self.assertEquals(1, Document.objects.count()) self.assertEquals('120', created_doc.docid)
def create_profile(request): if request.method == 'POST': form = DocumentForm(request.POST, request.FILES) employee_id="" if form.is_valid(): image_validator, origin_image, image_drawn = form.cleaned_data['photo'] #def the uploaded image has 1 face and is valid if (image_validator==1): record = Document() record.photo=origin_image record.firstname=form.cleaned_data['firstname'] record.lastname=form.cleaned_data['lastname'] record.department=form.cleaned_data['department'] record.save() employee_id=record.employee_id buffered = BytesIO() #face_no, image_drawn = draw_face(image.file.read()) image_drawn.save(buffered, format="JPEG") b64_img = base64.b64encode((buffered.getvalue())) one_face= image_validator==1 #multi_face = image_validator>1 no_face = image_validator==0 return render(request, 'view_form.html', { 'form': form, 'image_drawn':b64_img,'one_face':one_face, 'no_face': no_face, 'employee_id': employee_id }) else: form = DocumentForm() return render(request, 'create_form.html', { 'form': form })
def update_local_db(docket, ignore_available=1, team_name=None): court = docket.casemeta["court"] casenum = docket.casemeta["pacer_case_num"] for docmeta in docket.documents.values(): docnum = docmeta["doc_num"] subdocnum = docmeta["attachment_num"] docquery = Document.objects.filter(court=court, casenum=casenum, docnum=docnum, subdocnum=subdocnum) try: docentry = docquery[0] except IndexError: # New item: Add it to our DB docentry = Document(court=court, casenum=casenum, docnum=docnum, subdocnum=subdocnum) if team_name is not None: # Only add the team_name to new items docentry.team_name = team_name except OperationalError: logging.error("update_local_db: could not save %s %s %s %s" % (court, casenum, docnum, subdocnum)) return try: docentry.docid = docmeta["pacer_doc_id"] except KeyError: pass try: docentry.de_seq_num = docmeta["pacer_de_seq_num"] except KeyError: pass try: docentry.dm_id = docmeta["pacer_dm_id"] except KeyError: pass try: docentry.sha1 = docmeta["sha1"] except KeyError: pass if not ignore_available: try: docentry.available = docmeta["available"] except KeyError: pass try: docentry.lastdate = docmeta["upload_date"] except KeyError: pass try: docentry.free_import = docmeta["free_import"] except KeyError: pass try: docentry.save() except IntegrityError: logging.error("update_local_db: could not save %s %s %s %s" % (court, casenum, docnum, subdocnum))