feat: Add Grid View and Monthly Summary pages with workday management
Some checks failed
Publish Container / publish (push) Failing after 1m2s

- Implement GridView.razor for displaying a tabular view of workdays in the current month.
- Create MonthlySummary.razor to show a summary of worked hours, income, and day types for the selected month.
- Introduce WorkDayEditor.razor for adding and editing workday entries with detailed calculations.
- Update Home.razor to include links to the new Grid View and Monthly Summary pages.
- Add IWorkDayService interface and CouchbaseLiteWorkDayService implementation for managing workday data.
- Define domain models: WorkDayDocument, MonthlySummaryModel, and CoeffSnapshotDocument for data structure.
- Enhance CouchbaseLiteDatabaseProvider to include a collection for workdays.
- Update app settings and services to support new features.
- Add CSS styles for calendar view and table formatting.
This commit is contained in:
MaddoScientisto 2026-03-17 22:10:19 +01:00
commit 3ccce7e8a6
17 changed files with 1257 additions and 18 deletions

View file

@ -4,38 +4,49 @@
<h1>WorkTracker</h1>
<p class="lead">Phase 1 baseline is active: authentication, locale defaults, and configurable settings with local Couchbase Lite storage.</p>
<div class="row g-3 mt-1">
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100">
<div class="card-body">
<h2 class="h5 card-title">Default work model</h2>
<ul class="mb-0">
<li>Standard day: 8h</li>
<li>Lunch break: 1h</li>
<li>Hourly gross: €17.50</li>
</ul>
<h2 class="h5 card-title">Today</h2>
<p class="mb-2">Quick-add or edit today's work entry.</p>
<a href="workday" class="btn btn-primary">Open Today</a>
</div>
</div>
</div>
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100">
<div class="card-body">
<h2 class="h5 card-title">Tax coefficients</h2>
<ul class="mb-0">
<li>Redditività: 67%</li>
<li>INPS: 26,07%</li>
<li>Imposta sostitutiva: 15%</li>
</ul>
<h2 class="h5 card-title">Grid View</h2>
<p class="mb-2">Tabular view of all days in the current month.</p>
<a href="grid" class="btn btn-outline-primary">Open Grid</a>
</div>
</div>
</div>
<div class="col-12 col-md-12 col-xl-4">
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100">
<div class="card-body">
<h2 class="h5 card-title">Next step</h2>
<p class="mb-0">Open <a href="settings">Settings</a> to adjust the default values used to prefill each workday.</p>
<h2 class="h5 card-title">Calendar</h2>
<p class="mb-2">Visual calendar with day-type badges.</p>
<a href="calendar" class="btn btn-outline-primary">Open Calendar</a>
</div>
</div>
</div>
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100">
<div class="card-body">
<h2 class="h5 card-title">Monthly Summary</h2>
<p class="mb-2">Totals for worked hours, income, and day types.</p>
<a href="summary" class="btn btn-outline-primary">Open Summary</a>
</div>
</div>
</div>
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100">
<div class="card-body">
<h2 class="h5 card-title">Settings</h2>
<p class="mb-2">Configure default rates, hours, and tax coefficients.</p>
<a href="settings" class="btn btn-outline-secondary">Open Settings</a>
</div>
</div>
</div>