Merge branch 'master' of ssh://float.ownsoft.de/git/beyondSoft/BeWo

This commit is contained in:
2025-08-05 16:27:26 +02:00
2 changed files with 29 additions and 2 deletions

View File

@@ -194,12 +194,13 @@ namespace KundeXyz.Validation
bool overlapsCustomer = false;
if (cb2ScOid.HasValue)
{
allCustomerRecords = DAOFactory.SearchDAO.FindServiceRecordsDetailsForLastDays(cb2ScOid.Value, null);
// 1. Customer ServiceRecordOverlapping
try
{
allCustomerRecords = DAOFactory.SearchDAO.FindServiceRecordsDetailsForLastDays(cb2ScOid.Value, null);
//allCustomerRecords = DAOFactory.SearchDAO.FindServiceRecordsDetailsForLastDays(cb2ScOid.Value, null);
if (newServiceRecord.ServiceRecordOid.HasValue)
{
@@ -397,6 +398,32 @@ namespace KundeXyz.Validation
});
}
// HIER ENDE ÄNDERUNG AUF 1 STUNDE
// HIER MELDUNG NACH 3 FEHLKONTAKTEN IN FOLGE ODER 5 IN 90 TAGEN
if (newServiceRecord.ServiceDescription.Name.ToLower().Contains("fehlkontakt"))
{
var termineDerLetzten90Tage = allCustomerRecords.Where(sr => sr.Start.Value < newServiceRecord.Start.Value &&
sr.Start.Value.AddDays(90) > newServiceRecord.Start.Value)
.OrderByDescending(sr => sr.Start.Value).ToList();
var fehlkontakteDerLetzten90Tage = termineDerLetzten90Tage.Where(sr => sr.ServiceDescription.Name.ToLower().Contains("fehlkontakt")).ToList();
if (termineDerLetzten90Tage != null && fehlkontakteDerLetzten90Tage != null)
{
if (fehlkontakteDerLetzten90Tage.Count >= 4 || termineDerLetzten90Tage.Count >= 2 &&
termineDerLetzten90Tage[0].ServiceDescription.Name.ToLower().Contains("fehlkontakt") &&
termineDerLetzten90Tage[1].ServiceDescription.Name.ToLower().Contains("fehlkontakt"))
{
String message = String.Format("Bitte den Kostenträger wegen der Vorgaben zu Fehlkontakten kontaktieren.");
result.Add(new ServiceRecordValidationResultDC
{
ResultType = ServiceRecordValidationResult.Custom,
Message = message,
Allow = true
});
}
}
}
// HIER ENDE MELDUNG NACH 3 FEHLKONTAKTEN IN FOLGE ODER 5 IN 90 TAGEN
}
#region Standard
long? userOid = SecurityUtils.GetLoggedInUser().Oid;

View File

@@ -441,7 +441,7 @@ namespace VkmHamm
}
private bool IsUeberstundenFrei(ServiceRecord item)
{
if (!item.CustomerOid.HasValue && item.Notice.Trim().ToLower() == "ü-frei")
if (item != null && !item.CustomerOid.HasValue && item.Notice != null && item.Notice.Trim().ToLower() == "ü-frei")
return true;
return false;