81 lines
3.5 KiB
HTML
81 lines
3.5 KiB
HTML
<!--
|
|
Copyright since 2025 Mifos Initiative
|
|
|
|
This Source Code Form is subject to the terms of the Mozilla Public
|
|
License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
-->
|
|
|
|
<div class="container">
|
|
<div class="mat-elevation-z8">
|
|
<table #sharesTable mat-table [dataSource]="dataSource" matSort>
|
|
<ng-container matColumnDef="transactionDate">
|
|
<th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'labels.inputs.Transaction Date' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">{{ share.purchasedDate | dateFormat }}</td>
|
|
</ng-container>
|
|
|
|
<ng-container matColumnDef="totalShares">
|
|
<th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'labels.inputs.Total Shares' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">{{ share.numberOfShares }}</td>
|
|
</ng-container>
|
|
|
|
<ng-container matColumnDef="redeemedPrice">
|
|
<th mat-header-cell *matHeaderCellDef mat-sort-header>
|
|
{{ 'labels.inputs.Purchased/Redeemed Price' | translate }}
|
|
</th>
|
|
<td mat-cell *matCellDef="let share">{{ share.purchasedPrice }}</td>
|
|
</ng-container>
|
|
|
|
<ng-container matColumnDef="amount">
|
|
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Amount' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">{{ trancheAmount(share) | number: '1.2-2' }}</td>
|
|
</ng-container>
|
|
|
|
<!-- The board resolution authorising this particular tranche, captured on the apply form. -->
|
|
<ng-container matColumnDef="resolution">
|
|
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Resolution Number' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">
|
|
{{ share.resolutionNumber || '—' }}
|
|
@if (share.meetingDate) {
|
|
<span class="resolution-date">({{ share.meetingDate | dateFormat }})</span>
|
|
}
|
|
</td>
|
|
</ng-container>
|
|
|
|
<!-- Cash means the money is already in Share Sundry against a voucher; Savings means it was
|
|
debited from the member when the request was raised. Either way approval moves it out. -->
|
|
<ng-container matColumnDef="fundingSource">
|
|
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Payment Option' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">{{ fundingLabel(share) || '—' }}</td>
|
|
</ng-container>
|
|
|
|
<ng-container matColumnDef="status">
|
|
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Status' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">
|
|
<i class="fa fa-stop" [ngClass]="share.status.code | statusLookup" [matTooltip]="share.status.value"></i>
|
|
</td>
|
|
</ng-container>
|
|
|
|
<ng-container matColumnDef="approve">
|
|
<th mat-header-cell *matHeaderCellDef mat-sort-header>{{ 'labels.inputs.Confirm Approve' | translate }}</th>
|
|
<td mat-cell *matCellDef="let share">
|
|
<button
|
|
class="share-action-button"
|
|
mat-raised-button
|
|
color="accent"
|
|
matTooltip="{{ 'tooltips.Approve Share' | translate }}"
|
|
(click)="approve(share.id)"
|
|
>
|
|
<i class="fa fa-check"></i>
|
|
</button>
|
|
</td>
|
|
</ng-container>
|
|
|
|
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
|
|
<tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
|
|
</table>
|
|
|
|
<mat-paginator [pageSizeOptions]="[10, 25, 50, 100]" showFirstLastButtons></mat-paginator>
|
|
</div>
|
|
</div>
|