Ejemplo n.º 1
0
def create_transaction():
    tag = tag_repository.select(request.form["tag_id"])
    merchant = merchant_repository.select(request.form["merchant_id"])
    amount = request.form["amount"]
    new_transaction = Transaction(tag, merchant, amount)
    transaction_repository.save(new_transaction)
    return redirect("/transactions")
Ejemplo n.º 2
0
def update_merchant(id):
    merchant = merchant_repository.select(id)
    merchant.name = request.form['name']
    merchant.active = request.form['active']
    merchant_repository.update(merchant)

    return redirect("/merchants")
Ejemplo n.º 3
0
def select(id):
    sql = "SELECT * FROM transactions WHERE id = %s"
    values = [id]
    result = run_sql(sql, values)[0]
    merchant = merchant_repository.select(result["merchant_id"])
    tag = tag_repository.select(result["tag_id"])
    transaction = Transaction(merchant, result["date"], result["amount"], tag, result["id"])
    return transaction 
def create_transaction():
    amount = request.form["amount"]
    merchant_id = request.form["merchant_id"]
    tag_id = request.form["tag_id"]
    merchant = merchant_repository.select(merchant_id)
    tag = tag_repository.select(tag_id)
    new_transaction = Transaction(amount, merchant, tag)
    transaction_repository.save(new_transaction)
    return redirect("/transactions")
Ejemplo n.º 5
0
def create_transaction():
    merchant_id = request.form['merchant_id']
    tag_id = request.form['tag_id']
    amount = request.form['amount']
    merchant = merchant_repository.select(merchant_id)
    tag = tag_repository.select(tag_id)
    transaction = Transaction(merchant, tag, amount)
    transaction_repository.save(transaction)
    return redirect('/transactions')
Ejemplo n.º 6
0
def update_transaction(id):
    amount = request.form['amount']
    category = category_repository.select(request.form['category_id'])
    date = request.form['date']
    merchant = merchant_repository.select(request.form['merchant_id'])
    user = user_repository.select(request.form['user_id'])
    transaction = Transaction(amount, category, date, merchant, user, id)
    transaction_repository.update(transaction)
    return redirect("/transactions")
Ejemplo n.º 7
0
def select(id):
    sql = "SELECT * FROM transactions WHERE id = %s"
    values = [id]
    result = run_sql(sql, values)[0]
    tag = tag_repository.select(result['tag_id'])
    merchant = merchant_repository.select(result['merchant_id'])
    user = user_repository.select(result['user_id'])
    transaction = Transaction(tag, merchant, user, result['amount'], result['date'], result['id'])
    return transaction
Ejemplo n.º 8
0
def select_all():
    transactions = []
    sql = "SELECT * FROM transactions ORDER BY date DESC"
    results = run_sql(sql)
    for row in results:
        merchant = merchant_repository.select(row["merchant_id"])
        tag = tag_repository.select(row["tag_id"])
        transaction = Transaction(merchant, row["date"], row["amount"], tag, row["id"])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 9
0
def create_transaction():
    merchant_id = request.form["merchant_id"]
    merchant = merchant_repository.select(merchant_id)
    date = request.form["date"]
    amount = float(request.form["amount"])
    tag_id = request.form["tag_id"]
    tag = tag_repository.select(tag_id)
    new_transaction = Transaction(merchant, date, amount, tag)
    transaction_repository.save(new_transaction)
    return redirect("/transactions")
Ejemplo n.º 10
0
def update_transaction(id):
    merchant_id = request.form["merchant_id"]
    merchant = merchant_repository.select(merchant_id)
    date = request.form["date"]
    amount = request.form["amount"]
    tag_id = request.form["tag_id"]
    tag = tag_repository.select(tag_id)
    transaction = Transaction(merchant, date, amount, tag, id)
    transaction_repository.update(transaction)
    return redirect("/transactions")
Ejemplo n.º 11
0
def sort_all_by_tag_z2a():
    transactions = []
    sql = "select t.* from transactions as t join tags as tg on tg.id = t.tag_id order by tg.name DESC"
    results = run_sql(sql)
    for row in results:
        merchant = merchant_repository.select(row["merchant_id"])
        tag = tag_repository.select(row["tag_id"])
        transaction = Transaction(merchant, row["date"], row["amount"], tag, row["id"])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 12
