Index: TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb =================================================================== diff -u -r1656 -r1657 --- TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1656) +++ TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1657) @@ -82,7 +82,7 @@ ''' ''' PartExt07 aanpassen met huidig materiaal. ''' - public Sub PasKleurAanSpecial() + Public Sub PasKleurAanSpecial() Dim firstIndex As Integer = PartMat.IndexOf(".", StringComparison.Ordinal) + 1 Dim lastIndex As Integer = PartMat.LastIndexOf(".", StringComparison.Ordinal) PartExt07 = PartMat.Substring(firstIndex, lastIndex - firstIndex) @@ -165,7 +165,7 @@ PartExt09 = "B" End If 'Kleur aanpassen. - PasKleurAanSpecial + PasKleurAanSpecial() 'Updaten etiket. SifonLadeUpdateEtiketLijnen() End Sub @@ -192,11 +192,12 @@ SifonLadeUpdateEtiketLijnen() SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug) 'Barcode updaten. - SifonLadeUpdateBarcodeRug(isVerlaagdeRug, True) + SifonLadeUpdateBarcodeRug(isVerlaagdeRug, RugStuk.Links) 'Kleur aanpassen. - PasKleurAanSpecial + PasKleurAanSpecial() End Sub + ''' ''' Nieuwe data voor een rechtse rug. ''' @@ -207,8 +208,24 @@ ''' ''' Public Sub SifonLadeNieuweRug2Data(lw As Double, breedteUitsparingSifon As Double, partLRug1 As Double, oorspronkelijkeLengteRug As String, partLOrigineleRug As String, isVerlaagdeRug As Boolean) + 'PartLRugM is standaard 5 te lang. + SifonLadeNieuweRug2Data(lw, breedteUitsparingSifon, partLRug1, 5, oorspronkelijkeLengteRug, partLOrigineleRug, isVerlaagdeRug) + End Sub + + + ''' + ''' Nieuwe data voor een rechtse rug. + ''' + ''' + ''' + ''' + ''' + ''' + ''' + ''' + Public Sub SifonLadeNieuweRug2Data(lw As Double, breedteUitsparingSifon As Double, partLRug1 As Double, partLRugM As Double, oorspronkelijkeLengteRug As String, partLOrigineleRug As String, isVerlaagdeRug As Boolean) 'PartL berekenen. - PartL = (lw - 31) - (breedteUitsparingSifon - 1) - (partLRug1 - 5) + 5 + PartL = (lw - 31) - (breedteUitsparingSifon - 1) - (partLRug1 - 5) - (partLRugM - 5) + 5 'Controleren of de PartL minder is dan de minimum lengte van de rug. If PartL < Configs.SifonLadeGeefMinimumLengteRug() Then @@ -233,12 +250,30 @@ End If 'Barcode updaten. - SifonLadeUpdateBarcodeRug(isVerlaagdeRug, False) + SifonLadeUpdateBarcodeRug(isVerlaagdeRug, RugStuk.Rechts) 'Kleur aanpassen. - PasKleurAanSpecial + PasKleurAanSpecial() End Sub ''' + ''' Nieuwe data voor de middelste rug. + ''' + ''' + ''' + ''' + Public Sub SifonLadeNieuweRugMData(breedteMiddenstuk As Double, oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean) + 'PartL updaten. + PartL = breedteMiddenstuk + 'Ticketlijnen updaten. + SifonLadeUpdateEtiketLijnen() + SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug) + 'Barcode updaten. + SifonLadeUpdateBarcodeRug(isVerlaagdeRug, RugStuk.Midden) + 'Kleur aanpassen. + PasKleurAanSpecial() + End Sub + + ''' ''' PartExt01 aanpassen. ''' ''' @@ -251,29 +286,37 @@ PartExt01 = PartRef.Substring(0, 3) & "/" & PartExt07 & "-" & PartExt07 & "/" & CStr(CDbl(oorspronkelijkeLengteRug.Replace(".", ",")) + 5).Replace(",", ".") & "x" & PartW & "/" & PartRemark & afdekKapjesEnSy End Sub + Private Enum RugStuk + Links + Rechts + Midden + End Enum + ''' ''' Barcode voor een rug opbouwen. ''' ''' - ''' - Private Sub SifonLadeUpdateBarcodeRug(isVerlaagdeRug As Boolean, isLinkseRug As Boolean) + ''' + Private Sub SifonLadeUpdateBarcodeRug(isVerlaagdeRug As Boolean, rugstuk As RugStuk) 'Nieuwe barcode - Dim nieuweBarcode As String - If Not isVerlaagdeRug Then - 'Geen verlaagde rug. - nieuweBarcode = PartCalc.Substring(0, 2) - If isLinkseRug Then - nieuweBarcode &= "L" - Else - nieuweBarcode &= "R" - End If + Dim nieuweBarcode = PartCalc.Substring(0, 2) + If rugstuk = RugStuk.Midden Then + nieuweBarcode &= "X" Else - 'Is verlaagde rug, juiste letter toevoegen. - nieuweBarcode = PartCalc.Substring(0, 2) - If isLinkseRug Then - nieuweBarcode &= "C" + If Not isVerlaagdeRug Then + 'Geen verlaagde rug. + If rugstuk = RugStuk.Links Then + nieuweBarcode &= "L" + Else + nieuweBarcode &= "R" + End If Else - nieuweBarcode &= "D" + 'Is verlaagde rug, juiste letter toevoegen. + If rugstuk = RugStuk.Links Then + nieuweBarcode &= "C" + Else + nieuweBarcode &= "D" + End If End If End If Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb =================================================================== diff -u -r1651 -r1657 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb (.../ISpecialLade.vb) (revision 1651) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb (.../ISpecialLade.vb) (revision 1657) @@ -12,6 +12,12 @@ Function GeefGegenereerdeOnderdelen As IEnumerable(Of IOnderdeel) ''' + ''' Geef originele en gegenereerde onderdelen.. + ''' + ''' De iterator + Function GeefGegenereerdeEnOrigineleOnderdelen As IEnumerable(Of IOnderdeel()) + + ''' ''' Kunnen itereren over alle onderdelen. ''' ''' De iterator Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb =================================================================== diff -u -r1656 -r1657 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb (.../SifonLadeV2.vb) (revision 1656) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb (.../SifonLadeV2.vb) (revision 1657) @@ -73,6 +73,17 @@ End Function ''' + Public overridable Function GeefGegenereerdeEnOrigineleOnderdelen() As IEnumerable(Of IOnderdeel()) Implements ISpecialLade.GeefGegenereerdeEnOrigineleOnderdelen + 'Lijst initialiseren met originele en gegenereerde onderdelen en retourneren. + Return New List(Of IOnderdeel()) From { + New IOnderdeel(){BuitenzijkantL, BinnenzijkantL1}, + New IOnderdeel(){BuitenzijkantR, BinnenzijkantR1}, + New IOnderdeel(){OrigineleRug, RugL}, + new IOnderdeel(){OrigineleRug, RugR} + } + End Function + + ''' Public Overridable Function GeefAlleOnderdelen() As IEnumerable(Of IOnderdeel) Implements ISpecialLade.GeefAlleOnderdelen 'Lijst initialiseren met alle onderdelen en retourneren. 'De originele rug maakt hier geen deel van uit. @@ -90,7 +101,7 @@ #Region "Lade maken" ''' - Public Sub MaakLade() Implements ISifonLade.MaakLade + Public Overridable Sub MaakLade() Implements ISifonLade.MaakLade 'Binnenzijkant L en R genereren. GenereerBinnenzijkantL() GenereerBinnenzijkantR() @@ -100,7 +111,7 @@ UpdateEtiketten() End Sub - Private Sub GenereerBinnenzijkantL() + Protected Sub GenereerBinnenzijkantL() 'Nettolengte diepte sifonuitsparing opvragen. Dim lengte = Configs.geefNettoLengte(DiepteSifonuitsparingU1) 'Nieuwe binnenzijkant initialiseren. @@ -116,7 +127,7 @@ } End Sub - Private Sub GenereerBinnenzijkantR() + Protected Sub GenereerBinnenzijkantR() 'Nettolengte diepte sifonuitsparing opvragen. Dim lengte = Configs.geefNettoLengte(DiepteSifonuitsparingU1) 'Nieuwe binnenzijkant initialiseren. @@ -158,15 +169,15 @@ ''' ''' Updaten van de etiketlijnen van de onderdelen, buiten die van de ruggen. ''' - Private Sub UpdateEtiketten() + Protected Sub UpdateEtiketten() 'Alle onderdelen overlopen. For Each onderdeel In EtiketUpdatableOnderdelen() 'Checken of onderdeel 1 of 2 Ardis data's bevat. If TypeOf onderdeel Is IHeeftEnkeleArdisdata Then 'Enkele Ardis data. Dim onderdeelEnkeleArdisData As IHeeftEnkeleArdisdata = onderdeel onderdeelEnkeleArdisData.ArdisData.SifonLadeUpdateEtiketLijnen() - Else + Elseif TypeOf onderdeel is IHeeftDubbeleArdisData 'Dubbele Ardis data. Dim onderdeelEnkeleArdisData As IHeeftDubbeleArdisData = onderdeel onderdeelEnkeleArdisData.ArdisData1.SifonLadeUpdateEtiketLijnen() Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/ReworkTrayEngine.vb =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/ReworkTrayEngine.vb (.../ReworkTrayEngine.vb) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/ReworkTrayEngine.vb (.../ReworkTrayEngine.vb) (revision 1657) @@ -1,34 +1,42 @@ Public Class ReworkTrayEngine Implements IReworkTrayEngine - Private _slotRepository As ReworkTraySlotRepository + Private ReadOnly _slotRepository As ReworkTraySlotRepository Public Sub New(slotRepository As ReworkTraySlotRepository) _slotRepository = slotRepository End Sub - public Sub VerdeelZijkantenOverTrays(zijkanten As List(Of Zijkant))Implements IReworkTrayEngine.VerdeelZijkantenOverTrays + Public Function VerdeelZijkantenOverTrays(zijkanten As List(Of Zijkant)) As List(Of ReworkTray) Implements IReworkTrayEngine.VerdeelZijkantenOverTrays 'Controleren dat het anntal zijkanten wel even is. If zijkanten.Count Mod 2 <> 0 Then Throw New Exception("Het aantal zijkanten is niet gelijk en kan dus niet verdeeld worden als paar over de rework tray.") End If + Dim reworkTrays As New List(Of ReworkTray) 'Rework tray initialiseren. Dim reworkTray As New ReworkTray(_slotRepository.Slots) 'Zijkanten overlopen per 2 For i = 0 To zijkanten.Count - 1 Step 2 Dim zijkant1 = zijkanten(i) Dim zijkant2 = zijkanten(i) 'Controleren of alle paren volzitten. - If Not reworkTray.parenVol Then - reworkTray.voegPaarToe( - New List(Of ArdisData) From { - zijkant1.ArdisDataL, - zijkant2.ArdisDataL - }) + If reworkTray.parenVol Then + 'De volle tray wegschrijven en nieuwe initialiseren. + reworkTrays.Add(reworkTray) + reworkTray = New ReworkTray(_slotRepository.Slots) End If + 'Paar zijkanten toevoegen aan de tray. + reworkTray.voegPaarToe( + New List(Of ArdisData) From { + zijkant1.ArdisDataL, + zijkant2.ArdisDataL + }) Next - End Sub + 'Laatste rework tray toevoegen. + reworkTrays.Add(reworkTray) + Return reworkTrays + End Function End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Zijkant.vb =================================================================== diff -u -r1646 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Zijkant.vb (.../Zijkant.vb) (revision 1646) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Zijkant.vb (.../Zijkant.vb) (revision 1657) @@ -1,9 +1,8 @@ Public Class Zijkant - Implements IOnderdeel, IHeeftDubbeleArdisData, IHeeftZijkamerFreesProductieData, IHeeftKantenbandData + Implements IOnderdeel, IHeeftDubbeleArdisData, IHeeftKantenbandData Public Property ArdisDataL As ArdisData Implements IHeeftDubbeleArdisData.ArdisData1 Public Property ArdisDataR As ArdisData Implements IHeeftDubbeleArdisData.ArdisData2 - Public Property ZijkamerFreesProductieData As ZijkamerFreesProductieData Implements IHeeftZijkamerFreesProductieData.ZijkamerFreesProductieData Public Property KantenbandData As KantenbandData Implements IHeeftKantenbandData.KantenbandData ''' Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeDubbel.vb =================================================================== diff -u -r1654 -r1657 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeDubbel.vb (.../SifonLadeDubbel.vb) (revision 1654) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeDubbel.vb (.../SifonLadeDubbel.vb) (revision 1657) @@ -43,5 +43,91 @@ Return gegenereerdeOnderdelen End Function + ''' + Public overrides Function GeefGegenereerdeEnOrigineleOnderdelen() As IEnumerable(Of IOnderdeel()) + 'Lijst initialiseren met originele en gegenereerde onderdelen en retourneren. + Dim gegenereerdeOnderdelen = New List(Of IOnderdeel()) From { + New IOnderdeel(){BinnenzijkantL2, BinnenzijkantL2}, + New IOnderdeel(){BuitenzijkantR, BinnenzijkantR2}, + New IOnderdeel(){OrigineleRug, RugM} + } + 'Gegenereerde onderdelen van parent opvragen en toevoegen. + gegenereerdeOnderdelen.AddRange(MyBase.GeefGegenereerdeEnOrigineleOnderdelen()) + 'Uitgebreide lijst retourneren. + Return gegenereerdeOnderdelen + End Function + ''' + Public Overrides Sub MaakLade() Implements ISifonLade.MaakLade + 'Binnenzijkant L en R genereren. + GenereerBinnenzijkantL() + GenereerBinnenzijkantR() + 'Ruggen genereren. + GenereerBinnenZijkantL2() + GenereerBinnenzijkantR2() + 'Genereer ruggen + GenereerExtraRuggen() + 'Etiketten updaten. + UpdateEtiketten() + End Sub + + Private Sub GenereerBinnenzijkantR2() + 'Nettolengte diepte sifonuitsparing opvragen. + Dim lengte = Configs.geefNettoLengte(DiepteSifonuitsparingU2) + 'Nieuwe binnenzijkant initialiseren. + Dim ardisDataL = BuitenzijkantR.ArdisDataL.ShallowCopy() + ardisDataL.SifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, Bodem.ArdisData.PartMat, OrigineleRug.ArdisData.PartCalc, True) + Dim ardisDataR = BuitenzijkantR.ArdisDataR.ShallowCopy() + ardisDataR.SifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, Bodem.ArdisData.PartMat, OrigineleRug.ArdisData.PartCalc, False) + + 'Zijkant initialiseren met juiste Ardis data. + BinnenzijkantR1 = New Zijkant() With { + .ArdisDataL = ardisDataL, + .ArdisDataR = ardisDataR + } + End Sub + + Private Sub GenereerBinnenZijkantL2() + 'Nettolengte diepte sifonuitsparing opvragen. + Dim lengte = Configs.geefNettoLengte(DiepteSifonuitsparingU2) + 'Nieuwe binnenzijkant initialiseren. + Dim ardisDataL = BuitenzijkantL.ArdisDataL.ShallowCopy() + ardisDataL.SifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, Bodem.ArdisData.PartMat, OrigineleRug.ArdisData.PartCalc, True) + Dim ardisDataR = BuitenzijkantL.ArdisDataR.ShallowCopy() + ardisDataR.SifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, Bodem.ArdisData.PartMat, OrigineleRug.ArdisData.PartCalc, False) + + 'Zijkant initialiseren met juiste Ardis data. + BinnenzijkantL2 = New Zijkant() With { + .ArdisDataL = ardisDataL, + .ArdisDataR = ardisDataR + } + End Sub + + Private Sub GenereerExtraRuggen() + 'De twee ruggen maken. + Dim rugLArdisData As ArdisData = OrigineleRug.ArdisData.ShallowCopy + Dim rugMArdisData As ArdisData = OrigineleRug.ArdisData.ShallowCopy + Dim rugRArdisData As ArdisData = OrigineleRug.ArdisData.ShallowCopy + + 'Barcode van een zijkant ophalen. + Dim isVerlaagdeRug = OrigineleRug.ArdisData.SifonLadeIsVerlaagdeRug(BuitenzijkantL.ArdisDataL.PartCalc) + 'Lengte van de originele rug ophalen. + Dim oorspronkelijkeLengteRug = OrigineleRug.ArdisData.PartL + + 'Data en ticket updaten. + rugLArdisData.SifonLadeNieuweRug1Data(PositieSifonuitsparingL, oorspronkelijkeLengteRug, isVerlaagdeRug) + rugMArdisData.SifonLadeNieuweRugMData(BreedteMiddenstuk, oorspronkelijkeLengteRug, isVerlaagdeRug) + rugRArdisData.SifonLadeNieuweRug2Data(KastBreedte, BreedteSifonuitsparingZ1, rugLArdisData.PartL, oorspronkelijkeLengteRug, OrigineleRug.ArdisData.PartL, isVerlaagdeRug) + + 'Ruggen initialiseren met Ardis data. + RugL = New Rug() With { + .ArdisData = rugLArdisData + } + RugM = New Rug() With { + .ArdisData = rugMArdisData + } + RugR = New Rug() With { + .ArdisData = rugRArdisData + } + End Sub End Class Index: TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1657) @@ -243,6 +243,7 @@ + Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/LadeManager.vb =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/LadeManager.vb (.../LadeManager.vb) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/LadeManager.vb (.../LadeManager.vb) (revision 1657) @@ -75,4 +75,9 @@ Return onderdelenEnBarcodes End Function + ''' + ''' Produceren, naar databanken sturen. + ''' + public mustoverride sub Produceer() + End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/ZijkantPaar.vb =================================================================== diff -u --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/ZijkantPaar.vb (revision 0) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/ZijkantPaar.vb (revision 1657) @@ -0,0 +1,9 @@ +Public Class ZijkantPaar + Implements IHeeftZijkamerFreesProductieData + + Public Property ZijkamerFreesProductieData As ZijkamerFreesProductieData Implements IHeeftZijkamerFreesProductieData.ZijkamerFreesProductieData + + Public Property ZijkantL As Zijkant + Public Property ZijkantR As Zijkant + +End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/MustInheritSifonLadeManager.vb =================================================================== diff -u -r1656 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/MustInheritSifonLadeManager.vb (.../MustInheritSifonLadeManager.vb) (revision 1656) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/MustInheritSifonLadeManager.vb (.../MustInheritSifonLadeManager.vb) (revision 1657) @@ -5,14 +5,22 @@ Private ReadOnly _specialLadenEngine As ISpecialLadeEngine(Of TLadeType) Private ReadOnly _reworkTrayEngine As IReworkTrayEngine + Private ReadOnly _reworkTrayRepository As ReworkTrayRepository + Public ReadOnly Property SpecialLaden() As List(Of TLadeType) + Get + Return New List(Of TLadeType)(Laden) + End Get + End Property + ''' ''' Initialiseren met een special laden engine. ''' ''' De special laden engine Public Sub New(specialLadenEngine As ISpecialLadeEngine(Of TLadeType), reworkTrayEngine As IReworkTrayEngine) _specialLadenEngine = specialLadenEngine _reworkTrayEngine = reworkTrayEngine + _reworkTrayRepository = New ReworkTrayRepository() End Sub ''' @@ -58,11 +66,6 @@ Catch ex As Exception Throw New Exception($"Kon zijkanten niet verdelen over rework trays.{vbNewLine}{ex.Message}") End Try - Try - GenereerOnderdeelDatas(lade) - Catch ex As Exception - Throw New Exception($"Kon de andere data's voor elk onderdeel niet genereren.{vbNewLine}{ex.Message}") - End Try Next Catch ex As Exception Throw New Exception($"Laden konden niet gebouwd worden.{vbNewLine}{ex.Message}") @@ -80,14 +83,94 @@ ''' Verdelen van de zijkanten over de rework trays. ''' Private Sub VerdeelOverReworkTrays(lade As TLadeType) - Dim zijkanten = lade.GeefAlleOnderdelen().Where(Function(onderdeel) TypeOf onderdeel Is Zijkant).Select(function(onderdeel) CType(onderdeel, Zijkant)).ToList() - 'Data updaten in zijkanten (slotnummer en traynummer door te verdelen over de trays als paar (zijkantL en zijkantR) - _reworkTrayEngine.VerdeelZijkantenOverTrays(zijkanten) + Dim zijkanten = lade.GeefAlleOnderdelen().Where(Function(onderdeel) TypeOf onderdeel Is Zijkant).Select(Function(onderdeel) CType(onderdeel, Zijkant)).ToList() + 'Data updaten in zijkanten (slotnummer en traynummer door te verdelen over de trays als paar (zijkantL en zijkantR). + Dim reworkTrays = _reworkTrayEngine.VerdeelZijkantenOverTrays(zijkanten) + For Each reworktray In reworkTrays + _reworkTrayRepository.addReworkTraySpecialLade(reworktray) + Next End Sub ''' ''' Andere data's genereren, kantenband, automilling, ... ''' - Protected MustOverride Sub GenereerOnderdeelDatas(lade As TLadeType) + public overrides Sub Produceer() + Dim specialLaden As New List(Of SpecialLade) + For Each lade In Laden + 'Opslaan in Caché + OpslaanGegenereerdeOnderdelen(lade) + 'Converteren naar special lade. + Dim specialLade As SpecialLade = New SifonLade() + 'Tpe bepalen en instellen. + If TypeOf lade Is SifonLadeV2 Then + specialLade.typeInstantie = ItemType.Sifonlade + Else + specialLade.typeInstantie = ItemType.DubbeleSifonlade + End If + Dim ruggen As New List(Of ArdisData) + + 'Onderdelen overlopen en toevoegen aan lade. + For Each onderdeel In lade.GeefAlleOnderdelen() + If TypeOf onderdeel Is Front Then + Dim front As Front = onderdeel + specialLade.voegFrontToe(front.ArdisData) + ElseIf TypeOf onderdeel Is Bodem Then + Dim bodem As Bodem = onderdeel + specialLade.voegBodemToe(bodem.ArdisData) + ElseIf TypeOf onderdeel Is Rug Then + Dim rug As Rug = onderdeel + ruggen.Add(rug.ArdisData) + ElseIf TypeOf onderdeel Is Zijkant Then + Dim zijkant As Zijkant = onderdeel + specialLade.voegZijkantToe(zijkant.ArdisDataL) + specialLade.voegZijkantToe(zijkant.ArdisDataR) + End If + Next + + 'Toevoegen aan totale lijst. + specialLade.voegRuggenToe(ruggen) + 'De originele rug ophalen en toevoegen. + specialLade.voegRugToe(lade.OrigineleRug.ArdisData) + + specialLaden.Add(specialLade) + Next + + Dim hoofdaansturingSifonLade = New HoofdAansturingSifonLade(_reworkTrayRepository) + hoofdaansturingSifonLade.verwerkenSpecialLadeMetTrays(specialLaden) + End Sub + + ''' + ''' Opslaan van de gegenereerde onderdelen in Caché: zijkanten en ruggen. + ''' + Private Sub OpslaanGegenereerdeOnderdelen(lade As TLadeType) + For Each onderdeelOrigineelEnGegenereerd In lade.GeefGegenereerdeEnOrigineleOnderdelen() + If Configs.geefVerwerkStatus Then + Dim origineelOnderdeel = onderdeelOrigineelEnGegenereerd(0) + Dim gegenereerdonderdeel = onderdeelOrigineelEnGegenereerd(1) + 'De naam van het onderdeel opvragen. + Dim nieuwOnderdeelNaam As String + If TypeOf origineelOnderdeel Is Zijkant Then + Dim origineleZijkant As Zijkant = origineelOnderdeel + Dim gegenereerdeZijkant As Zijkant = gegenereerdonderdeel + + 'Zijkant L. + nieuwOnderdeelNaam = Configs.specialLadeGeefOnderdeelNaamGegenereerdeZijkant(gegenereerdeZijkant.ArdisDataL.sifonLadeGeefOnderdeelLetter) + 'Opslaan in Caché. + CacheMapper.OpslaanGegenereerdeOnderdelen(origineleZijkant.ArdisDataL, gegenereerdeZijkant.ArdisDataL, nieuwOnderdeelNaam) + + 'Zijkant R. + nieuwOnderdeelNaam = Configs.specialLadeGeefOnderdeelNaamGegenereerdeZijkant(gegenereerdeZijkant.ArdisDataR.sifonLadeGeefOnderdeelLetter) + 'Opslaan in Caché. + CacheMapper.OpslaanGegenereerdeOnderdelen(origineleZijkant.ArdisDataR, gegenereerdeZijkant.ArdisDataR, nieuwOnderdeelNaam) + ElseIf TypeOf origineelOnderdeel Is Rug Then + 'Rug + Dim origineleRug As Rug = origineelOnderdeel + Dim gegenereerdeRug As Rug = gegenereerdonderdeel + CacheMapper.OpslaanGegenereerdeOnderdelen(origineleRug.ArdisData, gegenereerdeRug.ArdisData, Configs.sifonLadeGeefOnderdeelNaamGegenereerdeRug()) + End If + End If + Next + End Sub + End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/DubbeleSifonLadeManager.vb =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/DubbeleSifonLadeManager.vb (.../DubbeleSifonLadeManager.vb) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/DubbeleSifonLadeManager.vb (.../DubbeleSifonLadeManager.vb) (revision 1657) @@ -24,9 +24,4 @@ Next End Sub - ''' - Protected Overrides Sub GenereerOnderdeelDatas(lade As ISifonLadeDubbel) - Throw New NotImplementedException - End Sub - End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/SifonLadeManager.vb =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/SifonLadeManager.vb (.../SifonLadeManager.vb) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/managers/implementaties/SifonLadeManager.vb (.../SifonLadeManager.vb) (revision 1657) @@ -1,12 +1,12 @@ Public Class SifonLadeManager - inherits MustInheritSifonLadeManager(Of ISifonLade) + Inherits MustInheritSifonLadeManager(Of ISifonLade) ''' ''' Initialiseren met een special laden engine. ''' ''' De special laden engine Public Sub New(specialLadenEngine As ISpecialLadeEngine(Of ISifonLade), reworkTrayEngine As IReworkTrayEngine) - MyBase.new(specialLadenEngine, reworkTrayEngine) + MyBase.New(specialLadenEngine, reworkTrayEngine) End Sub ''' @@ -20,9 +20,4 @@ Next End Sub - ''' - Protected Overrides Sub GenereerOnderdeelDatas(lade As ISifonLade) - Throw New NotImplementedException - End Sub - End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/IReworkTrayEngine.vb =================================================================== diff -u -r1655 -r1657 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/IReworkTrayEngine.vb (.../IReworkTrayEngine.vb) (revision 1655) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/engines/IReworkTrayEngine.vb (.../IReworkTrayEngine.vb) (revision 1657) @@ -1,4 +1,4 @@ Public Interface IReworkTrayEngine - Sub VerdeelZijkantenOverTrays(zijkanten As List(Of Zijkant)) + function VerdeelZijkantenOverTrays(zijkanten As List(Of Zijkant)) As List(Of ReworkTray) End Interface