From bafa8a99704a1a2a069cad1698368469d0cc043a Mon Sep 17 00:00:00 2001 From: Lyndon Jetten Date: Mon, 7 Dec 2020 13:08:55 +0100 Subject: [PATCH] =?UTF-8?q?Mobilklient:=201.=20Die=20Dauer=20wird=20jetzt?= =?UTF-8?q?=20korrekt=20berechnet.=20Man=20kann=20vorher=20eingetragene=20?= =?UTF-8?q?Von-=20und=20Bis-Werte=20wieder=20l=C3=B6schen.=20Es=20kommt=20?= =?UTF-8?q?ebenfalls=20nicht=20mehr=20zu=20seltsamen=20Dauer-Werten=20wie?= =?UTF-8?q?=2052000.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/LoginController.cs | 4 -- BeWoPlanerMobil/Controllers/MainController.cs | 13 +--- BeWoPlanerMobil/Scripts/mobileUtils.js | 2 +- BeWoPlanerMobil/Scripts/utils/dateUtils.js | 7 -- BeWoPlanerMobil/Scripts/view-scripts/main.js | 21 +++--- .../Views/Customer/Customer.cshtml | 6 +- BeWoPlanerMobil/Views/Main/Main.cshtml | 65 ++++++++++++++++--- 7 files changed, 72 insertions(+), 46 deletions(-) diff --git a/BeWoPlanerMobil/Controllers/LoginController.cs b/BeWoPlanerMobil/Controllers/LoginController.cs index 43fd6ddac..f727cafdc 100644 --- a/BeWoPlanerMobil/Controllers/LoginController.cs +++ b/BeWoPlanerMobil/Controllers/LoginController.cs @@ -26,10 +26,6 @@ namespace BeWoPlanerMobil.Controllers if (MobileSessionFacade.IsUserLoggedIn() && !Request.Browser.Browser.Equals("InternetExplorer")) { var loginState = MobileUtils.GetLoginState(MobileSessionFacade.Tenant); - - #if DEBUG - loginState = new BeWoLoginState(1, "Das ist nur ein Test"); - #endif if (loginState.Message != null && loginState.State > -1) { diff --git a/BeWoPlanerMobil/Controllers/MainController.cs b/BeWoPlanerMobil/Controllers/MainController.cs index 608789846..256be82c6 100644 --- a/BeWoPlanerMobil/Controllers/MainController.cs +++ b/BeWoPlanerMobil/Controllers/MainController.cs @@ -136,15 +136,6 @@ namespace BeWoPlanerMobil.Controllers var myRelatedCustomers = Model.Employee == null ? new List() : Model.Employee.RelatedCustomers; - foreach (var c2e in myRelatedCustomers) - { - var c = c2e.Customer; - - if (c.LastName == "Janzen") - { - int test = 0; - } - } var relatedCustomerOids = myRelatedCustomers.Select(employee2customer => employee2customer.Customer.CustomerOid).ToList(); if (MobileSessionFacade.CheckForUserRight(UserRightType.ServiceRecord_AllowCreationForOtherEmployees)) @@ -929,7 +920,7 @@ namespace BeWoPlanerMobil.Controllers Log.Error(e.Message, e); } - ResetGroupBookingMode(true); + ResetGroupBookingMode(Model.IsInGroupBookingMode); return ResetEditingMode(null); } @@ -992,7 +983,7 @@ namespace BeWoPlanerMobil.Controllers return ResetEditingMode(null); } - // TODO: Eingeloggter Mitarbeiter wird beim Bearbeiten immer mit ausgewählt, obwohl er nicht unbedingt in der Mitarbeiterliste ist + private ActionResult UpdateGroupBooking() { var dc = Model.SelectedServiceRecord; diff --git a/BeWoPlanerMobil/Scripts/mobileUtils.js b/BeWoPlanerMobil/Scripts/mobileUtils.js index 219f34ac0..62dc1c11a 100644 --- a/BeWoPlanerMobil/Scripts/mobileUtils.js +++ b/BeWoPlanerMobil/Scripts/mobileUtils.js @@ -94,7 +94,7 @@ function isInArray(value, array) { function showMessagePopupWithHtml(title, html) { $("#popupTitle").text(title); - if(message !== null) { + if(html !== null) { $("#modal-body").html("

"); } diff --git a/BeWoPlanerMobil/Scripts/utils/dateUtils.js b/BeWoPlanerMobil/Scripts/utils/dateUtils.js index 1716879d2..515ead8bf 100644 --- a/BeWoPlanerMobil/Scripts/utils/dateUtils.js +++ b/BeWoPlanerMobil/Scripts/utils/dateUtils.js @@ -1,14 +1,7 @@ function parseTimeInputToIntegerArray(timeString) { - - // Mögliche Strings: '0800', '08,00', '08.00', '08:00', '8,00', '8.00', '8:00', '8', '9', '12' - - - var hoursToMinutes = timeString.split(":"); var hours = parseInt(hoursToMinutes[0]); var minutes = parseInt(hoursToMinutes[1]); - logDebug(`hours: ${hours}; minutes: ${minutes}`); - return [hours, minutes]; } \ No newline at end of file diff --git a/BeWoPlanerMobil/Scripts/view-scripts/main.js b/BeWoPlanerMobil/Scripts/view-scripts/main.js index c12d7d626..914be7178 100644 --- a/BeWoPlanerMobil/Scripts/view-scripts/main.js +++ b/BeWoPlanerMobil/Scripts/view-scripts/main.js @@ -134,30 +134,29 @@ function showAlertMessage(message) { } function calculateDuration(isInvocatedByHoursMinutesButton) { - logInfo("calculateDuration"); var startTime = $("#start-time").val(); var endTime = $("#end-time").val(); var duration = $("#duration").val(); var hoursMinutesDropdownButton = $("#hours-minutes-dropdown-btn"); - logInfo(`startTime: ${startTime}; -endTime: ${endTime} -duration: ${duration} -hoursMInutesDropdownButton: ${hoursMinutesDropdownButton}`); + if((startTime.length > 0 && startTime.length < 5) || (endTime.length > 0 && endTime.length < 5)) { + return; + } var startTimeCondition = startTime !== undefined && startTime !== null && startTime.length > 0; - var endTimeCondition = endTime !== undefined && endTime !== null && endTime.length > 0; - var durationNumber = hoursMinutesDropdownButton.length && hoursMinutesDropdownButton.text() === "Stunden" ? parseFloat(duration.replace(",", ".")) : parseInt(duration, 10); - var durationCondition = !isNaN(durationNumber); - var startDateString = $("#start-date-picker").datetimepicker("date"); - var endDate = moment(new Date()); - var startDate = moment(new Date()); + var endTimeCondition = endTime !== undefined && endTime !== null && endTime.length > 0; + var durationNumber = hoursMinutesDropdownButton.length && hoursMinutesDropdownButton.text() === "Stunden" ? parseFloat(duration.replace(",", ".")) : parseInt(duration, 10); + var durationCondition = !isNaN(durationNumber); + var startDateString = $("#start-date-picker").datetimepicker("date"); + var endDate = moment(new Date()); + var startDate = moment(new Date()); if(startDateString.length !== 0) { startDate = moment(startDateString); endDate = startDate.clone(); } + // Es gibt ein Enddatumsfeld if ($("#end-date-picker").length !== 0) { var endDateString = $("#end-date-picker").datetimepicker("date"); diff --git a/BeWoPlanerMobil/Views/Customer/Customer.cshtml b/BeWoPlanerMobil/Views/Customer/Customer.cshtml index 958d39245..9c3500f96 100644 --- a/BeWoPlanerMobil/Views/Customer/Customer.cshtml +++ b/BeWoPlanerMobil/Views/Customer/Customer.cshtml @@ -155,7 +155,7 @@ Handy:
- @Model.SelectedJsonCustomer.Handy + @Model.SelectedJsonCustomer.Handy
@@ -163,7 +163,7 @@ Telefon:
- @Model.SelectedJsonCustomer.Telefon + @Model.SelectedJsonCustomer.Telefon
@@ -179,7 +179,7 @@ Mail:
- @Model.SelectedJsonCustomer.EMail + @Model.SelectedJsonCustomer.EMail
diff --git a/BeWoPlanerMobil/Views/Main/Main.cshtml b/BeWoPlanerMobil/Views/Main/Main.cshtml index e8a999aea..63044fb7d 100644 --- a/BeWoPlanerMobil/Views/Main/Main.cshtml +++ b/BeWoPlanerMobil/Views/Main/Main.cshtml @@ -56,10 +56,44 @@ } loadServiceDescriptions(); + var previousStartTime = ""; + $("#start-time-picker").on("change.datetimepicker", + ({ date, oldDate }) => + { + // Von + var startTimeValue = $("#start-time").val(); - $("#start-time-picker, #end-time-picker").on("change.datetimepicker", ({ date, oldDate }) => { - calculateDuration(false); - }); + if(previousStartTime.length === 5 && startTimeValue.length === 0) { + $("#duration").val(""); + return; + } + + if (startTimeValue.length === 5 || startTimeValue.length === 0) { + previousStartTime = startTimeValue; + } + + calculateDuration(false); + } + ); + var previousEndTime = ""; + $("#end-time-picker").on("change.datetimepicker", + ({ date, oldDate }) => + { + // Bis + var endTimeValue = $("#end-time").val(); + + if(previousEndTime.length === 5 && endTimeValue.length === 0) { + $("#duration").val(""); + return; + } + + if (endTimeValue.length === 5 || endTimeValue.length === 0) { + previousEndTime = endTimeValue; + } + + calculateDuration(false); + } + ); $("#start-date-picker").on("change.datetimepicker", ({ date, oldDate }) => { calculateDuration(false); @@ -1398,9 +1432,15 @@ -