Esempio n. 1
0
        // GET: api/ShoppingItems?itemId=5
        /// <summary>
        /// Gets the shopping item by it's ID
        /// </summary>
        /// <param name="itemId"></param>
        /// <returns></returns>
        public Models.ShoppingItem Get(int itemId)
        {
            var it = new Models.ShoppingItem();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectShoppingItems(null, itemId);

                foreach (var item in query)
                {
                    it = new Models.ShoppingItem
                    {
                        id          = item.Id,
                        description = item.Description,
                        discount    = item.Discount,
                        lastUpdated = item.LastModified,
                        price       = item.Price,
                        quantity    = item.Quantity,
                        src         = item.ImageSrc,
                        title       = item.Title,
                        categoryId  = item.CategoryId
                    };
                }
            }

            return(it);
        }
Esempio n. 2
0
 public void Put([FromBody] Models.ShoppingItem item)
 {
     using (var db = new EntiTreesEntities())
     {
         db.UpdateShopItem(item.id, item.title, item.description, item.price, item.discount, item.src, item.quantity, item.categoryId);
     }
 }
        // GET: api/Categories/5
        public List <Models.Category> Get()
        {
            var categories = new List <Models.Category>();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectCategories();

                foreach (var item in query)
                {
                    categories.Add(new Models.Category
                    {
                        id          = item.Id,
                        name        = item.Name,
                        description = item.Description,
                        imageSrc    = item.ImgSrc,
                        src         = item.Src,
                        itemsCount  = item.ItemsCount,
                        systemName  = item.SystemName
                    });
                }
            }

            return(categories);
        }
Esempio n. 4
0
 public void Put(int id, bool isCompleted, string answer)
 {
     using (var db = new EntiTreesEntities())
     {
         db.UpdateContact(id, isCompleted, answer);
     }
 }
Esempio n. 5
0
        public List <Models.Contact> Get()
        {
            var contacts = new List <Models.Contact>();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectContacts();

                foreach (var item in query)
                {
                    contacts.Add(new Models.Contact
                    {
                        contactId     = item.Id,
                        email         = item.Email,
                        name          = item.Name,
                        phone         = item.Phone,
                        isCompleted   = item.IsCompleted.HasValue ? item.IsCompleted.Value : false,
                        date          = item.Date,
                        message       = item.Message,
                        dateCompleted = item.DateCompleted,
                        answer        = item.Answer
                    });
                }
            }

            return(contacts);
        }
Esempio n. 6
0
        // POST: api/Order
        //Content-Type: application/json
        public Models.ReturnValue <string> Post(Models.Order order)
        {
            string inXml = Utils.ObjectToXML(order);

            using (var db = new EntiTreesEntities())
            {
                try
                {
                    foreach (Models.OrderItem item in order.shoppingCart)
                    {
                        if (item.quantity > item.item.quantity)
                        {
                            return(new Models.ReturnValue <string>(Models.Codes.NotEnoughQty, "There is not enough quantity for this item " + item.item.title));
                        }
                    }

                    var result = db.InsertNewOrder(inXml);
                    Models.ReturnValue <string> returnVal;

                    foreach (var item in result)
                    {
                        //if the order is successfull
                        Models.Codes code = (Models.Codes)Enum.Parse(typeof(Models.Codes), item.Result);
                        returnVal = new Models.ReturnValue <string>(code, item.ResultMessage);
                        Utils.SendMail("ПОТВЪРДЕНА ПОРЪЧКА #" + item.OrderID.ToString() + ": Нова поръчка е изпратена успешно!", GenerateOrderEmailBody(order, item.OrderID.ToString()), order.customer.email, order.customer.name);
                        return(returnVal);
                    }
                    return(new Models.ReturnValue <string>(Models.Codes.DBError, "There is something wrong with the DB"));
                }
                catch (Exception ex)
                {
                    return(new Models.ReturnValue <string>(Models.Codes.Error, ex.Message));
                }
            }
        }
Esempio n. 7
0
        public List <Models.Orders> Get()
        {
            var orders = new List <Models.Orders>();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectOrders();

                foreach (var item in query)
                {
                    orders.Add(new Models.Orders
                    {
                        orderId            = item.Id,
                        customerId         = item.CustomerId,
                        shoppingCartId     = item.ShoppingCartId,
                        orderDate          = item.Date,
                        isCompleted        = item.IsCompleted,
                        itemsCount         = item.Quantity == null ? 0 : item.Quantity.Value,
                        message            = item.Message,
                        totalPrice         = item.TotalPrice == null ? 0 : item.TotalPrice.Value,
                        orderCompletedDate = item.DateCompleted
                    });
                }
            }

            return(orders);
        }
Esempio n. 8
0
 public void Delete(int id)
 {
     using (var db = new EntiTreesEntities())
     {
         try
         {
             var result = db.DeleteShopItem(id);
         }
         catch (Exception ex)
         {
         }
     }
 }
