From d0a383f2c063230975e05cb2670263a30c4321c5 Mon Sep 17 00:00:00 2001 From: HirschleM Date: Tue, 21 Jul 2026 12:08:19 +0200 Subject: [PATCH] =?UTF-8?q?MH:=20Humanitas=20Eintr=C3=A4ge=20ohne=20Uhrzei?= =?UTF-8?q?ten=20verhindert=20SupportOID=3D168640?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ReportImp/Humanitas/Humanitas.csproj | 1 + .../Service/CustomServiceRecordValidator.cs | 33 +++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 ReportImp/Humanitas/Service/CustomServiceRecordValidator.cs diff --git a/ReportImp/Humanitas/Humanitas.csproj b/ReportImp/Humanitas/Humanitas.csproj index d80aec8b3..bb3d0eaba 100644 --- a/ReportImp/Humanitas/Humanitas.csproj +++ b/ReportImp/Humanitas/Humanitas.csproj @@ -90,6 +90,7 @@ ServicesOverviewReport.cs + Component diff --git a/ReportImp/Humanitas/Service/CustomServiceRecordValidator.cs b/ReportImp/Humanitas/Service/CustomServiceRecordValidator.cs new file mode 100644 index 000000000..d7ec57641 --- /dev/null +++ b/ReportImp/Humanitas/Service/CustomServiceRecordValidator.cs @@ -0,0 +1,33 @@ +using BeWo.Service.Plugins; +using BS.Shared.DataContracts; +using BS.Shared.Extensions; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Humanitas.Service +{ + public class CustomServiceRecordValidator : ServiceRecordValidator + { + public override List ValidateServiceRecord(ServiceRecordDC newServiceRecord, SupportConceptStatisticsDC statisticsXX, int maxDaysEditServiceRecordsAllowed, IList employeeOids, IList cb2scOids) + { + var list = base.ValidateServiceRecord(newServiceRecord, statisticsXX, maxDaysEditServiceRecordsAllowed, employeeOids, cb2scOids); + + if (newServiceRecord.ServiceDescription.Category.IsBillable && (newServiceRecord.Start == null && newServiceRecord.End == null || + newServiceRecord.Start.HasValue && newServiceRecord.Start.Value.Second == 1 && + newServiceRecord.End.HasValue && newServiceRecord.End.Value.Second == 1)) + { + list.Add(new ServiceRecordValidationResultDC() + { + Allow = false, + ResultType = BS.Shared.ServiceRecordValidationResult.Custom, + Message = "Sie können den Eintrag nicht speichern, ohne eine Start- und Endzeit einzugeben." + }); + } + + return list; + } + } +}