- added: database: get_debt(name) and views for it

This commit is contained in:
Bernhard Stampfer
2016-03-26 21:09:17 +01:00
parent 8469f00884
commit cd38d16430
4 changed files with 20 additions and 3 deletions

View File

@@ -170,6 +170,7 @@ def get_consumed(user=None, startdate=None, enddate=None):
consumed.append(c)
return consumed
def add_consume(username, productid):
consumerid = query_db("SELECT ID FROM USERS WHERE NAME = ?", [username], one=True)
@@ -184,6 +185,19 @@ def add_consume(username, productid):
return
def get_debt(name=None):
consumptions = get_consumed(name)
debt = 0
for consumption in consumptions:
debt += consumption.price
deposits = get_deposits(get_user_by_name(name).id)
for deposit in deposits:
debt -= deposit.amount
return debt
def get_deposits(userid = None):
#ID|USERID|AMOUNT|TIME
if userid == None:

View File

@@ -22,7 +22,7 @@
<tr>
<td>{{user.longname}}</td>
<td>{% if user.isblack %} &#9745; {% else %} &#9744; {% endif %}</td>
<td>{{dept}} € </td>
<td>{{debt[user.id-1]}} € </td>
<td> <input type="number" name="{{user.name}}_payed" step="any" required value="0" /></td>
<td>Einzelne Rechnung <a href="/billing/send_personal_bill/{{user.name}}">versenden</a></td>
</tr>

View File

@@ -18,7 +18,7 @@
<p>Total: {{ "%0.2f" % (deposited - owed)}} €</p>
</div>
<div>
<h2>Einzahlungen (TODO)</h2>
<h2>Einzahlungen</h2>
<table>
<tr>
<th>Datum</th>

View File

@@ -264,7 +264,10 @@ def billing():
if request.method == 'POST':
return render_template('billing.html', users=users, success="Not Implemented", dept=0, user=get_user_by_name(session.get('name')))
if request.method == 'GET':
return render_template('billing.html', users=users, dept=0, user=get_user_by_name(session.get('name')))
debt = [0 for user in users]
for user in users:
debt[user.id-1] = get_debt(user.name)
return render_template('billing.html', users=users, debt=debt, user=get_user_by_name(session.get('name')))
@app.route('/billing/send_personal_bill/<name>', methods=['GET','POST'])