share certificate and share product maker checker

This commit is contained in:
2026-07-27 13:57:49 +05:30
parent d0536dbb11
commit 0c99dc3686
47 changed files with 2790 additions and 245 deletions
@@ -7,6 +7,9 @@
-->
<div class="fd-view">
<!-- ─── Dormancy risk alert (only when subStatus has left Active) ──── -->
<mifosx-dormancy-alert-panel [accountData]="fixedDepositsAccountData"></mifosx-dormancy-alert-panel>
<!-- ─── Gradient hero header ─────────────────────────────────────── -->
<header class="fd-hero">
<div class="fd-hero__left">
@@ -27,6 +27,7 @@ import { AccountsService } from 'app/accounts/accounts.service';
import { Currency } from 'app/shared/models/general.model';
import { SettingsService } from 'app/settings/settings.service';
import { Dates } from 'app/core/utils/dates';
import { AuthenticationService } from '../../../core/authentication/authentication.service';
import { MatTooltip } from '@angular/material/tooltip';
import { NgClass, CurrencyPipe } from '@angular/common';
import { AccountNumberComponent } from '../../../shared/account-number/account-number.component';
@@ -37,6 +38,7 @@ import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatTabNav, MatTabLink, MatTabNavPanel } from '@angular/material/tabs';
import { StatusLookupPipe } from '../../../pipes/status-lookup.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
import { DormancyAlertPanelComponent } from 'app/shared/dormancy-alert-panel/dormancy-alert-panel.component';
/**
* Fixed Deposits Account View Component
@@ -62,7 +64,8 @@ import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
MatTabNavPanel,
RouterOutlet,
CurrencyPipe,
StatusLookupPipe
StatusLookupPipe,
DormancyAlertPanelComponent
]
})
export class FixedDepositAccountViewComponent implements OnInit {
@@ -73,6 +76,7 @@ export class FixedDepositAccountViewComponent implements OnInit {
private accountsService = inject(AccountsService);
private settingsService = inject(SettingsService);
private dateUtils = inject(Dates);
private authenticationService = inject(AuthenticationService);
dialog = inject(MatDialog);
/** Fixed Deposits Account Data */
@@ -194,6 +198,14 @@ export class FixedDepositAccountViewComponent implements OnInit {
});
}
}
if (!this.authenticationService.hasCashierRole()) {
this.buttonConfig.buttonsArray = this.buttonConfig.buttonsArray.filter(
(btn) => btn.name !== 'Deposit' && btn.name !== 'Withdrawal'
);
this.buttonConfig.optionArray = this.buttonConfig.optionArray.filter(
(opt) => opt.name !== 'Deposit' && opt.name !== 'Withdrawal'
);
}
}
/**
@@ -7,6 +7,9 @@
-->
<div class="rd-view">
<!-- ─── Dormancy risk alert (only when subStatus has left Active) ──── -->
<mifosx-dormancy-alert-panel [accountData]="recurringDepositsAccountData"></mifosx-dormancy-alert-panel>
<!-- ─── Gradient hero header ─────────────────────────────────────── -->
<header class="rd-hero">
<div class="rd-hero__left">
@@ -27,6 +27,7 @@ import { TranslateService } from '@ngx-translate/core';
import { AccountsService } from 'app/accounts/accounts.service';
import { SettingsService } from 'app/settings/settings.service';
import { Dates } from 'app/core/utils/dates';
import { AuthenticationService } from '../../../core/authentication/authentication.service';
import { MatTooltip } from '@angular/material/tooltip';
import { NgClass, DecimalPipe, CurrencyPipe } from '@angular/common';
import { AccountNumberComponent } from '../../../shared/account-number/account-number.component';
@@ -37,6 +38,7 @@ import { FaIconComponent } from '@fortawesome/angular-fontawesome';
import { MatTabNav, MatTabLink, MatTabNavPanel } from '@angular/material/tabs';
import { StatusLookupPipe } from '../../../pipes/status-lookup.pipe';
import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
import { DormancyAlertPanelComponent } from 'app/shared/dormancy-alert-panel/dormancy-alert-panel.component';
/**
* RecurringDeposits Account View Component
@@ -63,7 +65,8 @@ import { STANDALONE_SHARED_IMPORTS } from 'app/standalone-shared.module';
RouterOutlet,
DecimalPipe,
CurrencyPipe,
StatusLookupPipe
StatusLookupPipe,
DormancyAlertPanelComponent
]
})
export class RecurringDepositsAccountViewComponent implements OnInit {
@@ -74,6 +77,7 @@ export class RecurringDepositsAccountViewComponent implements OnInit {
private accountsService = inject(AccountsService);
private settingsService = inject(SettingsService);
private dateUtils = inject(Dates);
private authenticationService = inject(AuthenticationService);
dialog = inject(MatDialog);
private translateService = inject(TranslateService);
@@ -245,6 +249,14 @@ export class RecurringDepositsAccountViewComponent implements OnInit {
}
}
}
if (!this.authenticationService.hasCashierRole()) {
this.buttonConfig.buttonsArray = this.buttonConfig.buttonsArray.filter(
(btn) => btn.name !== 'Deposit' && btn.name !== 'Withdrawal'
);
this.buttonConfig.optionArray = this.buttonConfig.optionArray.filter(
(opt) => opt.name !== 'Deposit' && opt.name !== 'Withdrawal'
);
}
}
/**