Exemplo n.º 1
0
        public void CreateOrder(OrderVM model)
        {
            ResponseService.Init();
            if (CanAddOrder())
            {
                if (string.IsNullOrEmpty(model.Name))
                {
                    model.Name = "Order";
                }

                var order = Mapper.Map <Order>(model);
                UnitOfWork.OrderRepository.CreateOrderToday(order);
                if (UnitOfWork.Save() > 0)
                {
                    ResponseService.Status = true;
                    ResponseService.Success.Add("Order Created Successfully");
                }
                else
                {
                    ResponseService.Status = false;
                    ResponseService.Errors.Add("Server Error");
                }
            }
            else
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("Order Created Today");
            }
        }
Exemplo n.º 2
0
        public void ChangePayment(int id, bool isChecked)
        {
            ResponseService.Init();
            OrderDetails item = UnitOfWork.OrderDetailsRepository.GetById(id);

            if (item != null)
            {
                item.Payed = isChecked;
                UnitOfWork.OrderDetailsRepository.Edit(item);
                if (UnitOfWork.Save() > 0)
                {
                    ResponseService.Status = true;
                    ResponseService.Success.Add("Payment Changed Successfully");
                }
                else
                {
                    ResponseService.Status = false;
                    ResponseService.Errors.Add("Server Error");
                }
            }
            else
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("Item Not Found");
            }
        }
Exemplo n.º 3
0
        public void SaveNotes(int id, string Notes)
        {
            ResponseService.Init();
            OrderDetails item = UnitOfWork.OrderDetailsRepository.GetById(id);

            if (item != null)
            {
                item.Notes = Notes;
                UnitOfWork.OrderDetailsRepository.Edit(item);
                if (UnitOfWork.Save() > 0)
                {
                    ResponseService.Status = true;
                    ResponseService.Success.Add("Notes Saved Successfully");
                }
                else
                {
                    ResponseService.Status = false;
                    ResponseService.Errors.Add("Server Error");
                }
            }
            else
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("Item Not Found");
            }
        }
Exemplo n.º 4
0
        public void GroupOrder(OrderVM order)
        {
            Dictionary <ItemVM, int> groupItems = new Dictionary <ItemVM, int>();

            foreach (var orderDetails in order.OrderDetailsVM)
            {
                foreach (var itemDetails in orderDetails.ItemDetailsVM)
                {
                    if (groupItems.ContainsKey(itemDetails.ItemVM))
                    {
                        groupItems[itemDetails.ItemVM] += itemDetails.Amount;
                    }
                    else
                    {
                        groupItems.Add(itemDetails.ItemVM, itemDetails.Amount);
                    }
                }
            }
            ResponseService.Init();
            ResponseService.Data = groupItems;
        }
Exemplo n.º 5
0
        public void GetMyOrders(Guid userId)
        {
            User user = null;

            //1-find user
            user = UserService.FindByGuid(userId);

            //2-find order
            CreateOrderIfNotExist();

            ResponseService.Init();

            if (user == null)
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("User Not Found");
                return;
            }

            Order order = FindCurrentOrder();

            //4-find order details
            OrderDetails orderDetails = null;

            orderDetails = CreateOrderDetailsIfNotExist(order, user);

            var result = new List <object>();

            foreach (var itemDetails in orderDetails.ItemDetails)
            {
                result.Add(new { guid = itemDetails.GUID, amount = itemDetails.Amount, item = itemDetails.Item.GUID });
            }
            ResponseService.Status = true;
            ResponseService.Data   = result;
            ResponseService.Success.Add("Fetched Successfully");
        }
Exemplo n.º 6
0
        public void RequestOrderItem(Guid userId, int amount, Guid itemId, string notes)
        {
            User   user = null;
            ItemVM item = null;

            //1-find user
            user = UserService.FindByGuid(userId);


            //2-find order
            CreateOrderIfNotExist();



            ResponseService.Init();
            if (user == null)
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("User Not Found");
                return;
            }


            Order order = FindCurrentOrder();

            if (order.Ordered)
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("Order Has Been Ordered!");
                return;
            }
            //3-find order details
            OrderDetails orderDetails = null;

            orderDetails = CreateOrderDetailsIfNotExist(order, user);

            //4-find item

            item = ItemService.GetByGuid(itemId);

            if (item == null)
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("User Not Found");
                return;
            }

            //5-create item details
            ItemDetails itemDetails = new ItemDetails()
            {
                OrderDetailsId = orderDetails.Id,
                ItemId         = item.ElementId,
                Amount         = amount,
                Notes          = notes
            };

            UnitOfWork.ItemDetailsRepository.Create(itemDetails);

            if (UnitOfWork.Save() > 0)
            {
                ResponseService.Status = true;
                ResponseService.Success.Add("Order Created Successfully");
            }
            else
            {
                ResponseService.Status = false;
                ResponseService.Errors.Add("Server Error");
            }
        }