public IHttpActionResult AddProduct(AddProductViewModel p)
        {
            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                PRODUCT pro = new PRODUCT();
                pro.MODEL          = p.Name;
                pro.MANUFACTURE_ID = (int)getIdMan(p.NSX, data);
                pro.PRICE          = p.Price;
                pro.QUANTITY       = 100;
                pro.MODEL_ID       = "MSP_01";
                pro.DELETED        = 0;

                data.PRODUCTs.Add(pro);
                data.SaveChanges();

                PRODUCT_CATEGORY pc     = new PRODUCT_CATEGORY();
                PRODUCT          newPro = data.PRODUCTs.ToList()[data.PRODUCTs.Count() - 1];
                pc.PRODUCT_ID  = newPro.PRODUCT_ID;
                pc.CATEGORY_ID = getIdCat(p.Category, data);

                data.PRODUCT_CATEGORY.Add(pc);
                data.SaveChanges();
            }

            return(Ok());
        }
Beispiel #2
0
        public HttpResponseMessage index()
        {
            List <ProductofCategory> pc = new List <ProductofCategory>();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                List <CATEGORY> lst_cat = new List <CATEGORY>();
                lst_cat = (from e in data.CATEGORies
                           select e).ToList();
                foreach (var item in lst_cat)
                {
                    ProductofCategory temp = new ProductofCategory();
                    temp.category = item;
                    int cat_id = temp.category.CATEGORY_ID;

                    List <PRODUCT> listProduct = new List <PRODUCT>();
                    temp.listProduct = (from e in data.PRODUCTs
                                        join f in data.PRODUCT_CATEGORY on e.PRODUCT_ID equals f.PRODUCT_ID
                                        where f.CATEGORY_ID == cat_id && e.DELETED == 0
                                        select e).Take(5).ToList();

                    pc.Add(temp);
                }
            }
            //string json = JsonConvert.SerializeObject(pc);
            return(CreateResponse(HttpStatusCode.OK, pc));
        }
        public HttpResponseMessage GetProduct(int id)
        {
            FullProductInfo ProductDetail = new FullProductInfo();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                List <MANUFACTURE> list = data.MANUFACTUREs.ToList();

                ProductDetail.product = (from e in data.PRODUCTs
                                         where e.PRODUCT_ID == id
                                         select e).FirstOrDefault();

                MANUFACTURE m = list.SingleOrDefault(x => x.MANUFACTURE_ID == ProductDetail.product.MANUFACTURE_ID);
                ProductDetail.NSX = m.MANUFACTURE_NAME;

                ProductDetail.description = (from e in data.PRODUCT_DESCRIPTION
                                             where e.PRODUCT_ID == id
                                             select e).FirstOrDefault();

                ProductDetail.attribute = (from e in data.ATTRIBUTEs
                                           where e.PRODUCT_ID == id
                                           select e).ToList();
            }

            string json = JsonConvert.SerializeObject(ProductDetail);

            return(CreateResponse(HttpStatusCode.OK, ProductDetail));
        }
        public HttpResponseMessage GetAll()
        {
            ProductAdminViewModel kq       = new ProductAdminViewModel();
            List <ProductSModel>  products = new List <ProductSModel>();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                List <PRODUCT> pro = data.PRODUCTs.ToList();
                kq.Mans = data.MANUFACTUREs.ToList();
                kq.Cats = data.CATEGORies.ToList();

                foreach (var item in pro)
                {
                    ProductSModel s = new ProductSModel();
                    s.ID       = item.PRODUCT_ID;
                    s.Name     = item.MODEL;
                    s.Image    = item.PRODUCT_IMG;
                    s.Price    = item.PRICE;
                    s.Category = getNameOfCategory(item.PRODUCT_ID, data);
                    s.NSX      = getNameOfNXS((int)item.MANUFACTURE_ID, data);
                    s.Editing  = false;
                    s.Delete   = item.DELETED == 1;

                    products.Add(s);
                }

                kq.Products = products;
            }

            string json = JsonConvert.SerializeObject(products);

            return(CreateResponse(HttpStatusCode.OK, kq));
        }
        public IHttpActionResult Submit(SubmitOrderModel data)
        {
            MobileStoreServiceEntities db = new MobileStoreServiceEntities();

            try
            {
                ORDER order = new ORDER();

                order.NAME       = data.user_info.name;
                order.ADDRESS    = data.user_info.address;
                order.PHONE      = data.user_info.phone;
                order.USERNAME   = data.user_info.username;
                order.ORDER_DATE = DateTime.Now;
                order.PAID       = 0;
                order.DELETED    = 0;
                db.ORDERS.Add(order);
                db.SaveChanges();

                if (CreateOrder(order, data) == false)
                {
                    throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError));
                }
            }
            catch (Exception e)
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.InternalServerError));
            }
            return(Ok());
        }
