Index: APPS/Verpakking/OrgaluxBonOptimizer.cls.xml
===================================================================
diff -u -r72444 -r72488
--- APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72444)
+++ APPS/Verpakking/OrgaluxBonOptimizer.cls.xml (.../OrgaluxBonOptimizer.cls.xml) (revision 72488)
@@ -62,10 +62,20 @@
-DOM.PM.ProductAPI
+DOM.PM.impl.ProductAPI
1
+
+DOM.PM.impl.ProductRolAPIimpl
+1
+
+
+
+DOM.VKP.impl.DataM.DataMOrderAPI
+1
+
+
%String
1
@@ -116,13 +126,13 @@
1
-
+
%ListOfDataTypes
1
-DoosFactory:APPS.Verpakking.DoosFactory="",DoosAanvuller:APPS.Verpakking.DoosAanvuller="",Optimizer:APPS.Verpakking.Optimizer="",CubeIQRequestBuilder:APPS.Verpakking.CubeIQRequestBuilder
+DoosFactory:APPS.Verpakking.DoosFactory="",DoosAanvuller:APPS.Verpakking.DoosAanvuller="",Optimizer:APPS.Verpakking.Optimizer="",CubeIQRequestBuilder:APPS.Verpakking.CubeIQRequestBuilder=""
1
1
%Status
@@ -131,13 +141,15 @@
Set ..Logger = ##class(vhLib.Logger).%New("Optimaliseer bon orgalux")
Set ..BoxDataRepository = ##class(APPS.Verpakking.BoxDataRepository).%New()
Set ..SnijDataRepository = ##class(APPS.Verpakking.SnijDataRepository).%New()
- Set ..ProductAPI = ##class(DOM.DomeinContext).Instance().GeefProductAPI()
+ Set ..ProductAPI = ##class(DOM.PM.impl.ProductAPI).%New()
+ Set ..ProductRolAPI = ##class(DOM.PM.impl.ProductRolAPIimpl).%New()
+ Set ..OrderAPI = ##class(DOM.VKP.impl.DataM.DataMOrderAPI).%New()
Set ..DateTimeAPI = ##class(TECH.Context).Instance().GeefDateTimeAPI()
Set ..DoosFactory = $$$Inject(DoosFactory, ##class(APPS.Verpakking.DoosFactory).%New())
Set ..DoosAanvuller = $$$Inject(DoosAanvuller, ##class(APPS.Verpakking.DoosAanvuller).%New())
Set ..Optimizer = $$$Inject(Optimizer, ##class(APPS.Verpakking.Optimizer).%New())
Set ..CubeIQRequestBuilder = $$$Inject(CubeIQRequestBuilder, ##class(APPS.Verpakking.CubeIQRequestBuilder).%New())
- Set ..TeGroepoerenVolumes = ##class(TECH.ListUtils).ListbuildToList($ListBuild("TAOR indelingen||Verzameldoos voor losse elastieken||1", "TAOR indelingen||Verzameldoos voor LEDERverdeling||1", "TAOR indelingen||Verzameldoos voor Viltclips||1", "TAOR indelingen||Verzameldoos voor leder siliconen banden||1", "TAOR indelingen||verzameldoos voor ringen||1"))
+ Set ..TeGroeperenVolumes = ##class(TECH.ListUtils).ListbuildToList($ListBuild("TAOR indelingen||Verzameldoos voor losse elastieken||1", "TAOR indelingen||Verzameldoos voor LEDERverdeling||1", "TAOR indelingen||Verzameldoos voor Viltclips||1", "TAOR indelingen||Verzameldoos voor leder siliconen banden||1", "TAOR indelingen||verzameldoos voor ringen||1"))
Quit $$$OK
]]>
@@ -345,7 +357,7 @@
Set NummerDoos = NummerDoos + 1
}
- If ((BoxDataId = "OL||Antislipmat groep||1") || (##class(TECH.ListUtils).Contains(..TeGroepoerenVolumes, BoxDataId))) {
+ If ((BoxDataId = "OL||Antislipmat groep||1") || (##class(TECH.ListUtils).Contains(..TeGroeperenVolumes, BoxDataId))) {
Do ..MaakSnijDataVoorGegroepeerdeProducten(OrigineleBoxDataLijst, SnijDataDoos, OptiDataDoos, BoxDataId)
Set NummerDoos = NummerDoos + 1
}
@@ -391,9 +403,10 @@
#dim AantalDozenVanEersteProduct As %Decimal = +CubeIQResponse.cubeiq.blocks.block.GetAt(1).quantity
#dim ProductIdEersteProduct As %String = $Piece(CubeIQResponse.cubeiq.blocks.block.GetAt(1).productid, "||", 2)
#dim IsProductEenOrgaluxBasispakket As %Boolean = $$$False
+ #dim AdministratiefProduct As DOM.PM.AdministratiefProduct = ..ProductRolAPI.GeefAdministratiefProduct(ProductIdEersteProduct)
If (..ProductAPI.BestaatProduct(ProductIdEersteProduct)) {
- Set IsProductEenOrgaluxBasispakket = (##class(DOM.DomeinContext).Instance().GeefProductRolAPI().GeefAdministratiefProduct(ProductIdEersteProduct).GeefClassificatieKnoop().GeefID() = ##class(DOM.PM.enu.Classificatie).OrgaluxBasispakket())
+ Set IsProductEenOrgaluxBasispakket = (AdministratiefProduct.GeefClassificatieKnoop().GeefID() = ##class(DOM.PM.enu.Classificatie).OrgaluxBasispakket())
}
If ((AantalNodigeOverdozenVoorBon = 1) && (AantalProductenInBon = 1) && (AantalDozenVanEersteProduct = 1) && $$$Not(IsProductEenOrgaluxBasispakket)) {
@@ -466,7 +479,7 @@
Set OptiData = ..MaakOptiData(BoxDataMetID, Product, OptiDataParent, OptiDataBoxParent)
#dim SnijData As DS.Prod.OptiBox.SnijData = ..MaakSnijData(BoxDataMetID, Sequentie, OptiData, Product, SnijDataParent, SnijDataBoxParent, ProductAantal, AfbeeldingCode)
- If ($$$Not(##class(TECH.ListUtils).Contains(..TeGroepoerenVolumes, SnijData.BoxData.%Id())) && $$$Not(BoxDataMetID.Meta.OptiType = "VOLUME")) {
+ If ($$$Not(##class(TECH.ListUtils).Contains(..TeGroeperenVolumes, SnijData.BoxData.%Id())) && $$$Not(BoxDataMetID.Meta.OptiType = "VOLUME")) {
#dim SnijDef As DS.Prod.OptiBox.sub.emSnijDef = ..MaakSnijDef(BoxDataMetID)
Do SnijData.SnijDefs.SetAt(SnijDef, ##class(APPS.Verpakking.enu.MachineID).VH())
@@ -632,14 +645,14 @@
Set SnijData.BoxParent = SnijDataParent
}
- If ((BoxDataMetID.VolumeVan = "") && $$$Not(##class(TECH.ListUtils).Contains(..TeGroepoerenVolumes, SnijData.BoxData.%Id())) && $$$Not(BoxDataMetID.Meta.OptiType = "VOLUME")) {
+ If ((BoxDataMetID.VolumeVan = "") && $$$Not(##class(TECH.ListUtils).Contains(..TeGroeperenVolumes, SnijData.BoxData.%Id())) && $$$Not(BoxDataMetID.Meta.OptiType = "VOLUME")) {
Set SnijData.BoxSelect = BoxDataMetID.Meta.BoxSelect.GetAt(1).Naam
}
If $$$Not(BoxDataMetID.DeelVan = "") {
Set SnijData.BoxUsage = "SUB"
Set SnijData.PPSPrioriteit = 40
- } ElseIf ($$$Not(BoxDataMetID.VolumeVan = "") || (##class(TECH.ListUtils).Contains(..TeGroepoerenVolumes, SnijData.BoxData.%Id())) || (BoxDataMetID.Meta.OptiType = "VOLUME")) {
+ } ElseIf ($$$Not(BoxDataMetID.VolumeVan = "") || (##class(TECH.ListUtils).Contains(..TeGroeperenVolumes, SnijData.BoxData.%Id())) || (BoxDataMetID.Meta.OptiType = "VOLUME")) {
Set SnijData.BoxUsage = "VOL"
Set SnijData.PPSPrioriteit = 1
} Else {
@@ -1012,7 +1025,8 @@
#dim ProductId As %Integer = BoxData.ObjRef
If (..ProductAPI.BestaatProduct(ProductId)) {
- #dim IsProductEenOrgaluxBasispakket As %Boolean = (##class(DOM.DomeinContext).Instance().GeefProductRolAPI().GeefAdministratiefProduct(ProductId).GeefClassificatieKnoop().GeefID() = ##class(DOM.PM.enu.Classificatie).OrgaluxBasispakket())
+ #dim AdministratiefProduct As DOM.PM.AdministratiefProduct = ..ProductRolAPI.GeefAdministratiefProduct(ProductId)
+ #dim IsProductEenOrgaluxBasispakket As %Boolean = (AdministratiefProduct.GeefClassificatieKnoop().GeefID() = ##class(DOM.PM.enu.Classificatie).OrgaluxBasispakket())
If (IsProductEenOrgaluxBasispakket) {
Set BoxData.Breedte = BoxData.Breedte + 10
@@ -1059,7 +1073,7 @@
Do GegroepeerdeBoxDataLijst.Insert(BoxDataVoorGegroepeerdeMatten)
}
- #dim GroepenIterator As TECH.Iterator = ##class(TECH.ListIterator).%New(..TeGroepoerenVolumes)
+ #dim GroepenIterator As TECH.Iterator = ##class(TECH.ListIterator).%New(..TeGroeperenVolumes)
While GroepenIterator.HasNext() {
#dim Groep As %String = GroepenIterator.Next()
#dim BoxDataVoorGegroep As DS.Prod.OptiBox.BoxDataMetID = ..GeefBoxDataVoorGroep(BoxDataLijst, Groep)
@@ -1073,7 +1087,7 @@
If $$$Not(BoxData.VolumeVan = "")
{
- If ($$$Not(##class(TECH.StringUtils).Equals(BoxData.VolumeVan.%Id(), "OL||Antislipmat groep||1")) && $$$Not(##class(TECH.ListUtils).Contains(..TeGroepoerenVolumes, BoxData.VolumeVan.%Id()))) {
+ If ($$$Not(##class(TECH.StringUtils).Equals(BoxData.VolumeVan.%Id(), "OL||Antislipmat groep||1")) && $$$Not(##class(TECH.ListUtils).Contains(..TeGroeperenVolumes, BoxData.VolumeVan.%Id()))) {
Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.UnimplementedException).%New("Groepering "_ BoxData.VolumeVan.%Id() _"' is nog niet geïmplementeerd bij de optimalisatie van de verpakking van de orgalux bonnen. Dit zorgt voor problemen bij bon " _..BonId _"."))
}
} Else {
@@ -1197,7 +1211,7 @@
#dim KLNr As %String =$P($G(^KU1(BonID,"F")),"\")
#dim FakSoort As %String =$S($D(^KUL(KLNr,"F",BonID)):"F",1:"G")
- #dim Bon As DOM.VKP.Bon = ##class(DOM.DomeinContext).Instance().GeefOrderAPI().GeefBon(BonID, FakSoort)
+ #dim Bon As DOM.VKP.Bon = ..OrderAPI.GeefBon(BonID, FakSoort)
Quit Bon.GeefTypeBonLijnIterator( ##class(DOM.VKP.enu.BonLijnType).Product() )
]]>
Index: APPS/Verpakking/DoosService.cls.xml
===================================================================
diff -u -r72242 -r72488
--- APPS/Verpakking/DoosService.cls.xml (.../DoosService.cls.xml) (revision 72242)
+++ APPS/Verpakking/DoosService.cls.xml (.../DoosService.cls.xml) (revision 72488)
@@ -122,8 +122,6 @@
#dim RequestXml as %String
Do SnijRequest.XMLExportToString(.RequestXml)
-
- //Set ^LogKartonOpdrachten2(ProductId, "VH Doos", $Increment(^LogKartonOpdrachten2)) = RequestXml
}
}
}
Index: APPS/Verpakking/BoxDataRepository.cls.xml
===================================================================
diff -u -r72241 -r72488
--- APPS/Verpakking/BoxDataRepository.cls.xml (.../BoxDataRepository.cls.xml) (revision 72241)
+++ APPS/Verpakking/BoxDataRepository.cls.xml (.../BoxDataRepository.cls.xml) (revision 72488)
@@ -42,6 +42,7 @@
-DOM.PM.ProductAPI
+DOM.PM.impl.ProductAPI
1
@@ -28,7 +28,7 @@
%Status
1
@@ -38,8 +38,8 @@
BoxDataLijst:%ListOfObjects,BreedteOverdoos:%Decimal,DiepteOverdoos:%Decimal,HoogteOverdoos:%Decimal,Partialloadonfloor:%Boolean=0,MinFillPercentage:%Decimal=0
APPS.Verpakking.dto.CubeIQ.Request
-Breedte:%Decimal,Diepte:%Decimal,Hoogte:%Decimal,Partialloadonfloor:%Boolean,MinFillPercentage:%Decimal=0
+Breedte:%Decimal,Diepte:%Decimal,Hoogte:%Decimal,Partialloadonfloor:%Boolean=0,MinFillPercentage:%Decimal=0
1
APPS.Verpakking.dto.CubeIQ.Request.Containers
ObjRef:%String
1
-TECH.Integer
+%String