public void InvoiceReaderMailSendTrowInvoiceTemplete() { StringBuilder sb = new StringBuilder(); InvoiceTemplateObj = InvoiceDAL.InvoiceTemplateList(); InvoiceDataObj = InvoiceDAL.InvoiceDataList(); if (InvoiceDataObj.GenerateDate.Day == DateTime.Today.Day) { List<DataRow> emailAccountList = InvoiceDAL.EmailAccountList(); foreach (DataRow dr in emailAccountList) { List<DataRow> vendorList = InvoiceDAL.VendorList(); SewbieAdminID = InvoiceDAL.SewbieAdminID(); foreach (DataRow drVendor in vendorList) { Amount = InvoiceDAL.InvoiceAmount(Convert.ToInt16(drVendor["VendorID"]), SewbieAdminID, InvoiceDataObj.StartDate, InvoiceDataObj.EndDate); if (Amount > 0) { string body = "<b>Dear " + drVendor["CompanyName"].ToString() + ",<b><br><br>"; body = body+"<b>Invoice<b><br>"; body = body+InvoiceTemplateObj.Body; body = body.Replace("%Date%", InvoiceDataObj.GenerateDate.ToShortDateString()); body = body.Replace("%Duedate%", InvoiceDataObj.DueDate.ToShortDateString()); body = body.Replace("%Amount%", Convert.ToString(Amount)); body = body.Replace("%PayNow%", "<a>PayNow</a>"); SendMail(dr["Email"].ToString().Trim(), dr["DisplayName"].ToString().Trim(), drVendor["Email"].ToString().Trim(), InvoiceTemplateObj.Subject, body, Convert.ToBoolean(dr["UseDefaultCredentials"].ToString().Trim()), dr["Host"].ToString().Trim(), Convert.ToInt16(dr["Port"].ToString().Trim()), Convert.ToBoolean(dr["EnableSsl"].ToString().Trim()), dr["Username"].ToString().Trim(), dr["Password"].ToString().Trim()); InvoiceId = InvoiceDAL.AddInvoice(Convert.ToInt16(drVendor["VendorID"]), InvoiceDataObj.StartDate, InvoiceDataObj.EndDate, Amount); List<DataRow> receivablesChargeList = InvoiceDAL.ReceivablesChargeList(Convert.ToInt16(drVendor["VendorID"]), SewbieAdminID, InvoiceDataObj.StartDate, InvoiceDataObj.EndDate); foreach (DataRow drReceivablesCharge in receivablesChargeList) { InvoiceDAL.AddInvoiceCharges(InvoiceId, Convert.ToInt16(drReceivablesCharge["ChargeID"]), Convert.ToDecimal(drReceivablesCharge["Amount"])); } List<DataRow> payablesChargeList = InvoiceDAL.PayablesChargeList(Convert.ToInt16(drVendor["VendorID"]), SewbieAdminID, InvoiceDataObj.StartDate, InvoiceDataObj.EndDate); foreach (DataRow drPayablesCharge in payablesChargeList) { InvoiceDAL.AddInvoiceCharges(InvoiceId, Convert.ToInt16(drPayablesCharge["ChargeID"]), -Convert.ToDecimal(drPayablesCharge["Amount"])); } sb = new StringBuilder(); } } } } }
public static InvoiceTemplate InvoiceTemplateList() { InvoiceTemplate InvoiceTemplateObj = new InvoiceTemplate(); using (SqlConnection Con = new SqlConnection(connString)) { string sqlStmt = "SELECT TOP (1)* FROM Nop_MessageTemplate INNER JOIN " + "Nop_MessageTemplateLocalized ON Nop_MessageTemplate.MessageTemplateID = Nop_MessageTemplateLocalized.MessageTemplateID " + "WHERE Nop_MessageTemplate.Name = 'Vendor.InvoiceMail'"; using (SqlDataAdapter dAd = new SqlDataAdapter(sqlStmt, Con)) { DataTable dTable = new DataTable(); dAd.Fill(dTable); foreach (DataRow row in dTable.Rows) { InvoiceTemplateObj.BCCEmailAddresses = row["BCCEmailAddresses"].ToString(); InvoiceTemplateObj.Body = row["Body"].ToString(); InvoiceTemplateObj.EmailAccountId = Convert.ToInt16(row["EmailAccountId"].ToString()); InvoiceTemplateObj.IsActive = Convert.ToBoolean(row["IsActive"].ToString()); InvoiceTemplateObj.LanguageID = Convert.ToInt16(row["LanguageID"].ToString()); InvoiceTemplateObj.MessageTemplateID = Convert.ToInt16(row["MessageTemplateID"].ToString()); InvoiceTemplateObj.MessageTemplateLocalizedID = Convert.ToInt16(row["MessageTemplateLocalizedID"].ToString()); InvoiceTemplateObj.Name = row["Name"].ToString(); InvoiceTemplateObj.Subject = row["Subject"].ToString(); } return InvoiceTemplateObj; } } }