Пример #1
0
        public OutAccountVM LineSignUp(string token, JwtHelper jwt)
        {
            var lineData = jwt.DecodingJWT(token);
            var result   = new OutAccountVM();

            var hasBeenSignUp = db.Accounts.SingleOrDefault(x => x.LineID == lineData.UserID && x.LoginBy == "Line");

            if (hasBeenSignUp != null)
            {
                result.StatusCode = StatusCodes.Status500InternalServerError;
                return(result);
            }
            var value = new Accounts()
            {
                AccountId = Guid.NewGuid(),
                LineID    = lineData.UserID,
                Email     = lineData.Email,
                LoginBy   = "Line",
                Password  = null,
                RoleId    = db.Roles.FirstOrDefault(x => x.RoleName == "一般使用者").RoleId,
                UserName  = lineData.Name,
                Subscribe = "unsubscribe"
            };

            db.Accounts.Add(value);
            db.SaveChanges();
            result.StatusCode = StatusCodes.Status200OK;
            result.AccountID  = value.AccountId;
            return(result);
        }
Пример #2
0
        public void AddFavorite(InFavoriteVM inFavoriteVM)
        {
            if (db.Favorite.FirstOrDefault(x => x.AccountId == inFavoriteVM.AccountID && x.ProductId == inFavoriteVM.ProductID) != null)
            {
                return;
            }
            var value = new Favorite()
            {
                AccountId  = inFavoriteVM.AccountID,
                FavoriteId = Guid.NewGuid(),
                ProductId  = inFavoriteVM.ProductID
            };

            db.Favorite.Add(value);
            db.SaveChanges();
        }
Пример #3
0
        public void AddOrder(InOrderVM inOrderVM)
        {
            var orderDetails = new List <OrderDetails>();
            var valueCart    = db.Carts.Where(x => x.AccountId == inOrderVM.AccountId).ToList();

            for (var i = 0; i < valueCart.Count(); i++)
            {
                var orderDetail = new OrderDetails()
                {
                    OrderDetailId = Guid.NewGuid(),
                    ProductId     = valueCart[i].ProductId,
                    UnitPrice     = db.Products.Where(x => x.ProductId == valueCart[i].ProductId).FirstOrDefault().Price,
                    Quantity      = valueCart[i].Quantity,
                    Discount      = 0
                };
                db.Products.FirstOrDefault(x => x.ProductId == valueCart[i].ProductId).Stock -= valueCart[i].Quantity;
                orderDetails.Add(orderDetail);
            }
            var value = new Orders()
            {
                OrderId      = Guid.NewGuid(),
                AccountId    = inOrderVM.AccountId,
                OrderDate    = DateTime.Today,
                ShipVia      = inOrderVM.ShipVia,
                Freight      = inOrderVM.Freight,
                ShipCity     = inOrderVM.ShipCity,
                ShipAddress  = inOrderVM.ShipAddress,
                PayWay       = inOrderVM.PayWay,
                HasPay       = inOrderVM.HasPay,
                CustomerName = inOrderVM.CustomerName,
                Phone        = inOrderVM.Phone,
                InvoiceWay   = inOrderVM.InvoiceWay,
                Remark       = inOrderVM.Remark,
                OrderDetails = orderDetails
            };

            db.Orders.Add(value);
            db.Carts.RemoveRange(valueCart);
            db.SaveChanges();
        }
Пример #4
0
 public void UpdateQuantity(InCartVM inCartVM)
 {
     db.Carts.Where(x => x.CartId == inCartVM.CartID).FirstOrDefault().Quantity = inCartVM.Quantity;
     db.SaveChanges();
 }