Esempio n. 9
0
        // POST: api/Contact
        //Content-Type: application/json
        public Models.ReturnValue <string> Post(Models.Contact contact)
        {
            using (var db = new EntiTreesEntities())
            {
                try
                {
                    db.InsertContact(contact.name, contact.email, contact.phone, contact.message);

                    return(new Models.ReturnValue <string>(Models.Codes.Created, "The contact message inserted successfully."));
                }
                catch (Exception ex)
                {
                    return(new Models.ReturnValue <string>(Models.Codes.DBError, ex.Message));
                }
            }
        }
Esempio n. 10
0
 public Models.ReturnValue <string> Put(int id, string email, string name, string message)
 {
     using (var db = new EntiTreesEntities())
     {
         try
         {
             Utils.SendMail("Отговор на запитване от Енти Трийс", message, email, name);
             db.UpdateContact(id, true, message);
             return(new Models.ReturnValue <string>(Models.Codes.OK, "Successfully send message back to contact."));
         }
         catch (Exception ex)
         {
             db.UpdateContact(id, false, "");
             return(new Models.ReturnValue <string>(Models.Codes.Error, ex.Message));
         }
     }
 }
Esempio n. 11
0
        public Models.OrderDetails Get(int orderId)
        {
            var order = new Models.OrderDetails();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectOrderByID(orderId);
                foreach (var item in query)
                {
                    order.orderId            = item.OrderId;
                    order.shoppingCartId     = item.ShoppingCartId;
                    order.customerId         = item.CustomerId;
                    order.orderDate          = item.Date;
                    order.isCompleted        = item.IsCompleted;
                    order.orderCompletedDate = item.DateCompleted;
                    order.customer           = new Models.Customer
                    {
                        message = item.Message,
                        name    = item.Name,
                        phone   = item.Phone,
                        email   = item.Email,
                        address = item.Address
                    };
                }

                var query2 = db.SelectOrderItemsByOrderID(orderId);
                order.items = new List <Models.OrderDetails.OrderItem>();
                foreach (var item in query2)
                {
                    order.items.Add(new Models.OrderDetails.OrderItem
                    {
                        shoppingItemId = item.ShoppingItemId,
                        categoryName   = item.Name,
                        discount       = item.Discount == null ? 0 : item.Discount.Value,
                        imageSrc       = item.ImageSrc,
                        itemPrice      = item.SinglePrice == null ? 0 : item.SinglePrice.Value,
                        quantity       = item.Quantity,
                        sellPrice      = item.Price,
                        title          = item.Title
                    });
                }
            }

            return(order);
        }
Esempio n. 12
0
 public Models.ReturnValue <string> Put([FromUri] bool isCompleted, [FromBody] Models.OrderDetails order)
 {
     using (var db = new EntiTreesEntities())
     {
         try
         {
             db.UpdateOrder(order.orderId, isCompleted);
             if (isCompleted)
             {
                 Utils.SendMail("ИЗПРАТЕНА ПОРЪЧКА #" + order.orderId.ToString() + ": Вашата поръчка пътува към вас!", GenerateOrderSendEmailBody(order), order.customer.email, order.customer.name);
             }
             return(new Models.ReturnValue <string>(Models.Codes.OK, "Order send successfully"));
         }
         catch (Exception ex)
         {
             return(new Models.ReturnValue <string>(Models.Codes.Error, ex.Message));
         }
     }
 }
        public Models.Notifications Get()
        {
            Models.Notifications notifications;

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectAdminHomeNotifications().FirstOrDefault();
                notifications = new Models.Notifications
                {
                    activeItems    = query.ActiveItems.HasValue ? query.ActiveItems.Value : 0,
                    allItems       = query.AllItems.HasValue ? query.AllItems.Value : 0,
                    allContacts    = query.AllContacts.HasValue ? query.AllContacts.Value : 0,
                    openContacts   = query.OpenContacts.HasValue ? query.OpenContacts.Value : 0,
                    openOrders     = query.OpenOrders.HasValue ? query.OpenOrders.Value : 0,
                    allOrders      = query.AllOrders.HasValue ? query.AllOrders.Value : 0,
                    customersCount = query.CustomersCount.HasValue ? query.CustomersCount.Value : 0
                };

                return(notifications);
            }
        }
Esempio n. 14
0
        public List <Models.Customer> Get()
        {
            var customers = new List <Models.Customer>();

            using (var db = new EntiTreesEntities())
            {
                var query = db.SelectCustomers();

                foreach (var item in query)
                {
                    customers.Add(new Models.Customer
                    {
                        id          = item.Id,
                        name        = item.Name,
                        email       = item.Email,
                        phone       = item.Phone,
                        address     = item.Address,
                        ordersCount = item.OrdersCount
                    });
                }
            }

            return(customers);
        }