Index: WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml
===================================================================
diff -u -r58510 -r58512
--- WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58510)
+++ WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58512)
@@ -23,8 +23,13 @@
1
+
+TECH.Mail.MailAPI
+1
+
+
-ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger=""
+ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger="",MailApi:TECH.Mail.MailAPI=""
1
1
%Status
@@ -34,6 +39,7 @@
Set ..BatchService = $$$Inject(BatchService, ##class(APPS.Halux.common.impl.BatchService).%New())
Set ..ToeleveringApi = $$$Inject(ToeleveringApi, ##class(DOM.AKP.impl.DataM.DataMToeleveringAPI).%New())
Set ..Logger = $$$Inject(Logger, ##class(vhLib.Logger).%New("CalculatedProduct"))
+ Set ..MailApi = $$$Inject(MailApi, ##class(TECH.Mail.impl.MailAPI).%New())
Quit $$$OK
]]>
@@ -47,6 +53,7 @@
If (..ToeleveringApi.BestaatToelevering(ToeleveringId)) {
#dim Toelevering As DOM.AKP.Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId)
+ #dim OrderId As %String = Toelevering.GeefOrderID()
Try {
Do ..LockToelevering(ToeleveringId)
@@ -57,10 +64,10 @@
} ElseIf ($$$Not(..ZitToeleveringInBatch(ToeleveringId))) {
Do ..PasAanProductIdOpToeleveringLijnen(Toelevering, OudProductId, NieuwProductId)
Set IsToeleveringAangepast = $$$True
- // Halux MAILEN !!!
+ Do ..VerstuurMail(OrderId, ToeleveringId, OudProductId, NieuwProductId, $$$False)
} Else {
// KLAARGEZET en WEL IN BATCH (al dan niet gestart) => Toeleveringen NIET aanpassen => Halux hiervan verwittigen!
- // MAILEN !!!
+ // Halux MAILEN !!!
}
If IsToeleveringAangepast {
@@ -154,6 +161,39 @@
+
+
+OrderId:%String,ToeleveringId:%String,OudProductId:%String,NieuwProductId:%String,IsToeleveringInBatch:%Boolean
+1
+
+
Index: vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml
===================================================================
diff -u -r58474 -r58512
--- vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58474)
+++ vhTest/Mock/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService.cls.xml (.../ToeleveringService.cls.xml) (revision 58512)
@@ -9,7 +9,7 @@
right
-ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger=""
+ToeleveringVoorbereidingService:APPS.Halux.Voorbereiding.VoorbereidingService="",BatchService:APPS.Halux.common.BatchService="",ToeleveringApi:DOM.AKP.ToeleveringAPI="",Logger:vhLib.Logger="",MailApi:TECH.Mail.MailAPI=""
%Status
Index: vhUnitTest/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService/Test.cls.xml
===================================================================
diff -u -r58510 -r58512
--- vhUnitTest/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService/Test.cls.xml (.../Test.cls.xml) (revision 58510)
+++ vhUnitTest/WSimpl/AX/CalculatedProduct/ProductVolgensAxAttribuutBepaler/OrderService/ToeleveringService/Test.cls.xml (.../Test.cls.xml) (revision 58512)
@@ -43,6 +43,11 @@
1
+
+TECH.Mail.MailAPI
+1
+
+
aTestName:%String
@@ -115,23 +121,59 @@
#dim LoggerMock = ##class(vhTest.Mock.vhLib.Logger).%New()
Do LoggerMock.VerwachtMethodCall("Info", "ProductUpdater", "ProductId gewijzigd op ToeleveringLijn. Op Toelevering '"_ToeleveringStub.GeefID()_"', op lijn '"_100_"', werd de ProductId '"_..#RandomOudProductId_"' vervangen door '"_..#RandomNieuwProductId_"'.")
+ #dim Mail As TECH.Mail.Mail = ##class(TECH.Mail.impl.Mail).%New()
+ #dim MailApiMock As TECH.Mail.MailAPI = ##class(vhTest.Mock.TECH.Mail.MailAPI).%New()
+ Do MailApiMock.VerwachtMethodCall("MaakNieuwMail").DanReturn(Mail)
+ Do MailApiMock.VerwachtMethodCall("VerstuurMail", Mail).DanDoeNiks()
+
Set ..ToeleveringVoorbereidingService = ToeleveringVoorbereidingServiceStub
Set ..BatchService = BatchServiceStub
Set ..ToeleveringApi = ToeleveringApiMock
Set ..Logger = LoggerMock
+ Set ..MailApi = MailApiMock
#dim ToeleveringService As WSimpl.AX.CalculatedProduct.ProductVolgensAxAttribuutBepaler.OrderService.ToeleveringService = ..GeefToeleveringService()
Do $$$AssertTrue(ToeleveringService.IsToeleveringAangepast(..#RandomToeleveringId, ..#RandomOudProductId, ..#RandomNieuwProductId))
+ Do $$$AssertEquals(Mail.GeefOnderwerp(), "Order 1000 en Toelevering 200000 aangepast in het kader van ProductUpdate.")
Do ..ToeleveringApi.Verifieer()
Do ..Logger.Verifieer()
+ Do ..MailApi.Verifieer()
]]>
+
+
+
+
1
WSimpl.AX.CalculatedProduct.ProductVolgensAxAttribuutBepaler.OrderService.ToeleveringService
-