Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/MustInheritSifonLadeManager.vb =================================================================== diff -u -r1650 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/MustInheritSifonLadeManager.vb (.../MustInheritSifonLadeManager.vb) (revision 1650) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/MustInheritSifonLadeManager.vb (.../MustInheritSifonLadeManager.vb) (revision 1651) @@ -42,6 +42,19 @@ ''' ''' De laden in een afgewerkte staat brengen. ''' - public MustOverride sub BouwLaden() + public sub BouwLaden() + GenereerOnderdelen() + GenereerOnderdeelDatas() + End sub + ''' + ''' Genereren van de onderdelen, zijkanten, bodem, ... + ''' + protected MustOverride sub GenereerOnderdelen() + + ''' + ''' Andere data's genereren, kantenband, automilling, ... + ''' + protected MustOverride sub GenereerOnderdeelDatas() + End Class Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeManager.vb =================================================================== diff -u -r1650 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeManager.vb (.../SifonLadeManager.vb) (revision 1650) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeManager.vb (.../SifonLadeManager.vb) (revision 1651) @@ -21,8 +21,15 @@ End Sub ''' - Public Overrides Sub BouwLaden() - Throw New NotImplementedException + Protected Overrides Sub GenereerOnderdelen() + 'Sifonladen overlopen. + for each sifonlade In Laden + sifonlade.GenereerOnderdelen() + Next End Sub + ''' + Protected Overrides Sub GenereerOnderdeelDatas() + Throw New NotImplementedException + End Sub End Class Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/ISifonLade.vb =================================================================== diff -u -r1649 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/ISifonLade.vb (.../ISifonLade.vb) (revision 1649) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/ISifonLade.vb (.../ISifonLade.vb) (revision 1651) @@ -23,4 +23,10 @@ ReadOnly Property PositieSifonuitsparingR As Double Property BreedteSifonuitsparingZ1 As Double Property DiepteSifonuitsparingU1 As Double + + ''' + ''' Genereren van de extra zijkanten, bodem, ... + ''' Updaten etiketlijnen. + ''' + sub MaakLade() End Interface Index: TAOR-rework-bugfixing/TAOR rework/Configuraties/Configs.vb =================================================================== diff -u -r1623 -r1651 --- TAOR-rework-bugfixing/TAOR rework/Configuraties/Configs.vb (.../Configs.vb) (revision 1623) +++ TAOR-rework-bugfixing/TAOR rework/Configuraties/Configs.vb (.../Configs.vb) (revision 1651) @@ -636,7 +636,7 @@ End If End Sub - Public Function sifonLadeGeefMinimumLengteRug() + Public Function SifonLadeGeefMinimumLengteRug() As Integer Return _sifonLadeMinimumLengteRug End Function #End Region Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLade.vb =================================================================== diff -u -r1649 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLade.vb (.../SifonLade.vb) (revision 1649) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLade.vb (.../SifonLade.vb) (revision 1651) @@ -110,7 +110,7 @@ 'de etiket lijn aanpassen Public Sub updateEtiketLijn() For Each rug As ArdisData In _ruggen - rug.sifonLadeUpdateEtiketLijnenRug(rug.sifonLadeGeefOorspronkelijkeLengteRug) + 'rug.sifonLadeUpdateEtiketLijnenRug(rug.sifonLadeGeefOorspronkelijkeLengteRug) Next '_rug.sifonLadeUpdateEtiketLijnenRug(_rug.sifonLadeGeefOorspronkelijkeLengteRug) @@ -127,12 +127,12 @@ Dim rug2 As ArdisData = maakRug2(rug1.PartL) 'barcoden instellen - rug1.sifonLadeUpdateBarcodeRug(rug1.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc), False) - rug2.sifonLadeUpdateBarcodeRug(rug2.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc), True) + 'rug1.sifonLadeUpdateBarcodeRug(rug1.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc), False) + 'rug2.sifonLadeUpdateBarcodeRug(rug2.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc), True) 'lengte rug instellen en ticket updaten - rug1.sifonLadeUpdatePartLEnTicketRug(rug1.sifonLadeGeefOorspronkelijkeLengteRug, rug1.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc)) - rug2.sifonLadeUpdatePartLEnTicketRug(rug2.sifonLadeGeefOorspronkelijkeLengteRug, rug2.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc)) + 'rug1.sifonLadeUpdatePartLEnTicketRug(rug1.sifonLadeGeefOorspronkelijkeLengteRug, rug1.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc)) + 'rug2.sifonLadeUpdatePartLEnTicketRug(rug2.sifonLadeGeefOorspronkelijkeLengteRug, rug2.sifonLadeIsVerlaagdeRug(_zijkanten(0).PartCalc)) 'nieuwe ruggen opslaan opslaanGegenereerdOnderdeel(_origineleRug, rug1, Configs.sifonLadeGeefOnderdeelNaamGegenereerdeRug) @@ -145,14 +145,13 @@ Private Function maakRug1() As ArdisData Dim rug1 As ArdisData = _origineleRug.ShallowCopy - rug1.sifonLadeNieuweRug1Data(_positionSifon) + 'rug1.sifonLadeNieuweRug1Data(_positionSifon) Return rug1 End Function Private Function maakRug2(rug1Lengte As Double) As ArdisData Dim rug2 As ArdisData = _origineleRug.ShallowCopy - Dim breedte As Double = ArdisData.sifonLadeGeefBreedte(geefLW) - rug2.sifonLadeNieuweRug2Data(breedte, geefBreedteSifonUitsparing, rug1Lengte) + 'rug2.sifonLadeNieuweRug2Data(geefLW, geefBreedteSifonUitsparing, rug1Lengte) Return rug2 End Function Index: TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb =================================================================== diff -u -r1646 -r1651 --- TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1646) +++ TAOR-rework-bugfixing/TAOR rework/databases/Ardis/ArdisData.vb (.../ArdisData.vb) (revision 1651) @@ -31,12 +31,10 @@ Public PartExt10 As String Public PartExt11 As String - Private _gegenereerd As Boolean - Property Label As String Property KamerfreesTrayId As String Property KamerfreesSlotNr As String - Property Bestandsnaam As string 'Naam van het bestand waar de Ardis data zich in bevindt voor special laden. + Property Bestandsnaam As String 'Naam van het bestand waar de Ardis data zich in bevindt voor special laden. Public Function ShallowCopy() As ArdisData Return DirectCast(Me.MemberwiseClone(), ArdisData) @@ -64,11 +62,11 @@ End Function Public Function geefColorEnkel(andereKant As ArdisData) As String - Return geefKleurBinnen() & "-" & andereKant.geefKleurBinnen + Return GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen End Function Public Function geefColorDubbel(andereKant As ArdisData) As String - Return geefKleurBinnen() & "-" & andereKant.geefKleurBinnen & "-" & geefKleurBinnen() & "-" & andereKant.geefKleurBinnen + Return GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen & "-" & GeefKleurBinnen() & "-" & andereKant.GeefKleurBinnen End Function Public Function GeefBatch() As String @@ -94,89 +92,16 @@ #Region "sifon laden" - Public Sub sifonLadeUpdateEtiketLijnenRug(oorspronkelijkeLengteRug As String) - Dim afdekKapjesEnSY As String = PartExt01.Substring(PartExt01.LastIndexOf("/")) - Dim tempPartExt01 As String = PartExt01.Substring(0, PartExt01.LastIndexOf("/")) - afdekKapjesEnSY = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSY - tempPartExt01 = tempPartExt01.Substring(0, tempPartExt01.LastIndexOf("/")) - afdekKapjesEnSY = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSY - PartExt01 = PartRef.Substring(0, 3) & "/" & PartExt07 & "-" & PartExt07 & "/" & CStr(CDbl(oorspronkelijkeLengteRug.Replace(".", ",")) + 5).Replace(",", ".") & "x" & PartW & "/" & PartRemark & afdekKapjesEnSY - 'bij etiketlijn 2 'kar' vervangen door sifon + ''' + ''' Updaten etiketlijn 2 en 4. + ''' + public Sub SifonLadeUpdateEtiketLijnen() + 'Bij etiketlijn 2 'kar' vervangen door sifon PartExt02 = PartExt02.Replace("KAR", "SIFON") - End Sub - - Public Sub sifonLadeUpdateEtiketLijnen() - 'bij etiketlijn 2 'kar' vervangen door sifon - PartExt02 = PartExt02.Replace("KAR", "SIFON") - 'bij etiketlijn 4 de nieuwe barcode instellen + 'Etiketlijn 4 aanpassen. PartExt04 = PartCalc & "/B/" & CStr(CDbl(PartL.Replace(".", ",")) - 5).Replace(",", ".") & "xH:" & CStr(CDbl(PartW.Replace(".", ",")) - 5).Replace(",", ".") End Sub - Public Sub sifonLadeUpdateBarcodeRug(isVerlaagdeRug As Boolean, isLinkseRug As Boolean) - 'nieuwe barcode - Dim nieuweBarcode As String = "" - 'juiste letter als verlaagde rug toevoegen - If isVerlaagdeRug Then - nieuweBarcode = PartCalc.Substring(0, 2) - If isLinkseRug Then - nieuweBarcode &= "C" - Else - nieuweBarcode &= "D" - End If - Else - nieuweBarcode = PartCalc.Substring(0, 2) - If isLinkseRug Then - nieuweBarcode &= "L" - Else - nieuweBarcode &= "R" - End If - End If - - 'de lengte in de barcode steken - Dim lengte As Double - If isVerlaagdeRug Then - lengte = CDbl(PartL.Replace(".", ",")) - 5 - 5.5 - Else - lengte = CDbl(PartL.Replace(".", ",")) - 5 - End If - - Dim getallenStuk As String = "" - If lengte < 1000 Then - getallenStuk &= 0 - End If - 'de niet kommagetallen toevoegen - getallenStuk &= Math.Floor(lengte) - getallenStuk &= CStr(lengte Mod 1).Replace("0,", "") - 'getal gedeelte toevoegen - nieuweBarcode &= getallenStuk - 'vaste waarde toevoegen - nieuweBarcode &= "US" - 'de opgevraagde nummer vullen met nullen en de unieke nummer die we ophalen - Dim nummer As Integer = CacheMapper.geefBarcodeNummer - Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length - 2 'de twee wijst op de vaste waarden die we nog gaan toevoegen - For teller As Integer = 0 To aantalNullen - 1 - nieuweBarcode &= "0" - Next - nieuweBarcode &= nummer - 'vaste waarde toevoegen - nieuweBarcode &= "D0" - - PartCalc = nieuweBarcode - End Sub - - Public Sub sifonLadeUpdatePartLEnTicketRug(oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean) - 'etiketlijn 4 updaten - PartExt04 = PartCalc & "/B/" & CStr(CDbl(PartL.Replace(".", ",")) - 5).Replace(",", ".") & "xH:" & CStr(CDbl(PartW.Replace(".", ",")) - 5).Replace(",", ".") - - Dim minLengteRugSifonLade As Integer = Configs.sifonLadeGeefMinimumLengteRug() - If PartL < minLengteRugSifonLade Then - PartL = minLengteRugSifonLade - PartExt04 = PartExt04.Substring(0, PartExt04.IndexOf("/")) & "/*CUT-" & CStr(CDbl(oorspronkelijkeLengteRug.Replace(".", ",") + 5)).Replace(",", ".") & "*" - ElseIf isVerlaagdeRug Then 'IS VERLAAGDE RUG? - PartL = CStr(CDbl(PartL.Replace(".", ",")) - 5.5).Replace(",", ".") - End If - End Sub - Public Shared Function sifonLadeGeefBreedte(lw As Double) As Double Return lw - 31 End Function @@ -193,18 +118,19 @@ Return PartCalc.Substring(5, 1) End Function - Public Sub sifonLadeNieuweZijkantData(lengte As String, hoogteRug As String, barcodeRug As String, isA As Boolean) + Public Sub sifonLadeNieuweZijkantData(lengte As String, hoogteRug As String, barcodeRug As String, isLinksPlaatje As Boolean) + 'lengte aanpassen + PartL = lengte + 5 + 'hoogte aanpassen + PartW = CStr(CDbl(hoogteRug.Replace(".", ",")) + 10.0).Replace(",", ".") + 'nieuwe barcode geven 'kijken of het een linkse of rechtse plaat is Dim typePlaat As String = PartCalc.Substring(5, 1) 'de barcode al vullen met de eerste 3 letters uit de oude, als het een verlaagde rug is de letter uit de rug nemen Dim nieuweBarcode As String = PartCalc.Substring(0, 1) nieuweBarcode &= barcodeRug.Substring(1, 1) - 'lengte aanpassen - PartL = lengte + 5 - 'hoogte aanpassen - PartW = CStr(CDbl(hoogteRug.Replace(".", ",")) + 10.0).Replace(",", ".") nieuweBarcode &= PartCalc.Substring(2, 1) 'de STEMAS B code opvragen en toevoegen @@ -217,11 +143,11 @@ ElseIf typePlaat.ToUpper.Equals("R") Or typePlaat.ToUpper.Equals("D") Then nieuweBarcode &= "F" Else - Throw New Exception("Type " & typePlaat & " is niet gekend in de barcode voor nieuwe zijkant data") + Throw New Exception($"Type {typePlaat} is niet gekend in de barcode voor nieuwe zijkant data") End If 'de barcode vullen met nullen en de unieke nummer die we ophalen - Dim nummer As String = CacheMapper.geefBarcodeNummer + Dim nummer As String = CacheMapper.GeefBarcodeNummer Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length For teller As Integer = 0 To aantalNullen - 2 nummer &= "0" @@ -233,25 +159,129 @@ PartCalc = nieuweBarcode - If isA Then + If isLinksPlaatje Then PartExt09 = "A" Else PartExt09 = "B" End If + + 'Updaten etiket + SifonLadeUpdateEtiketLijnen() End Sub Public Shared Function sifonLadeGeefPositieUitsparing(positionSifon As Double) Return positionSifon + 5 - 21 + 5.5 - 13 End Function - Public Sub sifonLadeNieuweRug1Data(positieSifon As Double) + Public Sub SifonLadeNieuweRug1Data(positieSifon As Double, oorspronkelijkeLengteRug As String, isVerlaagdeRug As Boolean) + 'PartL updaten. PartL = positieSifon - 7.5 - 21 + 5.5 + 5 + 'Ticketlijnen updaten. + SifonLadeUpdateEtiketLijnen() + SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug) + 'Barcode updaten. + SifonLadeUpdateBarcodeRug(isVerlaagdeRug, True) End Sub - Public Sub sifonLadeNieuweRug2Data(breedte As Double, breedteUitsparingSifon As Double, rug1Lengte As Double) - PartL = breedte - (breedteUitsparingSifon - 1) - CDbl(rug1Lengte - 5) + 5 + Public Sub SifonLadeNieuweRug2Data(lw As Double, breedteUitsparingSifon As Double, partLRug1 As Double, oorspronkelijkeLengteRug As String, partLOrigineleRug As String, isVerlaagdeRug As Boolean) + 'PartL berekenen. + PartL = (lw - 31) - (breedteUitsparingSifon - 1) - (partLRug1 - 5) + 5 + 'Etiketlijnen updaten. + SifonLadeUpdateEtiketLijnen() + SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug) + + 'Controleren of de PartL minder is dan de minimum lengte van de rug. + If PartL < Configs.SifonLadeGeefMinimumLengteRug() Then + 'Te korte rug. + + 'PartL overschrijven met minimum lengte rug. + PartL = Configs.SifonLadeGeefMinimumLengteRug() + 'Etiketlijnen zelf aanpassen. + 'Bij etiketlijn 2 'kar' vervangen door 'sifon'. + PartExt02 = PartExt02.Replace("KAR", "SIFON") + 'Etiketlijn 4 aanpassen. + PartExt04 = $"{PartExt04.Substring(0, PartExt04.IndexOf("/"))}/*CUT-{CStr(CDbl(partLOrigineleRug.Replace(".", ",") + 5)).Replace(",", ".")}*" + Else + 'Controleren of het een verlaagde rug is. + If isVerlaagdeRug Then + 'Verlaagde rug, PartL aanpassen. + PartL = CStr(CDbl(PartL.Replace(".", ",")) - 5.5).Replace(",", ".") + End If + End If + + 'Barcode updaten. + SifonLadeUpdateBarcodeRug(isVerlaagdeRug, False) End Sub + Private Sub SifonLadeUpdateEtiketLijn1Rug(oorspronkelijkeLengteRug As String) + Dim afdekKapjesEnSy As String = PartExt01.Substring(PartExt01.LastIndexOf("/")) + Dim tempPartExt01 As String = PartExt01.Substring(0, PartExt01.LastIndexOf("/")) + afdekKapjesEnSy = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSy + tempPartExt01 = tempPartExt01.Substring(0, tempPartExt01.LastIndexOf("/")) + afdekKapjesEnSy = tempPartExt01.Substring(tempPartExt01.LastIndexOf("/")) & afdekKapjesEnSy + PartExt01 = PartRef.Substring(0, 3) & "/" & PartExt07 & "-" & PartExt07 & "/" & CStr(CDbl(oorspronkelijkeLengteRug.Replace(".", ",")) + 5).Replace(",", ".") & "x" & PartW & "/" & PartRemark & afdekKapjesEnSy + End Sub + + Private Sub SifonLadeUpdateBarcodeRug(isVerlaagdeRug As Boolean, isLinkseRug As Boolean) + '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 + Else + 'Is verlaagde rug, juiste letter toevoegen. + nieuweBarcode = PartCalc.Substring(0, 2) + If isLinkseRug Then + nieuweBarcode &= "C" + Else + nieuweBarcode &= "D" + End If + End If + + 'De lengte in de barcode steken. + + Dim lengte As Double + If not isVerlaagdeRug Then + lengte = CDbl(PartL.Replace(".", ",")) - 5 + Else + 'Verlaagde rug. + lengte = CDbl(PartL.Replace(".", ",")) - 5 - 5.5 + End If + + Dim getallenStuk As String = "" + If lengte < 1000 Then + getallenStuk &= 0 + End If + 'De niet kommagetallen toevoegen. + getallenStuk &= Math.Floor(lengte) + 'Deel voor de komma eruit halen. + getallenStuk &= CStr(lengte Mod 1).Replace("0,", string.Empty) + 'Getal gedeelte toevoegen. + nieuweBarcode &= getallenStuk + + 'Vaste waarde toevoegen. + nieuweBarcode &= "US" + + 'De opgevraagde nummer vullen met nullen en de unieke nummer die we ophalen. + Dim nummer As Integer = CacheMapper.GeefBarcodeNummer + Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length - 2 'De twee wijst op de vaste waarden die we nog gaan toevoegen. + For teller = 0 To aantalNullen - 1 + nieuweBarcode &= "0" + Next + nieuweBarcode &= nummer + + 'Vaste waarde toevoegen. + nieuweBarcode &= "D0" + + 'Toewijzen aan variabele. + PartCalc = nieuweBarcode + End Sub + Public Function sifonLadeGeefOorspronkelijkeLengteRug() Dim getal As Double Dim lengteInBarcode = PartCalc.Substring(3, 5) @@ -268,8 +298,13 @@ Return PartL - 5 + 31 End Function - Public Function sifonLadeIsVerlaagdeRug(PartCalcOrigineleZijkant As String) As Boolean - Return Not PartCalc.Substring(1, 1).Equals(PartCalcOrigineleZijkant.Substring(1, 1)) + ''' + ''' Kijken of de rug verlaagd is, aan de hand van het eerste tekens van de PartCalc. + ''' + ''' PartCalc van een originele zijkant + ''' True als de sifonlade verlaagd is + Public Function SifonLadeIsVerlaagdeRug(partCalcOrigineleZijkant As String) As Boolean + Return Not PartCalc.Substring(1, 1).Equals(partCalcOrigineleZijkant.Substring(1, 1)) End Function #End Region @@ -338,7 +373,7 @@ nieuweBarcode &= typePlaat 'de barcode vullen met nullen en de unieke nummer die we ophalen - Dim nummer As String = CacheMapper.geefBarcodeNummer + Dim nummer As String = CacheMapper.GeefBarcodeNummer Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length For teller As Integer = 0 To aantalNullen - 2 nummer &= "0" @@ -373,7 +408,7 @@ 'vaste waarde toevoegen nieuweBarcode &= "US" 'de opgevraagde nummer vullen met nullen en de unieke nummer die we ophalen - Dim nummer As Integer = CacheMapper.geefBarcodeNummer + Dim nummer As Integer = CacheMapper.GeefBarcodeNummer Dim aantalNullen As Integer = PartCalc.Length - nieuweBarcode.Length - CStr(nummer).Length - 2 'de twee wijst op de vaste waarden die we nog gaan toevoegen For teller As Integer = 0 To aantalNullen - 1 nieuweBarcode &= "0" @@ -532,7 +567,7 @@ #Region "voorraad" Public Function geefColorDubbelVoorraad(zijkantB As ArdisData, andereZijkantA As ArdisData, andereZijkantB As ArdisData) As String - Return geefKleurBinnen() & "-" & zijkantB.geefKleurBinnen & "-" & andereZijkantA.geefKleurBinnen & "-" & andereZijkantB.geefKleurBinnen + Return GeefKleurBinnen() & "-" & zijkantB.GeefKleurBinnen & "-" & andereZijkantA.GeefKleurBinnen & "-" & andereZijkantB.GeefKleurBinnen End Function Public Sub voorraadStelInitieleWaardenIn(diepte As String, hoogteLetter As String, label As String, kleur As String) @@ -579,7 +614,7 @@ 'cijfer (lengte) barcode &= Configs.voorraadGeefCodeStemasB(Configs.voorraadGeefNettoLengte(PartL)) 'letter voor rechts of links - barcode &= If(linksOfRechts = TA_OR_rework.LinksOfRechts.links, "L", "R") + barcode &= If(linksOfRechts = TA_OR_rework.LinksOfRechts.Links, "L", "R") 'eerste deel barcodeNummer barcode &= barcodeNummer.Substring(0, 2) 'tussenletter (vast) Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/DubbeleSifonLadeManager.vb =================================================================== diff -u -r1650 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/DubbeleSifonLadeManager.vb (.../DubbeleSifonLadeManager.vb) (revision 1650) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/DubbeleSifonLadeManager.vb (.../DubbeleSifonLadeManager.vb) (revision 1651) @@ -1,12 +1,12 @@ Public Class DubbeleSifonLadeManager - inherits MustInheritSifonLadeManager(Of ISifonLadeDubbel) + Inherits MustInheritSifonLadeManager(Of ISifonLadeDubbel) ''' ''' Initialiseren met een special laden engine. ''' ''' De special laden engine Public Sub New(specialLadenEngine As ISpecialLadeEngine(Of ISifonLadeDubbel)) - MyBase.new(specialLadenEngine) + MyBase.New(specialLadenEngine) End Sub ''' @@ -17,16 +17,20 @@ sifonLade.BreedteSifonuitsparingZ1 = gewijzigdeLade.BreedteSifonuitsparingZ1 sifonLade.DiepteSifonuitsparingU1 = gewijzigdeLade.DiepteSifonuitsparingU1 sifonLade.PositieSifonuitsparingL = gewijzigdeLade.PositieSifonuitsparingL - 'Dubbele sifonlade + 'Dubbele sifonlade. sifonLade.BreedteSifonuitsparingZ2 = gewijzigdeLade.BreedteSifonuitsparingZ2 sifonLade.DiepteSifonuitsparingU2 = gewijzigdeLade.DiepteSifonuitsparingU2 sifonLade.BreedteMiddenstuk = gewijzigdeLade.BreedteMiddenstuk Next End Sub ''' - Public Overrides Sub BouwLaden() + Protected Overrides Sub GenereerOnderdelen() Throw New NotImplementedException End Sub + ''' + Protected Overrides Sub GenereerOnderdeelDatas() + Throw New NotImplementedException + End Sub End Class Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb =================================================================== diff -u -r1642 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb (.../ISpecialLade.vb) (revision 1642) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/ISpecialLade.vb (.../ISpecialLade.vb) (revision 1651) @@ -1,7 +1,19 @@ Public Interface ISpecialLade ''' - ''' Kunnen itereren over de onderdelen. + ''' Kunnen itereren over de originele onderdelen. ''' ''' De iterator Function GeefOrigineleOnderdelen As IEnumerable(Of IOnderdeel) + + ''' + ''' Kunnen itereren over de gegenereerde onderdelen. + ''' + ''' De iterator + Function GeefGegenereerdeOnderdelen As IEnumerable(Of IOnderdeel) + + ''' + ''' Kunnen itereren over alle onderdelen. + ''' + ''' De iterator + Function GeefAlleOnderdelen As IEnumerable(Of IOnderdeel) End Interface Index: TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj =================================================================== diff -u -r1650 -r1651 --- TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1650) +++ TAOR-rework-bugfixing/TAOR rework/TAOR rework.vbproj (.../TAOR rework.vbproj) (revision 1651) @@ -163,13 +163,14 @@ - + + @@ -184,7 +185,7 @@ - + Index: TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb =================================================================== diff -u -r1650 -r1651 --- TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb (.../SifonLadeV2.vb) (revision 1650) +++ TAOR-rework-bugfixing/TAOR rework/laden/special laden/Sifonladen/implementaties/SifonLadeV2.vb (.../SifonLadeV2.vb) (revision 1651) @@ -31,9 +31,10 @@ Public Property BreedteSifonuitsparingZ1 As Double Implements ISifonLade.BreedteSifonuitsparingZ1 Public Property DiepteSifonuitsparingU1 As Double Implements ISifonLade.DiepteSifonuitsparingU1 + #End Region - public Sub New () + Public Sub New() End Sub Public Sub New(buitenzijkantL As Zijkant, buitenzijkantR As Zijkant, bodem As Bodem, rug As Rug) @@ -60,4 +61,120 @@ } End Function + ''' + Public Overridable Function GeefGegenereerdeOnderdelen() As IEnumerable(Of IOnderdeel) Implements ISpecialLade.GeefGegenereerdeOnderdelen + 'Lijst initialiseren met gegenereerde onderdelen en retourneren. + Return New List(Of IOnderdeel) From { + BinnenzijkantL1, + BinnenzijkantR1, + RugL, + 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. + Dim origineleOnderdelen = New List(Of IOnderdeel) From { + BuitenzijkantL, + BuitenzijkantR, + Bodem, + OrigineleRug + } + 'Gegenereerde onderdelen toevoegen. + origineleOnderdelen.AddRange(GeefGegenereerdeOnderdelen()) + 'Lijst retourneren. + Return origineleOnderdelen + End Function + + ''' + Public Sub MaakLade() Implements ISifonLade.MaakLade + 'Nettolengte diepte sifonuitsparing opvragen. + Dim lengte = Configs.geefNettoLengte(DiepteSifonuitsparingU1) + 'Binnenzijkant L en R genereren. + GenereerBinnenzijkantL(lengte) + GenereerBinnenzijkantR(lengte) + 'Rug genereren. + GenereerExtraRuggen() + 'Etiketten updaten. + UpdateEtiketten + End Sub + + Private Sub GenereerBinnenzijkantL(lengte As String) + 'Nieuwe binnenzijkant initialiseren. + Dim ardisDataL = BuitenzijkantL.ArdisDataL.ShallowCopy() + ardisDataL.sifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, OrigineleRug.ArdisData.PartCalc, True) + Dim ardisDataR = BuitenzijkantL.ArdisDataR.ShallowCopy() + ardisDataL.sifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, OrigineleRug.ArdisData.PartCalc, False) + + 'Zijkant initialiseren met juiste Ardis data. + BinnenzijkantL1 = New Zijkant() With { + .ArdisDataL = ardisDataL, + .ArdisDataR = ardisDataR + } + End Sub + + Private Sub GenereerBinnenzijkantR(lengte As String) + 'Nieuwe binnenzijkant initialiseren. + Dim ardisDataL = BuitenzijkantR.ArdisDataL.ShallowCopy() + ardisDataL.sifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, OrigineleRug.ArdisData.PartCalc, True) + Dim ardisDataR = BuitenzijkantR.ArdisDataR.ShallowCopy() + ardisDataL.sifonLadeNieuweZijkantData(lengte, OrigineleRug.ArdisData.PartW, OrigineleRug.ArdisData.PartCalc, False) + + 'Zijkant initialiseren met juiste Ardis data. + BinnenzijkantR1 = New Zijkant() With { + .ArdisDataL = ardisDataL, + .ArdisDataR = ardisDataR + } + End Sub + + Private Sub GenereerExtraRuggen() + 'De twee ruggen maken. + Dim rugLArdisData 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) + rugRArdisData.SifonLadeNieuweRug2Data(KastBreedte, BreedteSifonuitsparingZ1, rugLArdisData.PartL, oorspronkelijkeLengteRug, OrigineleRug.ArdisData.PartL, isVerlaagdeRug) + + 'Ruggen initialiseren met Ardis data. + RugL = New Rug() With { + .ArdisData = rugLArdisData + } + RugR = New Rug() With { + .ArdisData = rugRArdisData + } + End Sub + + ''' + ''' Updaten van de etiketlijnen van de onderdelen, buiten die van de ruggen. + ''' + Protected Overridable Sub UpdateEtiketten() + 'Alle onderdelen overlopen. + For Each onderdeel In GeefAlleOnderdelen() + If TypeOf onderdeel Is Rug Then + 'Ruggen worden niet aangepast. + Return + End If + + '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 + 'Dubbele Ardis data. + Dim onderdeelEnkeleArdisData As IHeeftDubbeleArdisData = onderdeel + onderdeelEnkeleArdisData.ArdisData1.SifonLadeUpdateEtiketLijnen() + onderdeelEnkeleArdisData.ArdisData2.SifonLadeUpdateEtiketLijnen() + End If + Next + End Sub + End Class Index: TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Rug.vb =================================================================== diff -u -r1635 -r1651 --- TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Rug.vb (.../Rug.vb) (revision 1635) +++ TAOR-rework-bugfixing/TAOR rework/nieuwdomein/onderdelen/implementaties/Rug.vb (.../Rug.vb) (revision 1651) @@ -3,4 +3,5 @@ Public Property ArdisData As ArdisData Implements IHeeftEnkeleArdisdata.ArdisData Public Property KantenbandData As KantenbandData Implements IHeeftKantenbandData.KantenbandData + End Class