[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master 29e63d6 117/156: Add basic illustration page
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master 29e63d6 117/156: Add basic illustration page of group placement illustration |
Date: |
Tue, 30 Jan 2018 17:22:26 -0500 (EST) |
branch: master
commit 29e63d6c92f4cd566537f72e538d32dd33c7c265
Author: Vadim Zeitlin <address@hidden>
Commit: Vadim Zeitlin <address@hidden>
Add basic illustration page of group placement illustration
This page implementation is almost completely trivial now thanks to the
preceding page_with_basic_tabular_report refactoring.
Also add footer and header templates for this illustration kind. Notice
that the lower footer part is identical to the one used for NASD
illustrations, but for now keep two copies separate for consistency and
ease of comparison with the existing XSL files.
---
ledger_pdf_generator_wx.cpp | 25 ++++++++++++++++++
reg_d_group_basic.mustache | 15 +++++++++++
reg_d_group_footer_lower.mustache | 19 ++++++++++++++
reg_d_group_footer_upper.mustache | 12 +++++++++
reg_d_group_header_lower.mustache | 53 +++++++++++++++++++++++++++++++++++++++
reg_d_group_header_upper.mustache | 18 +++++++++++++
6 files changed, 142 insertions(+)
diff --git a/ledger_pdf_generator_wx.cpp b/ledger_pdf_generator_wx.cpp
index 85006df..93c62a9 100644
--- a/ledger_pdf_generator_wx.cpp
+++ b/ledger_pdf_generator_wx.cpp
@@ -2383,6 +2383,30 @@ class pdf_illustration_nasd : public pdf_illustration
}
};
+// Basic illustration page of the private group placement illustration.
+class reg_d_group_basic : public page_with_basic_tabular_report
+{
+ private:
+ std::string get_fixed_page_contents() const override
+ {
+ return "{{>reg_d_group_basic}}";
+ }
+
+ std::string get_two_column_header
+ (std::string const& suffix_full
+ ,std::string const& suffix_short
+ ) const override
+ {
+ std::ostringstream oss;
+ oss
+ << "{{InitAnnSepAcctGrossInt_" << suffix_full << "}} "
+ << "Hypothetical Gross\n"
+ << "Return ({{InitAnnSepAcctNetInt_" << suffix_full << "}} net)"
+ ;
+ return oss.str();
+ }
+};
+
// Private group placement illustration.
class pdf_illustration_reg_d_group : public pdf_illustration
{
@@ -2395,6 +2419,7 @@ class pdf_illustration_reg_d_group : public
pdf_illustration
{
// Add all the pages.
add<cover_page>();
+ add<reg_d_group_basic>();
}
std::string get_upper_footer_template_name() const override
diff --git a/reg_d_group_basic.mustache b/reg_d_group_basic.mustache
new file mode 100644
index 0000000..7a0af54
--- /dev/null
+++ b/reg_d_group_basic.mustache
@@ -0,0 +1,15 @@
+{{>reg_d_group_header_upper}}
+<p align="center">
+{{#IsInforce}}
+ In Force
+{{/IsInforce}}
+Basic Illustration
+</p>
+{{>reg_d_group_header_lower}}
+
+{{>dollar_units}}
+
+<br></br>
+<br></br>
+
+{{! Basic illustration table is created from C++ code }}
diff --git a/reg_d_group_footer_lower.mustache
b/reg_d_group_footer_lower.mustache
new file mode 100644
index 0000000..c22a594
--- /dev/null
+++ b/reg_d_group_footer_lower.mustache
@@ -0,0 +1,19 @@
+<font size="-2">
+
+<table width="100%" cellspacing="0" cellpadding="0">
+ <tr>
+ <td colspan="3"> </td>
+ </tr>
+ <tr>
+ <td>{{InsCoName}}</td>
+ <td align="center">Date Prepared: {{date_prepared}}</td>
+ <td align="right">Policy Form: {{PolicyForm}}</td>
+ </tr>
+ <tr>
+ <td>{{InsCoAddr}}</td>
+ <td align="center">System Version: {{LmiVersion}}</td>
+ <td align="right">{{page_number}}</td>
+ </tr>
+</table>
+
+</font>
diff --git a/reg_d_group_footer_upper.mustache
b/reg_d_group_footer_upper.mustache
new file mode 100644
index 0000000..909a4c7
--- /dev/null
+++ b/reg_d_group_footer_upper.mustache
@@ -0,0 +1,12 @@
+<font size="-2">
+
+<p>
+* This illustration is based on the assumed Gross Rate shown.
+The Net Rate is provided for information purposes only.
+</p>
+<p>
+See the Narrative Summary for important policy information.
+This illustration is not complete without all pages.
+</p>
+
+</font>
diff --git a/reg_d_group_header_lower.mustache
b/reg_d_group_header_lower.mustache
new file mode 100644
index 0000000..4d9f921
--- /dev/null
+++ b/reg_d_group_header_lower.mustache
@@ -0,0 +1,53 @@
+<table width="100%" cellspacing="0" cellpadding="0" valign="top">
+ <tr>
+ <td>
+ {{#Composite}}
+ {{CorpNameAbbrev60}}
+ {{/Composite}}
+ {{^Composite}}
+ {{Insured1Abbrev30}}
+ {{/Composite}},
+ {{Gender}} {{Smoker}} rates, Age {{Age}}<br>
+ {{#Composite}}
+ Composite<br>
+ {{/Composite}}
+ Contract: {{PolicyMktgName}}<br>
+ Initial Premium: ${{InitPrem}}<br>
+ {{#GroupCarveout}}
+ Minimum Initial Premium: ${{InitMinPrem}}<br>
+ {{/GroupCarveout}}
+ First Year Premium: ${{InitPrem}}<br>
+ {{^Composite}}
+ {{#UWTypeIsMedical}}
+ Fully underwritten,
+ {{/UWTypeIsMedical}}
+ {{^UWTypeIsMedical}}
+ {{UWType}},
+ {{/UWTypeIsMedical}}
+ {{UWClass}}, Initial Death Benefit Option: {{InitDBOpt}}<br>
+ {{/Composite}}
+ {{#HasWP}}
+ Waiver of Monthly Charges Rider elected.<br>
+ {{/HasWP}}
+ {{>contract_numbers}}
+ </td>
+ <td>
+ Assumed Gross Rate: {{InitAnnSepAcctGrossInt_Current}}
+ ({{InitAnnSepAcctNetInt_Current}} Net)*<br>
+ Initial
+ {{#HasTerm}}
+ Total
+ {{/HasTerm}}
+ Face Amount: ${{InitTotalSA}}<br>
+ {{#HasTerm}}
+ Initial Base Face Amount: ${{InitBaseSpecAmt}}<br>
+ Initial Term Face Amount: ${{InitTermSpecAmt}}<br>
+ {{/HasTerm}}
+ {{^Composite}}
+ {{#UWClassIsRated}}
+ Table Rating: {{SubstandardTable}}<br>
+ {{/UWClassIsRated}}
+ {{/Composite}}
+ </td>
+ </tr>
+</table>
diff --git a/reg_d_group_header_upper.mustache
b/reg_d_group_header_upper.mustache
new file mode 100644
index 0000000..6711120
--- /dev/null
+++ b/reg_d_group_header_upper.mustache
@@ -0,0 +1,18 @@
+<scaled_image inv_factor="0.36" src="company_logo.png"></scaled_image>
+
+<br></br>
+<br></br>
+
+<p>
+The purpose of this illustration is to show how the performance
+of the underlying separate account divisions could affect
+the contract account value and death benefit.
+<b>
+The hypothetical returns do not reflect past performance
+and are not predictive of future results. Actual results
+could be less than or greater than the hypothetical results
+and in all likelihood will vary year to year.
+</b>
+</p>
+
+<br></br>
- [lmi-commits] [lmi] master e388f6e 037/156: Add beginning of numeric summary page using an external template, (continued)
- [lmi-commits] [lmi] master e388f6e 037/156: Add beginning of numeric summary page using an external template, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 531699b 115/156: Factor out common page_with_basic_tabular_report class, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master a85943b 124/156: Add the rest of individual private placement illustration pages, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master f0b9cea 113/156: Add "Assumption Detail" page to NASD illustrations, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 031070b 132/156: Implement supplemental report page for the regular illustrations, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 9fe1d07 125/156: Implement page-specific footer for "Tabular Details" pages, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 4f3a02e 078/156: Add company logo to the cover page, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 2d93248 118/156: Add the rest of group private placement illustration pages, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 1272ce2 127/156: Don't include "Assumptions" page in composite NASD illustrations, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master e00ab7d 080/156: Hide "attained age" column for composite illustrations, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 29e63d6 117/156: Add basic illustration page of group placement illustration,
Greg Chicares <=
- [lmi-commits] [lmi] master 1a9bfb3 137/156: Factor out standard_supplemental_report class, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 7c0ff88 145/156: Add copyright notices to all .mst template files, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 2fd6a11 147/156: Use shorter and more consistent names for external templates, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master b09a25f 026/156: Implement numbering pages in the PDF output, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master bb75971 033/156: Implement the second part of the narrative summary page, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 964db82 067/156: Rename columns_headings_page to column_headings_page, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 2a94469 074/156: Use Mustache template files from the data directory, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 01be23a 103/156: Automatically squeeze table columns to make them fit if necessary, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 46a7442 068/156: Factor out helper render_template() method, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master d77620f 100/156: Factor out dollar_units template from the existing ones, Greg Chicares, 2018/01/30