public async Task <IActionResult> Purchase([FromServices] EmailService service)
        {
            User user = await _userManager.GetUserAsync(HttpContext.User);

            if (user == null)
            {
                return(Content("Siz daxil olmamısınız."));
            }
            else
            {
                List <ShoppingCard> SP = await _db.ShoppingCard.Include(x => x.User).Include(x => x.Document).Where(x => x.User == user).ToListAsync();

                foreach (var item in SP)
                {
                    PurchasedDocument PD = new PurchasedDocument()
                    {
                        User        = item.User,
                        UserId      = item.UserId,
                        Document    = item.Document,
                        DocumentId  = item.DocumentId,
                        Date        = DateTime.Now,
                        Price       = item.Document.Price,
                        IsCompleted = true
                    };

                    string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "uploads", item.Document.FileName);

                    var acceptMessage =
                        $@"Dəyərli {user.UserName} !
Aldiginiz senedler asagidadir.
";
                    await service.SendMailAsync(user.Email, "E-VAKIL.AZ Şifrə bərpası", acceptMessage, path);


                    await _db.PurchasedDocuments.AddAsync(PD);

                    await _db.SaveChangesAsync();
                }

                //List<PurchasedDocument> AllPD = await _db.PurchasedDocuments.Where(x => x.User == user).ToListAsync();

                //if (AllPD.Count == SP.Count)
                //{
                //}
                //else return Content("Nə isə səhv getdi, xahiş edirik bizimlə əlaqə saxlayın.");

                _db.ShoppingCard.RemoveRange(SP);
                await _db.SaveChangesAsync();

                return(RedirectToAction("Index", "Home"));
            }
        }
예제 #2
0
        public async Task <IActionResult> PaymentDetails(int id)
        {
            PurchasedDocument PD = await _db.PurchasedDocuments.Include(x => x.Document).Include(x => x.User).Where(x => x.Id == id).FirstOrDefaultAsync();

            return(View(PD));
        }