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

# Conflicts:
#	BeWo/DebugConfig.cs
This commit is contained in:
2025-02-04 13:26:59 +01:00
275 changed files with 37557 additions and 14586 deletions

View File

@@ -330,7 +330,7 @@ namespace BeWo.Service.ServiceImplementations
{
RemoveServiceRecordsFromConfirmationReceiptSignatureForDeletion(item.Group.ServiceRecordList);
DeleteServiceRecordsFromAppointments(item.Group.ServiceRecordList.ToList());
DeleteServiceRecordsFromAppointments(item.Group.ServiceRecordList.ToList(), true);
DAOFactory.GenericDAO.Delete(item.Group);
}
@@ -347,7 +347,7 @@ namespace BeWo.Service.ServiceImplementations
RemoveServiceRecordsFromConfirmationReceiptSignatureForDeletion(srListToDelete);
DeleteServiceRecordsFromAppointments(srListToDelete);
DeleteServiceRecordsFromAppointments(srListToDelete, true);
DAOFactory.GenericDAO.Delete(srListToDelete);
}
@@ -357,12 +357,14 @@ namespace BeWo.Service.ServiceImplementations
}
}
private static void DeleteServiceRecordsFromAppointments(List<ServiceRecord> serviceRecords)
private static void DeleteServiceRecordsFromAppointments(List<ServiceRecord> serviceRecords, bool deleteSignatures)
{
MakeServiceRecordHistoryEntry(serviceRecords, null, StatementType.Delete);
RemoveServiceRecordsFromConfirmationReceiptSignatures(MapperFactory.ServiceRecordDC_ServiceRecord.MapToNewDCs(serviceRecords), DAOFactory.GenericDAO.LoadByIDs<ServiceRecord>(serviceRecords.Select(s => s.Oid.Value)), true);
if (deleteSignatures)
{
RemoveServiceRecordsFromConfirmationReceiptSignatures(MapperFactory.ServiceRecordDC_ServiceRecord.MapToNewDCs(serviceRecords), DAOFactory.GenericDAO.LoadByIDs<ServiceRecord>(serviceRecords.Select(s => s.Oid.Value)), true);
}
var appointmentsToUpdate = DAOFactory.SearchDAO.LoadAppointmentsWithServiceRecords(serviceRecords.Select(s => s.Oid.Value).ToList());
appointmentsToUpdate.DoForEach(appointment => appointment.ServiceRecordList = appointment.ServiceRecordList.Where(sr => !serviceRecords.Select(s => s.Oid.Value).Contains(sr.Oid.Value)).ToList());
@@ -2319,6 +2321,9 @@ namespace BeWo.Service.ServiceImplementations
// (Veraltet. Es ist keine Änderung an der Zeit bei vorhandener Einzelunterschrift) Bei geänderten Daten oder Uhrzeiten werden die Klientenunterschriften gelöscht
var serviceRecords = pServiceRecordGroup.ServiceRecordList;
var originalServiceRecords = lOriginal.ServiceRecordList.ToList();
var records2Delete = originalServiceRecords.Where(x => x.Oid.HasValue && !serviceRecords.Where(s1 => s1.ServiceRecordOid.HasValue).Select(s => s.ServiceRecordOid.Value).Contains(x.Oid.Value)).ToList();
DeleteServiceRecordsFromAppointments(records2Delete, false);
var serviceRecordOidsWithDeletedSingleSignatures = DeleteSignaturesFromServiceRecords(serviceRecords, originalServiceRecords);
var serviceRecordsdWithRemovedConfirmationReceiptSignatures = RemoveServiceRecordsFromConfirmationReceiptSignatures(serviceRecords, originalServiceRecords, false);