80 lines
2.6 KiB
C#
80 lines
2.6 KiB
C#
namespace GreenHome.Application;
|
|
|
|
public sealed class ChecklistDto
|
|
{
|
|
public int Id { get; set; }
|
|
public int DeviceId { get; set; }
|
|
public string DeviceName { get; set; } = string.Empty;
|
|
public string Title { get; set; } = string.Empty;
|
|
public string? Description { get; set; }
|
|
public bool IsActive { get; set; }
|
|
public List<ChecklistItemDto> Items { get; set; } = new();
|
|
public DateTime CreatedAt { get; set; }
|
|
public int CreatedByUserId { get; set; }
|
|
public string CreatedByUserName { get; set; } = string.Empty;
|
|
}
|
|
|
|
public sealed class ChecklistItemDto
|
|
{
|
|
public int Id { get; set; }
|
|
public string Title { get; set; } = string.Empty;
|
|
public string? Description { get; set; }
|
|
public int Order { get; set; }
|
|
public bool IsRequired { get; set; }
|
|
}
|
|
|
|
public sealed class CreateChecklistRequest
|
|
{
|
|
public required int DeviceId { get; set; }
|
|
public required int CreatedByUserId { get; set; }
|
|
public required string Title { get; set; }
|
|
public string? Description { get; set; }
|
|
public required List<CreateChecklistItemRequest> Items { get; set; }
|
|
}
|
|
|
|
public sealed class CreateChecklistItemRequest
|
|
{
|
|
public required string Title { get; set; }
|
|
public string? Description { get; set; }
|
|
public int Order { get; set; }
|
|
public bool IsRequired { get; set; }
|
|
}
|
|
|
|
public sealed class ChecklistCompletionDto
|
|
{
|
|
public int Id { get; set; }
|
|
public int ChecklistId { get; set; }
|
|
public string ChecklistTitle { get; set; } = string.Empty;
|
|
public int CompletedByUserId { get; set; }
|
|
public string CompletedByUserName { get; set; } = string.Empty;
|
|
public string PersianDate { get; set; } = string.Empty;
|
|
public List<ChecklistItemCompletionDto> ItemCompletions { get; set; } = new();
|
|
public string? Notes { get; set; }
|
|
public DateTime CompletedAt { get; set; }
|
|
}
|
|
|
|
public sealed class ChecklistItemCompletionDto
|
|
{
|
|
public int Id { get; set; }
|
|
public int ChecklistItemId { get; set; }
|
|
public string ItemTitle { get; set; } = string.Empty;
|
|
public bool IsChecked { get; set; }
|
|
public string? Note { get; set; }
|
|
}
|
|
|
|
public sealed class CompleteChecklistRequest
|
|
{
|
|
public required int ChecklistId { get; set; }
|
|
public required int CompletedByUserId { get; set; }
|
|
public required string PersianDate { get; set; }
|
|
public required List<CompleteChecklistItemRequest> ItemCompletions { get; set; }
|
|
public string? Notes { get; set; }
|
|
}
|
|
|
|
public sealed class CompleteChecklistItemRequest
|
|
{
|
|
public required int ChecklistItemId { get; set; }
|
|
public bool IsChecked { get; set; }
|
|
public string? Note { get; set; }
|
|
}
|