public void MutateOrder(int id, SortOrderMutationType mutation)
        {
            int delta = (int) mutation;

            SheetEntry entry = this._sheetEntryRepository.FindById(id).EnsureNotNull();
            this.EnsureCorrectSheet(entry);
            Trace.Assert(entry.Category != null);

            entry.Sheet.UpdateTimestamp = DateTime.Now;
            entry.SortOrder += delta;

            this._sheetEntryRepository.ReplaceSortOrder(entry.Sheet, entry.SortOrder, entry.SortOrder - delta);
            this._sheetEntryRepository.SaveChanges();
        }
        public void MutateOrder(int id, SortOrderMutationType mutation)
        {
            int delta = (int)mutation;

            SheetEntry entry = this._sheetEntryRepository.FindById(id).EnsureNotNull();

            this.EnsureCorrectSheet(entry);
            Trace.Assert(entry.Category != null);

            entry.Sheet.UpdateTimestamp = DateTime.Now;
            entry.SortOrder            += delta;

            this._sheetEntryRepository.ReplaceSortOrder(entry.Sheet, entry.SortOrder, entry.SortOrder - delta);
            this._sheetEntryRepository.SaveChanges();
        }
        public async Task <IActionResult> MutateOrder(int id, SortOrderMutationType mutation)
        {
            int delta = (int)mutation;

            RecurringSheetEntry entry = await this.GetEntityByIdAsync(id);

            this.EntityOwnerService.EnsureOwner(entry, this.OwnerId);
            Trace.Assert(entry.Category != null);

            entry.SortOrder += delta;

            this._recurringSheetEntryRepository.ReplaceSortOrder(this.OwnerId, entry.SortOrder, entry.SortOrder - delta);
            await this._recurringSheetEntryRepository.SaveChangesAsync();

            return(this.NoContent());
        }
        public async Task <IActionResult> MutateOrder(int id, SortOrderMutationType mutation)
        {
            int delta = (int)mutation;

            SheetEntry entry = await this.GetByIdAsync(id);

            Trace.Assert(entry.Category != null);

            entry.Sheet.UpdateTimestamp = DateTime.Now;
            entry.SortOrder            += delta;

            this._sheetEntryRepository.ReplaceSortOrder(entry.Sheet, entry.SortOrder, entry.SortOrder - delta);
            await this._sheetEntryRepository.SaveChangesAsync();

            return(this.NoContent());
        }