public IActionResult SavePaymentInfo(PaymentInfoVM paymentInfo) { if (paymentInfo.Bonuses < paymentInfo.PayByBonuses || (paymentInfo.PaymentType == PaymentType.CardOnline && (paymentInfo.CardNumber.IsNullOrEmpty() || paymentInfo.CardOwnerName.IsNullOrEmpty() || !paymentInfo.DateTo.HasValue))) { return(Index()); } /*if (!ModelState.IsValid) * { * return Index(); * }*/ HttpContext.Session.Set(SessionKeys.PaymentInfo, paymentInfo); var shoppingCart = HttpContext.Session.Get <ShoppingCartVM>(SessionKeys.ShoppingCart); var deliveryInfo = HttpContext.Session.Get <DeliveryInfoVM>(SessionKeys.DeliveryInfo); var newOrder = _orderVMService.BuildNewOrder(shoppingCart, deliveryInfo, paymentInfo); var model = _orderVMService.CreateOrder(newOrder, HttpContext.User.Identity.Name); HttpContext.Session.Set(SessionKeys.ShoppingCart, new ShoppingCartVM()); HttpContext.Session.Set(SessionKeys.DeliveryInfo, new DeliveryInfoVM()); HttpContext.Session.Set(SessionKeys.PaymentInfo, new PaymentInfoVM()); return(View("/Views/Ordering/OrderResult.cshtml", model)); }
public async Task <ActionResult> Contact(string NationalId, short Page = 1) { //var identity = (ClaimsIdentity)User.Identity; //var code = int.Parse( identity.Claims.FirstOrDefault(c => c.Type == "CodeClaim").Value); if (string.IsNullOrEmpty(NationalId)) { return(View("Error")); } short pageSize = 20; var _db = new ApplicationDbContext(); var user = await UserManager.GetUserByNationalIdAsync(NationalId); if (user == null) { return(View("Error")); } var result = new PaymentInfoVM { PaymentData = await(from dfd in _db.DailyFileDetailses join df in _db.DailyFiles on dfd.DailyFileId equals df.Id join d in _db.Dailies on df.DailyId equals d.Id where (dfd.EmployeeId == user.Code) && (d.Open == false) select new PaymentData { DailyFileDetails = dfd, DailyFile = df, Daily = d }).ToListAsync(), Employee = await(from e in _db.Employees where e.Code == user.Code select e).FirstOrDefaultAsync() }; result.CurrentPage = Page; result.Pages = result.PaymentData.Count / pageSize; if (result.PaymentData.Count % pageSize != 0) { result.Pages += 1; } result.PaymentData = result.PaymentData.Skip((Page - 1) * pageSize) .Take(pageSize) .OrderByDescending(x => x.DailyFileDetails.Id) .ToList(); if (result.Employee == null) { result.Employee = new Employee(); } return(View(result)); }
public static PaymentInfo ToPaymentInfo(this PaymentInfoVM paymentInfo) { return(new PaymentInfo { PaymentType = (PaymentType)paymentInfo.PaymentType, CardNumber = paymentInfo.CardNumber, CardOwnerName = paymentInfo.CardOwnerName, DateTo = paymentInfo.DateTo, PayByBonuses = paymentInfo.PayByBonuses }); }
public PaymentInfoVM GetPartOfPaymentInfo(string login) { var payment = new PaymentInfoVM(); var client = _clientService.GetClientByLogin(login); if (client != null) { if (client.HaveCardInfo) { payment.CardNumber = client.CardNumber; payment.CardOwnerName = client.CardOwnerName; payment.DateTo = client.DateTo.Value; } payment.Bonuses = client.BonusCount; } return(payment); }
public OrderVM BuildNewOrder(ShoppingCartVM shoppingCart, DeliveryInfoVM deliveryInfo, PaymentInfoVM paymentInfo) { var vm = new OrderVM { ShoppingCart = shoppingCart, DeliveryInfo = deliveryInfo, PaymentInfo = paymentInfo }; return(vm); }