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") });