Ejemplo n.º 1
0
        public Task<IHttpActionResult> PutTransaction([FromODataUri] Guid id, [FromODataUri] Guid itemId, SaleLineItem item, ODataQueryOptions<SaleLineItem> options)
        {
            if (!ModelState.IsValid)
            {
                return Task.FromResult((IHttpActionResult)BadRequest(ModelState));
            }

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

            var items = this.database.SaleLineItems.Where(r => r.Id == itemId && r._SaleHeaderId == id);

            return PutOrPatchODataAsync(items, options,
                () =>
                {
                    item._SaleHeaderId = id;
                    return item.CreateAsync(this.database, this.database.SaleLineItems);
                },
                () =>
                {
                    item._SaleHeaderId = id;
                    return item.UpdateAsync(this.database, this.database.SaleLineItems);
                });
        }
Ejemplo n.º 2
0
        public async Task<IHttpActionResult> PostTransaction([FromODataUri] Guid id, SaleLineItem item)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            item._SaleHeaderId = id;
            return Created(await item.CreateAsync(this.database, this.database.SaleLineItems));
        }