20251213: Möglichkeit, Kontobewegungen vom Restguthaben auszuschließen

This commit is contained in:
p3t3rp1Lz 2025-12-13 21:59:17 +01:00
parent 1dce3d435f
commit 2a307c2bda
4 changed files with 51 additions and 13 deletions

View File

@ -13,6 +13,7 @@
$gegenkonto_id = $_POST['gegenkonto_id'] ?? '';
$beschreibung = $_POST['beschreibung'] ?? '';
$betrag = $_POST['betrag'] ?? '';
$bei_restguthaben_ignorieren = $_POST['bei_restguthaben_ignorieren'] ?? 'false';
$fehler = [];
@ -35,13 +36,15 @@
$konto_id,
$betrag,
$beschreibung,
$datum_ausgegeben);
$datum_ausgegeben,
$bei_restguthaben_ignorieren);
if(!empty($gegenkonto_id)) {
$returnOfFunction += insertKontobewegung($pdo,
$gegenkonto_id,
$betrag * -1,
$beschreibung,
$datum_ausgegeben);
$datum_ausgegeben,
$bei_restguthaben_ignorieren);
}
break;
case 'speichern':
@ -51,7 +54,8 @@
$betrag,
$beschreibung,
$datum_ausgegeben,
$datum_abgebucht);
$datum_abgebucht,
$bei_restguthaben_ignorieren);
break;
case 'löschen':
$returnOfFunction += deleteKontobewegung($pdo,
@ -75,14 +79,18 @@
$para_konto_id,
$para_betrag,
$para_beschreibung,
$para_datum_ausgegeben) {
$para_datum_ausgegeben,
$para_bei_restguthaben_ignorieren) {
$stmt = $para_pdo->prepare("INSERT INTO kontobewegung (konto_id, betrag, beschreibung, datum_ausgegeben)
VALUES(:konto_id, :betrag, :beschreibung, :datum_ausgegeben);");
//$ignrorieren
$stmt = $para_pdo->prepare("INSERT INTO kontobewegung (konto_id, betrag, beschreibung, datum_ausgegeben, bei_restguthaben_ignorieren)
VALUES(:konto_id, :betrag, :beschreibung, :datum_ausgegeben, :bei_restguthaben_ignorieren);");
$stmt->execute(['konto_id' => $para_konto_id,
'betrag' => $para_betrag,
'beschreibung' => $para_beschreibung,
'datum_ausgegeben' => $para_datum_ausgegeben]);
'datum_ausgegeben' => $para_datum_ausgegeben,
'bei_restguthaben_ignorieren' => $para_bei_restguthaben_ignorieren]);
/*updateHistRestguthaben($para_pdo,
$para_datum_ausgegeben,
@ -98,7 +106,8 @@
$para_betrag,
$para_beschreibung,
$para_datum_ausgegeben,
$para_datum_abgebucht) {
$para_datum_abgebucht,
$para_bei_restguthaben_ignorieren) {
$para_datum_abgebucht = $para_datum_abgebucht ?: null;
@ -125,8 +134,9 @@
FROM konto
WHERE id = :konto_id;");
$stmt->execute(['konto_id' => $para_konto_id]);
$konto_nachher = $stmt->fetchAll(PDO::FETCH_ASSOC);
$kontostand_vorher_konto_nachher = $konto_nachher[0]['kontostand'];
$row = $stmt->fetch(PDO::FETCH_ASSOC);
$kontostand_vorher_konto_nachher = $row ? $row['kontostand'] : 0;
$kontostand_nachher_konto_vorher = $kontostand_vorher_konto_vorher;
if($konto_id_vorher == $para_konto_id) {
@ -156,14 +166,16 @@
betrag = :betrag,
beschreibung = :beschreibung,
datum_ausgegeben = :datum_ausgegeben,
datum_abgebucht = :datum_abgebucht
datum_abgebucht = :datum_abgebucht,
bei_restguthaben_ignorieren = :bei_restguthaben_ignorieren
WHERE id = :kontobewegung_id;");
$stmt->execute(['konto_id' => $para_konto_id,
'betrag' => $para_betrag,
'beschreibung' => $para_beschreibung,
'datum_ausgegeben' => $para_datum_ausgegeben,
'datum_abgebucht' => $para_datum_abgebucht,
'kontobewegung_id' => $para_kontobewegung_id]);
'kontobewegung_id' => $para_kontobewegung_id,
'bei_restguthaben_ignorieren' => $para_bei_restguthaben_ignorieren]);
$stmt = $para_pdo->prepare("UPDATE konto
SET kontostand = :kontostand_neu

View File

@ -21,7 +21,8 @@
datum_ausgegeben,
konto_id,
beschreibung,
betrag
betrag,
bei_restguthaben_ignorieren
FROM kontobewegung
WHERE id = :kontobewegung_id;");
$stmt->execute(['kontobewegung_id' => $kontobewegung_id]);
@ -140,6 +141,15 @@
lang="de"
value="<?= $data['betrag'] ?? $kontobewegung['betrag'] ?>">
</div>
<div class="umsatz_div" id="umsatz_links">
<p class="ausgabe" id="umsatz_p">
ausblenden bei Restguthaben
</p>
</div>
<div class="umsatz_div" id="umsatz_rechts">
<input type="checkbox" name="bei_restguthaben_ignorieren" value="true" class="umsatz_checkbox" <?= ($data['bei_restguthaben_ignorieren'] ?? $kontobewegung['bei_restguthaben_ignorieren']) ? 'checked' : ''; ?>>
</div>
</div>
</form>
</body>

View File

@ -107,6 +107,15 @@
<div class="umsatz_div" id="umsatz_rechts">
<input type="number" name="betrag" step="0.01" class="umsatz_number" value="<?= $data['betrag'] ?? '' ?>">
</div>
<div class="umsatz_div" id="umsatz_links">
<p class="ausgabe" id="umsatz_p">
ausblenden bei Restguthaben
</p>
</div>
<div class="umsatz_div" id="umsatz_rechts">
<input type="checkbox" name="bei_restguthaben_ignorieren" value="true" class="umsatz_checkbox" <?= ($data['bei_restguthaben_ignorieren'] ?? false) ? 'checked' : ''; ?>>
</div>
</div>
</form>
</body>

View File

@ -148,6 +148,13 @@ input.umsatz_number {
font-size: 1.5rem;
}
input.umsatz_checkbox {
width: 50px;
height: 50px;
margin: 0;
accent-color: #14748A;
}
button.header {
text-align: center;
background-color: rgb(210, 210, 210);