Files
BeWoPlaner/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassen.cshtml
Lyndon Jetten e0447d0a05 MoK:
Intervallfinder überarbeitet & Bug gefixt, der zu einem Fehler beim Suchen nach freien Intervallen über mehrere Tage geführt hatte, wenn die Enduhrzeit vor der Startuhrzeit lag.

Berichte mit Parametern.

Verbesserte Mitarbeiter-, Klienten-, Team-, und Organisationsdropdowns mit Suche.

Quittierungsbelegresultate (zum Unterschreiben) wird wie die Zeiterfassung paginiert.

FaC:

neuer Kalender noch nicht fertig.
2024-11-12 18:37:23 +01:00

729 lines
38 KiB
Plaintext

@using BeWoPlanerMobil.Models
@using BeWoPlanerMobil.Util
@using BS.Shared
@using BS.Shared.Extensions
@model BeWoPlanerMobil.Models.CustomerModel
<script type="text/javascript">
$(function () {
$(".ownSoft-date-picker").datetimepicker({
locale: "de",
format: "L"
});
});
function resizeButtons() {
try {
const btnGroupMaxWidth = getMaxWidth("bk-btn-group");
if(btnGroupMaxWidth > 0) {
$(".bk-btn-group").width(btnGroupMaxWidth);
}
const dateInputMaxWidth = getMaxWidth("date-input-prepend-group");
if(dateInputMaxWidth > 0) {
$(".date-input-prepend-group").width(dateInputMaxWidth);
}
} catch(error) {
window.showErrorPopup(error);
}
}
function deselectBargeldkasse() {
try {
$.get("@Url.Action("DeselectBargeldkasse")");
} catch(error) {
window.showErrorPopup(error);
}
}
function editBtnClickTest(bargeldkassenOid, bargeldkassenname) {
try {
showSpinner();
$("#customer-bargeldkassen-modal-body").load("@Url.Action("LoadEditFormPartial")", {bargeldkassenOid: bargeldkassenOid}, function () {
hideSpinner();
$("#customer-bargeldkassen-form-popup-title").text(`${bargeldkassenname} bearbeiten`);
$("#customer-bargeldkassen-form-popup").modal("show");
window.calcBargeldkassenFormPrependWidth();
});
} catch(error) {
window.showErrorPopup(error);
}
}
function deleteBtnClickTest(bargeldkassenOid, bargeldkassenname) {
try {
showMessagePopupWithHtmlAndCallback(`Bargeldkasse löschen`, `Möchten Sie die Bargeldkasse "${bargeldkassenname}" wirklich löschen?`, true, function () {
showSpinner();
$("#bk-to-delete-oid").val(bargeldkassenOid);
document.getElementById("bargeldkassendeleteform").submit();
}, false);
} catch(error) {
window.showErrorPopup(error);
}
}
function addNewBargeldkasse() {
try {
showSpinner();
$("#customer-bargeldkassen-modal-body").load("@Url.Action("LoadFormPartial")",
function () {
hideSpinner();
$("#customer-bargeldkassen-form-popup-title").text("Bargeldkasse hinzufügen");
$("#customer-bargeldkassen-form-popup").modal("show");
window.calcBargeldkassenFormPrependWidth();
});
} catch(error) {
window.showErrorPopup(error);
}
}
function previewBargeldkassenReport(bargeldkassenOid) {
try {
showSpinner();
const start = $(`#customer-bargeldkasse-start-date-${bargeldkassenOid}`).val();
const end = $(`#customer-bargeldkasse-end-date-${bargeldkassenOid}`).val();
$("#customer-report-popup-container").load("@Url.Action("PrintBargeldkasse")",
{
kassenbuchOid: bargeldkassenOid,
reportStartDate: start,
reportEndDate: end
},
function () {
hideSpinner();
$("#bewo-report-popup").modal("show");
}
);
} catch(error) {
window.showErrorPopup(error);
}
}
$(window).on("load", function () {
calculateDateInputWidth();
});
var initialDateInputWidth = 0;
function calculateDateInputWidth() {
try {
const bargeldkassenDateInputMaxWidth = getMaxWidth("customer-bargeldkassen-date-prepend");
if(initialDateInputWidth <= 0 && $.isNumeric(bargeldkassenDateInputMaxWidth)) {
initialDateInputWidth = bargeldkassenDateInputMaxWidth;
}
if (initialDateInputWidth <= 0) {
return;
}
$(".customer-bargeldkassen-date-prepend").width(bargeldkassenDateInputMaxWidth);
} catch(error) {
window.showErrorPopup(error);
}
}
function deleteBargeldransaktion(transaktionsOid) {
try {
if(false === $.isNumeric(transaktionsOid)) {
window.showErrorMessagePopup("Es ist ein Fehler beim Löschen einer Transaktion gekommen. Bitte wenden Sie sich an Ihren Administrator");
}
showMessagePopupWithCallback("Transaktion löschen",
"Möchten Sie den Eintrag wirklich löschen?",
function () {
showSpinner();
$("#bargeldkassen-container").load("@Url.Action("DeleteBargeldtransaktion")",
{
bargeldtransaktionsOid: transaktionsOid
},
function() {
hideSpinner();
});
},
false);
} catch(error) {
window.showErrorPopup(error);
}
}
function signZahlungsbeleg(transaktionsOid, zahlungsdatum, zahlungsart, zahlungsbetrag, zahlungsbelegnummer) {
try {
$("#customer-container").hide();
$("#transaktionsunterschriftencontainer").addClass("d-block");
$("#transaktionsunterschriftencontainer").removeClass("d-none");
resizeCanvas("#transaktionsunterschriftencanvas", "#transaktionsunterschriften-canvas-row");
const canvas = document.getElementById("transaktionsunterschriftencanvas");
var signaturePad = new window.SignaturePad(canvas, { backgroundColor: "rgba(255, 255, 255, 0)" });
const cancelButton = document.getElementById("transaktionsunterschriften-cancel-btn");
const saveButton = document.getElementById("transaktionsunterschriften-save-btn");
const clearButton = document.getElementById("transaktionsunterschriften-clear-canvas-btn");
const cancelButtonClone = cancelButton.cloneNode(true);
const saveButtonClone = saveButton.cloneNode(true);
const clearButtonClone = clearButton.cloneNode(true);
cancelButton.parentNode.replaceChild(cancelButtonClone, cancelButton);
saveButton.parentNode.replaceChild(saveButtonClone, saveButton);
clearButton.parentNode.replaceChild(clearButtonClone, clearButton);
cancelButtonClone.addEventListener("click",
function () {
cancelButtonEvent(signaturePad);
});
saveButtonClone.addEventListener("click",
function () {
saveButtonEvent(transaktionsOid);
});
clearButtonClone.addEventListener("click",
function () {
clearButtonEvent(signaturePad);
});
} catch(error) {
$("#transaktionsunterschriftencontainer").removeClass("d-block");
$("#transaktionsunterschriftencontainer").addClass("d-none");
$("#customer-container").show();
window.showErrorPopup(error);
}
function clearButtonEvent(signaturePad) {
try {
signaturePad.clear();
} catch(error) {
window.showErrorPopup(error);
}
}
function saveButtonEvent(transaktionsOid) {
const canvas = document.getElementById("transaktionsunterschriftencanvas");
const clonedCanvas = cloneCanvas(canvas);
const trimmedCanvas = trimCanvas(clonedCanvas);
const context = trimmedCanvas.getContext("2d", {willReadFrequently: true});
context.globalCompositeOperation = "destination-over";
context.fillStyle = "white";
context.fillRect(0, 0, trimmedCanvas.width, trimmedCanvas.height);
const dataUrl = trimmedCanvas.toDataURL("image/png");
showSpinner();
$("#bargeldkassen-container").load("@Url.Action("SaveTransaktionsunterschrift")",
{
transaktionsOid: transaktionsOid,
signatureAsBase64: dataUrl
},
function () {
$("#transaktionsunterschriftencontainer").removeClass("d-block");
$("#transaktionsunterschriftencontainer").addClass("d-none");
$("#customer-container").show();
hideSpinner();
});
}
function cancelButtonEvent(signaturePad) {
try {
const canvas = document.getElementById("transaktionsunterschriftencanvas");
const width = canvas.getBoundingClientRect().width;
const height = canvas.getBoundingClientRect().height;
if(width === 0 || height === 0 || signaturePad.isEmpty()) {
$("#customer-container").show();
$("#transaktionsunterschriftencontainer").removeClass("d-block");
$("#transaktionsunterschriftencontainer").addClass("d-none");
signaturePad.clear();
return;
}
showMessagePopupWithCallback("Unterschrift",
"Sind Sie sicher, dass Sie die Unterschrift nicht speichern möchten?",
function () {
$("#customer-container").show();
$("#transaktionsunterschriftencontainer").removeClass("d-block");
$("#transaktionsunterschriftencontainer").addClass("d-none");
signaturePad.clear();
},
false);
} catch (error) {
window.showErrorPopup(error);
}
}
}
function clearCustomerBargeldtransaktionsForm() {
try {
$("#bargeldtransaktionsbetragsinput").val("");
$("#bargeldtransaktionsnotizinput").val("");
$("#bargeldtransaktionsbelegnummerinput").val("");
if($("#bargeldtransaktionsarten-select-input").length) {
$("#bargeldtransaktionsarten-select-input select").val("0");
}
} catch(error) {
window.showErrorPopup(error);
}
}
function deleteZahlungsbelegsunterschrift(transaktionsOid, zahlungsdatum, betrag, zahlungstyp) {
try {
showMessagePopupWithCallback("Transaktionsunterschrift löschen",
"Sind Sie sicher, dass Sie die Unterschrift für die " + zahlungstyp + " über " + betrag + " vom " + zahlungsdatum + " löschen möchten?",
function () {
showSpinner();
$("#bargeldkassen-container").load("@Url.Action("DeleteTransactionSignature")",
{
transactionOid: transaktionsOid
},
function() {
hideSpinner();
});
},
false);
} catch(error) {
window.showErrorPopup(error);
}
}
function downloadZahlungsbeleg(transaktionsOid) {
try {
showSpinner();
$("#customer-report-popup-container").load("@Url.Action("DownloadZahlungsbeleg")",
{
transaktionsOid: transaktionsOid
},
function () {
hideSpinner();
$("#bewo-report-popup").modal("show");
}
);
} catch(error) {
window.showErrorPopup(error);
}
}
function editBargeldtransaktion(bargeldkassenOid, transaktionsOid) {
try {
showSpinner();
$("#customer-bargeldkassentransaktion-modal-body").load("@Url.Action("LoadBargeldtransaktionsEditForm")", { transaktionsOid: transaktionsOid }, function () {
hideSpinner();
$("#customer-bargeldtransaktions-form-popup").modal("show");
calcBargeldtransaktionsFormPrependWidth();
});
} catch(error) {
showErrorPopup(error);
}
}
function addNewBargeldtransaktion(bargeldkassenOid) {
try {
showSpinner();
$("#customer-bargeldkassentransaktion-modal-body").load("@Url.Action("LoadBargeldtransaktionsForm")", {bargeldkassenOid: bargeldkassenOid}, function() {
hideSpinner();
$("#customer-bargeldtransaktions-form-popup").modal("show");
calcBargeldtransaktionsFormPrependWidth();
});
} catch(error) {
showErrorPopup(error);
}
}
function showBargeldtransaktionshistorie(transaktionsOid) {
try {
showSpinner();
$("#customer-bargeldtransaktionshistorien-body").load("@Url.Action("LoadHistoryEntries")",
{transactionOid: transaktionsOid},
function () {
hideSpinner();
$("#customer-bargeldtransaktionshistorienpopup").modal("show");
}
);
} catch(error) {
showErrorPopup(error);
}
}
function closeTransactionHistoryPopup() {
try {
$.get("@Url.Action("ClearHistoryEntries")").done(function() {
$("#customer-bargeldtransaktionshistorienpopup").modal("hide");
});
} catch(error) {
window.showErrorPopup(error);
}
}
</script>
@if(TempData[TempDataConstants.CustomerBargeldkassenErrorMessageKey] != null)
{
<div class="alert alert-danger" role="alert">
@TempData[TempDataConstants.CustomerBargeldkassenErrorMessageKey]
</div>
}
<button type="button" class="btn btn-primary w-100 mx-0 px-0" onclick="addNewBargeldkasse()">Neue Kasse hinzuf&uuml;gen</button>
<div class="row row-cols-1 row-cols-md-2 row-cols-lg-3 row-cols-xl-4">
@foreach(var bargeldkasse in Model.Bargeldkassen)
{
<div class="col mb-1 mt-2 mx-0 px-1">
<div class="card h-100">
<div class="card-header" onclick="cardHeaderClick2(this, calculateDateInputWidth)">
<div class="d-inline-flex">
<i class="fas fa-chevron-down text-bewo-customer-card-header h-100"></i>
</div>
<div class="d-inline d-inline-flex text-bewo-customer-card-header h-100">
<button type="button" class="btn btn-lihnk text-bewo-customer-card-header" >
@bargeldkasse.Kassenname
</button>
</div>
</div>
<div class="collapse">
<div class="card-body p-1">
@{
var anfangsbestand = bargeldkasse.Anfangsbestand?.ToString("0.00 €") ?? "0,00 €";
var einzahlungen = bargeldkasse.Bargeldtransaktionen.Where(bkt => bkt.Zahlungstyp == Zahlungstyp.Einzahlung).Sum(bkt => bkt.Betrag) ?? 0m;
var auszahlungen = bargeldkasse.Bargeldtransaktionen.Where(bkt => bkt.Zahlungstyp == Zahlungstyp.Auszahlung).Sum(bkt => bkt.Betrag) ?? 0m;
var kassenbestand = ((bargeldkasse.Anfangsbestand ?? 0m) + einzahlungen - auszahlungen).ToString("0.00 €");
var startDate = DateTime.Today.GetFirstOfMonth().ToString("dd.MM.yyyy");
var endDate = DateTime.Today.GetLastOfMonth().ToString("dd.MM.yyyy");
}
<div class="row">
<div class="col">
<div class="btn-group w-100" role="gorup">
<button class="btn btn-outline-primary" title="Transaktion hinzufügen" type="button" modal="#customer-bargeldtransaktions-form-popup" onclick="addNewBargeldtransaktion(@bargeldkasse.BargeldkassenOid)">
<i class="fas fa-plus"></i>
Transaktion
</button>
<button class="btn btn-outline-primary" title="Kassenbuch Bearbeiten" type="button" modal="#customer-bargeldkassen-form-popup" onclick="editBtnClickTest(@bargeldkasse.BargeldkassenOid, `@bargeldkasse.Kassenname`)">
<i class="fas fa-edit"></i>
</button>
<button class="btn btn-outline-primary" title="Kassenbuch drucken" type="button" onclick="previewBargeldkassenReport(@bargeldkasse.BargeldkassenOid)">
<i class="fas fa-file-download"></i>
</button>
<button class="btn btn-outline-danger" title="Kassenbuch löschen" type="button" onclick="deleteBtnClickTest(@bargeldkasse.BargeldkassenOid, `@bargeldkasse.Kassenname`)">
<i class="fas fa-trash-alt"></i>
</button>
</div>
</div>
</div>
@*----- Startdatum, Enddatum und Stichtag -----*@
<div class="form-row mt-2">
<div class="col">
<div class="form-group mb-0">
<div class="input-group date ownSoft-date-picker" id="customer-bargeldkasse-start-date-picker-@bargeldkasse.BargeldkassenOid" data-target-input="nearest">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-date-prepend">
Startdatum
</div>
</div>
<input type="text" value="@startDate"
id="customer-bargeldkasse-start-date-@bargeldkasse.BargeldkassenOid"
name="customer-bargeldkasse-start-date"
class="form-control datetimepicker-input"
data-target="#customer-bargeldkasse-start-date-picker-@bargeldkasse.BargeldkassenOid" data-toggle="datetimepicker" />
<div class="input-group-append" data-target="#customer-bargeldkasse-start-date-picker-@bargeldkasse.BargeldkassenOid" data-toggle="datetimepicker">
<div class="input-group-text px-2">
<i class="fas fa-calendar-alt"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="form-row mt-1">
<div class="col">
<div class="form-group mb-0">
<div class="input-group date ownSoft-date-picker" id="customer-bargeldkasse-end-date-picker-@bargeldkasse.BargeldkassenOid" data-target-input="nearest">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-date-prepend">
Enddatum
</div>
</div>
<input type="text" value="@endDate"
id="customer-bargeldkasse-end-date-@bargeldkasse.BargeldkassenOid"
name="customer-bargeldkasse-end-date"
class="form-control datetimepicker-input"
data-target="#customer-bargeldkasse-end-date-picker-@bargeldkasse.BargeldkassenOid"
data-toggle="datetimepicker" />
<div class="input-group-append" data-target="#customer-bargeldkasse-end-date-picker-@bargeldkasse.BargeldkassenOid" data-toggle="datetimepicker">
<div class="input-group-text px-2">
<i class="fas fa-calendar-alt"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="form-row mt-1">
<div class="col">
<div class="form-group mb-1">
<div class="input-group date ownSoft-date-picker" id="customer-bargeldkasse-stichtag-date-picker-@bargeldkasse.BargeldkassenOid" data-target-input="nearest">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-date-prepend">
Stichtag
</div>
</div>
<input type="text" id="customer-bargeldkasse-stichtag-date-@bargeldkasse.BargeldkassenOid" name="customer-bargeldkasse-stichtag-date" class="form-control datetimepicker-input" data-target="#customer-bargeldkasse-stichtag-date-picker-@bargeldkasse.BargeldkassenOid" data-toggle="datetimepicker" />
<div class="input-group-append" data-target="#customer-bargeldkasse-stichtag-date-picker-@bargeldkasse.BargeldkassenOid" data-toggle="datetimepicker">
<div class="input-group-text px-2">
<i class="fas fa-calendar-alt"></i>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="w-100">
@*----- Kassenbestand und Anfangsbestand -----*@
<table class="w-100">
<tbody>
<tr>
<td class="text-secondary">
Kassenbestand:
</td>
<td class="text-primary float-right">
@kassenbestand
</td>
</tr>
<tr>
<td class="text-secondary">
Anfangsbestand:
</td>
<td class="text-primary float-right">
@anfangsbestand
</td>
</tr>
</tbody>
</table>
@* Liste mit den Ein- und Auszahlungen *@
@if(bargeldkasse.Bargeldtransaktionen.Any())
{
<div class="col mb-0 pb-0 mx-0 px-0">
<div class="card h-100">
<div class="card-header" onclick="cardHeaderClick2(this)">
<div class="d-inline-flex">
<i class="fas fa-chevron-down h-100 text-bewo-customer-card-header chevron-identifier-class"></i>
</div>
<div class="d-inline d-inline-flex text-bewo-customer-card-header h-100">
<button type="button" class="btn btn-lihnk text-bewo-customer-card-header">
Ein- und Auszahlungen
</button>
</div>
</div>
<div class="collapse">
<div class="card-body">
<table class="w-100 mx-0 px-0">
<tbody>
@{
var count = 0;
}
@foreach(var transaktion in bargeldkasse.Bargeldtransaktionen.OrderByDescending(bt => bt.Zahlungsdatum))
{
var zahlungsdatum = transaktion.Zahlungsdatum.Value.ToString("dd.MM.yyyy");
var betrag = transaktion.Betrag.Value.ToString("0.00 €");
var zahlungsart = transaktion.Zahlungstyp.ToString();
<tr>
<td colspan="2">
<div class="btn-group w-100" role="gorup">
@if(transaktion.SignatureOid is null)
{
<button class="btn btn-outline-primary" title="Zahlungsbeleg unterschreiben" type="button" onclick="signZahlungsbeleg(@transaktion.BargeldtransaktionOid, '@zahlungsdatum', '@zahlungsart', '@betrag', '@transaktion.Belegnummer')">
<i class="fas fa-signature"></i>
</button>
}
else
{
<button class="btn btn-outline-primary" title="Zahlungsbelegsunterschrift löschen" type="button" onclick="deleteZahlungsbelegsunterschrift(@transaktion.BargeldtransaktionOid, '@zahlungsdatum', '@betrag', '@transaktion.Zahlungstyp')">
<i class="fas fa-signature"></i>
<i class="fas fa-arrow-right"></i>
<i class="fas fa-trash-alt"></i>
</button>
}
<button class="btn btn-outline-primary" title="Bargeldtransaktion bearbeiten" type="button" onclick="editBargeldtransaktion(@bargeldkasse.BargeldkassenOid, @transaktion.BargeldtransaktionOid)">
<i class="fas fa-edit"></i>
</button>
<button class="btn btn-outline-primary" title="Zahlungsbeleg herunterladen" type="button" onclick="downloadZahlungsbeleg(@transaktion.BargeldtransaktionOid)">
<i class="fas fa-file-download"></i>
</button>
@if(transaktion.BargeldtransaktionOid.HasValue && Model.TransaktionsOid2HasHistoryEntries[transaktion.BargeldtransaktionOid.Value])
{
<button class="btn btn-outline-primary" title="Änderungshistorie anzeigen" type="button" onclick="showBargeldtransaktionshistorie(@transaktion.BargeldtransaktionOid)">
<i class="fas fa-history"></i>
</button>
}
<button class="btn btn-outline-danger" title="Bargeldtransaktion löschen" type="button" onclick="deleteBargeldransaktion(@transaktion.BargeldtransaktionOid)">
<i class="fas fa-trash-alt"></i>
</button>
</div>
</td>
</tr>
<tr>
<td class="text-secondary">
Datum
</td>
<td class="float-right">
@zahlungsdatum
</td>
</tr>
<tr>
<td class="text-secondary">
Art
</td>
<td class="float-right">
@transaktion.Zahlungstyp
</td>
</tr>
<tr>
<td class="text-secondary">
Betrag
</td>
<td class="float-right">
@betrag
</td>
</tr>
<tr>
<td class="text-secondary">
Belegnummer
</td>
<td class="float-right text-sm-justify">
@transaktion.Belegnummer
</td>
</tr>
<tr>
<td class="text-secondary">
Angelegt von
</td>
<td class="float-right text-sm-justify">
@transaktion.InsUser
</td>
</tr>
<tr>
<td class="text-secondary">
Notiz
</td>
<td class="float-right text-sm-justify">
@transaktion.Notice
</td>
</tr>
if(count < bargeldkasse.Bargeldtransaktionen.Count - 1)
{
<tr>
<td colspan="2">
<hr />
</td>
</tr>
}
count++;
}
</tbody>
</table>
</div>
</div>
</div>
</div>
}
</div>
</div>
</div>
</div>
</div>
}
</div>
@using(Html.BeginForm("DeleteBargeldkasse", "Customer", FormMethod.Post, new { id = "bargeldkassendeleteform" }))
{
<input type="hidden" id="bk-to-delete-oid" name="bk-to-delete-oid" />
}
@if(AbstractModel.HasRightToCreateCustomerBargeldkassen || AbstractModel.HasRightToEditCustomerBargeldkassen)
{
<div class="modal" tabindex="-1" role="dialog" id="customer-bargeldkassen-form-popup">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title font-weight-bold" id="customer-bargeldkassen-form-popup-title">Bargeldkasse hinzufügen</h5>
<button class="close" type="button" data-dismiss="modal" aria-label="close" onclick="deselectBargeldkasse()">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body" id="customer-bargeldkassen-modal-body">
</div>
<div class="modal-footer">
<button class="btn btn-primary" type="button" data-dismiss="modal" onclick="submitCustomerBargeldkassenForm()">OK</button>
<button class="btn btn-secondary" type="button" data-dismiss="modal" onclick="clearCustomerBargeldkassenForm()">Abbrechen</button>
</div>
</div>
</div>
</div>
<div class="modal" tabindex="-1" role="dialog" id="customer-bargeldtransaktions-form-popup">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title font-weight-bold">Neue Zahlung hinzufügen</h5>
<button class="close" type="button" data-dismiss="modal" aria-label="close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body" id="customer-bargeldkassentransaktion-modal-body">
</div>
<div class="modal-footer">
<button class="btn btn-primary" type="button" onclick="submitBargeldtransaktionsform()">OK</button>
<button class="btn btn-secondary" type="button" data-dismiss="modal" onclick="clearCustomerBargeldtransaktionsForm()">Abbrechen</button>
</div>
</div>
</div>
</div>
}
@* ----- Transaktionshistorienpopup ----- *@
<div class="modal" tabindex="-1" role="dialog" id="customer-bargeldtransaktionshistorienpopup">
<div class="modal-dialog modal-dialog-scrollable" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title font-weight-bold" id="customer-bargeldtransaktionshistorienpopup-title">Änderungshistorie</h5>
<button class="close" type="button" data-dismiss="modal" aria-label="close" onclick="closeTransactionHistoryPopup()">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body" id="customer-bargeldtransaktionshistorien-body">
</div>
<div class="modal-footer">
<button class="btn btn-primary" type="button" onclick="closeTransactionHistoryPopup()">Schließen</button>
</div>
</div>
</div>
</div>