From 9ad5b7642e01bc073fd2ed9f750ec36b720ee605 Mon Sep 17 00:00:00 2001 From: RunasSudo Date: Sat, 7 Jan 2023 15:11:35 +1100 Subject: [PATCH] austax: Implement editing CGT cost adjustments --- austax/templates/cgt_adjustments.html | 2 ++ austax/views.py | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/austax/templates/cgt_adjustments.html b/austax/templates/cgt_adjustments.html index 454e126..5880592 100644 --- a/austax/templates/cgt_adjustments.html +++ b/austax/templates/cgt_adjustments.html @@ -36,6 +36,7 @@ Adjustment date Description Cost adjustment  + @@ -49,6 +50,7 @@ {{ cgt_adjustment.dt.strftime('%Y-%m-%d') }} {{ cgt_adjustment.description }} {{ cgt_adjustment.cost_adjustment_amount().format_accounting() }} + {% endfor %} diff --git a/austax/views.py b/austax/views.py index dca4968..3f947c0 100644 --- a/austax/views.py +++ b/austax/views.py @@ -51,6 +51,26 @@ def cgt_adjustment_new(): return redirect('/tax/cgt-adjustments') +@app.route('/tax/cgt-adjustments/edit', methods=['GET', 'POST']) +def cgt_adjustment_edit(): + if request.method == 'GET': + return render_plugin_template('austax', 'cgt_adjustments_edit.html', adjustment=db.session.get(CGTCostAdjustment, request.args['id'])) + + asset = Amount.parse(request.form['asset']) + adjustment = db.session.get(CGTCostAdjustment, request.args['id']) + adjustment.quantity = asset.quantity + adjustment.commodity = asset.commodity + adjustment.account = request.form['account'] + adjustment.acquisition_date = datetime.strptime(request.form['acquisition_date'], '%Y-%m-%d') + adjustment.dt = datetime.strptime(request.form['dt'], '%Y-%m-%d') + adjustment.description = request.form['description'] + adjustment.cost_adjustment = Amount.parse(request.form['cost_adjustment']).quantity + + db.session.add(adjustment) + db.session.commit() + + return redirect('/tax/cgt-adjustments') + @app.route('/tax/cgt-assets') def cgt_assets(): # Find all CGT asset accounts