chellow 1706691842.0.0__tar.gz → 1707137154.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of chellow might be problematic. Click here for more details.
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/.github/workflows/chellow.yml +3 -3
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/PKG-INFO +1 -1
- chellow-1707137154.0.0/VERSION +1 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/__init__.py +2 -1
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/dloads.py +45 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_109.py +2 -7
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_111.py +6 -9
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_169.py +5 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_187.py +3 -9
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_219.py +2 -7
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_247.py +3 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_29.py +6 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_387.py +3 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_41.py +2 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_429.py +2 -7
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_59.py +3 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_batches.py +2 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_bills.py +2 -7
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_g_monthly_duration.py +3 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_g_supplies_snapshot.py +2 -8
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_g_supply_virtual_bill.py +3 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_g_virtual_bills_hh.py +6 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/macros.html +6 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/views.py +1 -1
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_g_monthly_duration.py +2 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_g_supplies_snapshot.py +2 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_g_supply_virtual_bill.py +1 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_g_virtual_bills_hh.py +1 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_109.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_111.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_169.py +4 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_187.py +2 -12
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_219.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_247.py +14 -53
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_29.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_387.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_41.py +1 -3
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_429.py +1 -5
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_59.py +2 -10
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_batches.py +1 -6
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_bills.py +1 -6
- chellow-1707137154.0.0/test/test_dloads.py +10 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_views.py +17 -0
- chellow-1706691842.0.0/VERSION +0 -1
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/.ebextensions/chellow.config +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/.gitignore +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/README.md +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/application.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/bin/chellow_service_monitor.sh +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/bin/chellow_start.sh +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/api.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/bank_holidays.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/commands.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/__init__.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/aahedc.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/__init__.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/activity_mop_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/annual_mop_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/bgb_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/engie_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/engie_xls.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/engie_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/gdf_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/haven_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/haven_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/haven_edi_tprs.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/mm.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/nonsettlement_dc_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/settlement_dc_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/sse_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bill_parsers/sww_xls.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bmarketidx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/bsuos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/ccl.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/cfd.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/computer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/dno_rate_parser.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/duos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/elexon.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/energy_management.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/hh_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/hh_parser_bg_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/hh_parser_df2.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/hh_parser_simple_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/laf_import.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/lcc.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/mdd_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/rcrc.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/ro.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/scenario.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/system_price.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/tlms.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/tnuos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/triad.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/e/views.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/edi_lib.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/bill_import.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/bill_parser_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/bill_parser_engie_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/ccl.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/cv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/dn_rate_parser.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/engine.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/transportation.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/gas/views.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/general_import.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/models.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/national_grid.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/proxy.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/rate_server.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/__init__.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_177.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_181.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_183.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_215.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_231.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_233.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_241.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_291.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_33.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_81.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_87.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_asset_comparison.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_csv_llfcs.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_csv_site_hh_data.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_csv_site_snags.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_ecoes_comparison.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_g_virtual_bills.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_sscs.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/reports/report_supply_contacts.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/static/css/chellow.css +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/static/images/favicon.svg +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/static/images/favicon_test.svg +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/static/images/logo.png +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/static/js/htmx.min.js +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/403.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/base.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/bill_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/bill_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/chain.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/csv_sites_monthly_duration.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/downloads.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/asset_comparison.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel_snag.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel_snag_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/channel_snags.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/comm.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/comms.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/cop.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/cops.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_bills.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_register_reads.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_sites_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_sites_triad.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_supplies_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_supplies_snapshot.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/csv_supplies_triad.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_auto_importer.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch_file_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batch_upload_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_batches.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_bill.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_bill_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_bill_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_bill_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_bill_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contract_hh_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contract_hh_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_contracts_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dc_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dno.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dno_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dno_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dno_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dnos.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dtc_meter_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/dtc_meter_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/duration_report.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/elexon.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/em_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/em_months.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/em_site.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/em_totals.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/energisation_status.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/energisation_statuses.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/era_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/era_edit_form.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/era_supplier_bill_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/generator_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/generator_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/gsp_group.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/gsp_groups.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/hh_datum_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/lafs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/lcc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/llfc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/llfc_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/llfcs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/market_role.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/market_roles.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/meter_payment_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/meter_payment_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/meter_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/meter_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch_file_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batch_upload_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_batches.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_bill.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_bill_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_bill_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_bill_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_bill_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_contract_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mop_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfc_ssc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfc_ssc_pc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfc_ssc_pcs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfc_sscs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_llfcs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_participant.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_participants.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_ssc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtc_sscs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/mtcs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/ods_monthly_duration.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/participant.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/participants.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/parties.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/party.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/pc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/pcs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/read_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/read_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/read_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/read_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/scenario.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/scenario_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/scenario_docs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/scenario_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/scenarios.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_add_e_supply.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_add_e_supply_form.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_site_snags.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_snag.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_snag_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_snags.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/site_snags_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/source.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/sources.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/ssc.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/sscs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_file_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_file_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batch_upload_file.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_batches.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_bill.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_bill_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_bill_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_bill_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_bill_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_contract_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supplier_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_eras.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_months.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_note_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_note_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_notes.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_post.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/supply_virtual_bill.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/tpr.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/e/tprs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/edi_viewer.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/batch.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/batch_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/batch_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/batches.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/bill.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/bill_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/bill_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/bill_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/bill_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/dn.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/dns.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/era_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/exit_zone.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_auto_importer.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_contract_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/industry_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/ldz.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/read_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/read_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/read_type.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/read_types.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/reading_frequencies.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/reading_frequency.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/reports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_contract_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplier_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supplies.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supply.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supply_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supply_note_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supply_note_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/supply_notes.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/unit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/g/units.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/general_import.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/general_imports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/home.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/input_date.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/local_report.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/local_reports.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/national_grid.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_auto_importer.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_contract.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_contract_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_contracts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_rate_script.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_rate_script_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/non_core_rate_script_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/object_summary.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/rate_server.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_asset_comparison.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_bill_check.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_ecoes_comparison.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_row.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_row_bill_check.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_run_supply_contacts.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/report_runs.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_add.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_edit.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_gen_graph.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_hh_data.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_months.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/site_used_graph.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/sites.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/supplies.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/system.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/tester.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/user.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/user_roles.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/templates/users.html +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/testing.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/chellow/utils.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/gpl.txt +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/pyproject.toml +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/requirements.txt +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/setup.cfg +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/systemd/chellow.service +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/systemd/chellow_upgrader.service +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/systemd/chellow_upgrader.timer +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/conftest.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_activity_mop_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_annual_mop_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_engie_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_engie_xls.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_engie_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_haven_csv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_haven_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_haven_edi_tprs.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_nonsettlement_dc_stark_xlsx/bills.nonsettlement.dc.stark.xlsx +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_nonsettlement_dc_stark_xlsx/bills_old.nonsettlement.dc.stark.xlsx +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_nonsettlement_dc_stark_xlsx/test_bill_parser_nonsettlement_dc_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_settlement_dc_stark_xlsx/bills.settlement.dc.stark.xlsx +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_settlement_dc_stark_xlsx/test_bill_parser_settlement_dc_stark_xlsx.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_sse_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/bill_parsers/test_bill_parser_sww_xls.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/system_price/prices.xls +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/system_price/test_system_price.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_aahedc.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_bill_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_bsuos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_ccl.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_cfd.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_computer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_dno_rate_parser.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_duos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_e_views.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_hh_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_laf_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_mdd_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_rcrc_importer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_ro.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_scenario.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_tlms.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_tnuos.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/e/test_triad.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/bill_parsers/test_g_bill_parser_engie_edi.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/test_dn_rate_parser.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/test_engine.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/test_g_cv.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/test_gas_views.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/gas/test_transportation.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_181.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_183.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_231.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_291.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_33.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_81.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_87.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_asset_comparison.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_dno_vl_parser.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/reports/test_report_ecoes_comparison.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_chellow.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_edi_viewer.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_general_import.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_models.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_rate_server.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_testing.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/test_utils.py +0 -0
- {chellow-1706691842.0.0 → chellow-1707137154.0.0}/test/utils.py +0 -0
|
@@ -24,7 +24,7 @@ jobs:
|
|
|
24
24
|
--health-retries 5
|
|
25
25
|
|
|
26
26
|
steps:
|
|
27
|
-
- uses: actions/checkout@
|
|
27
|
+
- uses: actions/checkout@v4
|
|
28
28
|
- name: Install dependencies
|
|
29
29
|
run: |
|
|
30
30
|
python -m pip install --upgrade pip
|
|
@@ -44,7 +44,7 @@ jobs:
|
|
|
44
44
|
id-token: write
|
|
45
45
|
if: github.ref == 'refs/heads/main'
|
|
46
46
|
steps:
|
|
47
|
-
- uses: actions/checkout@
|
|
47
|
+
- uses: actions/checkout@v4
|
|
48
48
|
- name: Install dependencies
|
|
49
49
|
run: |
|
|
50
50
|
python -m pip install --upgrade pip
|
|
@@ -64,7 +64,7 @@ jobs:
|
|
|
64
64
|
id-token: write
|
|
65
65
|
if: github.ref == 'refs/heads/test'
|
|
66
66
|
steps:
|
|
67
|
-
- uses: actions/checkout@
|
|
67
|
+
- uses: actions/checkout@v4
|
|
68
68
|
- name: Install dependencies
|
|
69
69
|
run: |
|
|
70
70
|
python -m pip install --upgrade pip
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: chellow
|
|
3
|
-
Version:
|
|
3
|
+
Version: 1707137154.0.0
|
|
4
4
|
Summary: Web Application for checking UK energy bills.
|
|
5
5
|
Project-URL: Homepage, https://github.com/WessexWater/chellow
|
|
6
6
|
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1707137154.0.0"
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
2
|
from datetime import datetime as Datetime
|
|
3
3
|
from importlib.metadata import version
|
|
4
|
+
from pathlib import Path
|
|
4
5
|
|
|
5
6
|
from flask import Flask, Response, g, make_response, render_template, request
|
|
6
7
|
|
|
@@ -78,7 +79,7 @@ def create_app(testing=False):
|
|
|
78
79
|
|
|
79
80
|
if not testing:
|
|
80
81
|
db_upgrade(app.root_path)
|
|
81
|
-
chellow.dloads.startup(app.instance_path)
|
|
82
|
+
chellow.dloads.startup(Path(app.instance_path))
|
|
82
83
|
chellow.e.hh_importer.startup()
|
|
83
84
|
|
|
84
85
|
with Session() as sess:
|
|
@@ -6,6 +6,10 @@ import threading
|
|
|
6
6
|
import time
|
|
7
7
|
import traceback
|
|
8
8
|
|
|
9
|
+
from zipfile import ZIP_DEFLATED, ZipFile
|
|
10
|
+
|
|
11
|
+
from werkzeug.exceptions import BadRequest
|
|
12
|
+
|
|
9
13
|
from chellow.utils import utc_datetime_now
|
|
10
14
|
|
|
11
15
|
|
|
@@ -23,23 +27,54 @@ def startup(instance_path):
|
|
|
23
27
|
file_deleter = FileDeleter()
|
|
24
28
|
file_deleter.start()
|
|
25
29
|
|
|
26
|
-
download_path =
|
|
30
|
+
download_path = instance_path / "downloads"
|
|
31
|
+
download_path.mkdir(parents=True, exist_ok=True)
|
|
32
|
+
|
|
33
|
+
dirs = sorted(download_path.iterdir(), reverse=True)
|
|
34
|
+
if len(dirs) > 0:
|
|
35
|
+
download_id = int(dirs[0].name[:SERIAL_DIGITS]) + 1
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class DloadFile:
|
|
39
|
+
def __init__(self, running_name, finished_name, mode, newline, is_zip):
|
|
40
|
+
self.running_name = running_name
|
|
41
|
+
self.finished_name = finished_name
|
|
42
|
+
if is_zip:
|
|
43
|
+
self.f = ZipFile(running_name, mode=mode, compression=ZIP_DEFLATED)
|
|
44
|
+
else:
|
|
45
|
+
self.f = self.running_name.open(mode=mode, newline=newline)
|
|
46
|
+
|
|
47
|
+
def _check_exists(self):
|
|
48
|
+
if not self.running_name.exists():
|
|
49
|
+
raise BadRequest("Output file has been deleted.")
|
|
50
|
+
|
|
51
|
+
def write(self, b):
|
|
52
|
+
self._check_exists()
|
|
53
|
+
self.f.write(b)
|
|
54
|
+
|
|
55
|
+
def seek(self, offset, whence=0):
|
|
56
|
+
self._check_exists()
|
|
57
|
+
return self.f.seek(offset, whence)
|
|
58
|
+
|
|
59
|
+
def close(self):
|
|
60
|
+
self.f.close()
|
|
61
|
+
self._check_exists()
|
|
62
|
+
self.running_name.rename(self.finished_name)
|
|
27
63
|
|
|
28
|
-
|
|
29
|
-
|
|
64
|
+
def __enter__(self):
|
|
65
|
+
pass
|
|
30
66
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
download_id = int(files[0][:SERIAL_DIGITS]) + 1
|
|
67
|
+
def __exit__(self):
|
|
68
|
+
self.close()
|
|
34
69
|
|
|
35
70
|
|
|
36
|
-
def
|
|
71
|
+
def open_file(base, user, mode="r", newline=None, is_zip=False):
|
|
37
72
|
global download_id
|
|
38
73
|
|
|
39
74
|
base = base.replace("/", "").replace(" ", "")
|
|
40
75
|
try:
|
|
41
76
|
lock.acquire()
|
|
42
|
-
if len(
|
|
77
|
+
if len(list(download_path.iterdir())) == 0:
|
|
43
78
|
download_id = 0
|
|
44
79
|
serial = str(download_id).zfill(SERIAL_DIGITS)
|
|
45
80
|
download_id += 1
|
|
@@ -56,8 +91,8 @@ def make_names(base, user):
|
|
|
56
91
|
uname = un.replace("@", "").replace(".", "").replace("\\", "")
|
|
57
92
|
|
|
58
93
|
names = tuple("_".join((serial, v, uname, base)) for v in ("RUNNING", "FINISHED"))
|
|
59
|
-
|
|
60
|
-
return
|
|
94
|
+
running_name, finished_name = tuple(download_path / name for name in names)
|
|
95
|
+
return DloadFile(running_name, finished_name, mode, is_zip)
|
|
61
96
|
|
|
62
97
|
|
|
63
98
|
mem_id = 0
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
@@ -10,7 +9,7 @@ from flask import g
|
|
|
10
9
|
from sqlalchemy import or_, text
|
|
11
10
|
from sqlalchemy.sql.expression import null
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
from chellow.dloads import open_file
|
|
14
13
|
from chellow.e.computer import SiteSource, contract_func, displaced_era, forecast_date
|
|
15
14
|
from chellow.models import Contract, Era, Session, Site, SiteEra, Source, Supply
|
|
16
15
|
from chellow.utils import c_months_u, hh_format, hh_range, req_int
|
|
@@ -34,10 +33,7 @@ def content(contract_id, end_year, end_month, months, user):
|
|
|
34
33
|
f = None
|
|
35
34
|
try:
|
|
36
35
|
with Session() as sess:
|
|
37
|
-
|
|
38
|
-
"displaced.csv", user
|
|
39
|
-
)
|
|
40
|
-
f = open(running_name, mode="w", newline="")
|
|
36
|
+
f = open_file("displaced.csv", user, mode="w", newline="")
|
|
41
37
|
writer = csv.writer(f, lineterminator="\n")
|
|
42
38
|
titles = [
|
|
43
39
|
"Site Code",
|
|
@@ -268,7 +264,6 @@ def content(contract_id, end_year, end_month, months, user):
|
|
|
268
264
|
finally:
|
|
269
265
|
if f is not None:
|
|
270
266
|
f.close()
|
|
271
|
-
os.rename(running_name, finished_name)
|
|
272
267
|
|
|
273
268
|
|
|
274
269
|
def do_get(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
@@ -20,8 +19,8 @@ from werkzeug.exceptions import BadRequest
|
|
|
20
19
|
|
|
21
20
|
from zish import ZishLocationException, loads
|
|
22
21
|
|
|
23
|
-
|
|
24
|
-
from chellow.e.computer import contract_func
|
|
22
|
+
from chellow.dloads import open_file
|
|
23
|
+
from chellow.e.computer import SupplySource, contract_func
|
|
25
24
|
from chellow.models import (
|
|
26
25
|
Batch,
|
|
27
26
|
Bill,
|
|
@@ -109,10 +108,9 @@ def content(
|
|
|
109
108
|
try:
|
|
110
109
|
with Session() as sess:
|
|
111
110
|
user = User.get_by_id(sess, user_id)
|
|
112
|
-
|
|
113
|
-
f"bill_check_{fname_additional}.csv", user
|
|
111
|
+
tmp_file = open_file(
|
|
112
|
+
f"bill_check_{fname_additional}.csv", user, mode="w", newline=""
|
|
114
113
|
)
|
|
115
|
-
tmp_file = open(running_name, mode="w", newline="")
|
|
116
114
|
writer = csv.writer(tmp_file, lineterminator="\n")
|
|
117
115
|
|
|
118
116
|
report_run = ReportRun.get_by_id(sess, report_run_id)
|
|
@@ -245,7 +243,6 @@ def content(
|
|
|
245
243
|
finally:
|
|
246
244
|
if tmp_file is not None:
|
|
247
245
|
tmp_file.close()
|
|
248
|
-
os.rename(running_name, finished_name)
|
|
249
246
|
|
|
250
247
|
|
|
251
248
|
def do_get(sess):
|
|
@@ -558,7 +555,7 @@ def _process_supply(
|
|
|
558
555
|
)
|
|
559
556
|
data_source = data_sources[ds_key]
|
|
560
557
|
except KeyError:
|
|
561
|
-
data_source = data_sources[ds_key] =
|
|
558
|
+
data_source = data_sources[ds_key] = SupplySource(
|
|
562
559
|
sess,
|
|
563
560
|
chunk_start,
|
|
564
561
|
chunk_finish,
|
|
@@ -573,7 +570,7 @@ def _process_supply(
|
|
|
573
570
|
if data_source.measurement_type == "hh":
|
|
574
571
|
metered_kwh += sum(h["msp-kwh"] for h in data_source.hh_data)
|
|
575
572
|
else:
|
|
576
|
-
ds =
|
|
573
|
+
ds = SupplySource(
|
|
577
574
|
sess,
|
|
578
575
|
chunk_start,
|
|
579
576
|
chunk_finish,
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
5
|
-
import zipfile
|
|
6
4
|
from io import StringIO
|
|
7
5
|
|
|
8
6
|
from flask import g, request
|
|
@@ -10,7 +8,7 @@ from flask import g, request
|
|
|
10
8
|
from sqlalchemy import or_, select
|
|
11
9
|
from sqlalchemy.sql.expression import null
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
from chellow.dloads import open_file
|
|
14
12
|
from chellow.e.computer import SupplySource, forecast_date
|
|
15
13
|
from chellow.models import Channel, Era, HhDatum, RSession, Supply, User
|
|
16
14
|
from chellow.utils import (
|
|
@@ -105,13 +103,12 @@ def content(
|
|
|
105
103
|
fdate = forecast_date()
|
|
106
104
|
user = User.get_by_id(sess, user_id)
|
|
107
105
|
|
|
108
|
-
running_name, finished_name = chellow.dloads.make_names(
|
|
109
|
-
"_".join(base_name) + (".zip" if is_zipped else ".csv"), user
|
|
110
|
-
)
|
|
111
106
|
if is_zipped:
|
|
112
|
-
zf =
|
|
107
|
+
zf = open_file(
|
|
108
|
+
"_".join(base_name) + ".zip", user, mode="w", is_zip=True
|
|
109
|
+
)
|
|
113
110
|
else:
|
|
114
|
-
tf =
|
|
111
|
+
tf = open_file("_".join(base_name) + ".csv", user, mode="w", newline="")
|
|
115
112
|
tf.write(titles_csv)
|
|
116
113
|
|
|
117
114
|
for supply in sess.execute(supplies).scalars():
|
|
@@ -226,8 +223,6 @@ def content(
|
|
|
226
223
|
zf.close()
|
|
227
224
|
else:
|
|
228
225
|
tf.write(msg)
|
|
229
|
-
finally:
|
|
230
|
-
os.rename(running_name, finished_name)
|
|
231
226
|
|
|
232
227
|
|
|
233
228
|
def do_get(sess):
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import os
|
|
2
1
|
import threading
|
|
3
2
|
import traceback
|
|
4
|
-
import zipfile
|
|
5
3
|
from datetime import datetime as Datetime
|
|
6
4
|
|
|
7
5
|
from flask import g, request
|
|
@@ -10,7 +8,7 @@ from sqlalchemy import null, or_, select, text, true
|
|
|
10
8
|
|
|
11
9
|
from werkzeug.exceptions import BadRequest
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
from chellow.dloads import open_file
|
|
14
12
|
from chellow.models import Era, Session, Site, SiteEra, Supply, User
|
|
15
13
|
from chellow.utils import (
|
|
16
14
|
hh_format,
|
|
@@ -67,12 +65,10 @@ def content(start_date, finish_date, supply_id, mpan_cores, is_zipped, user_id):
|
|
|
67
65
|
with Session() as sess:
|
|
68
66
|
user = User.get_by_id(sess, user_id)
|
|
69
67
|
|
|
70
|
-
running_name, finished_name = chellow.dloads.make_names(base_name, user)
|
|
71
|
-
|
|
72
68
|
if is_zipped:
|
|
73
|
-
zf =
|
|
69
|
+
zf = open_file(base_name, user, mode="w", is_zip=True)
|
|
74
70
|
else:
|
|
75
|
-
tmp_file =
|
|
71
|
+
tmp_file = open_file(base_name, user, mode="w")
|
|
76
72
|
|
|
77
73
|
caches = {}
|
|
78
74
|
supplies = (
|
|
@@ -243,11 +239,9 @@ def content(start_date, finish_date, supply_id, mpan_cores, is_zipped, user_id):
|
|
|
243
239
|
finally:
|
|
244
240
|
if is_zipped:
|
|
245
241
|
zf.close()
|
|
246
|
-
os.rename(running_name, finished_name)
|
|
247
242
|
else:
|
|
248
243
|
if tmp_file is not None:
|
|
249
244
|
tmp_file.close()
|
|
250
|
-
os.rename(running_name, finished_name)
|
|
251
245
|
|
|
252
246
|
|
|
253
247
|
def do_post(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
5
4
|
|
|
@@ -10,7 +9,7 @@ from sqlalchemy.orm import joinedload
|
|
|
10
9
|
|
|
11
10
|
from werkzeug.exceptions import BadRequest
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
from chellow.dloads import open_file
|
|
14
13
|
from chellow.models import (
|
|
15
14
|
Batch,
|
|
16
15
|
Bill,
|
|
@@ -31,10 +30,7 @@ def content(year, month, months, supply_id, user_id):
|
|
|
31
30
|
with Session() as sess:
|
|
32
31
|
user = User.get_by_id(sess, user_id)
|
|
33
32
|
|
|
34
|
-
|
|
35
|
-
"register_reads.csv", user
|
|
36
|
-
)
|
|
37
|
-
f = open(running_name, mode="w", newline="")
|
|
33
|
+
f = open_file("register_reads.csv", user, mode="w", newline="")
|
|
38
34
|
w = csv.writer(f, lineterminator="\n")
|
|
39
35
|
titles = (
|
|
40
36
|
"Duration Start",
|
|
@@ -178,7 +174,6 @@ def content(year, month, months, supply_id, user_id):
|
|
|
178
174
|
finally:
|
|
179
175
|
if f is not None:
|
|
180
176
|
f.close()
|
|
181
|
-
os.rename(running_name, finished_name)
|
|
182
177
|
|
|
183
178
|
|
|
184
179
|
def do_get(sess):
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import os
|
|
2
1
|
import sys
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
@@ -16,7 +15,7 @@ from sqlalchemy.sql.expression import null
|
|
|
16
15
|
|
|
17
16
|
from werkzeug.exceptions import BadRequest
|
|
18
17
|
|
|
19
|
-
|
|
18
|
+
from chellow.dloads import open_file
|
|
20
19
|
from chellow.e.computer import contract_func, forecast_date
|
|
21
20
|
from chellow.e.scenario import make_calcs, make_site_deltas
|
|
22
21
|
from chellow.models import (
|
|
@@ -747,11 +746,7 @@ def content(
|
|
|
747
746
|
if is_bill_check:
|
|
748
747
|
base_name.append("bill_check")
|
|
749
748
|
|
|
750
|
-
|
|
751
|
-
"_".join(base_name) + ".ods", user
|
|
752
|
-
)
|
|
753
|
-
|
|
754
|
-
rf = open(running_name, "wb")
|
|
749
|
+
rf = open_file("_".join(base_name) + ".ods", user, mode="wb")
|
|
755
750
|
|
|
756
751
|
for rate_script in scenario_props.get("rates", []):
|
|
757
752
|
contract_id = rate_script["contract_id"]
|
|
@@ -1024,8 +1019,7 @@ def content(
|
|
|
1024
1019
|
site_rows.append(["Problem " + msg])
|
|
1025
1020
|
if rf is None:
|
|
1026
1021
|
msg = traceback.format_exc()
|
|
1027
|
-
|
|
1028
|
-
ef = open(r_name, "w")
|
|
1022
|
+
ef = open_file("error.txt", None, mode="w")
|
|
1029
1023
|
ef.write(msg + "\n")
|
|
1030
1024
|
ef.close()
|
|
1031
1025
|
else:
|
|
@@ -1042,7 +1036,6 @@ def content(
|
|
|
1042
1036
|
finally:
|
|
1043
1037
|
if rf is not None:
|
|
1044
1038
|
rf.close()
|
|
1045
|
-
os.rename(running_name, finished_name)
|
|
1046
1039
|
|
|
1047
1040
|
|
|
1048
1041
|
def do_post(sess):
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
6
5
|
|
|
7
6
|
from flask import g
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
from chellow.dloads import open_file
|
|
10
9
|
from chellow.models import Session, Site, User
|
|
11
10
|
from chellow.utils import c_months_u, csv_make_val, req_int, req_str, to_ct
|
|
12
11
|
from chellow.views import chellow_redirect
|
|
@@ -22,10 +21,12 @@ def content(start_date, finish_date, site_id, typ, user_id):
|
|
|
22
21
|
try:
|
|
23
22
|
with Session() as sess:
|
|
24
23
|
user = User.get_by_id(sess, user_id)
|
|
25
|
-
|
|
26
|
-
f'site_hh_data_{to_ct(start_date).strftime("%Y%m%d%H%M")}.csv',
|
|
24
|
+
f = open_file(
|
|
25
|
+
f'site_hh_data_{to_ct(start_date).strftime("%Y%m%d%H%M")}.csv',
|
|
26
|
+
user,
|
|
27
|
+
mode="w",
|
|
28
|
+
newline="",
|
|
27
29
|
)
|
|
28
|
-
f = open(running_name, mode="w", newline="")
|
|
29
30
|
writer = csv.writer(f, lineterminator="\n")
|
|
30
31
|
titles = ["site_code", "type", "hh_start_clock_time", "total"]
|
|
31
32
|
hr_titles = tuple(map(str, range(1, 51)))
|
|
@@ -61,7 +62,6 @@ def content(start_date, finish_date, site_id, typ, user_id):
|
|
|
61
62
|
finally:
|
|
62
63
|
if f is not None:
|
|
63
64
|
f.close()
|
|
64
|
-
os.rename(running_name, finished_name)
|
|
65
65
|
|
|
66
66
|
|
|
67
67
|
def do_get(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
@@ -9,7 +8,7 @@ from flask import g
|
|
|
9
8
|
from sqlalchemy import or_, select
|
|
10
9
|
from sqlalchemy.sql.expression import null, true
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
from chellow.dloads import open_file
|
|
13
12
|
from chellow.e.computer import SupplySource, forecast_date
|
|
14
13
|
from chellow.models import Era, Session, Site, SiteEra, Supply
|
|
15
14
|
from chellow.utils import (
|
|
@@ -31,10 +30,9 @@ def content(supply_id, start_date, finish_date, user):
|
|
|
31
30
|
|
|
32
31
|
f_date = forecast_date()
|
|
33
32
|
|
|
34
|
-
|
|
35
|
-
f"supply_virtual_bills_hh_{supply_id}.csv", user
|
|
33
|
+
f = open_file(
|
|
34
|
+
f"supply_virtual_bills_hh_{supply_id}.csv", user, mode="w", newline=""
|
|
36
35
|
)
|
|
37
|
-
f = open(running_name, mode="w", newline="")
|
|
38
36
|
w = csv.writer(f, lineterminator="\n")
|
|
39
37
|
|
|
40
38
|
mop_titles = []
|
|
@@ -155,7 +153,6 @@ def content(supply_id, start_date, finish_date, user):
|
|
|
155
153
|
finally:
|
|
156
154
|
if f is not None:
|
|
157
155
|
f.close()
|
|
158
|
-
os.rename(running_name, finished_name)
|
|
159
156
|
|
|
160
157
|
|
|
161
158
|
def do_get(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
@@ -11,7 +10,7 @@ from sqlalchemy import or_
|
|
|
11
10
|
from sqlalchemy.sql.expression import null, true
|
|
12
11
|
|
|
13
12
|
import chellow.e.tnuos
|
|
14
|
-
from chellow.dloads import
|
|
13
|
+
from chellow.dloads import open_file
|
|
15
14
|
from chellow.e.computer import SupplySource, forecast_date
|
|
16
15
|
from chellow.e.duos import duos_vb
|
|
17
16
|
from chellow.models import Era, Pc, Session, Site, SiteEra, Source, Supply, User
|
|
@@ -54,8 +53,7 @@ def content(year, supply_id, user_id):
|
|
|
54
53
|
try:
|
|
55
54
|
with Session() as sess:
|
|
56
55
|
user = User.get_by_id(sess, user_id)
|
|
57
|
-
|
|
58
|
-
f = open(running_name, mode="w", newline="")
|
|
56
|
+
f = open_file("supplies_triad.csv", user, mode="w", newline="")
|
|
59
57
|
writer = csv.writer(f, lineterminator="\n")
|
|
60
58
|
|
|
61
59
|
march_start = to_utc(ct_datetime(year, 3, 1))
|
|
@@ -207,7 +205,6 @@ def content(year, supply_id, user_id):
|
|
|
207
205
|
finally:
|
|
208
206
|
if f is not None:
|
|
209
207
|
f.close()
|
|
210
|
-
os.rename(running_name, finished_name)
|
|
211
208
|
|
|
212
209
|
|
|
213
210
|
def do_get(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import sys
|
|
4
3
|
import threading
|
|
5
4
|
import traceback
|
|
@@ -15,8 +14,8 @@ from sqlalchemy.orm import joinedload
|
|
|
15
14
|
|
|
16
15
|
from werkzeug.exceptions import BadRequest
|
|
17
16
|
|
|
18
|
-
import chellow.dloads
|
|
19
17
|
import chellow.gas.engine
|
|
18
|
+
from chellow.dloads import open_file
|
|
20
19
|
from chellow.models import GBatch, GBill, GContract, GEra, Session, Site, SiteGEra, User
|
|
21
20
|
from chellow.utils import csv_make_val, hh_max, hh_min, req_date, req_int, to_utc
|
|
22
21
|
from chellow.views import chellow_redirect
|
|
@@ -30,10 +29,7 @@ def content(g_batch_id, g_bill_id, g_contract_id, start_date, finish_date, user_
|
|
|
30
29
|
with Session() as sess:
|
|
31
30
|
user = User.get_by_id(sess, user_id)
|
|
32
31
|
|
|
33
|
-
|
|
34
|
-
"g_bill_check.csv", user
|
|
35
|
-
)
|
|
36
|
-
tmp_file = open(running_name, "w")
|
|
32
|
+
tmp_file = open_file("g_bill_check.csv", user, mode="w")
|
|
37
33
|
csv_writer = csv.writer(tmp_file)
|
|
38
34
|
g_bills = (
|
|
39
35
|
select(GBill)
|
|
@@ -121,7 +117,6 @@ def content(g_batch_id, g_bill_id, g_contract_id, start_date, finish_date, user_
|
|
|
121
117
|
tmp_file.write(f"Problem {msg}")
|
|
122
118
|
finally:
|
|
123
119
|
tmp_file.close()
|
|
124
|
-
os.rename(running_name, finished_name)
|
|
125
120
|
|
|
126
121
|
|
|
127
122
|
def _process_g_bill_ids(
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import os
|
|
2
1
|
import sys
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
@@ -15,7 +14,7 @@ from sqlalchemy.sql.expression import null
|
|
|
15
14
|
|
|
16
15
|
from werkzeug.exceptions import BadRequest
|
|
17
16
|
|
|
18
|
-
|
|
17
|
+
from chellow.dloads import open_file
|
|
19
18
|
from chellow.e.computer import contract_func, forecast_date
|
|
20
19
|
from chellow.e.scenario import make_calcs, make_site_deltas
|
|
21
20
|
from chellow.models import (
|
|
@@ -786,11 +785,7 @@ def content(
|
|
|
786
785
|
)
|
|
787
786
|
|
|
788
787
|
user = User.get_by_id(rsess, user_id)
|
|
789
|
-
|
|
790
|
-
"_".join(base_name) + ".ods", user
|
|
791
|
-
)
|
|
792
|
-
|
|
793
|
-
rf = open(running_name, "wb")
|
|
788
|
+
rf = open_file("_".join(base_name) + ".ods", user, mode="wb")
|
|
794
789
|
|
|
795
790
|
for rate_script in scenario_props.get("rates", []):
|
|
796
791
|
contract_id = rate_script["contract_id"]
|
|
@@ -1094,8 +1089,7 @@ def content(
|
|
|
1094
1089
|
site_rows.append(["Problem " + msg])
|
|
1095
1090
|
if rf is None:
|
|
1096
1091
|
msg = traceback.format_exc()
|
|
1097
|
-
|
|
1098
|
-
ef = open(r_name, "w")
|
|
1092
|
+
ef = open_file("error.txt", None, mode="w")
|
|
1099
1093
|
ef.write(msg + "\n")
|
|
1100
1094
|
ef.close()
|
|
1101
1095
|
else:
|
|
@@ -1113,7 +1107,6 @@ def content(
|
|
|
1113
1107
|
finally:
|
|
1114
1108
|
if rf is not None:
|
|
1115
1109
|
rf.close()
|
|
1116
|
-
os.rename(running_name, finished_name)
|
|
1117
1110
|
|
|
1118
1111
|
|
|
1119
1112
|
def do_post(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
5
4
|
|
|
@@ -7,7 +6,7 @@ from flask import g
|
|
|
7
6
|
|
|
8
7
|
from sqlalchemy.sql import func, select
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
from chellow.dloads import open_file
|
|
11
10
|
from chellow.models import (
|
|
12
11
|
Batch,
|
|
13
12
|
Bill,
|
|
@@ -25,8 +24,7 @@ def content(user_id):
|
|
|
25
24
|
try:
|
|
26
25
|
with Session() as sess:
|
|
27
26
|
user = User.get_by_id(sess, user_id)
|
|
28
|
-
|
|
29
|
-
f = open(running_name, mode="w", newline="")
|
|
27
|
+
f = open_file("batches.csv", user, mode="w", newline="")
|
|
30
28
|
writer = csv.writer(f, lineterminator="\n")
|
|
31
29
|
|
|
32
30
|
titles = (
|
|
@@ -140,7 +138,6 @@ def content(user_id):
|
|
|
140
138
|
finally:
|
|
141
139
|
if f is not None:
|
|
142
140
|
f.close()
|
|
143
|
-
os.rename(running_name, finished_name)
|
|
144
141
|
|
|
145
142
|
|
|
146
143
|
def do_get(sess):
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import csv
|
|
2
|
-
import os
|
|
3
2
|
import threading
|
|
4
3
|
import traceback
|
|
5
4
|
from collections import defaultdict
|
|
@@ -9,7 +8,7 @@ from flask import g
|
|
|
9
8
|
from sqlalchemy import select
|
|
10
9
|
from sqlalchemy.orm import joinedload
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
from chellow.dloads import open_file
|
|
13
12
|
from chellow.models import Batch, Bill, Session, User
|
|
14
13
|
from chellow.utils import csv_make_val, req_int
|
|
15
14
|
from chellow.views import chellow_redirect
|
|
@@ -94,10 +93,7 @@ def content(user_id, batch_id):
|
|
|
94
93
|
try:
|
|
95
94
|
with Session() as sess:
|
|
96
95
|
user = User.get_by_id(sess, user_id)
|
|
97
|
-
|
|
98
|
-
f"bills_batch_{batch_id}.csv", user
|
|
99
|
-
)
|
|
100
|
-
f = open(running_name, mode="w", newline="")
|
|
96
|
+
f = open_file(f"bills_batch_{batch_id}.csv", user, mode="w", newline="")
|
|
101
97
|
writer = csv.writer(f, lineterminator="\n")
|
|
102
98
|
_content(sess, writer, batch_id)
|
|
103
99
|
|
|
@@ -109,7 +105,6 @@ def content(user_id, batch_id):
|
|
|
109
105
|
finally:
|
|
110
106
|
if f is not None:
|
|
111
107
|
f.close()
|
|
112
|
-
os.rename(running_name, finished_name)
|
|
113
108
|
|
|
114
109
|
|
|
115
110
|
def do_get(sess):
|