Public Class SifonLadeController Private Shared _instance As SifonLadeController Private ReadOnly _specialLadenRep As SpecialLadenRepository Private ReadOnly _sifonladeManager As LadeManager(Of ISifonLade) ''' ''' Singleton instantie opvragen. ''' ''' Instantie Public Shared Function GetInstance() As SifonLadeController If _instance Is Nothing Then _instance = New SifonLadeController End If Return _instance End Function Public Sub New() 'Repository _specialLadenRep = New SpecialLadenRepository End Sub ''' ''' Zoek de lade aan de hand van de lade code. ''' ''' Public Function ZoekLade(ladeCode As String) As Boolean End Function ''' ''' Informatie opvragen over de sifonLade als DTO. ''' ''' DTO met informatie Public Function GeefInformatieSifonLade() As SifonLadeDto 'De eerste sifonlade opvragen. Dim sifonLade As ISifonLade = _specialLadenRep.geefSifonLade(0) 'De DTO converter aanmaken. Dim dtoConverter = New SifonLadeDtoConverter 'Sifonlade converteren en retourneren als DTO. Return dtoConverter.ToDto(sifonLade) End Function ''' ''' Gewijzigde waarden van de sifon lade updaten. ''' ''' De DTO van de sifon lade Public Sub UpdateWaardenSifonLade(sifonLadeDto As SifonLadeDto) 'De DTO converter aanmaken. Dim dtoConverter = New SifonLadeDtoConverter 'Dto converteren naar sifon lade. dtoConverter.FromDto(sifonLadeDto) End Sub Private Sub verdeelSifonLadenOverReworkTrays() Dim zijkanten As New List(Of ArdisData) For Each sifonLade In _specialLadenRep.sifonLaden 'zijkanten zijkanten.AddRange(sifonLade.zijkanten) Next 'special rework trays laten verwerken 'todo voegReworkTraysSpecialLadeToe(zijkanten) End Sub Private Sub slaSifonLadenOp() 'todo Dim hoofdAansturingSifonLade As HoofdAansturingSpecialLade = New HoofdAansturingSifonLade(reworkTrayRep) 'hoofdAansturingSifonLade.verwerkenSpecialLadeMetTrays(_specialLadenRep.sifonLaden) End Sub 'verplaatsen van de sifon laden uit het bestand naar de directory meegegeven in het config bestand en de niet verwerkte in het bestand terug zetten Public Sub verplaatsVerwerkteSifonLaden() Try Dim bestandsNaam As String = _specialLadenRep.bestandsNaam For Each sifonLade In _specialLadenRep.sifonLaden 'alle onderdelen afgaan 'zijkanten For Each zijkant As ArdisData In sifonLade.zijkanten ArdisTextMapper.opslaanSifonLadeVoorVerwerking(zijkant, bestandsNaam) Next 'rug ArdisTextMapper.opslaanSifonLadeVoorVerwerking(sifonLade.rug, bestandsNaam) 'bodem ArdisTextMapper.opslaanSifonLadeVoorVerwerking(sifonLade.bodem, bestandsNaam) Next ArdisTextMapper.stopArdisTextOpslag() Catch ex As Exception Throw New Exception("Er is iets foutgelopen bij het verplaatsen van het uitgelezen sifonLade bestand naar een andere folder" & vbNewLine & ex.Message) End Try End Sub End Class