0
def sort_all_by_merchant_a2z():
    transactions = []
    sql = "select t.* from transactions as t join merchants as m on m.id = t.merchant_id order by m.name ASC"
    results = run_sql(sql)
    for row in results:
        merchant = merchant_repository.select(row["merchant_id"])
        tag = tag_repository.select(row["tag_id"])
        transaction = Transaction(merchant, row["date"], row["amount"], tag, row["id"])
        transactions.append(transaction)
    return transactions
def log_new_transaction():
    merchant_id = request.form['merchant-name']
    tag_id = request.form['tag-category']
    amount = request.form['amount']

    merchant = merchant_repository.select(merchant_id)
    tag = tag_repository.select(tag_id)
    transaction = Transaction(merchant, tag, amount)
    transaction_repository.save(transaction)

    return redirect("/transactions")
Ejemplo n.º 14
0
def transactions(id):
    transactions = []
    sql = "SELECT * FROM transactions WHERE tag_id = %s ORDER BY date DESC"
    values = [id]
    results = run_sql(sql, values)
    for row in results:
        merchant = merchant_repository.select(row["merchant_id"])
        tag = select(row["tag_id"])
        transaction = Transaction(merchant, row["date"], row["amount"], tag, row["id"])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 15
0
def select(id):
    transaction = None
    sql = "SELECT * FROM transactions WHERE id = %s"
    values = [id]
    result = run_sql(sql, values)

    if result is not None:
        merchant = merchant_repository.select(result['merchant_id'])
        tag = tag_repository.select(result['tag_id'])
        transaction = Transaction(merchant, tag, result['amount'], result['id'], result['time_stamp'])
    return transaction
Ejemplo n.º 16
0
def select_all():
    transactions = []
    sql = "SELECT * FROM transactions"
    results = run_sql(sql)
    for row in results:
        tag = tag_repository.select(row['tag_id'])
        merchant = merchant_repository.select(row['merchant_id'])
        user = user_repository.select(row['user_id'])
        transaction = Transaction(tag, merchant, user, row['amount'], row['date'], row['id'])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 17
0
def update_transaction(id):
    tag_id = request.form['tag_id']
    merchant_id = request.form['merchant_id']
    user_id = request.form['user_id']
    amount = request.form['amount']
    date = request.form['date']
    tag = tag_repository.select(tag_id)
    merchant = merchant_repository.select(merchant_id)
    user = user_repository.select(user_id)
    updated_transaction = Transaction(tag, merchant, user, amount, date, id)
    transaction_repository.update(updated_transaction)
    return redirect("/transactions")
Ejemplo n.º 18
0
def select_all():
    transactions = []

    sql = "SELECT * FROM transactions"
    results = run_sql(sql)

    for row in results:
        merchant = merchant_repository.select(row['merchant_id'])
        tag = tag_repository.select(row['tag_id'])
        transaction = Transaction(merchant, tag, row['amount'], row['id'], row['time_stamp'])
        transactions.append(transaction)
    return transactions
def select_all():
    transactions = []

    sql = "SELECT * FROM transactions"
    results = run_sql(sql)
    
    for result in results:
        merchant = merchant_repository.select(result["merchant_id"])
        tag = tag_repository.select(result["tag_id"])
        transaction = Transaction(merchant, tag, result['amount'], result["id"])
        transactions.append(transaction)
    return transactions
def sort_transactions(transactions):
    transactions = []
    sql = "SELECT * FROM transactions ORDER BY date ASC"
    results = run_sql(sql)

    for row in results:
        merchant = merchant_repository.select(row['merchant_id'])
        category = category_repository.select(row['category_id'])
        user = user_repository.select(row['user_id'])
        transaction = Transaction(row['amount'], category, row['date'],
                                  merchant, user, row['id'])
        transactions.append(transaction)
    return transactions
def select(id):
    transaction = None
    sql = "SELECT * FROM transactions WHERE id = %s"
    values = [id]
    result = run_sql(sql, values)[0]

    if result is not None:
        merchant = merchant_repository.select(result['merchant_id'])
        category = category_repository.select(result['category_id'])
        user = user_repository.select(result['user_id'])
        transaction = Transaction(result['amount'], category, result['date'],
                                  merchant, user, result['id'])
    return transaction
