diff options
Diffstat (limited to 'python/load_intex_collateral.py')
| -rw-r--r-- | python/load_intex_collateral.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/python/load_intex_collateral.py b/python/load_intex_collateral.py index 79b2a41d..4c61b8a0 100644 --- a/python/load_intex_collateral.py +++ b/python/load_intex_collateral.py @@ -33,18 +33,17 @@ def get_latest_dealupdate(workdate): for line in dr if 'Paid' not in line['Latest Update']} return deal_table -def upload_data(workdate, conn, cursor): - for dealname in os.listdir(os.path.join(common.root, "data", "Collaterals_" + workdate)): +def upload_data(dealnames, workdate, conn, cursor): + for dealname in dealnames: #dealname, updatedate = line.rstrip().split() # updatedate = datetime.datetime.strptime(updatedate, '%m/%d/%Y') #dealname = dealname.upper() + ",AD.txt - with open( os.path.join(common.root, "data", "Collaterals_" + workdate, dealname), "r") as fh: + with open( os.path.join(common.root, "data", "Collaterals_" + workdate, dealname.upper() + ",AD.txt"), "r") as fh: dr = csv.DictReader(fh, dialect = 'excel-tab') missingfields = set(fields) - set(dr.fieldnames) if "LoanX ID" in missingfields: print "LoanX ID column is missing. Probably an error in exporting from intex" pdb.set_trace() - dealname = dealname.split(',')[0].lower() data = [] for line in dr: for f in missingfields: @@ -59,8 +58,7 @@ def upload_data(workdate, conn, cursor): try: # make sure the string is utf8 safe line['Issuer'] = line['Issuer'].decode('windows-1252') - if line['Reinvest Collat'].upper() == 'Y' or line['Issuer'] == '' \ - or line['Issuer'].lower() == 'dummy': + if line['Reinvest Collat'].upper() == 'Y' or line['Issuer'] == '': # assume it's a reinvestment asset line['Reinvest Collat'] = True line['Issuer'] = line['ID Number'] @@ -82,6 +80,7 @@ def upload_data(workdate, conn, cursor): line['Life Floor'] = float('Nan') r = [convertToNone(line[field]) for field in fields] data.append(r) + cursor.execute( "select distinct(updatedate) from et_collateral where dealname='{0}'".format(dealname)) old_update_dates = [date[0] for date in cursor.fetchall()] @@ -138,7 +137,11 @@ if __name__ == "__main__": workdate = sys.argv[1] else: workdate = str(datetime.date.today()) - upload_data(workdate, common.conn, common.cursor) + if len(sys.argv) > 2: + dealnames = sys.argv[2:] + else: + dealnames = [d.split(",")[0].lower() for d in os.listdir(os.path.join(common.root, "data", "Collaterals_" + workdate))] + upload_data(dealnames, workdate, common.conn, common.cursor) common.cursor.close() common.conn.close() print "done" |
