private NotificationSMS FormatInvoiceSms(NotificationInvoice noti) { var sms = new NotificationSMS(); sms.HubId = noti.DistributorId; sms.Recipitents = GetPhoneNumber(new List<Guid> { noti.DistributorId, noti.SalemanId, noti.OutletId });// new List<string> { "254722557538" }; sms.SmsBody = "Invoice " + noti.DocumentRef + "\n" + "of Vat AMT=" + noti.TotalVat + ",\n" + "Discount AMT=" + noti.SalevalueDiscount + ",\n" + "Gross AMT=" + noti.TotalGross + ",\n" + "and Net AMT=" + noti.TotalNet + "\nStatus= Approved "; return sms; }
private MailMessage FormatInvoice(NotificationInvoice notification) { var distributor = _costCentreRepository.GetById(notification.DistributorId); var salesman = _costCentreRepository.GetById(notification.SalemanId); var outlet = _costCentreRepository.GetById(notification.OutletId); if (outlet == null || distributor == null || salesman == null) throw new Exception("Invalid distributor , salesman or outlet"); var msg = new MailMessage(); GetAddresses(distributor.Id).ForEach(msg.To.Add); GetAddresses(salesman.Id).ForEach(msg.To.Add); GetAddresses(outlet.Id).ForEach(msg.To.Add); // msg.To.Add("*****@*****.**"); if (msg.To.Count == 0) return null; msg.Subject = string.Format("Invoice {0} Notification", notification.DocumentRef); msg.IsBodyHtml = true; string html = "<div>"; html += "</br><table >"; html += "<thead><tr><th>Item</th><th>Quantity</th><th>UnitPrice</th><th>VAT</th><th>Discount</th><th>Total Gross</th><th>Total Net</th></tr></thead>"; foreach (var item in notification.Items) { html += string.Format("<tr><td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td><td>{6}</td></tr>", item.ItemName, item.Quantity, item.UnitPrice, item.TotalVat, item.Discount, item.TotalGross, item.TotalNet); } html += " </table>"; string body = string.Empty; using (StreamReader reader = new StreamReader("service/resources/invoiceEmailTemplate.htm")) { body = reader.ReadToEnd(); } body = body.Replace("{Distributor}", distributor.Name); body = body.Replace("{Salesman}", salesman.Name); body = body.Replace("{Outlet}", outlet.Name); body = body.Replace("{SalevalueDiscount}", notification.SalevalueDiscount.ToString("N2")); body = body.Replace("{TotalVat}", notification.TotalVat.ToString("N2")); body = body.Replace("{TotalNet}", notification.TotalNet.ToString("N2")); body = body.Replace("{TotalGross}", notification.TotalGross.ToString("N2")); body = body.Replace("{OrderRef}", notification.OrderRef); body = body.Replace("{DocumentRef}", notification.DocumentRef); body = body.Replace("{Items}", html); msg.Body = body; return msg; }