Index: vhTest/Mock/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml
===================================================================
diff -u -r55673 -r72639
--- vhTest/Mock/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 55673)
+++ vhTest/Mock/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72639)
@@ -9,7 +9,7 @@
right
-OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository
+OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository,ProductRepository:Prod.ProductRepository="",ProductTypeAPI:DOM.PM.impl.ProductTypeAPIimpl=""
%Status
Index: AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml
===================================================================
diff -u -r72255 -r72639
--- AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72255)
+++ AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72639)
@@ -113,8 +113,23 @@
1
+
+Prod.ProductRepository
+1
+
+
+
+DOM.PM.impl.ProductTypeAPIimpl
+1
+
+
+
+DOM.PM.Maatwerk.Calc.Common.VhConfigHelper
+1
+
+
-OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository
+OrderAPI:DOM.VKP.OrderAPI,OrderLevenCyclusService:APPS.VKP.OrderLevenCyclusService,DateTimeAPI:TECH.DateTime.DateTimeAPI="",ProductBepaler:AXimpl.Admin.Common.ProductBepaler,DocumentReferentiesRepository:DOM.VKP.DocumentReferentiesRepository,OrderlijnenSorteerder:AXimpl.Dynamics.SalesOrderIn.Converter.OrderlijnenSorteerder,OrderSluiter:CHUI.VKP.OrderIngave.BevestigdAXOrderSluiterv01,ToeleveringService:AXimpl.Dynamics.SalesOrderIn.Converter.ToeleveringService,OrderIngaveService:APPS.VKP.OrderIngaveService,OfferteRepository:APPS.VKP.Offerte.OfferteRepository,SalesOrderLineStatusRepository:AXdata.Dynamics.SalesLineStatus.SalesOrderLineStatusRepository,VerkoopApi:DOM.VKP.VerkoopAPI,Mailer:AXimpl.Dynamics.SalesOrderIn.Converter.Mailer,LeverAdresMaker:AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker,LandRepository:DOM.common.Locatie.impl.LandRepository,ProductRepository:Prod.ProductRepository="",ProductTypeAPI:DOM.PM.impl.ProductTypeAPIimpl=""
1
1
%Status
@@ -134,8 +149,11 @@
Set ..Mailer = $$$Inject(Mailer,##class(AXimpl.Dynamics.SalesOrderIn.Converter.Mailer).%New())
Set ..LeverAdresMaker = $$$Inject(LeverAdresMaker,##class(AXimpl.Dynamics.SalesOrderIn.Converter.SalesOrderConverter.LeverAdresMaker).%New())
Set ..LandRepository = $$$Inject(LandRepository,##class(DOM.common.Locatie.impl.LandRepository).%New())
+ Set ..ProductRepository = $$$Inject(ProductRepository,##class(Prod.ProductRepository).%New())
+ Set ..ProductTypeAPI = $$$Inject(ProductTypeAPI,##class(DOM.DomeinContext).Instance().GeefProductTypeAPI())
Set ..VerkoopApi = $$$Inject(VerkoopApi, ##class(DOM.VKP.impl.VerkoopAPI).%New())
+ Set ..VhConfigHelper = ##class(DOM.PM.Maatwerk.Calc.Common.VhConfigHelper).%New()
Set ..Logger = ##class(vhLib.Logger).%New()
@@ -509,14 +527,38 @@
DOM.VKP.PrijsOrderlijn
0) {
+ Set ProductData = ##class(DOM.PM.dto.ProductData).%New()
+ Set ProductData.PRNr = ReedsGekendeProductId
+ Set ProductData.DossierNummer = ConfiguratieData.DossierCode
+ Set MaatwerkProduct = BerekeningServiceProduct.MaakProductVanKenmerken(..VhConfigHelper.GeefIngegevenKenmerken(), ..KlantID, ProductData, ConfiguratieData.VhConfig)
+ Set ProductId = MaatwerkProduct.GeefID()
+ Do PrijsOrderLijn.ZetProductID(ProductId, $$$True)
+ } Else {
+ Set MaatwerkProduct = BerekeningServiceProduct.MaakProductVanKenmerken(..VhConfigHelper.GeefIngegevenKenmerken(), ..KlantID, , ConfiguratieData.VhConfig)
+ Set ProductId = MaatwerkProduct.GeefID()
+ Do PrijsOrderLijn.ZetProductID(ProductId, $$$False)
+ }
+ } ElseIf (IsEenMaatwerkLijn && IsAdminProductNummerMeegegeven) {
Do PrijsOrderLijn.ZetProductID(..GeefAttributeValue(OrderLine.Attribute,"AdminProductNummer"), $$$True)
}
@@ -526,7 +568,7 @@
If ..IsProductLijn(OrderLine) {
Set PrijsOrderLijn = ..VoegToeProductLijn(Order, OrderLine)
} Else {
- Set PrijsOrderLijn = ..VoegToeMaatwerkLijn(Order, OrderLine)
+ Set PrijsOrderLijn = ..VoegToeMaatwerkLijn(Order, OrderLine, ProductId)
}
Quit PrijsOrderLijn
]]>
@@ -626,7 +668,7 @@
OrderLine:AXif.Dynamics.SalesOrderIn.MessageParts.AxdEntityOrderLine
1
%Boolean
-
@@ -662,11 +704,11 @@
-Order:DOM.VKP.Order,OrderLine:AXif.Dynamics.SalesOrderIn.MessageParts.AxdEntityOrderLine
+Order:DOM.VKP.Order,OrderLine:AXif.Dynamics.SalesOrderIn.MessageParts.AxdEntityOrderLine,ProductId:%String=""
1
DOM.VKP.impl.DataM.DataMProductOrderlijn
+
+
+DossierCode:%String,MaatwerkModel:%String
+1
+%Integer
+
+
+
+
+VhConfig:%String
+1
+DOM.PM.Maatwerk.Calc.Common.VhConfig
+
+
+
+
+JsonStream:%Stream,RootObjectClassname:%String
+1
+TECH.RegisteredObject
+
+
Index: vhTest/Fake/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml
===================================================================
diff -u -r48187 -r72639
--- vhTest/Fake/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 48187)
+++ vhTest/Fake/AXimpl/Dynamics/SalesOrderIn/Converter/SalesOrderConverter.cls.xml (.../SalesOrderConverter.cls.xml) (revision 72639)
@@ -12,6 +12,12 @@
+
+DossierCode:%String,MaatwerkModel:%String
+
+
+
OrderLijn:DOM.VKP.ProductOrderlijn