Beispiel #6
0
        public HttpResponseMessage SearchPage(string keyword)
        {
            MobileStoreServiceEntities sv         = new MobileStoreServiceEntities();
            List <PRODUCT>             lstProduct = sv.PRODUCTs.Where(x => x.MODEL.Contains(keyword)).ToList();

            return(CreateResponse(HttpStatusCode.OK, lstProduct));
        }
 public HttpResponseMessage EditCategory(EditCategoryModel model)
 {
     using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
     {
         CATEGORY c = data.CATEGORies.FirstOrDefault(cat => cat.CATEGORY_ID == model.ID);
         c.CATEGORY_NAME = model.Name;
         data.SaveChanges();
     }
     return(CreateResponse(HttpStatusCode.OK));
 }
 public HttpResponseMessage Paid(int id)
 {
     using (MobileStoreServiceEntities db = new MobileStoreServiceEntities())
     {
         ORDER o = db.ORDERS.FirstOrDefault(or => or.ORDER_ID == id);
         o.PAID = 1;
         db.SaveChanges();
     }
     return(CreateResponse(HttpStatusCode.OK));
 }
        public HttpResponseMessage Get(int id)
        {
            PRODUCT kq = new PRODUCT();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                kq = data.PRODUCTs.FirstOrDefault(p => p.PRODUCT_ID == id);
            }

            return(CreateResponse(HttpStatusCode.OK, kq));
        }
        public IHttpActionResult Get()
        {
            List <ORDER> OrderList = new List <ORDER>();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                OrderList = (from e in data.ORDERS
                             select e).ToList();
            }
            return(Ok(OrderList));
        }
        public IHttpActionResult Remove(int id)
        {
            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                PRODUCT pro = data.PRODUCTs.FirstOrDefault(p => p.PRODUCT_ID == id);
                pro.DELETED = 1;
                data.SaveChanges();
            }

            return(Ok());
        }
        public HttpResponseMessage UploadImg(UploadImgModel model)
        {
            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                PRODUCT kq = data.PRODUCTs.FirstOrDefault(p => p.PRODUCT_ID == model.ID);
                kq.PRODUCT_IMG = model.Link;

                data.SaveChanges();
            }

            return(CreateResponse(HttpStatusCode.OK));
        }
        public IHttpActionResult GetUserOrder()
        {
            List <ORDER> OrderList = new List <ORDER>();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                OrderList = (from e in data.ORDERS
                             where e.USERNAME == User.Identity.Name
                             select e).ToList();
            }
            return(Ok(OrderList));
        }
        public HttpResponseMessage AddCategory(string name)
        {
            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                CATEGORY c = new CATEGORY();
                c.CATEGORY_NAME = name;
                c.HOME_PAGE     = 1;
                data.CATEGORies.Add(c);

                data.SaveChanges();
            }
            return(CreateResponse(HttpStatusCode.OK));
        }
        private string getNameOfNXS(int manId, MobileStoreServiceEntities data)
        {
            List <MANUFACTURE> mans = data.MANUFACTUREs.ToList();

            foreach (var item in mans)
            {
                if (item.MANUFACTURE_ID == manId)
                {
                    return(item.MANUFACTURE_NAME);
                }
            }

            return("");
        }
