public PacerImportTransaction Copy() { PacerImportTransaction _pacerImportTransaction = new PacerImportTransaction(); _pacerImportTransaction.ID = _iD; _pacerImportTransaction.CourtID = _courtID; _pacerImportTransaction.PacerFileFormatID = _pacerFileFormatID; _pacerImportTransaction.BillablePages = _billablePages; _pacerImportTransaction.Cost = _cost; _pacerImportTransaction.DischargedCases = _dischargedCases; _pacerImportTransaction.SearchCriteria = _searchCriteria; _pacerImportTransaction.StartDate = _startDate; _pacerImportTransaction.EndDate = _endDate; _pacerImportTransaction.LineCount = _lineCount; _pacerImportTransaction.TotalCases = _totalCases; _pacerImportTransaction.InsertedCases = _insertedCases; _pacerImportTransaction.UpdatedCases = _updatedCases; _pacerImportTransaction.FilePath = _filePath; _pacerImportTransaction.DownloadTimeStamp = _downloadTimeStamp; _pacerImportTransaction.ImportStatus = _importStatus; _pacerImportTransaction.ImportMessage = _importMessage; _pacerImportTransaction.PacerFileVersion = _pacerFileVersion; _pacerImportTransaction.PacerFileFormatNumColumns = _pacerFileFormatNumColumns; _pacerImportTransaction.CourtName = _courtName; return(_pacerImportTransaction); }
static public void Save(PacerImportTransaction objPacerImportTransaction, Database db, DbTransaction trans, bool CommitTrans) { try { if (objPacerImportTransaction.IsModified == true) { if (objPacerImportTransaction.ID == 0) { Insert(objPacerImportTransaction, db, trans); } else { Update(objPacerImportTransaction, db, trans); } } if (CommitTrans == true) { trans.Commit(); } } catch (Exception e) { if (CommitTrans == true) { //we were hoping to commit the transaction which means we're at the end so //Roll back the transaction. Otherwise just rethrow the error and let the next //higher level catch it and rollback trans.Rollback(); } //and then rethrow the error throw (e); } }
static private void Insert(PacerImportTransaction objPacerImportTransaction) { Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); System.Data.Common.DbCommand dbCommand = db.GetStoredProcCommand("p_PacerImportTransactionInsert"); db.AddOutParameter(dbCommand, "ID", DbType.Int32, 4); if (objPacerImportTransaction.CourtID > 0) { db.AddInParameter(dbCommand, "CourtID", DbType.Int32, objPacerImportTransaction.CourtID); } else { db.AddInParameter(dbCommand, "CourtID", DbType.Int32, Convert.DBNull); } if (objPacerImportTransaction.PacerFileFormatID > 0) { db.AddInParameter(dbCommand, "PacerFileFormatID", DbType.Int32, objPacerImportTransaction.PacerFileFormatID); } else { db.AddInParameter(dbCommand, "PacerFileFormatID", DbType.Int32, Convert.DBNull); } db.AddInParameter(dbCommand, "BillablePages", DbType.Int32, objPacerImportTransaction.BillablePages); db.AddInParameter(dbCommand, "Cost", DbType.Decimal, objPacerImportTransaction.Cost); db.AddInParameter(dbCommand, "DischargedCases", DbType.Boolean, objPacerImportTransaction.DischargedCases); db.AddInParameter(dbCommand, "SearchCriteria", DbType.String, objPacerImportTransaction.SearchCriteria); if (objPacerImportTransaction.StartDate > DateTime.MinValue) { db.AddInParameter(dbCommand, "StartDate", DbType.DateTime, objPacerImportTransaction.StartDate); } else { db.AddInParameter(dbCommand, "StartDate", DbType.DateTime, Convert.DBNull); } if (objPacerImportTransaction.EndDate > DateTime.MinValue) { db.AddInParameter(dbCommand, "EndDate", DbType.DateTime, objPacerImportTransaction.EndDate); } else { db.AddInParameter(dbCommand, "EndDate", DbType.DateTime, Convert.DBNull); } db.AddInParameter(dbCommand, "LineCount", DbType.Int32, objPacerImportTransaction.LineCount); db.AddInParameter(dbCommand, "TotalCases", DbType.Int32, objPacerImportTransaction.TotalCases); db.AddInParameter(dbCommand, "InsertedCases", DbType.Int32, objPacerImportTransaction.InsertedCases); db.AddInParameter(dbCommand, "UpdatedCases", DbType.Int32, objPacerImportTransaction.UpdatedCases); db.AddInParameter(dbCommand, "FilePath", DbType.String, objPacerImportTransaction.FilePath); if (objPacerImportTransaction.DownloadTimeStamp > DateTime.MinValue) { db.AddInParameter(dbCommand, "DownloadTimeStamp", DbType.DateTime, objPacerImportTransaction.DownloadTimeStamp); } else { db.AddInParameter(dbCommand, "DownloadTimeStamp", DbType.DateTime, Convert.DBNull); } db.AddInParameter(dbCommand, "ImportStatus", DbType.String, objPacerImportTransaction.ImportStatus); db.AddInParameter(dbCommand, "ImportMessage", DbType.String, objPacerImportTransaction.ImportMessage); db.ExecuteNonQuery(dbCommand); objPacerImportTransaction.ID = Int32.Parse(db.GetParameterValue(dbCommand, "ID").ToString()); }
static public bool ProcessManualImportTransaction(PacerImportTransaction objPacerImportTransaction) { //use this when the SSIS import fails. Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); if (objPacerImportTransaction.PacerFileFormatID == 0) { throw new ArgumentException("Pacer File Format not specified!"); } PacerFileFormat _format = PacerFileFormatService.GetByID(objPacerImportTransaction.PacerFileFormatID); // Read and display lines from the file until the end of // the file is reached. DbConnection conn = db.CreateConnection(); conn.Open(); DbTransaction trans = conn.BeginTransaction(); try { using (TextReader tr = File.OpenText(objPacerImportTransaction.FilePath)) { String line; int i = 0; while ((line = tr.ReadLine()) != null) { PacerTempRawImportData _data = new PacerTempRawImportData(line, _format); PacerTempRawImportDataService.Insert(_data, db, trans); if (i == 1167) { Debug.WriteLine("line:" + i.ToString() + " " + _data.CaseNumber4Digit); } i++; Debug.WriteLine("line:" + i.ToString() + " " + _data.CaseNumber4Digit); } System.Data.Common.DbCommand dbCommand = db.GetStoredProcCommand("p_ImportRawPACERData"); db.AddInParameter(dbCommand, "PacerImportTransactionID", DbType.Int32, objPacerImportTransaction.ID); db.ExecuteNonQuery(dbCommand, trans); trans.Commit(); return(true); } } catch (Exception ex) { objPacerImportTransaction.ImportMessage = "Import Failed. Error: " + ex.Message; objPacerImportTransaction.ImportStatus = "FAILURE"; trans.Rollback(); //Save trans we're done. PacerImportTransactionService.Save(objPacerImportTransaction); return(false); } }
static public void Delete(PacerImportTransaction objPacerImportTransaction) { Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); System.Data.Common.DbCommand dbCommand = db.GetStoredProcCommand("p_PacerImportTransactionDelete"); db.AddInParameter(dbCommand, "ID", DbType.Int32, objPacerImportTransaction.ID); db.ExecuteNonQuery(dbCommand); }
static public void ProcessImportTransaction(PacerImportTransaction objPacerImportTransaction) { Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); System.Data.Common.DbCommand dbCommand = db.GetStoredProcCommand("p_ImportRawPACERData"); db.AddInParameter(dbCommand, "PacerImportTransactionID", DbType.Int32, objPacerImportTransaction.ID); db.ExecuteNonQuery(dbCommand); ///TODO: ProcessImportTransaction Cases }
static public void Save(PacerImportTransaction objPacerImportTransaction) { if (objPacerImportTransaction.IsModified == true) { if (objPacerImportTransaction.ID == 0) { Insert(objPacerImportTransaction); } else { Update(objPacerImportTransaction); } } }
static public List <PacerImportTransaction> GetAll() { List <PacerImportTransaction> objPacerImportTransactions = new List <PacerImportTransaction>(); Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); using (IDataReader reader = db.ExecuteReader(CommandType.Text, _selectViewSQL)) { while (reader.Read()) { PacerImportTransaction objPacerImportTransaction = new PacerImportTransaction(); LoadPacerImportTransaction(objPacerImportTransaction, reader); objPacerImportTransaction.IsModified = false; objPacerImportTransactions.Add(objPacerImportTransaction); } // always call Close when done reading. reader.Close(); return(objPacerImportTransactions); } }
static public PacerImportTransaction GetByID(int ID) { PacerImportTransaction objPacerImportTransaction = new PacerImportTransaction(); string query = _selectViewSQL + " where ID = " + ID; Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); using (IDataReader reader = db.ExecuteReader(CommandType.Text, query)) { if (reader.Read()) { LoadPacerImportTransaction(objPacerImportTransaction, reader); // always call Close when done reading. reader.Close(); objPacerImportTransaction.IsModified = false; return(objPacerImportTransaction); } else { return(null); } } }
static public List <PacerImportTransaction> GetOverLappingTransactions(PacerImportTransaction testPacerImportTransaction) { List <PacerImportTransaction> objPacerImportTransactions = new List <PacerImportTransaction>(); Database db = DatabaseFactory.CreateDatabase("BRGCaseMail"); string _query = _selectViewSQL + " Where CourtID = " + testPacerImportTransaction.CourtID; _query += " and ( (StartDate <= '" + testPacerImportTransaction.StartDate + "' and EndDate >= '" + testPacerImportTransaction.StartDate + "') or"; _query += " (StartDate >= '" + testPacerImportTransaction.StartDate + "' and EndDate <= '" + testPacerImportTransaction.EndDate + "') or "; _query += " (StartDate >= '" + testPacerImportTransaction.StartDate + "' and StartDate <= '" + testPacerImportTransaction.EndDate + "') )"; //ignore the failures. _query += " and ImportStatus = 'SUCCESS' "; if (testPacerImportTransaction.DischargedCases == true) { _query += " and (DischargedCases = 1)"; } else { _query += " and (DischargedCases = 0)"; } using (IDataReader reader = db.ExecuteReader(CommandType.Text, _query)) { while (reader.Read()) { PacerImportTransaction objPacerImportTransaction = new PacerImportTransaction(); LoadPacerImportTransaction(objPacerImportTransaction, reader); objPacerImportTransaction.IsModified = false; objPacerImportTransactions.Add(objPacerImportTransaction); } // always call Close when done reading. reader.Close(); return(objPacerImportTransactions); } }
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); }
static private void LoadPacerImportTransaction(PacerImportTransaction objPacerImportTransaction, IDataReader _reader) { if (_reader.IsDBNull(0) != true) { objPacerImportTransaction.ID = _reader.GetInt32(0); } if (_reader.IsDBNull(1) != true) { objPacerImportTransaction.CourtID = _reader.GetInt32(1); } if (_reader.IsDBNull(2) != true) { objPacerImportTransaction.PacerFileFormatID = _reader.GetInt32(2); } if (_reader.IsDBNull(3) != true) { objPacerImportTransaction.BillablePages = _reader.GetInt32(3); } if (_reader.IsDBNull(4) != true) { objPacerImportTransaction.Cost = _reader.GetDecimal(4); } if (_reader.IsDBNull(5) != true) { objPacerImportTransaction.DischargedCases = _reader.GetBoolean(5); } if (_reader.IsDBNull(6) != true) { objPacerImportTransaction.SearchCriteria = _reader.GetString(6); } if (_reader.IsDBNull(7) != true) { objPacerImportTransaction.StartDate = _reader.GetDateTime(7); } if (_reader.IsDBNull(8) != true) { objPacerImportTransaction.EndDate = _reader.GetDateTime(8); } if (_reader.IsDBNull(9) != true) { objPacerImportTransaction.LineCount = _reader.GetInt32(9); } if (_reader.IsDBNull(10) != true) { objPacerImportTransaction.TotalCases = _reader.GetInt32(10); } if (_reader.IsDBNull(11) != true) { objPacerImportTransaction.InsertedCases = _reader.GetInt32(11); } if (_reader.IsDBNull(12) != true) { objPacerImportTransaction.UpdatedCases = _reader.GetInt32(12); } if (_reader.IsDBNull(13) != true) { objPacerImportTransaction.FilePath = _reader.GetString(13); } if (_reader.IsDBNull(14) != true) { objPacerImportTransaction.DownloadTimeStamp = _reader.GetDateTime(14); } if (_reader.IsDBNull(15) != true) { objPacerImportTransaction.ImportStatus = _reader.GetString(15); } if (_reader.IsDBNull(16) != true) { objPacerImportTransaction.ImportMessage = _reader.GetString(16); } if (_reader.IsDBNull(17) != true) { objPacerImportTransaction.PacerFileVersion = _reader.GetString(17); } if (_reader.IsDBNull(18) != true) { objPacerImportTransaction.PacerFileFormatNumColumns = _reader.GetInt32(18); } if (_reader.IsDBNull(19) != true) { objPacerImportTransaction.CourtName = _reader.GetString(19); } }