def calculate_expenses(expense_file_id): monthly_expense_dict = ExpenseManager.monthly_expense_dict(expense_file_id) # This contains the monthly expense in decimal, convert to float' monthly_default_dict = { k: float(v) for k,v in monthly_expense_dict.iteritems() } return format_json(monthly_default_dict)
def all_expense_files(): expense_files = ExpenseManager.expense_files() resp = [] for ef in expense_files: resp.append({ 'filename': ef.filename, 'id': ef.id, 'creation_timestamp': str(ef.utc_datetime) }) return format_json(resp)
def upload_csv(): if request.method == 'POST':\ f = request.files['file'] if not f or not _allowed_file(f.filename): return 'Bad File' filename = secure_filename(f.filename) stream = io.StringIO(f.stream.read().decode("UTF8"), newline=None) csv_input = csv.reader(stream) expense_file, expenses = ExpenseManager.parse_csv_input( csv_input, filename ) ExpenseManager.save_expenses(expense_file, expenses) expenses = map(lambda e: str(e), expenses) return format_json(expenses) return render_template('upload.html')