3 回答

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊
一般在Listeners 里面就可以完成發(fā)送郵件了,你想用api的話(huà),可以把a(bǔ)pi作為全局的helper來(lái)用,或者use ../Api, 然后在SendEmail handle方法new Api()調(diào)用

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊
如果是我的話(huà),我會(huì)這么做
首先先創(chuàng)建一個(gè)OrderCreated
的事件
再創(chuàng)建一個(gè)OrderCreatedListener
,監(jiān)聽(tīng)OrderCreated
事件
再創(chuàng)建一個(gè)OrderCreatedNotification
,用于處理訂單創(chuàng)建的通知
最后創(chuàng)建一個(gè)OrderCreatedMail
,用于生成通知郵件
調(diào)用方式是控制器觸發(fā)OrderCreated
事件,OrderCreatedListener
監(jiān)聽(tīng)到事件,觸發(fā)OrderCreatedNotification
,OrderCreatedNotification
再調(diào)用OrderCreateMail
生成通知郵件,最后發(fā)送
這么做的好處
通知從監(jiān)聽(tīng)器解耦。監(jiān)聽(tīng)器不僅僅只做通知的功能,還可以做例如訂單超時(shí)關(guān)閉等其他功能(當(dāng)然也可以額外再創(chuàng)建一個(gè)
Listener
處理)。通知非常易于擴(kuò)展。后期可以非常方便的擴(kuò)展通知頻道,比如App通知、短信通知等。
Mail
與通知解耦。通知里面可以根據(jù)用戶(hù)類(lèi)型,調(diào)用不同的通知郵件,例如針對(duì)VIP用戶(hù)和普通用戶(hù),調(diào)用不同的Mail
類(lèi)模板,生成不同的Mail
。
題主可以根據(jù)自己的業(yè)務(wù)復(fù)雜程度進(jìn)行相應(yīng)的增減步驟
- 3 回答
- 0 關(guān)注
- 266 瀏覽
添加回答
舉報(bào)