Beispiel #16
0
        public HttpResponseMessage Search(string keyword, int?page)
        {
            int pageSize   = 10;
            int pageNumber = (page ?? 1);

            MobileStoreServiceEntities sv         = new MobileStoreServiceEntities();
            List <PRODUCT>             lstProduct = sv.PRODUCTs.Where(x => x.MODEL.Contains(keyword) && x.DELETED == 0).ToList();
            int totalPages = lstProduct.Count / pageSize + 1;

            var result = new
            {
                TotalPages = totalPages,
                Products   = lstProduct.ToPagedList(pageNumber, pageSize)
            };

            return(CreateResponse(HttpStatusCode.OK, result));
        }
        public HttpResponseMessage OrderDetail(int id)
        {
            List <OrderDetailViewModel> kq = new List <OrderDetailViewModel>();

            using (MobileStoreServiceEntities db = new MobileStoreServiceEntities())
            {
                List <ORDER_DETAILS> ords = db.ORDER_DETAILS.Where(o => o.ORDER_ID == id).ToList();
                foreach (var item in ords)
                {
                    OrderDetailViewModel ord = new OrderDetailViewModel();
                    ord.Name     = getProductName(item.PRODUCT_ID, db);
                    ord.Quantity = item.QUANTITY;
                    ord.Price    = item.UNIT_PRICE;

                    kq.Add(ord);
                }
            }
            return(CreateResponse(HttpStatusCode.OK, kq));
        }
        public IHttpActionResult EditProduct(int id, string name, string cat, string man, double price)
        {
            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                PRODUCT pro = data.PRODUCTs.FirstOrDefault(p => p.PRODUCT_ID == id);
                pro.MODEL          = name;
                pro.MANUFACTURE_ID = (int)getIdMan(man, data);
                pro.PRICE          = price;
                int idCat            = getIdCat(cat, data);
                PRODUCT_CATEGORY pcd = data.PRODUCT_CATEGORY.FirstOrDefault(pcds => pcds.PRODUCT_ID == id);
                data.PRODUCT_CATEGORY.Remove(pcd);
                PRODUCT_CATEGORY pc = new PRODUCT_CATEGORY();
                pc.PRODUCT_ID  = id;
                pc.CATEGORY_ID = idCat;
                data.PRODUCT_CATEGORY.Add(pc);

                data.SaveChanges();
            }

            return(Ok());
        }
        public HttpResponseMessage GetAll()
        {
            List <CategoryViewModel> kq   = new List <CategoryViewModel>();
            List <CATEGORY>          list = new List <CATEGORY>();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                list = data.CATEGORies.ToList();
                foreach (var item in list)
                {
                    CategoryViewModel cat = new CategoryViewModel();
                    cat.ID      = item.CATEGORY_ID;
                    cat.Name    = item.CATEGORY_NAME;
                    cat.Editing = false;

                    kq.Add(cat);
                }
            }

            return(CreateResponse(HttpStatusCode.OK, kq));
        }
        private string getNameOfCategory(int proId, MobileStoreServiceEntities data)
        {
            List <PRODUCT_CATEGORY> proCats = data.PRODUCT_CATEGORY.ToList();
            List <CATEGORY>         cats    = data.CATEGORies.ToList();

            foreach (var item in proCats)
            {
                if (item.PRODUCT_ID == proId)
                {
                    foreach (var cat in cats)
                    {
                        if (cat.CATEGORY_ID == item.CATEGORY_ID)
                        {
                            return(cat.CATEGORY_NAME);
                        }
                    }
                }
            }

            return("");
        }
        public HttpResponseMessage GetProductOfCategory(int id)
        {
            ProductofCategory kq       = new ProductofCategory();
            CATEGORY          cat      = new CATEGORY();
            CATEGORY          category = new CATEGORY();

            using (MobileStoreServiceEntities data = new MobileStoreServiceEntities())
            {
                kq.listProduct = (from e in data.PRODUCT_CATEGORY
                                  join f in data.PRODUCTs on e.PRODUCT_ID equals f.PRODUCT_ID
                                  where e.CATEGORY_ID == id && f.DELETED == 0
                                  select f).Take(10).ToList();

                kq.category = (from c in data.CATEGORies
                               where c.CATEGORY_ID == id
                               select c).FirstOrDefault();
            }

            //string json = JsonConvert.SerializeObject(listProduct);
            return(CreateResponse(HttpStatusCode.OK, kq));
        }
        private bool CreateOrder(ORDER order, SubmitOrderModel data)
        {
            MobileStoreServiceEntities db = new MobileStoreServiceEntities();
            double orderTotal             = 0;

            try
            {
                // Iterate over the items in the cart,
                // adding the order details for each
                foreach (var item in data.order_info)
                {
                    PRODUCT product = db.PRODUCTs.First(x => x.PRODUCT_ID == item.product_id);
                    product.QUANTITY -= item.quantity;
                    var orderDetail = new ORDER_DETAILS
                    {
                        PRODUCT_ID = item.product_id,
                        ORDER_ID   = order.ORDER_ID,
                        UNIT_PRICE = item.unit_price,
                        QUANTITY   = item.quantity
                    };
                    // Set the order total of the shopping cart
                    orderTotal += (item.quantity * item.unit_price);

                    db.ORDER_DETAILS.Add(orderDetail);
                }
                // Set the order's total to the orderTotal count
                ORDER nOrder = db.ORDERS.First(o => o.ORDER_ID == order.ORDER_ID);
                nOrder.TOTAL = orderTotal;

                // Save the order
                db.SaveChanges();
            }
            catch
            {
                return(false);
            }
            // Return the OrderId as the confirmation number
            return(true);
        }
        private int getIdCat(string cat, MobileStoreServiceEntities data)
        {
            CATEGORY c = data.CATEGORies.FirstOrDefault(ca => ca.CATEGORY_NAME == cat);

            return(c.CATEGORY_ID);
        }
        private string getProductName(int id, MobileStoreServiceEntities db)
        {
            PRODUCT p = db.PRODUCTs.FirstOrDefault(s => s.PRODUCT_ID == id);

            return(p.MODEL);
        }
        private int getIdMan(string man, MobileStoreServiceEntities data)
        {
            MANUFACTURE mans = data.MANUFACTUREs.FirstOrDefault(m => m.MANUFACTURE_NAME == man);

            return(mans.MANUFACTURE_ID);
        }