Files
BeWoPlaner/BeWoPlanerMobil/Views/Customer/CustomerBargeldkassenFormPartial.cshtml

202 lines
7.6 KiB
Plaintext

@using BeWoPlanerMobil.Models;
@using BeWoPlanerMobil.Util
@using BS.Shared.Extensions
@model CustomerModel
<script type="text/javascript">
(function ($) {
$.fn.inputFilter = function (inputFilter) {
return this.on("input keydown keyup mouseup select mousedown contextmenu drop", function () {
if(inputFilter(this.value)) {
this.oldValue = this.value;
this.oldSelectionStart = this.selectionStart;
this.oldSelectionEnd = this.selectionEnd;
} else if(this.hasOwnProperty("oldValue")) {
this.value = this.oldValue;
this.setSelectionRange(this.oldSelectionStart, this.oldSelectionEnd);
} else {
this.value = "";
}
});
}
}(jQuery));
var initialBargeldkassenDatePrependWidth = 0;
function calcBargeldkassenFormPrependWidth() {
try {
if(initialBargeldkassenDatePrependWidth <= 0 && $.isNumeric(getMaxWidth("customer-bargeldkassen-prepend"))) {
initialBargeldkassenDatePrependWidth = getMaxWidth("customer-bargeldkassen-prepend");
}
if(initialBargeldkassenDatePrependWidth <= 0) {
return;
}
$(".customer-bargeldkassen-prepend").width(getMaxWidth("customer-bargeldkassen-prepend"));
} catch(error) {
showErrorPopup(error);
}
}
function submitCustomerBargeldkassenForm() {
try {
showSpinner();
$("#bargeldkassenname").val($("#bargeldkassennamensinput").val());
$("#bargeldkassenanfangsbestand").val($("#bargeldkassenanfangsbestandsinput").val());
if($("#auszahlungsintervall-select-input").length) {
$("#auszahlungsintervall-select").val($("#auszahlungsintervall-select-input").find(":selected").val());
}
document.getElementById("create-bargeldkasse-form").submit();
} catch(error) {
showErrorPopup(error);
}
}
$("#create-bargeldkasse-form").ready(function () {
try {
calcBargeldkassenFormPrependWidth();
} catch(error) {
showErrorPopup(error);
}
});
$(document).ready(function () {
setAnfangsbestandsinputFilter();
});
function setAnfangsbestandsinputFilter() {
$("#bargeldkassenanfangsbestand").inputFilter(function (value) {
return /^-?\d*[.,]?\d*$/.test(value);
});
}
function clearCustomerBargeldkassenForm() {
try {
$("#bargeldkassenname").val("");
$("#bargeldkassenanfangsbestand").val("");
$("#bargeldkassennamensinput").val("");
$("#bargeldkassenanfangsbestandsinput").val("");
if($("#auszahlungsintervall-select-input").length) {
$("#auszahlungsintervall-select-input select").val("0");
}
} catch(error) {
showErrorPopup(error);
}
}
function setAuszahlungsintervall() {
try {
showSpinner();
var selectedAuszahlungsintervall = $("#auszahlungsintervall-select-input :selected").val();
$.get("@Url.Action("SetSelectedAuszahlungsintervall")", {auszahlungsintervall: selectedAuszahlungsintervall}).success(function() {
hideSpinner();
});
} catch(error) {
showErrorPopup(error);
}
}
</script>
@using(Html.BeginForm("CreateOrUpdateBargeldkasse", "Customer", FormMethod.Post, new { id = "create-bargeldkasse-form" }))
{
<input type="hidden" name="customer-bargeldkassen-oid" value="@Model.SelectedBargeldkasse?.BargeldkassenOid" />
<input type="hidden" name="bargeldkassenname" id="bargeldkassenname" />
<input type="hidden" name="auszahlungsintervall-select" id="auszahlungsintervall-select" />
<input type="hidden" name="bargeldkassenanfangsbestand" id="bargeldkassenanfangsbestand" />
}
@{
var kassenname = Model.SelectedBargeldkasse?.Kassenname ?? string.Empty;
var anfangsbestand = Model.SelectedBargeldkasse?.Anfangsbestand?.ToString("0.00") ?? "0.00";
}
@*----- Name -----*@
<div class="form-row">
<div class="col-md">
<div class="form-group mb-1">
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-prepend">
Name
</div>
</div>
<input class="form-control" type="text" id="bargeldkassennamensinput" value="@kassenname" />
</div>
</div>
</div>
</div>
@*----- Auszahlungsintervall -----*@
<div class="form-row">
<div class="col-md">
<div class="form-group mb-1">
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-prepend">
Auszahlungsintervall
</div>
</div>
@*
@Html.DropDownListFor(model => model.SelectedReportType, Model.ReportTypes, new { @class = "custom-select", onchange = "updateForm()", id = "msk-report-type-select" })
*@
@Html.DropDownListFor(model => model.SelectedAuszahlungsintervall, Model.Auszahlungsintervalle, new {@class="form-control", id = "auszahlungsintervall-select-input", onchange="setAuszahlungsintervall()" })
@*<select class="form-control" id="auszahlungsintervall-select-input">
<option value="0" selected>Kein</option>
<option value="1">Monatlich</option>
<option value="2">W&ouml;chentlich</option>
<option value="3">T&auml;glich</option>
</select>*@
</div>
</div>
</div>
</div>
@*----- Anfangsbestand -----*@
<div class="form-row">
<div class="col-md">
<div class="form-group mb-1">
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-prepend">
Anfangsbestand
</div>
</div>
<input class="form-control" type="text" id="bargeldkassenanfangsbestandsinput" value="@anfangsbestand" />
<div class="input-group-append">
<span class="input-group-text">€</span>
</div>
</div>
</div>
</div>
</div>
@*----- Stichtag -----*@
<div class="form-row">
<div class="col-md">
<div class="form-group mb-1">
<div class="input-group date ownSoft-date-picker" id="customer-bargeldkasse-stichtag-date-picker" data-target-input="nearest">
<div class="input-group-prepend">
<div class="input-group-text customer-bargeldkassen-prepend">
Stichtag
</div>
</div>
<input type="text" id="customer-bargeldkasse-stichtag-date" name="customer-bargeldkasse-stichtag-date" class="form-control datetimepicker-input" data-target="#customer-absence-time-end-date-picker" data-toggle="datetimepicker" />
<div class="input-group-append" data-target="#customer-bargeldkasse-stichtag-date-picker" data-toggle="datetimepicker">
<div class="input-group-text px-2">
<i class="fas fa-calendar-alt"></i>
</div>
</div>
</div>
</div>
</div>
</div>