Ejemplo n.º 22
0
def create_transaction():
    amount = request.form["amount"]
    user = user_repository.select(request.form["user"])
    merchant = merchant_repository.select(request.form["merchant"])
    tag = tag_repository.select(request.form["tag"])
    new_transaction = Transaction(amount, user, merchant, tag)
    transaction_repository.save(new_transaction)
    tags = tag_repository.select_all()
    transactions = user_repository.select_transactions(user)
    total = 0
    for transaction in transactions:
        total += transaction.amount
    return render_template("/users/dashboard.html", user = user, transactions = transactions, total = total, tags = tags)
def select_all():
    transactions = []
    sql = "SELECT * FROM transactions"
    results = run_sql(sql)
    for result in results:
        amount = float(result["amount"])
        merchant = merchant_repository.select(result["merchant_id"])
        tag = tag_repository.select(result["tag_id"])
        transaction = Transaction(amount, merchant, tag, result["id"],
                                  result["time_created"])
        transactions.append(transaction)
        transactions.reverse()
    return transactions
def select_all():
    transactions = []
    sql = "SELECT * FROM transactions"
    results = run_sql(sql)
    for result in results:
        user = user_repository.select(result["user_id"])
        merchant = merchant_repository.select(result["merchant_id"])
        tag = tag_repository.select(result["tag_id"])
        transaction = Transaction(user, result["date"], result["time"],
                                  merchant, result["amount"], tag,
                                  result["id"])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 25
0
def update_transaction(id):
    transaction = transaction_repository.select(id)
    user = user_repository.select(transaction.user.id)
    amount = request.form['amount']
    merchant = merchant_repository.select(request.form['merchant'])
    tag = tag_repository.select(request.form['tag'])
    updated_transaction = Transaction(amount, user, merchant, tag, transaction.id)
    transaction_repository.update(updated_transaction)
    transactions = user_repository.select_transactions(user)
    tags = tag_repository.select_all()
    total = 0
    for transaction in transactions:
        total += transaction.amount
    return render_template("/users/dashboard.html", user = user, transactions = transactions, total = total, tags = tags)
def select_by_tag(id):
    transactions = []
    sql = "SELECT * FROM transactions where tag_id = %s"
    values = [id]
    results = run_sql(sql, values)
    for result in results:
        user = user_repository.select(result["user_id"])
        merchant = merchant_repository.select(result["merchant_id"])
        tag = tag_repository.select(result["tag_id"])
        transaction = Transaction(user, result["date"], result["time"],
                                  merchant, result["amount"], tag,
                                  result["id"])
        transactions.append(transaction)
    return transactions
def filter_by_month(month):
    transactions = []
    sql = "SELECT * FROM transactions WHERE EXTRACT (MONTH from date) = %s "
    values = [month]
    results = run_sql(sql, values)

    for row in results:
        merchant = merchant_repository.select(row['merchant_id'])
        category = category_repository.select(row['category_id'])
        user = user_repository.select(row['user_id'])
        transaction = Transaction(row['amount'], category, row['date'],
                                  merchant, user, row['id'])
        transactions.append(transaction)
    return transactions
Ejemplo n.º 28
0
def transactions(tag):
    transactions = []

    sql = "SELECT * FROM merchants INNER JOIN transactions ON transactions.merchant_id = merchants.id WHERE transactions.tag_id = %s"
    values = [tag.id]
    results = run_sql(sql, values)

    for row in results:
        merchant_id = row['merchant_id']
        user_id = row['user_id']
        merchant = merchant_repository.select(merchant_id)
        user = user_repository.select(user_id)
        transaction = Transaction(tag, merchant, user, row['amount'],
                                  row['date'])
        transactions.append(transaction)
    return transactions
def create_transaction():
    user_id = request.form["user_id"]
    date = request.form["date"]
    time = request.form["time"]
    merchant_id = request.form["merchant_id"]
    amount = float(request.form["amount"])
    tag_id = request.form["tag_id"]
    user = user_repository.select(user_id)
    merchant = merchant_repository.select(merchant_id)
    tag = tag_repository.select(tag_id)
    if user.can_afford(amount) == True:
        transaction = Transaction(user, date, time, merchant, amount, tag)
        transaction_repository.save(transaction)
        return redirect("/transactions")
    else:
        error = "I'm sorry, this transaction will put you over your budget."
        return render_template("/transactions/error.html",
                               error=error,
                               title="Error")
Ejemplo n.º 30
0
def edit_merchant(id):
    merchant = merchant_repository.select(id)
    return render_template('merchants/edit.html', merchant=merchant)