croper do paragonów

This commit is contained in:
Mateusz Gruszczyński
2025-07-22 15:15:03 +02:00
parent 22bc8bd01d
commit dea0309cfd
6 changed files with 138 additions and 2 deletions

20
app.py
View File

@@ -1975,6 +1975,26 @@ def demote_user(user_id):
flash(f"Użytkownik {user.username} został zdegradowany.", "success")
return redirect(url_for("list_users"))
@app.route("/admin/crop_receipt", methods=["POST"])
@login_required
@admin_required
def crop_receipt():
receipt_id = request.form.get("receipt_id")
file = request.files.get("cropped_image")
if not receipt_id or not file:
return jsonify(success=False, error="Brak danych")
receipt = Receipt.query.get_or_404(receipt_id)
filepath = os.path.join(app.config["UPLOAD_FOLDER"], receipt.filename)
try:
image = Image.open(file).convert("RGB")
image.save(filepath, format="WEBP", quality=100)
return jsonify(success=True)
except Exception as e:
return jsonify(success=False, error=str(e))
@app.route("/healthcheck")
def healthcheck():