[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master 2e4850c 023/156: Implement the rest of "Narra
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master 2e4850c 023/156: Implement the rest of "Narrative Summary" page body text |
Date: |
Tue, 30 Jan 2018 17:21:58 -0500 (EST) |
branch: master
commit 2e4850ca555e0a9f0c13bea65e1c8a1a320eafd7
Author: Vadim Zeitlin <address@hidden>
Commit: Vadim Zeitlin <address@hidden>
Implement the rest of "Narrative Summary" page body text
Currently tests outside of the template strings need to be used in order
to generate paragraphs correctly, which makes the generation more
awkward than needed -- this should change in the future.
---
ledger_pdf_generator_wx.cpp | 149 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 149 insertions(+)
diff --git a/ledger_pdf_generator_wx.cpp b/ledger_pdf_generator_wx.cpp
index 8cad729..ad3db94 100644
--- a/ledger_pdf_generator_wx.cpp
+++ b/ledger_pdf_generator_wx.cpp
@@ -547,6 +547,140 @@ overhead expenses is the fully allocated expense method.
summary_html += add_body_paragraph(premiums);
+ if(!interpolate_html.test_variable("SinglePremium"))
+ {
+ summary_html += add_body_paragraph
+ (R"(
+In order to guarantee coverage to age
+{{EndtAge}}, {{ErModeLCWithArticle}} premium
+{{#HasGuarPrem}}
+of ${{GuarPrem}} must be paid.
+{{/HasGuarPrem}}
+{{^HasGuarPrem}}
+is defined.
+{{/HasGuarPrem}}
+This amount is based on the guaranteed monthly charges
+and the guaranteed interest crediting rate.
+{{#DefnLifeInsIsGPT}}
+This premium may be in excess of the maximum premium allowable
+in order to qualify this policy as life insurance.
+{{/DefnLifeInsIsGPT}}
+)"
+ );
+ }
+
+ summary_html += add_body_paragraph
+ (R"(
+Loaned amounts of the {{AvName}}
+Value will be credited a rate equal to the loan interest rate less
+a spread, guaranteed not to exceed
+{{#GroupCarveout}}
+1.25%.
+{{/GroupCarveout}}
+{{^GroupCarveout}}
+3.00%.
+{{/GroupCarveout}}
+)"
+ );
+
+ if(interpolate_html.test_variable("HasTerm"))
+ {
+ summary_html += add_body_paragraph
+ (R"(
+The term rider provides the option to purchase monthly
+term insurance on the life of the insured. The term rider
+selected face amount supplements the selected face amount
+of the contract. If the term rider is attached, the policy
+to which it is attached may have a lower annual cutoff premium
+and, as a result, the lower overall sales loads paid may be
+lower than a contract having the same total face amount,
+but with no term rider.
+{{#NoLapse}}
+ Also, the lapse protection feature of the contract's
+ {{NoLapseProvisionName}}
+ does not apply to the term rider's selected face amount.
+{{/NoLapse}}
+)"
+ );
+ }
+
+ if(interpolate_html.test_variable("HasWP"))
+ {
+ summary_html += add_body_paragraph
+ (R"(
+The Waiver of Monthly Charges Rider provides for waiver
+of monthly charges in the event of the disability
+of the insured that begins before attained age 65
+and continues for at least 6 months, as described in the rider.
+An additional charge is associated with this rider. Please refer
+to your contract for specific provisions and a detailed schedule
+of charges.
+)"
+ );
+ }
+
+ if(interpolate_html.test_variable("HasWP"))
+ {
+ summary_html += add_body_paragraph
+ (R"(
+The Accidental Death benefit provides an additional benefit
+if death is due to accident. An additional charge is associated
+with this rider. Please refer to your contract
+for specific provisions and a detailed schedule of charges.
+)"
+ );
+ }
+
+ summary_html += add_body_paragraph
+ (R"(
+The definition of life insurance for this contract is the
+{{#DefnLifeInsIsGPT}}
+ guideline premium test. The guideline single premium
+ is ${{InitGSP}}
+ and the guideline level premium
+ is ${{InitGLP}}
+{{/DefnLifeInsIsGPT}}
+{{^DefnLifeInsIsGPT}}
+ cash value accumulation test.
+{{/DefnLifeInsIsGPT}}
+)"
+ );
+
+ summary_html += add_body_paragraph
+ (R"(
+This is an illustration only. An illustration is not intended
+to predict actual performance. Interest rates
+and values set forth in the illustration are not guaranteed.
+)"
+ );
+
+ summary_html += add_body_paragraph
+ (R"(
+{{^StateIsTX}}
+This illustration assumes that the currently illustrated
+non-guaranteed elements will continue unchanged
+for all years shown. This is not likely to occur
+and actual results may be more or less favorable than shown.
+The non-guaranteed benefits and values are not guaranteed
+and are based on assumptions such as interest credited
+and current monthly charges, which are subject to change by
+{{InsCoName}}.
+{{/StateIsTX}}
+{{#StateIsTX}}
+This illustration is based on both non-guaranteed
+and guaranteed assumptions. Non-guaranteed assumptions
+include interest rates and monthly charges.
+This illustration assumes that the currently illustrated
+non-guaranteed elements will continue unchanged
+for all years shown. This is not likely to occur
+and actual results may be more or less favorable than shown.
+Factors that may affect future policy performance include
+the company's expectations for future mortality, investments,
+persistency, profits and expenses.
+{{/StateIsTX}}
+)"
+ );
+
writer.output_html
(writer.get_horz_margin()
,writer.get_vert_margin()
@@ -607,6 +741,21 @@ class pdf_illustration_regular : public pdf_illustration
);
}
+ add_variable
+ ("HasGuarPrem"
+ ,invar.GuarPrem != 0
+ );
+
+ add_variable
+ ("DefnLifeInsIsGPT"
+ ,invar.DefnLifeIns == "GPT"
+ );
+
+ add_variable
+ ("StateIsTX"
+ ,invar.GetStatePostalAbbrev() == "TX"
+ );
+
// Add all the pages.
add<cover_page>();
add<narrative_summary_page>();
- [lmi-commits] [lmi] master e20544f 018/156: Add check for the ledger type, (continued)
- [lmi-commits] [lmi] master e20544f 018/156: Add check for the ledger type, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master a0a167e 144/156: Rename "compliance_tracking_number" template to "imprimatur", Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 982c9f0 149/156: Remove consecutive blank lines from a Mustache template, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master ec73905 058/156: Add extra pair of braces to std::array<> initializer for clang, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 6a5cd32 079/156: Add "Table Rating" to the header if necessary, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master b01d478 029/156: Resurrect ledger XML IO code as new ledger_evaluator, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 89c676d 009/156: Add pdf_writer_wx::get_page_height() helper, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 8e26a76 004/156: Improve encapsulation by returning only wxDC from pdf_writer_wx, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master cb5cb7b 021/156: Add more contents to the narrative summary page, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 173cc28 022/156: Change interpolated strings syntax to be Mustache-like, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 2e4850c 023/156: Implement the rest of "Narrative Summary" page body text,
Greg Chicares <=
- [lmi-commits] [lmi] master c341dbb 108/156: Factor out compliance_tracking template from the footer one, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 76881d8 019/156: Refactor: extra add_body_paragraph() helper, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 08127f1 028/156: Add symbolic constant for the "valign" HTML attribute, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 0d6c7f0 062/156: Get rid of separate wxDC parameter in the code, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master bbada54 084/156: Add image to the columns headings page too, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 3cf5a1c 056/156: Add wx_table_generator::output_super_header(), Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 95e616e 105/156: Add wx_table_generator::columns_count() accessor, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 3f1d437 088/156: Add add_abbreviated_variable() helper, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 118a249 097/156: Add "Column Definitions and Key Terms" page to NASD illustrations, Greg Chicares, 2018/01/30
- [lmi-commits] [lmi] master 1ab47c0 063/156: Fix definition of integer-valued variable in PDF illustrations, Greg Chicares, 2018/01/30