Exemplo n.º 1
0
        public async Task <IHttpActionResult> ReorderFields(Guid id, [FromBody] OrderedIds newOrders)
        {
            var entity = await DbContext.Entities.Include(e => e.Fields).SingleOrDefaultAsync(e => e.EntityId == id);

            if (entity == null)
            {
                return(NotFound());
            }

            var newOrder = (short)0;

            foreach (var itemId in newOrders.ids)
            {
                var field = entity.Fields.SingleOrDefault(o => o.FieldId == itemId);

                if (field == null)
                {
                    return(BadRequest("Field was not found"));
                }

                DbContext.Entry(field).State = EntityState.Modified;
                field.FieldOrder             = newOrder;
                newOrder++;
            }
            DbContext.Database.Log = Console.WriteLine;
            DbContext.SaveChanges();

            return(Ok());
        }
Exemplo n.º 2
0
        public async Task <IHttpActionResult> UpdateOrders(Guid id, [FromBody] OrderedIds newOrders)
        {
            var lookup = await DbContext.Lookups.Include(o => o.LookupOptions).SingleOrDefaultAsync(o => o.LookupId == id);

            if (lookup == null)
            {
                return(NotFound());
            }

            var newOrder = (byte)0;

            foreach (var itemId in newOrders.ids)
            {
                var option = lookup.LookupOptions.SingleOrDefault(o => o.LookupOptionId == itemId);

                if (option == null)
                {
                    return(BadRequest("Key was not found: " + itemId));
                }

                DbContext.Entry(option).State = EntityState.Modified;
                option.SortOrder = newOrder;
                newOrder++;
            }

            DbContext.SaveChanges();

            return(Ok());
        }