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"); } }
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"); } }
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"); } }
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; }
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"); }
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"); } }