diff --git a/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.scss b/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.scss
index 87258dacb..6161bd600 100644
--- a/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.scss
+++ b/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.scss
@@ -22,3 +22,32 @@ mat-divider {
.margin-t {
margin-top: 1em;
}
+
+.margin-t {
+ margin-top: 1em;
+}
+
+.margin-b {
+ margin-bottom: 0.25em;
+}
+
+.irc-table {
+ width: 100%;
+
+ tr.incentives-row {
+ height: 0;
+
+ > td {
+ padding: 0;
+ }
+
+ .incentives {
+ overflow: hidden;
+ }
+
+ .mat-card {
+ border-radius: 0;
+ }
+ }
+}
+
diff --git a/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.ts b/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.ts
index 915da3d59..a3ce0ae92 100644
--- a/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.ts
+++ b/src/app/deposits/recurring-deposits/recurring-deposits-account-stepper/recurring-deposits-account-preview-step/recurring-deposits-account-preview-step.component.ts
@@ -1,5 +1,6 @@
/** Angular Imports */
-import { Component, OnInit, Input, Output, EventEmitter, OnChanges } from '@angular/core';
+import { Component, Input, Output, EventEmitter, OnChanges } from '@angular/core';
+import { animate, state, style, transition, trigger } from '@angular/animations';
/**
* Recurring Deposit Preview Step
@@ -7,9 +8,16 @@ import { Component, OnInit, Input, Output, EventEmitter, OnChanges } from '@angu
@Component({
selector: 'mifosx-recurring-deposits-account-preview-step',
templateUrl: './recurring-deposits-account-preview-step.component.html',
- styleUrls: ['./recurring-deposits-account-preview-step.component.scss']
+ styleUrls: ['./recurring-deposits-account-preview-step.component.scss'],
+ animations: [
+ trigger('expandChartSlab', [
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
+ state('expanded', style({ height: '*' })),
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)'))
+ ])
+ ]
})
-export class RecurringDepositsAccountPreviewStepComponent implements OnInit, OnChanges {
+export class RecurringDepositsAccountPreviewStepComponent implements OnChanges {
/** Input Data */
@Input() recurringDepositsAccountTemplate: any;
@@ -20,10 +28,16 @@ export class RecurringDepositsAccountPreviewStepComponent implements OnInit, OnC
/** Charges Displayed Columns */
chargesDisplayedColumns: string[] = ['name', 'chargeCalculationType', 'amount', 'chargeTimeType', 'date', 'repaymentsEvery'];
- /** Interest Rate Chart Displayed Columns */
- interestRateChartDisplayedColumns: string[] = ['period', 'amountRange', 'interest', 'description', 'incentives'];
/** Interest Rate Chart Data */
- interestRateChartData: any;
+ interestRateChartData: any = [];
+ /** Columns to be displayed in interest rate chart table. */
+ chartSlabsDisplayedColumns: any[] = ['period', 'amountRange', 'interest', 'description', 'actions'];
+ /** Columns to be displayed in incentives sub-table. */
+ incentivesDisplayedColumns: string[] = ['entityType', 'attributeName', 'conditionType', 'attributeValue', 'incentiveType', 'amount'];
+ /** Additional Column to disblac incentives table */
+ chartSlabsIncentivesDisplayedColumns: string[] = ['incentives'];
+ /** Expand Chart Slab Index used in the view */
+ expandChartSlabIndex: number;
constructor() { }
@@ -33,9 +47,4 @@ export class RecurringDepositsAccountPreviewStepComponent implements OnInit, OnC
}
}
- ngOnInit() {
- this.interestRateChartData = [];
- }
-
-
}
diff --git a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.html b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.html
index 4ee13c170..3df305050 100644
--- a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.html
+++ b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.html
@@ -1,42 +1,124 @@
+
+
+
All Interest Rates
+
+
+
-
+
| Period |
-
- {{rateChart.fromPeriod}}-{{rateChart.toPeriod}} {{rateChart.periodType.value}} |
+
+ {{chartSlab.fromPeriod}}-{{chartSlab.toPeriod}} {{chartSlab.periodType.value}} |
Amount Range |
- {{rateChart.amountRangeFrom}}-{{rateChart.amountRangeTo}} |
+ {{chartSlab.amountRangeFrom}}-{{chartSlab.amountRangeTo}} |
Interest |
- {{ rateChart.annualInterestRate }} |
+ {{ chartSlab.annualInterestRate }} |
Description |
- {{ rateChart.description }} |
+ {{ chartSlab.description }} |
-
- Incentives |
-
- |
diff --git a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.scss b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.scss
index be9328c80..21f16ed44 100644
--- a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.scss
+++ b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.scss
@@ -6,5 +6,21 @@
}
table {
width: 100%;
+
+ tr.incentives-row {
+ height: 0;
+
+ > td {
+ padding: 0;
+ }
+
+ .incentives {
+ overflow: hidden;
+ }
+
+ .mat-card {
+ border-radius: 0;
+ }
+ }
}
}
diff --git a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.ts b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.ts
index cac0d811e..b096ce3c8 100644
--- a/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.ts
+++ b/src/app/deposits/recurring-deposits/recurring-deposits-account-view/interest-rate-chart-tab/interest-rate-chart-tab.component.ts
@@ -1,7 +1,7 @@
/** Angular Imports */
-import { Component, OnInit } from '@angular/core';
-import { MatTableDataSource } from '@angular/material';
+import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
+import { animate, state, style, transition, trigger } from '@angular/animations';
/**
* Interest Rate Chart Tab Component.
@@ -9,16 +9,28 @@ import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'mifosx-interest-rate-chart-tab',
templateUrl: './interest-rate-chart-tab.component.html',
- styleUrls: ['./interest-rate-chart-tab.component.scss']
+ styleUrls: ['./interest-rate-chart-tab.component.scss'],
+ animations: [
+ trigger('expandChartSlab', [
+ state('collapsed', style({ height: '0px', minHeight: '0' })),
+ state('expanded', style({ height: '*' })),
+ transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)'))
+ ])
+ ]
})
-export class InterestRateChartTabComponent implements OnInit {
+export class InterestRateChartTabComponent {
/** Interest Rate Chart Data */
- interestRateChartData: any;
+ interestRateChartData: any = [];
/** Columns to be displayed in interest rate chart table. */
- displayedColumns: string[] = ['period', 'amountRange', 'interest', 'description', 'incentives'];
- /** Data source for interest rate chart table. */
- dataSource: MatTableDataSource;
+ chartSlabsDisplayedColumns: any[] = ['period', 'amountRange', 'interest', 'description', 'actions'];
+ /** Columns to be displayed in incentives sub-table. */
+ incentivesDisplayedColumns: string[] = ['entityType', 'attributeName', 'conditionType', 'attributeValue', 'incentiveType', 'amount'];
+ /** Additional Column to display in incentives table */
+ chartSlabsIncentivesDisplayedColumns: string[] = ['incentives'];
+ /** Expand Chart Slab Index used in the view */
+ expandChartSlabIndex: number;
+
/**
* Retrieves recurring deposits account data from `resolve`.
@@ -30,7 +42,4 @@ export class InterestRateChartTabComponent implements OnInit {
});
}
- ngOnInit() {
- }
-
}