private decimal CalculateNewSortIndex(ActivityStatusDTO statusBefore, ActivityStatusDTO statusAfter)
        {
            var diff         = (statusAfter.SortingIndex - statusBefore.SortingIndex) / 2;
            var newSortIndex = statusBefore.SortingIndex + diff;

            _logger.Debug("Calculated new sort index to {newIndex}", newSortIndex);

            return(newSortIndex);
        }
 public static ActivityStatus ToStatus(this ActivityStatusDTO dto)
 {
     return(dto.Type switch
     {
         ActivityStatusType.Planned => new Planned(dto.DateStamp, dto.SortingIndex),
         ActivityStatusType.Active => new CurrentlyActive(dto.DateStamp),
         ActivityStatusType.Retired => new Retired(dto.DateStamp),
         _ => throw new NotSupportedException("Unexpected type of ActivityStatus not yet supported")
     });