feat(ui): WorkerClient methods for week report and daily notes
This commit is contained in:
@@ -50,4 +50,10 @@ public interface IWorkerClient : INotifyPropertyChanged
|
|||||||
Task ContinuePlanningMergeAsync(string planningTaskId);
|
Task ContinuePlanningMergeAsync(string planningTaskId);
|
||||||
Task AbortPlanningMergeAsync(string planningTaskId);
|
Task AbortPlanningMergeAsync(string planningTaskId);
|
||||||
Task QueuePlanningSubtasksAsync(string parentTaskId, CancellationToken ct = default);
|
Task QueuePlanningSubtasksAsync(string parentTaskId, CancellationToken ct = default);
|
||||||
|
Task<string?> GetWeekReportAsync(DateOnly start, DateOnly end);
|
||||||
|
Task<string> GenerateWeekReportAsync(DateOnly start, DateOnly end);
|
||||||
|
Task<List<DailyNoteDto>> GetDailyNotesAsync(DateOnly day);
|
||||||
|
Task<DailyNoteDto?> AddDailyNoteAsync(DateOnly day, string text);
|
||||||
|
Task UpdateDailyNoteAsync(string id, string text);
|
||||||
|
Task DeleteDailyNoteAsync(string id);
|
||||||
}
|
}
|
||||||
|
|||||||
3
src/ClaudeDo.Ui/Services/ReportDtos.cs
Normal file
3
src/ClaudeDo.Ui/Services/ReportDtos.cs
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
namespace ClaudeDo.Ui.Services;
|
||||||
|
|
||||||
|
public sealed record DailyNoteDto(string Id, string Date, string Text, int SortOrder);
|
||||||
@@ -326,6 +326,26 @@ public partial class WorkerClient : ObservableObject, IAsyncDisposable, IWorkerC
|
|||||||
catch { /* offline */ }
|
catch { /* offline */ }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static string IsoDay(DateOnly d) => d.ToString("yyyy-MM-dd");
|
||||||
|
|
||||||
|
public Task<string?> GetWeekReportAsync(DateOnly start, DateOnly end)
|
||||||
|
=> TryInvokeAsync<string>("GetWeekReport", IsoDay(start), IsoDay(end));
|
||||||
|
|
||||||
|
public Task<string> GenerateWeekReportAsync(DateOnly start, DateOnly end)
|
||||||
|
=> _hub.InvokeAsync<string>("GenerateWeekReport", IsoDay(start), IsoDay(end));
|
||||||
|
|
||||||
|
public async Task<List<DailyNoteDto>> GetDailyNotesAsync(DateOnly day)
|
||||||
|
=> await TryInvokeAsync<List<DailyNoteDto>>("GetDailyNotes", IsoDay(day)) ?? new List<DailyNoteDto>();
|
||||||
|
|
||||||
|
public Task<DailyNoteDto?> AddDailyNoteAsync(DateOnly day, string text)
|
||||||
|
=> TryInvokeAsync<DailyNoteDto>("AddDailyNote", IsoDay(day), text);
|
||||||
|
|
||||||
|
public async Task UpdateDailyNoteAsync(string id, string text)
|
||||||
|
=> await _hub.InvokeAsync("UpdateDailyNote", id, text);
|
||||||
|
|
||||||
|
public async Task DeleteDailyNoteAsync(string id)
|
||||||
|
=> await _hub.InvokeAsync("DeleteDailyNote", id);
|
||||||
|
|
||||||
public async Task UpdateListAsync(UpdateListDto dto)
|
public async Task UpdateListAsync(UpdateListDto dto)
|
||||||
{
|
{
|
||||||
await _hub.InvokeAsync("UpdateList", dto);
|
await _hub.InvokeAsync("UpdateList", dto);
|
||||||
|
|||||||
Reference in New Issue
Block a user