public List <CRM.Data.Entities.BillToView> getBillToCollection(int claimID) { string claimantName = null; Claim claim = null; Carrier carrier = null; Leads lead = null; List <BillToView> billingCollection = new List <BillToView>(); BillToView billCarrier = null; BillToView billClaimantMailingAddress = null; BillToView billClaimantLossAddress = null; claim = ClaimsManager.Get(claimID); if (claim != null) { // add insurance company if (claim.LeadPolicy.Carrier != null) { carrier = claim.LeadPolicy.Carrier; billCarrier = new BillToView(); billCarrier.billTo = "Carrier"; billCarrier.billingName = carrier.CarrierName; billCarrier.mailingAddress = string.Format("{0} {1}", carrier.AddressLine1 ?? "", carrier.AddressLine2 ?? ""); billCarrier.mailingCity = carrier.CityMaster == null ? "" : carrier.CityMaster.CityName; billCarrier.mailingState = carrier.StateMaster == null ? "" : carrier.StateMaster.StateName; billCarrier.mailingZip = carrier.ZipCode; billingCollection.Add(billCarrier); } // add claimant mailing address lead = claim.LeadPolicy.Leads; claimantName = string.Format("{0} {1}", lead.ClaimantFirstName ?? "", lead.ClaimantLastName ?? ""); billClaimantMailingAddress = new BillToView(); billClaimantMailingAddress.billTo = "Policyholder - Mailing Address"; billClaimantMailingAddress.billingName = claimantName; billClaimantMailingAddress.mailingAddress = lead.MailingAddress ?? ""; billClaimantMailingAddress.mailingCity = lead.MailingCity ?? ""; billClaimantMailingAddress.mailingState = lead.MailingState ?? ""; billClaimantMailingAddress.mailingZip = lead.MailingZip ?? ""; billingCollection.Add(billClaimantMailingAddress); // add claimant loss address billClaimantLossAddress = new BillToView(); billClaimantLossAddress.billTo = "Policyholder - Loss Address"; billClaimantLossAddress.billingName = claimantName; billClaimantLossAddress.mailingAddress = string.Format("{0} {1}", lead.LossAddress ?? "", lead.LossAddress2 ?? ""); billClaimantLossAddress.mailingCity = lead.CityName ?? ""; billClaimantLossAddress.mailingState = lead.StateName ?? ""; billClaimantLossAddress.mailingZip = lead.Zip ?? ""; billingCollection.Add(billClaimantLossAddress); } return(billingCollection); }
public void bindData(int claimID) { Claim claim = ClaimsManager.Get(claimID); if (claim != null) { ViewState["vs1"] = Session["pageIndex1"] == null ? "0" : Session["pageIndex1"].ToString(); pos = Convert.ToInt32(this.ViewState["vs1"]); Session["pageIndex1"] = null; ViewState["policyTypeID"] = claim.LeadPolicy.PolicyType.ToString(); FillImage(claimID); } }
static public string mergeLetterTemplate(int clientID, ClientLetterTemplate template, int claimID) { string appPath = null; Leads lead = null; Claim claim = null; string letterTemplatePath = null; string fileExtension = null; string finalDocumentPath = null; claim = ClaimsManager.Get(claimID); //template = LetterTemplateManager.Get(templateID); appPath = ConfigurationManager.AppSettings["appPath"].ToString(); if (claim != null) { lead = claim.LeadPolicy.Leads; // get extension fileExtension = System.IO.Path.GetExtension(template.Path); // fileExtension includes "." letterTemplatePath = string.Format("{0}/ClientLetterTemplates/{1}/{2}{3}", appPath, clientID, template.TemplateID, fileExtension); finalDocumentPath = string.Format("{0}/Temp/{1}.doc", appPath, Guid.NewGuid()); try { Core.MergeDocumentHelper.autoFillDocument(letterTemplatePath, finalDocumentPath, claim, true); //addLetterToDocumentList(claim.ClaimID, finalDocumentPath, template.Description); //clientFileName = string.Format("{0}_{1}.doc", lead.ClaimantFirstName ?? "", lead.ClaimantLastName ?? ""); } catch (Exception ex) { Core.EmailHelper.emailError(ex); } //if (!string.IsNullOrEmpty(finalDocumentPath)) // Core.ReportHelper.renderToBrowser(finalDocumentPath, clientFileName); } return(finalDocumentPath); }
protected void lbtnClaim_Click(object sender, EventArgs e) { Claim claim = null; string url = "~/Protected/ClaimEdit.aspx"; string claimNumber = ((LinkButton)(sender)).ValidationGroup; if (!string.IsNullOrEmpty(claimNumber)) { claim = ClaimsManager.Get(claimNumber); if (claim != null) { Session["LeadIds"] = claim.LeadPolicy.LeadId; Session["policyID"] = claim.LeadPolicy.Id; Session["ClaimID"] = claim.ClaimID; Response.Redirect(url); } } }
protected void gvClaims_RowCommand(object sender, GridViewCommandEventArgs e) { string[] ids = e.CommandArgument.ToString().Split(new char[] { '|' }); int claimID = Convert.ToInt32(ids[0]); int policyID = Convert.ToInt32(ids[1]); Claim claim = null; if (e.CommandName == "DoEdit") { Session["ClaimID"] = claimID; Session["policyID"] = policyID; Response.Redirect("~/Protected/ClaimEdit.aspx"); } else if (e.CommandName == "DoDelete") { try { claim = ClaimsManager.Get(claimID); if (claim != null) { // make claim as deleted claim.IsActive = false; ClaimsManager.Save(claim); // refresh claim list bindData(claim.PolicyID); } } catch (Exception ex) { Core.EmailHelper.emailError(ex); } } }
protected void gvInvoice_RowCommand(object sender, GridViewCommandEventArgs e) { int invoiceID = Convert.ToInt32(e.CommandArgument); Invoice invoice = null; Claim claim = null; if (e.CommandName == "DoVoid") { try { using (TransactionScope scope = new TransactionScope()) { invoice = InvoiceManager.Get(invoiceID); claim = ClaimsManager.Get(invoice.ClaimID); if (invoice != null && claim != null) { invoice.IsVoid = true; InvoiceManager.Save(invoice); claim.IsInvoiced = false; ClaimsManager.Save(claim); scope.Complete(); } } } catch (Exception ex) { Core.EmailHelper.emailError(ex); } finally { doBind(); } } }
private void bindData() { int leadID = 0; int claimID = 0; Leads lead = null; Claim claim = null; List <LeadsDocument> leadDocuments = null; List <ClaimDocument> claimDocuments = null; List <DocumentList> allDocuments = new List <DocumentList>(); int.TryParse(Core.SecurityManager.DecryptQueryString(Request.Params["q"].ToString()), out claimID); if (claimID > 0) { claim = ClaimsManager.Get(claimID); if (claim != null) { lead = claim.LeadPolicy.Leads; lblName.Text = lead.insuredName; // lead documents leadDocuments = LeadsUploadManager.getLeadsDocumentForExportByLeadID(leadID); if (leadDocuments != null && leadDocuments.Count > 0) { foreach (LeadsDocument leadDocument in leadDocuments) { DocumentList doc = new DocumentList(); doc.DocumentName = leadDocument.DocumentName; doc.Description = leadDocument.Description; doc.DocumentPath = string.Format("~/LeadsDocument/{0}/{1}/{2}", leadDocument.LeadId, leadDocument.LeadDocumentId, // document id leadDocument.DocumentName); // document file name allDocuments.Add(doc); } } // claim documents claimDocuments = ClaimDocumentManager.GetAll(claimID); if (claimDocuments != null && claimDocuments.Count > 0) { foreach (ClaimDocument claimDocument in claimDocuments) { DocumentList doc = new DocumentList(); doc.DocumentName = claimDocument.DocumentName; doc.Description = claimDocument.Description; doc.DocumentPath = string.Format("~/ClaimDocuments/{0}/{1}/{2}", claimDocument.ClaimID, claimDocument.ClaimDocumentID, // document id claimDocument.DocumentName); // document file name allDocuments.Add(doc); } } gvDocument.DataSource = allDocuments; gvDocument.DataBind(); } } }
protected void bindData() { //AppraiserMaster appraiser = null; Claim claim = null; //List<LeadContact> contacts = null; List <DocumentList> attachments = null; //ContractorMaster contractor = null; //List<SecUser> users = null; Leads lead = null; //Data.UmpireMaster umpire = null; // get email for user sending email CRM.Data.Entities.SecUser user = SecUserManager.GetByUserId(userID); if (user != null) { txtEmailFrom.Text = user.Email; txtEmailCC.Text = user.Email; txtSignature.Text = user.emailSignature ?? ""; } claim = ClaimsManager.Get(this.claimID); if (claim != null) { attachments = new List <DocumentList>(); lead = claim.LeadPolicy.Leads; // build subject line txtEmailSubject.Text = string.Format("{0} Claim #: {1}", lead.policyHolderName, claim.AdjusterClaimNumber); // load legacy documents List <LeadsDocument> documents = LeadsUploadManager.getLeadsDocumentByLeadID((int)claim.LeadPolicy.LeadId); if (documents != null && documents.Count > 0) { foreach (LeadsDocument x in documents) { DocumentList attachment = new DocumentList(); attachment.DocumentName = x.Description; attachment.DocumentPath = string.Format("LeadsDocument/{0}/{1}/{2}", x.LeadId, x.LeadDocumentId, // document id x.DocumentName); // document file name attachments.Add(attachment); } } // load claim documents List <ClaimDocument> claimDocuments = ClaimDocumentManager.GetAll(this.claimID); if (claimDocuments != null && claimDocuments.Count > 0) { foreach (ClaimDocument x in claimDocuments) { DocumentList attachment = new DocumentList(); attachment.DocumentName = x.Description; attachment.DocumentPath = string.Format("ClaimDocuments/{0}/{1}/{2}", x.ClaimID, x.ClaimDocumentID, // document id x.DocumentName); // document file name attachments.Add(attachment); } } lbxDocuments.DataSource = attachments; lbxDocuments.DataBind(); //// load legacy contacts //contacts = LeadContactManager.GetContactByLeadID(leadID); //// add adjusters to contact list //if (claim.AdjusterMaster != null) // addToContactList(claim.AdjusterMaster.AdjusterName, claim.AdjusterMaster.email, contacts); //// add appraiser to contact list //if (lead.AppraiserID != null) { // appraiser = AppraiserManager.Get((int)lead.AppraiserID); // contacts.Add(new LeadContact { // Email = appraiser.Email, // ContactName = appraiser.AppraiserName // }); //} //// add contractor to contact list //if (lead.ContractorID != null) { // contractor = ContractorManager.Get((int)lead.ContractorID); // contacts.Add(new LeadContact { // Email = lead.ContractorMaster.Email, // ContactName = lead.ContractorMaster.ContractorName // }); //} //// add umpire to contact list //if (lead.UmpireID != null) { // umpire = UmpireManager.Get((int)lead.UmpireID); // contacts.Add(new LeadContact { // Email = lead.UmpireMaster.Email, // ContactName = lead.UmpireMaster.UmpireName // }); //} // add users 2013-12-12 //users = SecUserManager.GetUsers(clientID); //if (users != null && users.Count > 0) { // users.ForEach(x => // contacts.Add(new LeadContact { // Email = x.Email, // ContactName = x.FirstName ?? "" + " " + x.LastName ?? "" // })); //} } //lbxContacts.DataSource = contacts; //lbxContacts.DataBind(); }
public void bindData(int invoiceID) { int claimID = 0; int clientID = 0; int leadID = 0; int policyID = 0; Claim claim = null; Invoice invoice = null; InvoiceDetail invoiceDetail = null; Leads lead = null; List <InvoiceDetail> invoiceDetails = null; // save invoice id ViewState["InvoiceID"] = invoiceID.ToString(); invoice = InvoiceManager.Get(invoiceID); if (invoice != null) { claimID = invoice.ClaimID; claim = ClaimsManager.Get(claimID); policyID = claim.PolicyID; leadID = claim.LeadPolicy.Leads.LeadId; lead = claim.LeadPolicy.Leads; clientID = (int)lead.ClientID; // get policy type if (claim.LeadPolicy != null && claim.LeadPolicy.LeadPolicyType != null) { lblPolicyType.Text = claim.LeadPolicy.LeadPolicyType.Description; } // get policy number if (claim.LeadPolicy != null) { lblPolicyNumber.Text = claim.LeadPolicy.PolicyNumber; } // get insurer claim number lblInsurerClaimNumber.Text = claim.InsurerClaimNumber; } else { // new invoice // get id for current lead claimID = Core.SessionHelper.getClaimID(); // get id for current lead leadID = Core.SessionHelper.getLeadId(); // get client id clientID = Core.SessionHelper.getClientId(); // get current policy policyID = Core.SessionHelper.getPolicyID(); // get lead/claim lead = LeadsManager.GetByLeadId(leadID); // get policy type lblPolicyType.Text = LeadPolicyManager.GetPolicyTypeDescription(policyID); // get policy number lblPolicyNumber.Text = LeadPolicyManager.GetPolicyNumber(policyID); // get insurer claim number lblInsurerClaimNumber.Text = ClaimsManager.getInsurerClaimNumber(claimID); } // get policy information if (lead != null) { lblClient.Text = string.Format("<b>{0} {1}<br/>{2}<br/>{3}<br/>{4}, {5} {6}</b>", lead.ClaimantFirstName ?? "", //0 lead.ClaimantLastName ?? "", //1 lead.LossAddress ?? "", //2 lead.LossAddress2 ?? "", //3 lead.CityName ?? "", //4 lead.StateName ?? "", //5 lead.Zip ?? "" //6 ); } if (invoiceID == 0) { // new invoice txtInvoiceDate.Text = DateTime.Now.ToShortDateString(); invoiceDetail = new InvoiceDetail(); invoiceDetail.LineDate = DateTime.Now; invoiceDetails = new List <InvoiceDetail>(); invoiceDetails.Add(invoiceDetail); gvInvoiceLines.DataSource = invoiceDetails; gvInvoiceLines.DataBind(); // hide empty row gvInvoiceLines.Rows[0].Visible = false; // hide print button //btnPrint.Visible = false; // hiden invoice number //pnlInvoiceNumber.Visible = false; } else { // edit invoice // show print button btnPrint.Visible = true; lbtnEmail.Visible = true; if (invoice != null && invoice.InvoiceDetail != null) { txtInvoiceDate.Text = string.Format("{0:MM/dd/yyyy}", invoice.InvoiceDate); txtDueDate.Text = string.Format("{0:MM/dd/yyyy}", invoice.DueDate); txtBillTo.Text = invoice.BillToName; txtBillToAddress1.Text = invoice.BillToAddress1; txtBillToAddress2.Text = invoice.BillToAddress2; txtBillToAddress3.Text = invoice.BillToAddress3; // reference txtReferenceNumber.Text = (invoice.InvoiceNumber ?? 0).ToString(); // show total txtTotalAmount.Text = string.Format("{0:N2}", invoice.TotalAmount); // sort line items by date gvInvoiceLines.DataSource = invoice.InvoiceDetail.OrderBy(x => x.LineDate); gvInvoiceLines.DataBind(); // show invoice numebr //pnlInvoiceNumber.Visible = true; txtInvoiceNumber.Text = string.Format("{0:N0}", invoice.InvoiceNumber ?? 0); } } bindInvoiceServices(); contractGrid.DataBind(); }
static public string exportLead(ExportParameter exportParamaters, int claimID) { string finalReportPath = null; //tempPath = path; Claim claim = null; Leads lead = null; LeadPolicy policy = null; claim = ClaimsManager.Get(claimID); lead = claim.LeadPolicy.Leads; policy = claim.LeadPolicy; // fully qualified path //string reportPath = HttpContext.Current.Server.MapPath(string.Format("~/Temp/{0}.pdf", Guid.NewGuid().ToString())); string reportPath = HttpContext.Current.Server.MapPath(string.Format("~/Temp/ClaimReport_{0}_{1}_{2:yyyyMMddhhmmss}.pdf", lead.insuredName.Replace(" ", "_"), claim.InsurerClaimNumber, DateTime.Now)); doc = new Document(iTextSharp.text.PageSize.LETTER, 25, 25, 25, 25); PdfWriter w = PdfWriter.GetInstance(doc, new FileStream(reportPath, FileMode.Create)); Rectangle rect = new Rectangle(iTextSharp.text.PageSize.LETTER.Width, iTextSharp.text.PageSize.LETTER.Height); rect.BackgroundColor = BaseColor.WHITE; doc.SetPageSize(rect); doc.Open(); setClientLogoHeader(lead.Client); if (exportParamaters.isAll) { exportDemographics(lead, claim); exportCoverage(policy); exportClaimLog(policy); exportPhotos(policy); } else { exportDemographics(lead, claim); if (exportParamaters.isCoverage) { exportCoverage(policy); } if (exportParamaters.isClaimLogo) { // legacy comments exportClaimLog(policy); exportClaimLog(claimID, claim.AdjusterClaimNumber); } if (exportParamaters.isPhotos) { // legacy exportPhotos(policy); exportPhotos(claimID, claim.AdjusterClaimNumber); } } doc.Close(); // include any pdf documents uploaded if (exportParamaters.isAll || exportParamaters.isDocuments) { string reportMergePath = HttpContext.Current.Server.MapPath(string.Format("~/Temp/ClaimReport_{0}_{1}_{2:yyyyMMddhhmmss}.pdf", lead.insuredName.Replace(" ", "_"), claim.AdjusterClaimNumber, DateTime.Now.AddMinutes(1))); finalReportPath = mergeDocuments(reportPath, reportMergePath, lead.LeadId, claimID); } else { finalReportPath = reportPath; } return(finalReportPath); }
protected void emailDocumentLink(string finalReportPath, string emailTo, int claimID) { int userID = Core.SessionHelper.getUserId(); Claim claim = null; string password = null; int port = 0; string[] recipients = null; string subject = null; Leads lead = null; string encryptedQuery = null; StringBuilder emailBody = null; string itsgHost = ConfigurationManager.AppSettings["smtpHost"].ToString(); string itsgHostPort = ConfigurationManager.AppSettings["smtpPort"].ToString(); string itsgEmail = ConfigurationManager.AppSettings["smtpEmail"].ToString(); string itsgEmailPassword = ConfigurationManager.AppSettings["smtpPassword"].ToString(); CRM.Data.Entities.SecUser user = SecUserManager.GetByUserId(userID); if (user != null && !string.IsNullOrEmpty(user.Email) && !string.IsNullOrEmpty(user.emailHost) && !string.IsNullOrEmpty(user.emailHostPort)) { claim = ClaimsManager.Get(claimID); if (claim != null) { lead = claim.LeadPolicy.Leads; if (string.IsNullOrEmpty(emailTo)) { recipients = new string[] { user.Email } } ; else { recipients = emailTo.Split(new char[] { ',', ';' }, StringSplitOptions.RemoveEmptyEntries); } encryptedQuery = Core.SecurityManager.EncryptQueryString(claimID.ToString()); emailBody = new StringBuilder(); // .containerBox emailBody.Append("<div style=\"margin:auto;width:600px;border: 1px solid #DDDDE4; margin: auto;font-family: Tahoma, Arial,sans-serif;font-size: 12px;color: #808080;\">"); // header image emailBody.Append("<div style=\"padding:1px;\"><img src=\"http://app.claimruler.com/images/email_header_small.jpg\"></image></div>"); // .paneContentInner emailBody.Append("<div style=\"margin: 20px;\">"); subject = string.Format("{0} {1} wants to share {2} Adjuster Claim File with you", user.FirstName, user.LastName, lead.insuredName); emailBody.Append("<table cellpadding=\"0\" cellspacing=\"0\" style=\"border-left:1px #b9e1fb solid;border-right:1px #b9e1fb solid;border-bottom:1px #b9e1fb solid;border-top:1px #b9e1fb solid;border-radius:0px 0px 4px 4px\" border=\"0\" align=\"center\">"); emailBody.Append("<tbody><tr><td colspan=\"3\" height=\"36\"></td></tr>"); emailBody.Append("<tr><td width=\"36\"></td>"); emailBody.Append("<td width=\"454\" style=\"font-size:14px;color:#444444;font-family:'Open Sans','Lucida Grande','Segoe UI',Arial,Verdana,'Lucida Sans Unicode',Tahoma,'Sans Serif';border-collapse:collapse\" align=\"left\" valign=\"top\">"); emailBody.Append(string.Format("{0} {1} invited you to a Claim Ruler Software shared file called \"{2}\"", user.FirstName, user.LastName, lead.insuredName)); string css = "border-radius:3px;border-left:1px #18639a solid;font-size:16px;border-bottom:1px #0f568b solid;padding:14px 7px 14px 7px;border-top:1px #2270ab solid;display:block;max-width:210px;font-family:'Open Sans','lucida grande','Segoe UI',arial,verdana,'lucida sans unicode',tahoma,sans-serif;text-align:center;background-image:-webkit-gradient(linear,0% 0%,0% 100%,from(rgb(55,163,235)),to(rgb(33,129,207)));width:210px;text-decoration:none;color:white;border-right:1px #18639a solid;font-weight:600;margin:0px auto 0px auto;background-color:#33a0e8"; // user app siteURL for report.pdf emailBody.Append(string.Format("<br/><br/><center><a style=\"{0}\" href=\"{1}/Temp/{2}\">View Report</a></center>", css, ConfigurationManager.AppSettings["siteURL"], Path.GetFileName(finalReportPath))); emailBody.Append(string.Format("<br/><br/><center><a style=\"{0}\" href=\"{1}/Content/Public.aspx?q={2}\">View Files</a></center></td>", css, ConfigurationManager.AppSettings["siteURL"], encryptedQuery)); emailBody.Append("<td width='36'></td></tr><tr><td colspan='3' height='36'></td></tr></tbody></table>"); emailBody.Append("</div>"); // paneContentInner emailBody.Append("</div>"); // containerBox //int.TryParse(user.emailHostPort, out port); int.TryParse(itsgHostPort, out port); password = SecurityManager.Decrypt(user.emailPassword); Core.EmailHelper.sendEmail(user.Email, recipients, null, subject, emailBody.ToString(), null, itsgHost, port, itsgEmail, itsgEmailPassword); } } else { throw new Exception("Unable to export claim. Please verify user email settings."); } }