Esempio n. 1
0
        public IHttpActionResult PutRetailOrder(int id, RetailSale retailOrder)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != retailOrder.OrderId)
            {
                return(BadRequest());
            }

            db.Entry(retailOrder).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RetailOrderExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Esempio n. 2
0
        public HttpResponseMessage AddOrder(JObject jsonBody)
        {
            JObject products = (JObject)jsonBody["ProductsRetailOrder"]; // this variable must be present in the javascript

            jsonBody.Remove("ProductsRetailOrder");

            RetailSale retailOrder = jsonBody.ToObject <RetailSale>(); // the job card object

            retailOrder.AccountId = User.Identity.GetUserId();

            db.RetailSales.Add(retailOrder);

            db.SaveChanges();

            int retailOrderId = retailOrder.OrderId; // the foregin key to be used for the -> proudcts

            JEnumerable <JToken> tokens = (JEnumerable <JToken>)products.Children <JToken>();

            foreach (JToken token in tokens)
            {
                JToken productJson = token.Children().First();
                ProductInRetailSale productInstance = productJson.ToObject <ProductInRetailSale>();
                productInstance.RetailSaleId = retailOrderId;
                db.ProductsInRetailSales.Add(productInstance);
            }

            db.SaveChanges();
            return(this.Request.CreateResponse(HttpStatusCode.Created, retailOrderId));
        }
Esempio n. 3
0
        public IHttpActionResult GetRetailOrder(int id)
        {
            RetailSale retailOrder = db.RetailSales.Find(id);

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

            return(Ok(retailOrder));
        }
Esempio n. 4
0
        public IHttpActionResult PostRetailOrder(RetailSale retailOrder)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.RetailSales.Add(retailOrder);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = retailOrder.OrderId }, retailOrder));
        }
Esempio n. 5
0
        public IHttpActionResult DeleteRetailOrder(int id)
        {
            RetailSale retailOrder = db.RetailSales.Find(id);

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

            db.RetailSales.Remove(retailOrder);
            db.SaveChanges();

            return(Ok(retailOrder));
        }
Esempio n. 6
0
        public IHttpActionResult ChangeSaleStatus(JObject jsonBody)
        {
            SaleStatus sale = jsonBody.ToObject <SaleStatus>();

            if (db.RetailSales.Count(s => s.OrderId == sale.OrderId) > 0)
            {
                RetailSale originalSale = db.RetailSales.Find(sale.OrderId);
                originalSale.OrderStatus     = sale.Status;
                db.Entry(originalSale).State = EntityState.Modified;
                db.SaveChanges();
                return(Ok());
            }
            else
            {
                return(StatusCode(HttpStatusCode.NotModified));
            }
        }
Esempio n. 7
0
        public bool SaveSoldProductBarCode(RetailSale retail)
        {
            int rowAffected = 0;

            foreach (var item in retail.Products)
            {
                //var fromBranch = _iReportGateway.GetDistributedProductFromBranch(item.BarCode);
                //var fromFactory = _iReportGateway.GetDistributedProductFromFactory(item.BarCode);
                //if (fromBranch != null)
                //{
                //    rowAffected += _iOrderGateway.UpdateSoldProductSaleDateInBranch(retail, item, fromBranch);
                //}
                //if (fromFactory != null)
                //{
                //rowAffected += _iOrderGateway.UpdateSoldProductSaleDateInFactory(retail, item, fromFactory);
                //}
                rowAffected += _iOrderGateway.UpdateSoldProductSaleDateInFactory(retail, item);
            }

            return(rowAffected > 0);
        }
Esempio n. 8
0
        public bool SaveSoldProductBarCode(RetailSale retail)
        {
            int rowAffected = _iOrderGateway.SaveSoldProductBarCode(retail);

            return(rowAffected > 0);
        }