Example #1
0
 public ServerResult <Order> Get(int id)
 {
     Entities.Order.Order order = _orderRepo.Get(id);
     return(new ServerResult <Order>
     {
         Data = order.ToDTO(),
         Success = true
     });
 }
Example #2
0
        public ServerResult <Order> UpdateOrder(Order order)
        {
            try
            {
                Entities.Order.Order orderDB = _orderRepo.Get(order.Id);
                if (orderDB == null)
                {
                    return new ServerResult <Order>()
                           {
                               Success = false,
                               Message = "Order does not exist",
                           }
                }
                ;

                if (order.RowVersion != null && !order.RowVersion.SequenceEqual(orderDB.RowVersion))
                {
                    return(new ServerResult <Order>()
                    {
                        Success = false,
                        Message = "Already updated. Try again.",
                        Data = new Order {
                            ClientName = orderDB.ClientName, DeliveryDate = orderDB.DeliveryDate.ToString(), RowVersion = orderDB.RowVersion
                        }
                    });
                }

                Enum.TryParse(order.Status, out Entities.Order.OrderStatus newStatus);
                orderDB.Status     = newStatus;
                orderDB.RowVersion = order.RowVersion;
                _orderRepo.Update(orderDB);
                return(new ServerResult <Order>()
                {
                    Success = true
                });
            }

            catch (Exception e)
            {
                return(new ServerResult <Order>()
                {
                    Success = false,
                    Message = e.Message
                });
            }
        }
Example #3
0
        public ServerResult <Order> AddToCart(Item item)
        {
            try
            {
                DateTime date       = DateTime.Now;
                string   clientName = "TitasGrigaitis";
                var      lastId     = _orderRepo.GetAll().Last().Id;
                var      userOrder  = _orderRepo.GetAll().Where(t => t.ClientName == clientName);
                if (userOrder.Count() == 0)
                {
                    Entities.Order.Order order = new Entities.Order.Order()
                    {
                        Id           = lastId + 1,
                        ClientName   = clientName,
                        Status       = Entities.Order.OrderStatus.Processing,
                        DeliveryDate = DateTime.Now,
                    };
                    _orderRepo.Add(order);
                    if (item.Quantity != 0) // so it is flower not bouquet
                    {
                        Entities.FlowerOrder flowerOrder = new Entities.FlowerOrder()
                        {
                            FlowerId = item.Id,
                            OrderId  = lastId + 1,
                            Quantity = item.Quantity,
                        };
                        _flowerOrderRepo.Add(flowerOrder);
                    }
                    else
                    {
                        Entities.BouquetOrder bouquetOrder = new Entities.BouquetOrder()
                        {
                            BouquetId = item.Id,
                            OrderId   = lastId + 1,
                            Size      = item.Size
                        };
                        _bouquetOrderRepo.Add(bouquetOrder);
                    }
                }
                else
                {
                    if (item.Quantity != 0)
                    {
                        Entities.FlowerOrder flowerOrder = new Entities.FlowerOrder()
                        {
                            FlowerId = item.Id,
                            OrderId  = userOrder.Last().Id,
                            Quantity = item.Quantity,
                        };
                        _flowerOrderRepo.Add(flowerOrder);
                    }
                    else
                    {
                        Entities.BouquetOrder bouquetOrder = new Entities.BouquetOrder()
                        {
                            BouquetId = item.Id,
                            OrderId   = userOrder.Last().Id,
                            Size      = item.Size
                        };
                        _bouquetOrderRepo.Add(bouquetOrder);
                    }
                }

                return(new ServerResult <Order>()
                {
                    Success = true
                });
            }
            catch (Exception ex)
            {
                Console.WriteLine("Cannot update database" + ex.Message);
                return(new ServerResult <Order>()
                {
                    Success = false
                });
            }
        }