private void SetPrices(OfferteDTO dto, Offerte retVal)
        {
            var voorschot   = retVal.Voorschot / 100m;
            var totalePrijs = retVal.GetTotalePrijs();
            var btw         = retVal.GetBtw();

            dto.TotaalNettoPrijs = totalePrijs.ToString("#.00");

            if (btw == 0.00m)
            {
                dto.PrijsIfBtw0       = "-";
                dto.TotaalPrijsIncBtw = totalePrijs.ToString("#.00");
            }
            if (btw == 0.06m)
            {
                var tax = totalePrijs * 0.06m;
                dto.PrijsIfBtw6       = tax.ToString("#.00");
                dto.TotaalPrijsIncBtw = (totalePrijs + tax).ToString("#.00");
            }
            if (btw == 0.21m)
            {
                var tax = totalePrijs * 0.21m;
                dto.PrijsIfBtw21      = tax.ToString("#.00");
                dto.TotaalPrijsIncBtw = (totalePrijs + tax).ToString("#.00");
            }

            dto.PrijsVoorschot = (decimal.Parse(dto.TotaalPrijsIncBtw) * voorschot).ToString("0.00");
            dto.PrijsLeftOver  = (decimal.Parse(dto.TotaalPrijsIncBtw) - decimal.Parse(dto.PrijsVoorschot)).ToString("0.00");
        }
Exemplo n.º 2
0
        public byte[] GetPdfBytes(OfferteDTO offerteDto)
        {
            var html = this.FillDocumentTemplate(offerteDto);

            var renderer = new IronPdf.HtmlToPdf();

            var assembly = Assembly.GetExecutingAssembly().Location;

            var filePath = Path.GetDirectoryName(assembly);

            return(renderer.RenderHtmlAsPdf(html, Path.Combine(filePath, "Templates")).Stream.ToArray());
        }
        private void SetWorkItems(OfferteDTO dto, Offerte retVal)
        {
            var max = retVal.Werklijnen.Count();

            dto.WorkItems = new WerkLine[6];
            for (int i = 0; i < 6; i++)
            {
                if (i < max)
                {
                    dto.WorkItems[i] = retVal.Werklijnen[i];
                }
                else
                {
                    dto.WorkItems[i] = null;
                }
            }
        }
        private OfferteDTO ConvertToTemplate(Offerte retVal)
        {
            var klantNummer = string.Format($"{retVal?.Klant?.Adres?.StraatNaam} {retVal?.Klant?.Adres?.HuisNummer} {retVal?.Klant?.Adres?.BusNummer}");

            var dto = new OfferteDTO
            {
                Datum                 = retVal.Datum.Date.ToString("dd-MM-yyyy"),
                VervalDatum           = retVal.VervalDatum.Date.ToString("dd-MM-yyyy"),
                KlantBtw              = retVal?.Klant?.Contact?.BtwNummer ?? "",
                KlantEmail            = retVal?.Klant?.Contact?.Email,
                KlantNaam             = retVal?.Klant?.Naam,
                KlantPostcodeGemeente = $"{retVal?.Klant?.Adres?.Postcode} {retVal?.Klant?.Adres?.Gemeente}",
                KlantRef              = retVal?.Klant?.KlantenRef.ToString("00000"),
                KlantStraatNummer     = klantNummer.Trim(),
                KlantTelefoon         = retVal?.Klant?.Contact?.TelefoonNummer,
                OfferteNummer         = retVal.OfferteNummer,
                PrijsIfBtw0           = "",
                PrijsIfBtw21          = "",
                PrijsIfBtw6           = "",
                PrijsLeftOver         = "",
                PrijsVoorschot        = "",
                TotaalNettoPrijs      = "",
                TotaalPrijsIncBtw     = "",
            };

            SetWorkItems(dto, retVal);
            SetPrices(dto, retVal);

            dto.Item1 = dto.WorkItems[0]?.Omschrijving?.Omschrijving;
            dto.Item2 = dto.WorkItems[1]?.Omschrijving?.Omschrijving;
            dto.Item3 = dto.WorkItems[2]?.Omschrijving?.Omschrijving;
            dto.Item4 = dto.WorkItems[3]?.Omschrijving?.Omschrijving;
            dto.Item5 = dto.WorkItems[4]?.Omschrijving?.Omschrijving;
            dto.Item6 = dto.WorkItems[5]?.Omschrijving?.Omschrijving;

            dto.Item1Prijs = dto.WorkItems[0]?.BrutoPrijs.ToString("#.00");
            dto.Item2Prijs = dto.WorkItems[1]?.BrutoPrijs.ToString("#.00");
            dto.Item3Prijs = dto.WorkItems[2]?.BrutoPrijs.ToString("#.00");
            dto.Item4Prijs = dto.WorkItems[3]?.BrutoPrijs.ToString("#.00");
            dto.Item5Prijs = dto.WorkItems[4]?.BrutoPrijs.ToString("#.00");
            dto.Item6Prijs = dto.WorkItems[5]?.BrutoPrijs.ToString("#.00");


            return(dto);
        }
Exemplo n.º 5
0
        public byte[] FillTemplateWithOfferteData(OfferteDTO dataObject)
        {
            var workbook = GetOfferteTemplate();

            try
            {
                FillOfferteWorkbook(dataObject, workbook);

                using (var memoryStream = new MemoryStream())
                {
                    workbook.SaveAs(memoryStream);
                    return(memoryStream.ToArray());
                }
            }
            finally
            {
                if (workbook != null)
                {
                    workbook.Dispose();
                }
            }
        }