mirror of https://github.com/ErsatzTV/ErsatzTV.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.3 KiB
47 lines
1.3 KiB
namespace ErsatzTV.Core.Domain.Scheduling; |
|
|
|
public class PlayoutHistory |
|
{ |
|
public int Id { get; set; } |
|
|
|
public int PlayoutId { get; set; } |
|
public Playout Playout { get; set; } |
|
|
|
public int? BlockId { get; set; } |
|
public Block Block { get; set; } |
|
public PlaybackOrder PlaybackOrder { get; set; } |
|
public int Index { get; set; } |
|
|
|
// something that uniquely identifies the collection within the block |
|
public string Key { get; set; } |
|
|
|
// something that uniquely identifies a child collection within the parent collection |
|
// e.g. for a playlist |
|
public string ChildKey { get; set; } |
|
|
|
public bool IsCurrentChild { get; set; } |
|
|
|
// last occurence of an item from this collection in the playout |
|
public DateTime When { get; set; } |
|
|
|
// used to efficiently ignore/remove "still active" history items |
|
public DateTime Finish { get; set; } |
|
|
|
// details about the item |
|
public string Details { get; set; } |
|
|
|
public PlayoutHistory Clone() => |
|
new() |
|
{ |
|
PlayoutId = PlayoutId, |
|
BlockId = BlockId, |
|
PlaybackOrder = PlaybackOrder, |
|
Index = Index, |
|
Key = Key, |
|
ChildKey = ChildKey, |
|
IsCurrentChild = IsCurrentChild, |
|
When = When, |
|
Finish = Finish, |
|
Details = Details |
|
}; |
|
}
|
|
|