public RawDataWindow(PacerImportTransaction _transaction) { InitializeComponent(); if (_transaction != null) { this._pITransaction = _transaction; txtCourtName.Text = _pITransaction.CourtName; txtBillablePages.Text = _pITransaction.BillablePages.ToString(); txtCost.Text = _pITransaction.Cost.ToString("c"); txtTimestamp.Text = _pITransaction.DownloadTimeStamp.ToLongTimeString(); txtStartDate.Text = _pITransaction.StartDate.ToShortDateString(); txtEndDate.Text = _pITransaction.EndDate.ToShortDateString(); txtLines.Text = _pITransaction.LineCount.ToString(); txtUniqueCases.Text = _pITransaction.TotalCases.ToString(); txtImportStatus.Text = _pITransaction.ImportStatus; try { // Read the file as one string. System.IO.StreamReader myFile = new System.IO.StreamReader(_pITransaction.FilePath); txtRawData.Text = myFile.ReadToEnd(); myFile.Close(); } catch (IOException e) { // Let the user know what went wrong. txtRawData.Text = "The original raw data file was not found and may have been moved/removed from the directory!"; } GridViewLineItems.ItemsSource = PacerImportDataService.GetForImportTransaction(_pITransaction.ID); GridViewBankruptcyCases.ItemsSource = BankruptcyCaseService.GetFiltered(_pITransaction.ID.ToString(), string.Empty, string.Empty, string.Empty, 0, string.Empty, false); Mouse.OverrideCursor = Cursors.Arrow; } }
public bool Reprocess(bool GeoCodeAddresses) { //ceck if we've established conection and queried for the data if (this.FilePath.Length > 0) { try { // Read the file as one string. System.IO.StreamReader myFile = new System.IO.StreamReader(this.FilePath); string _rawData = myFile.ReadToEnd(); myFile.Close(); if (_rawData == null || _rawData.Length == 0) { _importStatus = "NO DATA"; return(false); } //delete all imported data but don;t bother deleting bankruptcy case data as it will get written over //if already exists PacerImportDataService.DeleteForTransaction(this.ID); //get the court //Court _court = CourtService.GetByID(this.CourtID); //this.PacerFileFormatID = _format.ID; PacerFileFormat _format = PacerFileFormatService.GetByID(this.PacerFileFormatID); //on a reprocess we use the current format for the court if (BRGCaseMailServer.PacerImportTransactionService.ProcessManualImportTransaction(this, _format) == true) { //process imported lines int rows = PacerImportTransactionService.ProcessImportedLineItems(this, GeoCodeAddresses); if (_court == null) { _court = CourtService.GetByID(this.CourtID); } if (this._dischargedCases == true) { _court.LastPacerLoadDischargeDate = this.EndDate; } else { _court.LastPacerLoadFileDate = this.EndDate; } CourtService.Save((Court)_court); return(true); } else { return(false); } } catch (Exception ex) { this.ImportMessage = ex.Message; this.ImportStatus = "FAILURE"; PacerImportTransactionService.Save(this); return(false); } } else { PacerImportTransactionService.Save(this); return(false); //end if (_status == true || _result != null) } }
static public int ProcessImportedLineItems(PacerImportTransaction objPacerImportTransaction, bool GeocodeLocations) { List <PacerImportData> _data = PacerImportDataService.GetForImportTransaction(objPacerImportTransaction.ID); PacerImportData _previousRow = null; int insertedRowCount = 0; int updatedRowCount = 0; int formatErrors = 0; string StateCode = null; foreach (PacerImportData _row in _data) { if (_previousRow == null) { //first row - is this row a debtor - if this row fails we just exit with failure because the //file format is most likely incorrect. if (((_row.PartyCaseRole.ToUpper() == "DEBTOR") || (_row.PartyCaseRole.ToUpper() == "CO-DEBTOR") || (_row.PartyCaseRole.ToUpper() == "JOINT DEBTOR")) && _row.CareOfOK) { _row.Imported = true; PacerImportDataService.Save(_row); try { BankruptcyCase _case = new BankruptcyCase(_row); Debug.WriteLine(_case.CaseNumber4Digit); if (GeocodeLocations) { YahooGeoCoder.GeocodeCase(_case); } _case.IsModified = true; int returnvalue = BankruptcyCaseService.Save(_case, true); if (returnvalue == 1) { insertedRowCount++; } else if (returnvalue == 2) { updatedRowCount++; } } catch (Exception ex) { formatErrors++; } } _previousRow = _row; } else //previousrow != null if this row fails we do not exit with failure because the // it's just a bad row. { if (_row.PartyAddressLine1 != _previousRow.PartyAddressLine1 && ((_row.PartyCaseRole.ToUpper() == "DEBTOR") || (_row.PartyCaseRole.ToUpper() == "CO-DEBTOR") || (_row.PartyCaseRole.ToUpper() == "JOINT DEBTOR")) && _row.CareOfOK) { try { //debtor at different address _row.Imported = true; PacerImportDataService.Save(_row); BankruptcyCase _case = new BankruptcyCase(_row); if (GeocodeLocations) { YahooGeoCoder.GeocodeCase(_case); } if (insertedRowCount == 318) { Debug.WriteLine(_case.CaseNumber4Digit); } if (_case.LastName == "Babakatis") { Debug.WriteLine(_case.CaseNumber4Digit); } _case.IsModified = true; int returnvalue = BankruptcyCaseService.Save(_case, true); if (returnvalue == 1) { insertedRowCount++; if (insertedRowCount == 1654) { Debug.WriteLine(insertedRowCount); } } else if (returnvalue == 2) { updatedRowCount++; } } catch (Exception e) { formatErrors++; } } _previousRow = _row; } } // update counts for objPacerImportTransaction.InsertedCases = insertedRowCount; objPacerImportTransaction.LineCount = _data.Count; objPacerImportTransaction.TotalCases = insertedRowCount + updatedRowCount; if (objPacerImportTransaction.ImportMessage.Length > 0) { //we already have an import string - parse the result to add the previous total try { if (objPacerImportTransaction.ImportMessage.IndexOf("Unique Cases Added") > 0) { int previoustotal = Int32.Parse(objPacerImportTransaction.ImportMessage.Substring(0, objPacerImportTransaction.ImportMessage.IndexOf("Unique Cases Added") - 1)); objPacerImportTransaction.ImportMessage = previoustotal + insertedRowCount + " Unique Cases Added! " + updatedRowCount + " Cases Updated! " + formatErrors + " format Errors."; } else { objPacerImportTransaction.ImportMessage = insertedRowCount + " Unique Cases Added! " + updatedRowCount + " Cases Updated! " + formatErrors + " format Errors."; } } catch { } } else { objPacerImportTransaction.ImportMessage = insertedRowCount + " Unique Cases Added! " + updatedRowCount + " Cases Updated! " + formatErrors + " format Errors."; } objPacerImportTransaction.ImportStatus = "SUCCESS"; Save(objPacerImportTransaction); Court _court = CourtService.GetByID(objPacerImportTransaction.CourtID); ZipGeoCodeService.UpdateStatsForState(_court.StateCode); return(insertedRowCount); }