New DTOs for merge endpoints. Both require DestinationId and SourceIds, with DestinationId validated to not appear in SourceIds by the controller.
19 lines
685 B
C#
19 lines
685 B
C#
namespace Butter.Dtos.Person;
|
|
|
|
/// <summary>
|
|
/// Represents a request to merge multiple people into a single destination person.
|
|
/// </summary>
|
|
public class PersonMergeDto {
|
|
/// <summary>
|
|
/// Gets or sets the ID of the destination person that will receive all associated data.
|
|
/// Must not be present in <see cref="SourceIds"/>.
|
|
/// </summary>
|
|
public required Guid DestinationId { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the list of source person IDs whose albums, faces, and maintainers
|
|
/// will be reassigned to the destination. Source people will be hard-deleted.
|
|
/// </summary>
|
|
public required List<Guid> SourceIds { get; set; } = [];
|
|
}
|