From ac3788d4c9873ba8bce61e9c549d9d81114863b6 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Thu, 26 Jan 2023 07:32:08 +0100 Subject: [PATCH] Einige Bugs beim Go-Live gefixt --- bsmd.dbh/MessageController.cs | 11 +++++++---- bsmd.dbh/RequestUtil.cs | 9 ++++++--- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/bsmd.dbh/MessageController.cs b/bsmd.dbh/MessageController.cs index cdd0278b..77226721 100644 --- a/bsmd.dbh/MessageController.cs +++ b/bsmd.dbh/MessageController.cs @@ -112,8 +112,9 @@ namespace bsmd.dbh { _log.InfoFormat("sent {0}", sentFile); string onlyFileName = Path.GetFileName(sentFile); - string moveTarget = Path.Combine(Properties.Settings.Default.OutgoingArchiveFolder, onlyFileName); - File.Move(sentFile, moveTarget); + string moveTarget = Path.Combine(Properties.Settings.Default.OutgoingArchiveFolder, onlyFileName); + File.Copy(sentFile, moveTarget, true); + File.Delete(sentFile); } // receive files from remote host @@ -128,13 +129,15 @@ namespace bsmd.dbh { _log.ErrorFormat("Error reading input file {0}", justFilename); string errorPath = Path.Combine(Properties.Settings.Default.IncomingErrorFolder, justFilename); - File.Move(inputFile, errorPath); + File.Copy(inputFile, errorPath, true); + File.Delete(inputFile); } else { _log.InfoFormat("Incoming file {0} processed", justFilename); string archivePath = Path.Combine(Properties.Settings.Default.IncomingArchiveFolder, justFilename); - File.Move(inputFile, archivePath); + File.Copy(inputFile, archivePath, true); + File.Delete(inputFile); } // remote Dateien löschen bsmd.dakosy.SFtp.RemoveProcessedFile(Properties.Settings.Default.RemoteOutgoingFolder, Path.GetFileName(inputFile), Properties.Settings.Default.SFTPSessionName); diff --git a/bsmd.dbh/RequestUtil.cs b/bsmd.dbh/RequestUtil.cs index 5cb5db1e..4aeed901 100644 --- a/bsmd.dbh/RequestUtil.cs +++ b/bsmd.dbh/RequestUtil.cs @@ -1662,10 +1662,13 @@ namespace bsmd.dbh rwr.IdentificationNumber = was_rcpt.IdentificationNumber; rwr.PortReceptionFacilityName = was_rcpt.PortReceptionFacilityName; rwr.PortReceptionFacilityProviderName = was_rcpt.PortReceptionFacilityProviderName; - rwr.TreatmentFacilityProvider = new string[was_rcpt.TreatmentFacilityProvider.Count]; - for (int j = 0; j < was_rcpt.TreatmentFacilityProvider.Count; j++) + if (was_rcpt.TreatmentFacilityProvider.Count > 0) { - rwr.TreatmentFacilityProvider[j] = was_rcpt.TreatmentFacilityProvider[j].TreatmentFacilityProviderName; + rwr.TreatmentFacilityProvider = new string[was_rcpt.TreatmentFacilityProvider.Count]; + for (int j = 0; j < was_rcpt.TreatmentFacilityProvider.Count; j++) + { + rwr.TreatmentFacilityProvider[j] = was_rcpt.TreatmentFacilityProvider[j].TreatmentFacilityProviderName; + } } if (was_rcpt.WasteDeliveryDateFrom.HasValue) rwr.WasteDeliveryDateFrom = was_rcpt.WasteDeliveryDateFrom.Value.ToUTCSerializableDateTime();