public IActionResult Add(int Id, decimal Prijs, int Aantal, Winkelwagen winkelwagen)
        {
            Bon bon = _bonRepository.GetByBonId(Id);

            if (bon != null)
            {
                winkelwagen.VoegLijnToe(bon, Aantal, Prijs);
            }
            return(RedirectToAction(nameof(Index)));
        }
예제 #2
0
        public IActionResult CadeaubonBewerken(int Id)
        {
            Bon geselecteerdeBon = _bonRepository.GetByBonId(Id);

            if (geselecteerdeBon == null)
            {
                return(RedirectToAction("CadeaubonOverzicht"));
            }
            ViewData["categorieen"]  = new SelectList(_categorieRepository.GetAll().Select(c => c.Naam));
            ViewData["aanbiedingen"] = Aanbiedingen();
            return(View(new CadeaubonBerwerkViewModel(geselecteerdeBon)));
        }
예제 #3
0
        private Winkelwagen ReadCartFromSession(HttpContext context)
        {
            Winkelwagen winkelwagen = context.Session.GetString("winkelwagen") == null ?
                                      new Winkelwagen() : JsonConvert.DeserializeObject <Winkelwagen>(context.Session.GetString("winkelwagen"));

            foreach (var l in winkelwagen.WinkelwagenLijnen)
            {
                l.Bon = _bonRepository.GetByBonId(l.Bon.BonId);
            }
            return(winkelwagen);
        }
예제 #4
0
        public IActionResult Detail(int Id)
        {
            Bon aangeklikteBon = _bonRepository.GetByBonId(Id);

            if (aangeklikteBon == null)
            {
                aangeklikteBon = _bonRepository.GetByBonIdNotAccepted(Id);
            }
            if (aangeklikteBon == null)
            {
                return(RedirectToAction("Index"));
            }
            ViewData["AlleCategorien"] = _categorieRepository.GetAll().ToList();
            return(View(new DetailViewModel(aangeklikteBon)));
        }
예제 #5
0
        public void GeneratePDF(int Id)
        {
            var bestellijn = _bestellijnRepository.GetById(Id);
            var bon        = _bonRepository.GetByBonId(bestellijn.Bon.BonId);
            var handelaar  = _handelaarRepository.GetByHandelaarId(bon.Handelaar.HandelaarId);
            var user       = _userManager.GetUserAsync(User);
            var gebruiker  = _gebruikerRepository.GetBy(user.Result.Email);

            ViewData["path"] = @"/pdf/c_" + bestellijn.QRCode + ".pdf";

            string waarde     = String.Format("€ " + bestellijn.Prijs.ToString());
            string verval     = bestellijn.AanmaakDatum.AddYears(1).ToString("dd/MM/yyyy");
            string geldigheid = String.Format("Geldig tot: " + verval);
            var    pdf        = new Document(PageSize.A5.Rotate(), 81, 225, 25, 0);

            GenerateQR(bestellijn.QRCode);
            var imageURL = @"wwwroot/images/temp/" + bestellijn.QRCode + ".png";

            iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(imageURL);
            jpg.ScaleToFit(145f, 145f);
            var logoURL          = @"wwwroot/images/logo.png";
            var logoURLHandelaar = @"wwwroot" + handelaar.GetLogoPath();
            var kadoURL          = @"wwwroot/images/kado.jpg";

            iTextSharp.text.Image kado          = iTextSharp.text.Image.GetInstance(kadoURL);
            iTextSharp.text.Image logoLL        = iTextSharp.text.Image.GetInstance(logoURL);
            iTextSharp.text.Image logoHandelaar = iTextSharp.text.Image.GetInstance(logoURLHandelaar);

            logoLL.SetAbsolutePosition(20, 15);
            logoLL.ScaleToFit(188f, 100f);
            logoHandelaar.ScaleToFit(188f, 100f);
            logoHandelaar.SetAbsolutePosition(410, 15);
            jpg.SetAbsolutePosition(225, 0);
            kado.SetAbsolutePosition(65, 161);

            iTextSharp.text.Font arial      = FontFactory.GetFont("Arial", 23);
            iTextSharp.text.Font arial18    = FontFactory.GetFont("Arial", 14);
            iTextSharp.text.Font arialSmall = FontFactory.GetFont("Arial", 7);

            Paragraph bedrag = new Paragraph(waarde, arial);

            bedrag.SpacingAfter = 50;
            Paragraph naamHandelaar = new Paragraph(bon.Naam, arial);

            naamHandelaar.SpacingAfter = 0;
            Paragraph geschonkenDoor = new Paragraph("Geschonken door: " + gebruiker.Voornaam, arial18);
            Paragraph geldig         = new Paragraph(geldigheid, arial18);

            bedrag.Alignment = Element.ALIGN_LEFT;

            naamHandelaar.Alignment  = Element.ALIGN_LEFT;
            geschonkenDoor.Alignment = Element.ALIGN_LEFT;
            geldig.Alignment         = Element.ALIGN_LEFT;

            Phrase qrCodeString = new Phrase(bestellijn.QRCode, arialSmall);

            PdfWriter writer = PdfWriter.GetInstance(pdf, new FileStream(@"wwwroot/pdf/c_" + bestellijn.QRCode + ".pdf", FileMode.Create));

            pdf.Open();

            ColumnText.ShowTextAligned(writer.DirectContent,
                                       Element.ALIGN_MIDDLE, qrCodeString, 195, 4, 0);

            pdf.Add(logoLL);
            pdf.Add(logoHandelaar);
            pdf.Add(naamHandelaar);
            pdf.Add(bedrag);
            pdf.Add(geschonkenDoor);
            pdf.Add(geldig);
            pdf.Add(jpg);
            pdf.Add(kado);
            pdf.Close();

            System.IO.File.Delete(imageURL);
        }