public bool RateStarWatch(int watchId, string username, int star)
        {
            Review r = db.Reviews.Find(watchId, username);

            if (r != null)
            {
                db.Reviews.Attach(r);
                r.Rating     = star;
                r.ReviewDate = DateTime.Now;
            }
            else
            {
                r = new Review
                {
                    Rating     = star,
                    ReviewDate = DateTime.Now,
                    Username   = username,
                    WatchId    = watchId
                };
                db.Reviews.Add(r);
            }
            int result = db.SaveChanges();

            return(db.Entry(r).State == EntityState.Unchanged || result > 0);
        }
        public bool AdminUpdateAccount(string username, bool isActive, int roleId)
        {
            Account account = db.Accounts.Find(username);

            db.Accounts.Attach(account);

            account.IsActive = isActive;
            account.RoleId   = roleId;

            int result = db.SaveChanges();

            if (db.Entry(account).State == EntityState.Unchanged || result > 0)
            {
                return(true);
            }
            return(false);
        }
示例#3
0
        public bool AdminUpdateOrderStatus(int orderId, int status)
        {
            var order = db.Orders.Find(orderId);

            db.Orders.Attach(order);

            order.OrderStatus = status;

            int result = db.SaveChanges();

            return(result > 0 || db.Entry(order).State == EntityState.Unchanged);
        }
        public bool UpdateWatchInfo(Watch watch, HttpPostedFileBase thumbnail)
        {
            Watch trackedWatch = db.Watches.Find(watch.WatchID);

            db.Watches.Attach(trackedWatch);
            trackedWatch.WatchCode        = watch.WatchCode;
            trackedWatch.WatchDescription = watch.WatchDescription;
            trackedWatch.Quantity         = watch.Quantity;
            trackedWatch.Price            = watch.Price;
            trackedWatch.MovementID       = watch.MovementID;
            trackedWatch.ModelID          = watch.ModelID;
            trackedWatch.WaterResistant   = watch.WaterResistant;
            trackedWatch.BandMaterial     = watch.BandMaterial;
            trackedWatch.CaseRadius       = watch.CaseRadius;
            trackedWatch.CaseMaterial     = watch.CaseMaterial;
            trackedWatch.Discount         = watch.Discount;
            trackedWatch.LEDLight         = watch.LEDLight;
            trackedWatch.Alarm            = watch.Alarm;
            trackedWatch.Status           = watch.Status;
            trackedWatch.Guarantee        = watch.Guarantee;

            if (thumbnail != null)
            {
                //đổi ảnh thumbnail
                //lưu hình ảnh xuống máy
                string path = HostingEnvironment.MapPath("~/Content/img/ProductThumbnail/") + watch.WatchCode + DateTime.Now.ToBinary();
                ImageProcessHelper.ResizedImage(thumbnail.InputStream, 360, 500, ResizeMode.Pad, ref path);
                trackedWatch.Thumbnail = path;
            }

            int result = db.SaveChanges();

            if (db.Entry(trackedWatch).State == EntityState.Unchanged || result > 0)
            {
                return(true);
            }
            return(false);
        }
        public bool CreateNewModificationHistory(int watchId, string oldValue, string userId)
        {
            Modification modification = new Modification
            {
                WatchID      = watchId,
                ModifiedBy   = userId,
                ModifiedTime = DateTime.Now,
                OldValue     = oldValue
            };

            db.Modifications.Add(modification);
            int result = db.SaveChanges();

            return(result > 0);
        }
        public bool MergeCartSessionAnddDDB(string username)
        {
            List <ShoppingItem> cartSession = (List <ShoppingItem>)HttpContext.Current.Session["CART"];
            List <ShoppingItem> cartDB      = this.LoadCartItemDB(username);

            if (cartSession == null) //no cart in session => dont need to merge
            {
                return(true);
            }
            if (cartSession != null)
            {
                if (cartDB == null) //no cart in DB => create new order
                {
                    //create new cart in DB
                    Order currentOrder = new Order();
                    currentOrder.CustomerID  = username;
                    currentOrder.OrderStatus = (int)Enumeration.OrderStatus.InCart;

                    db.Orders.Add(currentOrder);
                    int result = db.SaveChanges();
                    if (result == 0)
                    {
                        return(false); //insert fail
                    }
                }
                //have cart => merge!!!
                int cartID = db.Orders
                             .Where(o => o.CustomerID.Equals(username) && o.OrderStatus == (int)Enumeration.OrderStatus.InCart)
                             .Select(o => o.OrderID)
                             .FirstOrDefault();

                foreach (ShoppingItem item in cartSession)
                {
                    bool re = this.MergeItemInCartDB(cartID, item.Product.ProductID, item.Quantity);
                    if (!re)
                    {
                        return(false);
                    }
                }
            }

            return(true);
        }