快速设置来自Firebase数据库的电子邮件的邮件正文

时间:2018-09-03 21:45:13

标签: swift uitableview firebase firebase-realtime-database

我正在构建一个采购订单应用程序,并且有一个显示当前采购订单的表格视图。我希望能够将包含该采购订单数据的电子邮件发送给供应商。

我一切正常,但无法将消息正文设置为来自Firebase的数据。

我的firebase数据库如下所示,我想提取列表中每个项目的名称,信息,数量和价格,并使用此数据填充电子邮件。

enter image description here

这就是我保存数据的方式

func saveItemInBackground(shoppingItem: ShoppingItem, completion: @escaping (_ error: Error?) -> Void) {

        let ref = firebase.child(kSHOPPINGITEM).child(shoppingItem.shoppingListId).childByAutoId()

        shoppingItem.shoppingItemId = ref.key

        ref.setValue(dictionaryFromItem(item: shoppingItem)) { (error, ref) -> Void in

            completion(error)
        }

    }

我正在使用此代码来显示电子邮件。

func configureMailController() -> MFMailComposeViewController {
        let mailComposerVC = MFMailComposeViewController()
        mailComposerVC.mailComposeDelegate = self

        firebase.child(kSUPPLIEREMAIL).child(FUser.currentId()).child("SupplierEmail").observe(.value, with: {
            snapshot in
            if snapshot.exists() {
                let toEmail = snapshot.value
                mailComposerVC.setToRecipients(["\(toEmail as! String)"])
                mailComposerVC.setSubject("New EDM Pro Purchase Order")
                mailComposerVC.setMessageBody("", isHTML: false)
            } else {
                self.showMailError()
            }
        })
        return mailComposerVC
    }

,想知道我是否可以使用函数来设置电子邮件正文,然后在mailComposerVC.setMessageBody("", isHTML: false)行中调用该函数

或者,如果不可能的话,我可以创建表格视图的pdf文件并将其附加到电子邮件中。我不确定该怎么做。

任何对此的帮助将是惊人的!

0 个答案:

没有答案