Remove "Last Played" column from Staff Playtime view and enhance time formatting in minutesToHm method to include days.

This commit is contained in:
akastijn 2025-11-02 22:58:21 +01:00
parent 6292d0cacf
commit 06a1cd64e3
2 changed files with 10 additions and 10 deletions

View File

@ -29,11 +29,6 @@
<td mat-cell *matCellDef="let row"> {{ minutesToHm(row.playtime) }}</td> <td mat-cell *matCellDef="let row"> {{ minutesToHm(row.playtime) }}</td>
</ng-container> </ng-container>
<ng-container matColumnDef="last_played">
<th mat-header-cell *matHeaderCellDef> Last Played</th>
<td mat-cell *matCellDef="let row"> {{ row.last_played | date:'medium' }}</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr> <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>

View File

@ -1,5 +1,5 @@
import {Component, computed, inject, OnInit, signal} from '@angular/core'; import {Component, computed, inject, OnInit, signal} from '@angular/core';
import {CommonModule, DatePipe} from '@angular/common'; import {CommonModule} from '@angular/common';
import {MatTableModule} from '@angular/material/table'; import {MatTableModule} from '@angular/material/table';
import {MatButtonModule} from '@angular/material/button'; import {MatButtonModule} from '@angular/material/button';
import {MatIconModule} from '@angular/material/icon'; import {MatIconModule} from '@angular/material/icon';
@ -10,7 +10,7 @@ import {HeaderComponent} from '@header/header.component';
@Component({ @Component({
selector: 'app-staff-pt', selector: 'app-staff-pt',
standalone: true, standalone: true,
imports: [CommonModule, MatTableModule, MatButtonModule, MatIconModule, MatTooltipModule, DatePipe, HeaderComponent], imports: [CommonModule, MatTableModule, MatButtonModule, MatIconModule, MatTooltipModule, HeaderComponent],
templateUrl: './staff-pt.component.html', templateUrl: './staff-pt.component.html',
styleUrl: './staff-pt.component.scss' styleUrl: './staff-pt.component.scss'
}) })
@ -24,7 +24,7 @@ export class StaffPtComponent implements OnInit {
todayStart = signal<Date>(this.startOfDay(new Date())); todayStart = signal<Date>(this.startOfDay(new Date()));
displayedColumns = ['staff_member', 'playtime', 'last_played']; displayedColumns = ['staff_member', 'playtime'];
ngOnInit(): void { ngOnInit(): void {
this.loadCurrentWeek(); this.loadCurrentWeek();
@ -70,9 +70,14 @@ export class StaffPtComponent implements OnInit {
minutesToHm(mins?: number): string { minutesToHm(mins?: number): string {
if (mins == null) return ''; if (mins == null) return '';
const h = Math.floor(mins / 60); const d = Math.floor(mins / 1440);
const h = Math.floor((mins % 1440) / 60);
const m = mins % 60; const m = mins % 60;
return `${h}:${m.toString().padStart(2, '0')}`; const parts = [];
if (d > 0) parts.push(`${d}d`);
if (h > 0 || d > 0) parts.push(`${h}h`);
if (m > 0 || (h === 0 && d === 0)) parts.push(`${m}m`);
return parts.join(' ');
} }
private loadStaffData(from: Date, to: Date) { private loadStaffData(from: Date, to: Date) {