//public List<ImportOrder> ImportOrders()
        //{
        //    using var db = new EcomContext();
        //    return db.ImportOrders
        //        .Include(p => p.ImportStatus).ToList();
        //}

        public Result DeleteAll <TTable>(int[] ids) where TTable : class, new()
        {
            Type tableType = typeof(TTable);

            using var db = new EcomContext();
            // delete all entity matched id
            foreach (var id in ids)
            {
                var entity = db.Set <TTable>().AsEnumerable()
                             .FirstOrDefault(p => (int)(p as TTable).GetPropertyValue("Id") == id);
                if (entity != null)
                {
                    try
                    {
                        db.Set <TTable>().Remove(entity);
                    }
                    catch (Exception e)
                    {
                        return(Result.Fail(e.Message));
                    }
                }
            }

            bool isCreated = db.SaveChanges() > 0;

            if (isCreated)
            {
                return(Result.Success());
            }
            return(Result.Fail("Đã có lỗi xảy ra"));
        }
示例#2
0
        public void AddToCart(string cartId, int productId)
        {
            using (var ecomContext = new EcomContext())
            {
                if (ecomContext.ShoppingCarts.FirstOrDefault(p => p.Id == cartId) == null)
                {
                    return;
                }

                var  cartProduct = CartItem_GetByKeys(cartId, productId);
                bool isExist     = cartProduct != null;

                if (isExist == true)
                {
                    return;
                }

                cartProduct = new CartProduct()
                {
                    Id        = Guid.NewGuid().ToString(),
                    CartId    = cartId,
                    ProductId = productId,
                    Quantity  = 1
                };
                ecomContext.CartProducts.Add(cartProduct);
                ecomContext.SaveChanges();
            }
        }
        public Result UpdateFrom <TTable>(TTable model) where TTable : class, new()
        {
            Type tableType = typeof(TTable);

            using var db = new EcomContext();
            // first try to find element
            int id = (int)tableType.GetProperty("Id").GetValue(model, null);

            var entity = db.Set <TTable>().AsEnumerable()
                         .FirstOrDefault(p => (int)(p as TTable).GetPropertyValue("Id") == id);

            // update
            if (entity != null)
            {
                entity.ObjectAssign(model);
            }

            bool isCreated = db.SaveChanges() > 0;

            if (isCreated)
            {
                return(Result.Success());
            }
            return(Result.Fail("Đã có lỗi xảy ra"));
        }
示例#4
0
        public void ShoppingCart_Remove(string cartId)
        {
            using var _db = new EcomContext();
            var cart = _db.ShoppingCarts.FirstOrDefault(p => p.Id == cartId);

            _db.ShoppingCarts.Remove(cart);
            _db.SaveChanges();
        }
 public void DeleteCategory(Category category)
 {
     using (var context = new EcomContext())
     {
         context.Entry(category).State = System.Data.Entity.EntityState.Deleted;
         context.SaveChanges();
     }
 }
 public void SaveCategory(Category category)
 {
     /*Use using if you want all the resources that the context controls
      * to be disposed at the end of the block. When you use using,
      * the compiler automatically creates a try/finally block and
      * calls dispose in the finally block.*/
     using (var context = new EcomContext())
     {
         context.Categories.Add(category);
         context.SaveChanges();
     }
 }
示例#7
0
        public void ShoppingCart_ClearItems(string cartId)
        {
            using var db = new EcomContext();
            var cartItems = db.CartProducts
                            .Where(p => p.CartId == cartId);

            foreach (var item in cartItems)
            {
                db.CartProducts.Remove(item);
            }
            db.SaveChanges();
        }
