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); }
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)); }