Esempio n. 1
0
        public async Task<IHttpActionResult> PostDiamondImport(ProductDiamondImport import)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            return Created(await CreateAsync(import));
        }
Esempio n. 2
0
        public Task<IHttpActionResult> PutDiamondImport([FromODataUri] Guid id, ProductDiamondImport import, ODataQueryOptions<ProductDiamondImport> options)
        {
            if (!ModelState.IsValid)
            {
                return Task.FromResult((IHttpActionResult)BadRequest(ModelState));
            }

            if (id != import.Id)
            {
                return Task.FromResult((IHttpActionResult)BadRequest("The Id of import does not match the id"));
            }

            var imports = this.database.DiamondImports.Where(r => r.Id == id);

            return PutOrPatchODataAsync(imports, options,
                () => CreateAsync(import),
                () => UpdateAsync(import));
        }
Esempio n. 3
0
 private Task<ProductDiamondImport> UpdatePatchAsync(ProductDiamondImport entity, Delta<ProductDiamondImport> patch)
 {
     patch.Patch(entity);
     return UpdateAsync(entity);
 }
Esempio n. 4
0
 private Task<ProductDiamondImport> CreatePatchAsync(Delta<ProductDiamondImport> patch)
 {
     var entity = new ProductDiamondImport();
     patch.Patch(entity);
     return CreateAsync(entity);
 }
Esempio n. 5
0
        private async Task<ProductDiamondImport> UpdateAsync(ProductDiamondImport entity)
        {
            var now = DateTimeOffset.UtcNow;
            var user = Thread.CurrentPrincipal.Identity.Name;

            if (entity.Products != null)
            {
                foreach (var product in entity.Products)
                {
                    product._ImportId = entity.Id;
                    product.Update(this.database, this.database.Diamonds, now, user);
                }
            }

            entity.Update(this.database, this.database.DiamondImports, now, user);

            await this.database.SaveChangesAsync();
            return entity;
        }
Esempio n. 6
0
 private static void Compare(ProductDiamondImport import, JToken token)
 {
     CompareCommon(import, token);
     Assert.AreEqual(import.Count, (int)token["Count"]);
     CompareLazyProperty(() => import.Products, token, "Products", Compare);
 }