示例#8
0
        private void UpdateOrder()
        {
            using (var _db = new EcomContext())
            {
                // Remove all Old-Order-items
                //
                var _orderItems = _db.OrderItems.Where(
                    p => p.OrderId == Order.Id
                    );
                _db.OrderItems.RemoveRange(_orderItems);
                _db.SaveChanges();

                // update Order
                //
                var order = _db.Orders.FirstOrDefault(
                    p => p.Id == Order.Id
                    );
                order.ObjectAssign(Order);

                // Insert new items
                //
                foreach (var item in OrderItems)
                {
                    var product = _db.Products.FirstOrDefault(
                        p => p.Name == item.Product.Name
                        );

                    if (product != null)
                    {
                        _db.OrderItems.Add(new OrderItem
                        {
                            OrderId   = Order.Id,
                            ProductId = product.Id,
                            Quantity  = item.Quantity
                        });
                    }
                }
                _db.SaveChanges();
            }
        }
        public Result InsertInto <TTable>(TTable model) where TTable : class
        {
            using var db = new EcomContext();
            db.Set <TTable>().Add(model);

            bool isCreated = db.SaveChanges() > 0;

            if (isCreated)
            {
                return(Result.Success());
            }
            return(Result.Fail("Đã có lỗi xảy ra"));
        }
示例#10
0
        public void ShoppingCart_Add(ShoppingCart cart)
        {
            using var db = new EcomContext();

            if (cart.CartProducts != null)
            {
                foreach (var item in cart.CartProducts)
                {
                    item.CartId = cart.Id;
                    item.Id ??= Guid.NewGuid().ToString();
                }
            }

            db.ShoppingCarts.Add(cart);
            db.SaveChanges();
        }
示例#11
0
 public void ShoppingCart_Add(ShoppingCart cart)
 {
     using (var db = new EcomContext())
     {
         db.ShoppingCarts.Add(cart);
         var cartProducts = cart.CartProducts ?? new List <CartProduct>();
         foreach (var item in cartProducts)
         {
             db.CartProducts.Add(new CartProduct
             {
                 CartId    = cart.Id,
                 Quantity  = item.Quantity,
                 ProductId = item.ProductId
             });
         }
         db.SaveChanges();
     }
 }
示例#12
0
        public void RemoveFromCart(string cartId, int productId)
        {
            using var ecomContext = new EcomContext();
            if (ecomContext.ShoppingCarts.FirstOrDefault(p => p.Id == cartId) == null)
            {
                return;
            }
            var cartProduct = ecomContext.CartProducts
                              .FirstOrDefault(p => p.CartId == cartId &&
                                              p.ProductId == productId);
            bool isExist = cartProduct != null;

            if (isExist == false)
            {
                return;
            }

            ecomContext.CartProducts.Remove(cartProduct);
            ecomContext.SaveChanges();
        }
示例#13
0
        public void CartItem_IncreaseQuantity(string cartId, int productId)
        {
            using var ecomContext = new EcomContext();
            if (ecomContext.ShoppingCarts.FirstOrDefault(p => p.Id == cartId) == null)
            {
                return;
            }

            var cartProduct = ecomContext.CartProducts
                              .FirstOrDefault(p => p.CartId == cartId &&
                                              p.ProductId == productId);
            bool isExist = cartProduct != null;

            if (isExist == false)
            {
                return;
            }
            cartProduct.Quantity += 1;
            ecomContext.SaveChanges();
        }
示例#14
0
        private void InsertOrder()
        {
            using (var _db = new EcomContext())
            {
                _db.Orders.Add(Order);
                foreach (var item in OrderItems)
                {
                    var product = _db.Products.FirstOrDefault(
                        p => p.Name == item.Product.Name
                        );

                    if (product != null)
                    {
                        _db.OrderItems.Add(new OrderItem
                        {
                            OrderId   = Order.Id,
                            ProductId = product.Id,
                            Quantity  = item.Quantity
                        });
                    }
                }
                _db.SaveChanges();
            }
        }
示例#15
0
 public void Post([FromBody] Brand value)
 {
     dc.Brand.Add(value);
     dc.SaveChanges();
 }
示例#16
0
 public void Post([FromBody] Tax value)
 {
     dc.Tax.Add(value);
     dc.SaveChanges();
 }
 public void Post([FromBody] Products value)
 {
     dc.Products.Add(value);
     dc.SaveChanges();
 }
 public void addcategory(Category category)
 {
     ecom.Categories.Add(category);
     ecom.SaveChanges();
 }
示例#19
0
 public void Post([FromBody] Order2 value)
 {
     dc.Order2.Add(value);
     dc.SaveChanges();
 }