From 29ee69c82a4c23b59b7f8fd07e1e479b951e2923 Mon Sep 17 00:00:00 2001 From: chen Date: Tue, 7 Aug 2018 13:06:04 -0400 Subject: [PATCH 1/3] Modify back_end_input.py form_annual_bill_table() as API standard --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 06f19b4..94ca14d 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,7 @@ reqs = [str(req.req) for req in install_reqs] setup( name='bpfin', - version='0.2.1', + version='0.2.2', description='Finance models and utilites', author='BlocPower', author_email='admin@blocpower.org', -- GitLab From 070538ee700516b9dd5ff9b452d09dafce11e41c Mon Sep 17 00:00:00 2001 From: chen Date: Tue, 7 Aug 2018 17:35:06 -0400 Subject: [PATCH 2/3] Add convert_timestamp_year function to bill.py --- bpfin/back_end_call/back_end_inputs.py | 7 ++----- bpfin/lib/other.py | 5 +++++ bpfin/utilbills/bill.py | 4 ++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/bpfin/back_end_call/back_end_inputs.py b/bpfin/back_end_call/back_end_inputs.py index 65a7f4a..eb99c69 100644 --- a/bpfin/back_end_call/back_end_inputs.py +++ b/bpfin/back_end_call/back_end_inputs.py @@ -68,8 +68,6 @@ def form_annual_bill_table(raw_monthly_bill_table, raw_annual_bill_table, analys 'oil': same, 'water': same} bill_overview_instance = { - "instance": - { "electric":{"2012": 44497.03, "2013": 45283.79, ... "2036": 70045.62}, "gas":{"2012": 10847.97, "2013": 11045.45, ... "2036": 17077.7}, "oil":{"2012": null, ... "2036": null}, @@ -80,7 +78,6 @@ def form_annual_bill_table(raw_monthly_bill_table, raw_annual_bill_table, analys "water_user": 'Annual Estimate', "total_annual_charge": {"2012": 55345.0, "2013": 56329.240000000005, ... "2036": 87123.31999999999} } - } To Do: from utilbills.bill.py merge form_prior_month_bill(), and delete that one * this work is done. need all units test and then can delete that @@ -122,7 +119,7 @@ def form_annual_bill_table(raw_monthly_bill_table, raw_annual_bill_table, analys # assign total charge to instance. UI display: "Total Energy Expense" instance["total_annual_charge"] = sum_energy_opex(bill_overview_dict)[0] - bill_overview_instance = {"instance":instance} + bill_overview_instance = instance # print('\ninstance = ', bill_overview_instance) return bill_overview_dict, manual_input_dict, prior_month_bill_dict, bill_overview_instance @@ -195,7 +192,7 @@ def form_prior_income_table( # from bpfin.tests.testdata import feature_data as db # pp = pprint.PrettyPrinter(width=120, indent=4, compact=True) -# pp.pprint(form_annual_bill_table(db.raw_monthly_bill_table, db.raw_annual_bill_table, db.analysis_date)[1]) +# pp.pprint(form_annual_bill_table(db.raw_monthly_bill_table, db.raw_annual_bill_table, db.analysis_date)[-1]) # print('\nannual_bill =', form_annual_bill_table(db.raw_monthly_bill_table, db.raw_annual_bill_table, db.analysis_date)[-1]) diff --git a/bpfin/lib/other.py b/bpfin/lib/other.py index a54ef55..d2123ee 100644 --- a/bpfin/lib/other.py +++ b/bpfin/lib/other.py @@ -353,6 +353,11 @@ def date_diff(startdate, enddate): def convert_timestamp_date(list1): return list(map(lambda x: datetime.date(x.year, x.month, x.day), list1)) +def convert_timestamp_year(input_dict): + dict1 = copy.deepcopy(input_dict) + for key in dict1: + dict1[datetime.date(year=int(key), month=1, day=1).year] = dict1.pop(key) + return dict1 # def cal_latest_day(terms_list): # latestday = datetime.date(1900, 1, 1) diff --git a/bpfin/utilbills/bill.py b/bpfin/utilbills/bill.py index d86df37..77141f0 100644 --- a/bpfin/utilbills/bill.py +++ b/bpfin/utilbills/bill.py @@ -5,7 +5,7 @@ from bpfin.utilbills.bill_lib import annualizing_projection, form_bill_calendar, from bpfin.utilbills.bill_month_normalize_rough import bill_month_normalize_rough from bpfin.utilbills.bill_prior_proj_rough import bill_prior_proj_rough from bpfin.utilbills.inflation_sample_data import inflation_coeff_dict -from bpfin.lib.other import average_list_with_none, form_date_calendar +from bpfin.lib.other import average_list_with_none, form_date_calendar, convert_timestamp_year from bpfin.lib.other import UTILITY_TYPE_LIST # from bpfin.lib.other import average_nonzero_list @@ -53,8 +53,8 @@ def estimate_annual_bill(raw_annual_bill, analysis_date): annual_bill_dict = {} else: average_charge = average_list_with_none(raw_annual_bill.values()) - # average_charge = average_nonzero_list(raw_annual_bill.values()) annual_bill_dict = copy.deepcopy(raw_annual_bill) + annual_bill_dict = convert_timestamp_year(annual_bill_dict) for year in proforma_year: if year not in annual_bill_dict: -- GitLab From a0977ebc320e3fd527016b9600cf1107c456c9a9 Mon Sep 17 00:00:00 2001 From: chen Date: Tue, 7 Aug 2018 17:40:01 -0400 Subject: [PATCH 3/3] downgrade version back to 0.2.1 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 94ca14d..06f19b4 100644 --- a/setup.py +++ b/setup.py @@ -9,7 +9,7 @@ reqs = [str(req.req) for req in install_reqs] setup( name='bpfin', - version='0.2.2', + version='0.2.1', description='Finance models and utilites', author='BlocPower', author_email='admin@blocpower.org', -- GitLab