def add(): trip = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) trip = Trip( user_id=USER_ID, name=flask.request.form['name'], start_date=flask.request.form['start_date'], end_date=flask.request.form['end_date'], currency_id=flask.request.form['currency_id'], ) db_session.add(trip) db_session.commit() result = flask.redirect( flask.url_for('trips.view', trip_id=trip.id, _external=True)) current_app.logger.info(dir(result)) current_app.logger.info(result) return result currencies = {c.id: c.iso_code for c in Currency.query.all()} return flask.render_template('trips/add.html', currencies=currencies, trip=trip)
def add(): trip = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) trip = Trip( user_id=USER_ID, name=flask.request.form['name'], start_date=flask.request.form['start_date'], end_date=flask.request.form['end_date'], currency_id=flask.request.form['currency_id'], ) db_session.add(trip) db_session.commit() result = flask.redirect(flask.url_for('trips.view', trip_id=trip.id, _external=True)) current_app.logger.info(dir(result)) current_app.logger.info(result) return result currencies = {c.id: c.iso_code for c in Currency.query.all()} return flask.render_template('trips/add.html', currencies=currencies, trip=trip)
def add(trip_id): trip = Trip.query.get(trip_id) exchange = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) preferred_currency_expense_amount = 0 if int(flask.request.form['expense_currency_id']) == int( trip.preferred_currency_id): preferred_currency_expense_amount = flask.request.form[ 'expense_amount'] elif flask.request.form['expense_account_id'] == CASH_ACCOUNT_ID: results = summary.get_cash_expense_in_preferred_currency( trip_id, flask.request.form['expense_amount'], flask.request.form['expense_currency_id']) for res in results: preferred_currency_expense_amount += res[ 'preferred_currency_amount'] db_session.add(res['money_exchange']) try: exchange = MoneyExchange( trip_id=trip_id, exchange_date=flask.request.form['date'], income_currency_id=flask.request.form['income_currency_id'], income_account_id=flask.request.form['income_account_id'], income_amount=flask.request.form['income_amount'], expense_currency_id=flask.request.form['expense_currency_id'], expense_account_id=flask.request.form['expense_account_id'], expense_amount=flask.request.form['expense_amount'], expense_fee=flask.request.form['expense_fee'] or 0, preferred_currency_expense_amount= preferred_currency_expense_amount, created=datetime.datetime.now()) db_session.add(exchange) db_session.commit() except: current_app.logger.exception('failed') return flask.redirect( flask.url_for('exchanges.view', money_exchange_id=exchange.id)) accounts = {a.id: a.name for a in Account.query.filter_by(user_id=USER_ID)} currencies = {c.id: c.iso_code for c in trip.currencies} today = datetime.date.today() return flask.render_template('exchanges/add.html', trip_id=trip_id, accounts=accounts, currencies=currencies, exchange=exchange, today=today)
def add(trip_id): trip = Trip.query.get(trip_id) exchange = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) preferred_currency_expense_amount = 0 if int(flask.request.form['expense_currency_id']) == int(trip.preferred_currency_id): preferred_currency_expense_amount = flask.request.form['expense_amount'] elif flask.request.form['expense_account_id'] == CASH_ACCOUNT_ID: results = summary.get_cash_expense_in_preferred_currency(trip_id, flask.request.form['expense_amount'], flask.request.form['expense_currency_id']) for res in results: preferred_currency_expense_amount += res['preferred_currency_amount'] db_session.add(res['money_exchange']) try: exchange = MoneyExchange( trip_id=trip_id, exchange_date=flask.request.form['date'], income_currency_id=flask.request.form['income_currency_id'], income_account_id=flask.request.form['income_account_id'], income_amount=flask.request.form['income_amount'], expense_currency_id=flask.request.form['expense_currency_id'], expense_account_id=flask.request.form['expense_account_id'], expense_amount=flask.request.form['expense_amount'], expense_fee=flask.request.form['expense_fee'] or 0, preferred_currency_expense_amount=preferred_currency_expense_amount, created=datetime.datetime.now() ) db_session.add(exchange) db_session.commit() except: current_app.logger.exception('failed') return flask.redirect(flask.url_for('exchanges.view', money_exchange_id=exchange.id)) accounts = {a.id: a.name for a in Account.query.filter_by(user_id=USER_ID)} currencies = {c.id: c.iso_code for c in trip.currencies} today = datetime.date.today() return flask.render_template('exchanges/add.html', trip_id=trip_id, accounts=accounts, currencies=currencies, exchange=exchange, today=today)
def add(trip_id): expense = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) trip = Trip.query.get(trip_id) daily_currency = DailyCurrency.query.filter_by( currency_id=flask.request.form['currency_id'], current=1).first() current_app.logger.info('{}, {}, {}'.format( trip.preferred_currency.daily_currency.conversion_rate, daily_currency.conversion_rate, float(flask.request.form['amount']))) preferred_currency_amount = 0 results = summary.get_cash_expense_in_preferred_currency( trip_id, flask.request.form['amount'], flask.request.form['currency_id']) expense_notes = [] for res in results: preferred_currency_amount += res['preferred_currency_amount'] note = { 'amount': res['amount'], 'preferred_currency_amount': res['preferred_currency_amount'], 'money_exchange_id': None } if res['money_exchange']: db_session.add(res['money_exchange']) note['money_exchange_id'] = res['money_exchange'].id expense_notes.append(note) expense = Expense(trip_id=trip_id, expense_date=flask.request.form['date'], amount=flask.request.form['amount'], preferred_currency_amount=preferred_currency_amount, currency_id=flask.request.form['currency_id'], daily_currency_id=DAILY_CURRENCY_ID, account_id=flask.request.form['account_id'], category_id=flask.request.form['category_id'], country_id=flask.request.form['country_id'], description=flask.request.form['description'], notes=json.dumps(expense_notes, cls=json_.ExpenseEncoder), created=datetime.datetime.now()) db_session.add(expense) db_session.commit() return flask.redirect( flask.url_for('expenses.view', expense_id=expense.id)) trip = Trip.query.get(trip_id) accounts = {a.id: a.name for a in Account.query.filter_by(user_id=USER_ID)} currencies = {c.id: c.iso_code for c in trip.currencies} countries = {c.id: c.country_name for c in trip.countries} categories = {c.id: c.category_name for c in Category.query.all()} today = datetime.date.today() return flask.render_template('expenses/add.html', trip_id=trip_id, accounts=accounts, categories=categories, countries=countries, currencies=currencies, expense=expense, today=today)
def add(trip_id): expense = None if flask.request.method == 'POST': current_app.logger.info(flask.request.form) trip = Trip.query.get(trip_id) daily_currency = DailyCurrency.query.filter_by(currency_id=flask.request.form['currency_id'], current=1).first() current_app.logger.info('{}, {}, {}'.format(trip.preferred_currency.daily_currency.conversion_rate, daily_currency.conversion_rate, float(flask.request.form['amount']))) preferred_currency_amount = 0 results = summary.get_cash_expense_in_preferred_currency(trip_id, flask.request.form['amount'], flask.request.form['currency_id']) expense_notes = [] for res in results: preferred_currency_amount += res['preferred_currency_amount'] note = { 'amount': res['amount'], 'preferred_currency_amount': res['preferred_currency_amount'], 'money_exchange_id': None } if res['money_exchange']: db_session.add(res['money_exchange']) note['money_exchange_id'] = res['money_exchange'].id expense_notes.append(note) expense = Expense( trip_id=trip_id, expense_date=flask.request.form['date'], amount=flask.request.form['amount'], preferred_currency_amount=preferred_currency_amount, currency_id=flask.request.form['currency_id'], daily_currency_id=DAILY_CURRENCY_ID, account_id=flask.request.form['account_id'], category_id=flask.request.form['category_id'], country_id=flask.request.form['country_id'], description=flask.request.form['description'], notes=json.dumps(expense_notes, cls=json_.ExpenseEncoder), created=datetime.datetime.now() ) db_session.add(expense) db_session.commit() return flask.redirect(flask.url_for('expenses.view', expense_id=expense.id)) trip = Trip.query.get(trip_id) accounts = {a.id: a.name for a in Account.query.filter_by(user_id=USER_ID)} currencies = {c.id: c.iso_code for c in trip.currencies} countries = {c.id: c.country_name for c in trip.countries} categories = {c.id: c.category_name for c in Category.query.all()} today = datetime.date.today() return flask.render_template('expenses/add.html', trip_id=trip_id, accounts=accounts, categories=categories, countries=countries, currencies=currencies, expense=expense, today=today)
exp_insert['amount'] = re.sub('[,$]','', r['credit_usd']) exp_insert['currency_id'] = CURRENCIES['USD'] exp_insert['daily_currency_id'] = DAILY_CURRENCIES[CURRENCIES['USD']] elif r['cash_expense_usd']: exp_insert['amount'] = re.sub('[,$]','', r['cash_expense_usd']) exp_insert['currency_id'] = CURRENCIES['USD'] exp_insert['daily_currency_id'] = DAILY_CURRENCIES[CURRENCIES['USD']] elif r['cash_expense_foreign']: exp_insert['amount'] = re.sub('[,$]','', r['cash_expense_foreign']) exp_insert['currency_id'] = CURRENCIES[current_currency] exp_insert['daily_currency_id'] = DAILY_CURRENCIES[CURRENCIES[current_currency]] print exp_insert expense = Expense(**exp_insert) db_session.add(expense) db_session.commit() print 'Expense: {}'.format(expense.id) inc_insert = { 'trip_id': 1, 'income_date': current_date, 'account_id': 1, 'expense_id': expense.id, 'amount': re.sub('[,$]','', r['cash_income_foreign']), 'currency_id': CURRENCIES[current_currency], 'created': datetime.datetime.now(), } if r['cash_income_foreign']: inc_insert['amount'] = re.sub('[,$]','', r['cash_income_foreign']) inc_insert['currency_id'] = CURRENCIES[current_currency],