Index: TAOR-rework-bugfixing/TAOR rework/controllers/SifonLadeController.vb =================================================================== diff -u -r1648 -r1650 --- TAOR-rework-bugfixing/TAOR rework/controllers/SifonLadeController.vb (.../SifonLadeController.vb) (revision 1648) +++ TAOR-rework-bugfixing/TAOR rework/controllers/SifonLadeController.vb (.../SifonLadeController.vb) (revision 1650) @@ -1,7 +1,10 @@ -Public Class SifonLadeController +Imports DubbeleSifonLadeManager = TA_OR_rework.DubbeleSifonLadeManager + +Public Class SifonLadeController Private Shared _instance As SifonLadeController - Private ReadOnly _sifonladeManager As LadeManager(Of ISifonLade) + Private ReadOnly _sifonladeManager As MustInheritSifonLadeManager(Of ISifonLade) + Private ReadOnly _sifonladeDubbelManager As MustInheritSifonLadeManager(Of ISifonLadeDubbel) ''' ''' Singleton instantie opvragen. @@ -16,13 +19,20 @@ Public Sub New() 'Special lade engine initialiseren met de juiste mapper. - Dim specialLadeEngine = New SpecialLadeEngine(Of ISifonLade)(New SifonLadenMapper) + Dim sifonLadeEngine = New SpecialLadeEngine(Of ISifonLade)(New SifonLadenMapper) 'Manager initialiseren met de engine. - _sifonladeManager = New SifonLadeManager(specialLadeEngine) + _sifonladeManager = New SifonLadeManager(sifonLadeEngine) + + 'Dubbele special lade engine initialiseren met de juiste mapper. + Dim sifonladeDubbelEngine = New SpecialLadeEngine(Of ISifonLadeDubbel)(New SifonLadenDubbelMapper) + 'Manager initialiseren met de engine. + _sifonladeDubbelManager = New DubbeleSifonLadeManager(sifonladeDubbelEngine) End Sub +#Region "Normale sifon lade" + ''' - ''' Zoek de lade aan de hand van de lade code. + ''' Zoek de sifonlade aan de hand van de lade code. ''' ''' Public Function ZoekSifonLade(ladeCode As String) As Boolean @@ -31,8 +41,6 @@ End Function #Region "Informatie" - -#Region "Normale sifon lade" ''' ''' Informatie opvragen over de sifonLade als DTO. ''' @@ -54,6 +62,23 @@ End Function ''' + ''' Opvragen van aantal sifonladen. + ''' + ''' Het aantal sifonladen + Public Function GeefAantalSifonLaden() As Integer + Return _sifonladeManager.AantalLaden() + End Function + + ''' + ''' Opvragen van de namen van alle onderdelen van een sifonlade met de bijhorende barcodes + ''' + ''' + Public Function GeefSifonLadenOrigineleOnderdelenEnBarcodes() As List(Of String()) + Return _sifonladeManager.GeefOrigineleOnderdelenEnBarcodes() + End Function +#End Region + + ''' ''' Gewijzigde waarden van de sifon lade updaten. ''' ''' De DTO van de sifon lade @@ -67,23 +92,71 @@ End Sub #End Region +#Region "Dubbele sifon lade" + ''' - ''' Opvragen van aantal laden. + ''' Zoek de dubbele sifonlade aan de hand van de lade code. ''' + ''' + Public Function ZoekDubbeleSifonLade(ladeCode As String) As Boolean + 'Manager aanroepen en resultaat retourneren. True als de lade is gevonden. + Return _sifonladeDubbelManager.ZoekEnLaadLaden(ladeCode) + End Function + +#Region "Informatie" + + ''' + ''' Informatie opvragen over de dubbele sifonLade als DTO. + ''' + ''' DTO met informatie + Public Function GeefInformatieDubbeleSifonLade() As SifonLadeDubbelDto + 'De eerste sifonlade opvragen. + Dim sifonLade As ISifonLade = _sifonladeDubbelManager.EersteOfStandaard() + + 'Controleren of de sifonLade niet leeg is. + If sifonLade Is Nothing Then + 'Zo ja, retourneer Nothing. + Return Nothing + End If + + 'De DTO converter aanmaken. + Dim dtoConverter = New SifonLadeDubbelDtoConverter + 'Sifonlade converteren en retourneren als DTO. + Return dtoConverter.ToDto(sifonLade) + End Function + + ''' + ''' Opvragen van aantal dubbele sifonladen. + ''' ''' Het aantal sifonladen - Public Function GeefAantalLaden() As Integer - Return _sifonladeManager.AantalLaden() + Public Function GeefAantalDubbeleSifonLaden() As Integer + Return _sifonladeDubbelManager.AantalLaden() End Function ''' - ''' Opvragen van de namen van alle onderdelen van een special lade met de bijhorende barcodes + ''' Opvragen van de namen van alle onderdelen van een dubbele sifonlade met de bijhorende barcodes ''' ''' - Public Function GeefSpecialLadenOrigineleOnderdelenEnBarcodes() As List(Of String()) - Return _sifonladeManager.GeefOrigineleOnderdelenEnBarcodes() + Public Function GeefDubbeleSifonLadenOrigineleOnderdelenEnBarcodes() As List(Of String()) + Return _sifonladeDubbelManager.GeefOrigineleOnderdelenEnBarcodes() End Function #End Region + ''' + ''' Gewijzigde waarden van de sifonlade updaten. + ''' + ''' De DTO van de dubbele sifonlade + Public Sub UpdateWaardenDubbeleSifonLade(sifonLadeDubbelDto As SifonLadeDubbelDto) + 'De DTO converter aanmaken. + Dim dtoConverter = New SifonLadeDubbelDtoConverter + 'Dto converteren naar sifon lade. + Dim sifonlade = dtoConverter.FromDto(sifonLadeDubbelDto) + 'Manager aanroepen om te updaten. + _sifonladeDubbelManager.UpdateAlleLaden(sifonlade) + End Sub + +#End Region + Private Sub verdeelSifonLadenOverReworkTrays() Dim zijkanten As New List(Of ArdisData) 'For Each sifonLade In _specialLadenRep.sifonLaden