feat: Buchen-Knopf auch unter der Prüfliste + Verlauf aufräumen
- Bei mehreren hundert Zeilen ist der Knopf oben längst aus dem Bild gescrollt; unter der Liste steht jetzt derselbe. - Rückgängig gemachte Importe lassen sich aus dem Verlauf entfernen. Nur diese: solange ein Import steht, ist sein Eintrag die einzige Möglichkeit, seine Buchungen wieder loszuwerden – der Server lehnt das sonst ab. Test für beide Fälle des neuen Endpunkts; 92 grün. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -2,12 +2,12 @@
|
||||
|
||||
import json
|
||||
|
||||
from fastapi import APIRouter, Depends, File, Form, UploadFile, status
|
||||
from fastapi import APIRouter, Depends, File, Form, HTTPException, UploadFile, status
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from ..database import get_db
|
||||
from ..deps import get_current_user, get_owned
|
||||
from ..models import Account, AmountMode, ImportBatch, ImportTemplate, User
|
||||
from ..models import Account, AmountMode, ImportBatch, ImportStatus, ImportTemplate, User
|
||||
from ..schemas import (
|
||||
ImportBatchOut,
|
||||
ImportCommitIn,
|
||||
@@ -160,3 +160,21 @@ def undo(batch_id: int, db: Session = Depends(get_db), user: User = Depends(get_
|
||||
batch = get_owned(db, ImportBatch, batch_id, user)
|
||||
deleted = csv_import.undo_batch(db, user, batch)
|
||||
return {"deleted": deleted}
|
||||
|
||||
|
||||
@router.delete("/batches/{batch_id}/record", status_code=status.HTTP_204_NO_CONTENT)
|
||||
def remove_batch_record(
|
||||
batch_id: int, db: Session = Depends(get_db), user: User = Depends(get_current_user)
|
||||
):
|
||||
"""Entfernt einen rückgängig gemachten Eintrag aus dem Verlauf.
|
||||
|
||||
Nur für bereits zurückgenommene Importe: Solange ein Import steht, ist der
|
||||
Eintrag die einzige Möglichkeit, seine Buchungen wieder loszuwerden."""
|
||||
batch = get_owned(db, ImportBatch, batch_id, user)
|
||||
if batch.status != ImportStatus.undone:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_400_BAD_REQUEST,
|
||||
detail="Nur rückgängig gemachte Importe lassen sich aus dem Verlauf entfernen.",
|
||||
)
|
||||
db.delete(batch)
|
||||
db.commit()
|
||||
|
||||
Reference in New Issue
Block a user