Refactors employee details and UI controls
Enhances employee hours view with dynamic weekly schedule rendering Updates toggle slider and theme switch components with improved interactions Adds more flexible notification and settings configurations for employees Improves user experience by streamlining UI controls and schedule display
This commit is contained in:
parent
6746e876d7
commit
545d6606a6
18 changed files with 506 additions and 206 deletions
|
|
@ -1,37 +1,36 @@
|
|||
@model PlanTempus.Application.Features.Employees.Components.EmployeeDetailHoursViewModel
|
||||
|
||||
<swp-detail-grid>
|
||||
<swp-card>
|
||||
<swp-section-label>@Model.LabelWeeklySchedule</swp-section-label>
|
||||
<swp-schedule-grid>
|
||||
<swp-schedule-row>
|
||||
<swp-schedule-day>@Model.LabelMonday</swp-schedule-day>
|
||||
<swp-schedule-time>09:00 - 17:00</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row>
|
||||
<swp-schedule-day>@Model.LabelTuesday</swp-schedule-day>
|
||||
<swp-schedule-time>09:00 - 17:00</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row>
|
||||
<swp-schedule-day>@Model.LabelWednesday</swp-schedule-day>
|
||||
<swp-schedule-time>09:00 - 17:00</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row>
|
||||
<swp-schedule-day>@Model.LabelThursday</swp-schedule-day>
|
||||
<swp-schedule-time>09:00 - 19:00</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row>
|
||||
<swp-schedule-day>@Model.LabelFriday</swp-schedule-day>
|
||||
<swp-schedule-time>09:00 - 16:00</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row class="off">
|
||||
<swp-schedule-day>@Model.LabelSaturday</swp-schedule-day>
|
||||
<swp-schedule-time>Fri</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
<swp-schedule-row class="off">
|
||||
<swp-schedule-day>@Model.LabelSunday</swp-schedule-day>
|
||||
<swp-schedule-time>Fri</swp-schedule-time>
|
||||
</swp-schedule-row>
|
||||
</swp-schedule-grid>
|
||||
</swp-card>
|
||||
</swp-detail-grid>
|
||||
@{
|
||||
string GetBadgeClass(string status) => status switch
|
||||
{
|
||||
"work" => "",
|
||||
"off" => "off",
|
||||
"vacation" => "vacation",
|
||||
"sick" => "sick",
|
||||
_ => "off"
|
||||
};
|
||||
}
|
||||
|
||||
<swp-schedule-scroll>
|
||||
<swp-schedule-table class="hours-view">
|
||||
<!-- Header row -->
|
||||
<swp-schedule-cell class="header week-number"></swp-schedule-cell>
|
||||
@foreach (var dayName in Model.DayNames)
|
||||
{
|
||||
<swp-schedule-cell class="header"><swp-day-name>@dayName</swp-day-name></swp-schedule-cell>
|
||||
}
|
||||
|
||||
<!-- Week rows -->
|
||||
@foreach (var week in Model.Weeks)
|
||||
{
|
||||
<swp-schedule-cell class="employee week-label">
|
||||
<swp-employee-name>Uge @week.WeekNumber</swp-employee-name>
|
||||
<swp-employee-hours>@week.TotalHours @Model.LabelHours</swp-employee-hours>
|
||||
</swp-schedule-cell>
|
||||
@foreach (var day in week.Days)
|
||||
{
|
||||
<swp-schedule-cell class="day"><swp-time-badge class="@GetBadgeClass(day.Status)">@day.Display</swp-time-badge></swp-schedule-cell>
|
||||
}
|
||||
}
|
||||
</swp-schedule-table>
|
||||
</swp-schedule-scroll>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue