Exemplo n.º 1
0
        private static void processProviderWeeklyStatement(Provider p, IQueryable <Claim> claims)
        {
            IReportService Writer       = ServiceFactory.getReportService();
            IEmailService  emailServer  = ServiceFactory.getEmailService();
            IClaimService  claimService = ServiceFactory.getClaimService();
            int            personId;
            string         statement = "";

            personId = (p as Provider).ProviderID;
            var personClaims = claims.Where(e => e.Provider.ProviderID == personId);

            statement = p.generateProviderCoverStatment(personClaims);
            var serializedClaims = claimService.generateSerializedReport(p, personClaims);

            statement += DataConversion.ConvertDataTableToHTML(DataConversion.ToDataTable(serializedClaims));
            MemoryStream stream = new MemoryStream(Encoding.ASCII.GetBytes(statement));
            //Add a new attachment to the E-mail message, using the correct MIME type
            Attachment attachment = new Attachment(stream, new ContentType("text/plain"));

            attachment.Name = "statment.html";
            //send email
            emailServer.sendEmail("*****@*****.**", p.Email, "ChocAn Statment", "Attached your statment for this week.", new Attachment[] { attachment });
            //store file
            Writer.writeWeeklyStatment(p, statement);
        }