public async Task <IActionResult> PatchToOrderDetails([FromODataUri] int orderID, [FromODataUri] int productID,
                                                              [FromBody] Delta <OrderDetail> orderDetail)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var         repository = new OrderDetailsRepository(_context);
            OrderDetail entity     = await repository.GetById(new { OrderID = orderID, ProductID = productID });

            if (entity == null)
            {
                return(NotFound());
            }
            orderDetail.Patch(entity);
            try
            {
                repository.Save();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!OrderDetailExists(orderID, productID))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(Updated(entity));
        }
        public async Task <ActionResult> Delete(int orderId, int productId)
        {
            var         repository  = new OrderDetailsRepository(_context);
            OrderDetail orderDetail = await repository.GetById(new { OrderID = orderId, ProductID = productId });

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

            try
            {
                repository.Delete(orderDetail);
                repository.Save();

                return(NoContent());
            }
            catch (Exception e)
            {
                return(BadRequest(new
                {
                    message = e.Message.Replace('{', '(').Replace('}', ')')
                }));
            }
        }
        public async Task <IActionResult> GetOrderDetails([FromODataUri] int orderID, [FromODataUri] int productID)
        {
            var         repository  = new OrderDetailsRepository(_context);
            OrderDetail orderDetail = await repository.GetById(new { OrderID = orderID, ProductID = productID });

            return(Ok(orderDetail));
        }
        public async Task <ActionResult> GetOrderDetail(int orderId, int productId)
        {
            var         repository  = new OrderDetailsRepository(_context);
            OrderDetail orderDetail = await repository.GetById(new { OrderID = orderId, ProductID = productId });

            if (orderDetail == null)
            {
                return(NotFound());
            }
            return(Ok(orderDetail));
        }
 public async Task <OrderDetail> Get(params object[] keys)
 {
     using (var context = new NorthwindDbContext(_options))
     {
         int orderId;
         int productId;
         int.TryParse(keys[0].ToString(), out orderId);
         int.TryParse(keys[1].ToString(), out productId);
         var repository = new OrderDetailsRepository(context);
         return(await repository.GetById(new { OrderID = orderId, ProductID = productId }));
     }
 }
        public async Task <ActionResult> DeleteToOrderDetails([FromODataUri] int orderID, [FromODataUri] int productID)
        {
            var         repository  = new OrderDetailsRepository(_context);
            OrderDetail orderDetail = await repository.GetById(new { OrderID = orderID, ProductID = productID });

            if (orderDetail == null)
            {
                return(NotFound());
            }
            repository.Delete(orderDetail);
            repository.Save();
            return(StatusCode((int)HttpStatusCode.NoContent));
        }
Example #7
0
        public static void Main(string[] args)
        {
            DbProviderFactories.RegisterFactory("System.Data.SqlClient", SqlClientFactory.Instance);
            var provider = DbProviderFactories.GetProviderInvariantNames();

            var orderRepository        = new OrderRepository("Data Source=(localdb)\\ProjectsV13;Integrated Security=True", "System.Data.SqlClient");
            var orderDetailsRepository = new OrderDetailsRepository("Data Source=(localdb)\\ProjectsV13;Integrated Security=True", "System.Data.SqlClient");

            //var orders = orderRepository.GetAll().ToArray();

            orderRepository.CustOrderHist(10248);
            var orderDetails = orderDetailsRepository.GetById(10248);
        }
Example #8
0
        public ActionResult OrderDetails(int id)
        {
            List <OrderDetails> orderdet;
            DisplayOrderDetails displayDet = new DisplayOrderDetails();

            displayDet.OrderID = id;

            using (MySqlConnection conn = DBUtils.GetConnection())
            {
                OrderDetailsRepository repo = new OrderDetailsRepository(conn);
                orderdet = repo.GetById(id).ToList <OrderDetails>();
            }

            displayDet.Details = orderdet;
            return(View(displayDet));
        }
        public void GetById()
        {
            try
            {
                var   options = CreateNewContextOptions();
                Order order;
                var   obj = new
                {
                    Id    = 1,
                    Name  = "Hat",
                    Price = 200
                };
                using (var db = new OrderContext(options))
                {
                    var contact = ProcessingTestHelper.GenerateContact();
                    ProcessingTestHelper.PopulateDefaultOrderCtx(db);
                    var orderState = db.OrderStates.First();
                    var payment    = db.PaymentMethods.First();
                    var delivery   = db.DeliveryMethods.First();
                    var zone       = db.DeliveryZones.First();
                    order = ProcessingTestHelper.GenerateOrder(contact, orderState, payment, delivery, zone);
                    db.Orders.Add(order);
                    db.SaveChanges();
                }
                using (var db = new OrderContext(options))
                {
                    var repository = new OrderDetailsRepository(db);

                    var item = ProcessingTestHelper.GenerateOrderDetail(order, obj);
                    Assert.DoesNotThrow(() => repository.Save(item));

                    Assert.DoesNotThrow(() => item = repository.GetById(item.Id));
                    Assert.DoesNotThrow(() => repository.Delete(item));
                    Assert.NotNull(item);
                    Assert.Greater(item.Id, 0);
                }
            }
            catch (Exception ex)
            {
                LogEventManager.Logger.Error(ex);
                throw;
            }
        }
        // GET api/<controller>/5
        public HttpResponseMessage Get(int id)
        {
            try
            {
                Orders order = new Orders();
                using (MySqlConnection conn = DBUtils.GetConnection())
                {
                    OrderRepository repo = new OrderRepository(conn);
                    order = repo.GetById(id);

                    OrderDetailsRepository detailsRepo = new OrderDetailsRepository(conn);
                    order.Details = detailsRepo.GetById(id).ToList <OrderDetails>();
                }

                return(Request.CreateResponse(HttpStatusCode.OK, order));
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, ex.Message));
            }
        }