Exemple #1
0
        public static bool AddNewOrderMoneyOut(OrderMoneyOut order)
        {
            var success = false;

            try
            {
                using (var db = new OrderMoneyOutContext())
                {
                    db.Orders.Add(order);
                    db.SaveChanges();
                    success = true;
                }
            }
            catch (Exception e)
            {
                success = false;
            }

            return(success);
        }
Exemple #2
0
        public JsonResult MoneyOut(MoneyOutModel moneyOutData)
        {
            var result = new JSONResult();

            try
            {
                var userId         = AuthWrapper.GetUserIdByLogin(User.Identity.Name);
                var availableMoney = DataWrapper.AvailableMoneyByUserId(userId);
                var currentDate    = DateTime.Now;
                var date1          = new DateTime(currentDate.Year, currentDate.Month, currentDate.Day, 9, 0, 0);
                var date2          = new DateTime(currentDate.Year, currentDate.Month, currentDate.Day, 22, 0, 0);
                if (moneyOutData.IsValidAmount() && moneyOutData.Amount <= availableMoney)
                {
                    if (currentDate < date1 || currentDate > date2 ||
                        currentDate.DayOfWeek == DayOfWeek.Saturday ||
                        currentDate.DayOfWeek == DayOfWeek.Sunday)
                    {
                        result.SetNotSuccess(ErrorMessages.IncorrectDate);
                    }
                    else
                    {
                        var newOrder = new OrderMoneyOut()
                        {
                            OrderId     = Guid.NewGuid().ToString(),
                            UserId      = userId,
                            Amount      = moneyOutData.Amount,
                            OrderDate   = DateTime.Now,
                            Status      = StatusOrder.InProgress,
                            TypePurce   = moneyOutData.TypePurce,
                            NumberPurce = moneyOutData.NumberPurce
                        };

                        var isAddNewOrder  = DataWrapper.AddNewOrderMoneyOut(newOrder);
                        var newBalanceUser = 0.0;

                        if (isAddNewOrder)
                        {
                            DataWrapper.TakeMoneyByUserId(userId, moneyOutData.Amount);
                            newBalanceUser = DataWrapper.AvailableMoneyByUserId(userId);
                        }

                        result.SetIsSuccess("/Home/MoneyOut");
                    }
                }
                else
                {
                    if (moneyOutData.IsValidAmount())
                    {
                        result.SetNotSuccess(ErrorMessages.IncorrectAmount);
                    }
                    else
                    {
                        result.SetNotSuccess(ErrorMessages.NotEnoughMoney);
                    }
                }
            }
            catch (Exception ex)
            {
                result.SetNotSuccess(ErrorMessages.UnknownError);
                logger.Error("Method MoneyOut: ", ex);
            }
            return(Json(result, JsonRequestBehavior.AllowGet));
        }