Example #1
0
        public Reservatie(Gebruiker gebruiker, Materiaal materiaal, string startDatum, int aantal)
        {
            if (materiaal == null)
            {
                throw new ArgumentNullException("U heeft nog geen items geselecteerd voor deze reservatie");
            }

            if (gebruiker is Student)
            {
                var week = HulpMethode.GetIso8601WeekOfYear(Convert.ToDateTime(startDatum));
                StartDatum = HulpMethode.FirstDateOfWeekISO8601(DateTime.Now.Year, week);
                EindDatum  = StartDatum.AddDays(4);
            }

            if (gebruiker is Lector)
            {
                StartDatum = Convert.ToDateTime(startDatum);
                EindDatum  = Convert.ToDateTime(HulpMethode.GetEindDatum(startDatum));
            }

            Materiaal          = materiaal;
            AantalGereserveerd = aantal;
            Gebruiker          = gebruiker;
            GeblokkeerdeDagen  = new List <Dag>();
            AanmaakDatum       = DateTime.Now;
        }
Example #2
0
        public bool Overlappar(KursPeriod periodAttVerifiera)
        {
            var startDatumAttVerifiera = periodAttVerifiera.StartDatum;
            var slutDatumAttVerifiera  = periodAttVerifiera.StartDatum.AddDays(periodAttVerifiera.AntalDagar);

            var slutDatum = StartDatum.AddDays(AntalDagar);

            return((StartDatum <= slutDatumAttVerifiera) && (slutDatum >= startDatumAttVerifiera));
        }
Example #3
0
 public Contract(ContractStatus status, string titel, int doorlooptijd, ContractType contractType)
 {
     this.ContractStatus = status;
     this.ContractTitel  = titel;
     this.StartDatum     = DateTime.Today;
     this.EindDatum      = StartDatum.AddYears(doorlooptijd);
     this.Doorlooptijd   = doorlooptijd;
     this.ContractType   = contractType;
     this.Tickets        = new List <Ticket>();
 }
Example #4
0
 public override string ToString()
 {
     if (CostInfo is null)
     {
         return($"GereserveerdeTijd:{GereserveerdeTijd} ,\nStartDatum:{StartDatum.ToShortDateString() + " " + StartDatum.ToShortTimeString()} ,\nStratPlaats:{StartPlaats.Naam},\nEindPlaats:{EindPlaats.Naam},\nKlant:{Klant.Naam},\nReservatieType:{ReservatieType},\nCost:{BerekenPrijs()}");
     }
     else
     {
         return($"GereserveerdeTijd:{GereserveerdeTijd} ,\nStartDatum:{StartDatum.ToShortDateString() + " " + StartDatum.ToShortTimeString()} ,\nStratPlaats:{StartPlaats.Naam},\nEindPlaats:{EindPlaats.Naam},\nKlant:{Klant.Naam},\nReservatieType:{ReservatieType},\nPrijs:{CostInfo["eenheidsprijs"]},\nKorting:{CostInfo["Korting"]},\nHet BTW bedrag:{CostInfo["BTWBedrag"]},\nHet totaal bedrag inclusief BTW: { CostInfo["TotaalInclusiefBTW"]}");
     }
 }
 public ReservatieViewModel(Reservatie reservatie)
 {
     Foto                    = reservatie.Materiaal.ImageSrc;
     Naam                    = reservatie.Materiaal.Naam;
     Firma                   = reservatie.Materiaal.Firma?.Naam;
     Omschrijving            = reservatie.Materiaal.Omschrijving;
     MateriaalId             = reservatie.Materiaal.MateriaalId;
     StartDatum              = reservatie.StartDatum;
     EindDatum               = StartDatum.AddDays(4);
     AantalStuksGereserveerd = reservatie.AantalGereserveerd;
     Status                  = reservatie.StartDatum <= DateTime.Now.AddDays(7) ? reservatie.ReservatieState.GetType().Name : "Geen status";
     ReservatieId            = reservatie.ReservatieId;
 }
Example #6
0
 /// <summary>
 /// Zet Sessie open
 /// </summary>
 /// <param name="user">Verantwoordelijke Object</param>
 public void SessieOpenZetten(Verantwoordelijke user)
 {
     if (StatusSessie.Equals(StatusSessie.NietOpen) && DateTime.Now >= StartDatum.AddHours(-1) && DateTime.Now < StartDatum)
     {
         if (!(user.IsHoofdverantwoordelijke || user.OpenTeZettenSessies.Contains(this)))
         {
             throw new SessieException("Sessie kan niet worden opengezet. Controleer of je de rechten hebt om deze sessie open te zetten.");
         }
         StatusSessie = StatusSessie.Open;
     }
     else
     {
         throw new SessieException("Sessie kan niet worden opengezet. Controleer of je niet meer dan één uur op voorhand deze sessie wilt openzetten");
     }
 }
 public override string ToString()
 {
     return(Opleiding + ",  " + Opleidingsplaats + ",  " + StartDatum.ToShortDateString());
 }
 public VerlanglijstViewModel()
 {
     Producten  = new List <Product>();
     StartDatum = DateTimeExtensie.StartOfWeek(DateTime.Now, DayOfWeek.Monday);
     EindDate   = StartDatum.AddDays(7.0);
 }
Example #9
0
        public override void Calc()
        {
            var kapital            = 0.0 - Auszahlung * AbschlussGebuehr / 100;
            var rate               = Rate;
            var keineTilgungMonate = KeineTilgung * 12;

            var zinsenProMonat = ZinsenProJahr / 100 / 12;
            var zinsenPhase2   = GebundenerSollzins / 100 / 12;

            var    restSchuld = Auszahlung;
            double gesamt     = 0.0;
            int    monat      = 0;

            bool ansparPhase = true;

            //sonderTilgungControl1.Tilgungs

            if (Auszahlung != 0.0 && zinsenProMonat != 0.0 && rate != 0.0)
            {
                while (restSchuld > 0.0 &&
                       !double.IsInfinity(restSchuld))
                {
                    foreach (var ti in GetSonderTilgungen(StartDatum.AddMonths(monat)))
                    {
                        if (ansparPhase)
                        {
                            kapital += ti.Betrag;
                        }
                        else
                        {
                            restSchuld -= ti.Betrag;
                        }
                    }

                    if (ansparPhase)
                    {
                        if (monat >= keineTilgungMonate)
                        {
                            var restRate = rate - (restSchuld * zinsenProMonat);
                            kapital = kapital * (1 + GuthabensZins / 100 / 12) + restRate;

                            gesamt += rate;
                        }
                        else
                        {
                            gesamt += restSchuld * zinsenProMonat;
                        }

                        if (kapital >= Auszahlung * ZuteilungBei / 100.0)
                        {
                            ansparPhase = false;
                            restSchuld  = Auszahlung - kapital;

                            MonatZuteilung = monat;
                            AnsparSum      = kapital;
                        }
                    }
                    else
                    {
                        if (monat >= keineTilgungMonate)
                        {
                            if (restSchuld <= rate)
                            {
                                gesamt    += restSchuld;
                                restSchuld = 0.0;
                            }
                            else
                            {
                                restSchuld = restSchuld * (1 + zinsenPhase2) - rate;
                                gesamt    += rate;
                            }
                            if (restSchuld >= Auszahlung)
                            {
                                break;
                            }
                        }
                        else
                        {
                            gesamt += restSchuld * zinsenPhase2;
                        }
                    }
                    monat++;
                }
            }

            Monate         = monat;
            RestSchuld     = restSchuld;
            EndDatum       = StartDatum.AddMonths(monat);
            Gesamt         = gesamt;
            GezahlteZinsen = gesamt - Auszahlung;

            FireSmthChanged();
        }
Example #10
0
 public Contract()
 {
     EindDatum = StartDatum.AddYears(Doorlooptijd);
     Tickets   = new List <Ticket>();
 }
Example #11
0
        private string getHtmlCode()
        {
            //A4 = 210x297 (170 x237) Je Seite 20mm Abstand
            //Beginn header
            string html = (@"
<!DOCTYPE html>
<html>

<head>
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
<meta name='viewport' content='width=device-width, initial-scale=1.0'/>
<meta name=“description” content='Erfolgsrechnung, generiert durch die Software Nailartist Financial Manager'>
<meta name='author' content='Martin Osterwalder'>
<title>Nailartist Financial Manager - Erfolgsrechnung</title>
<link rel='stylesheet' href='layout.css' type='text/css' media='screen' />
<link rel='stylesheet' href='layout.css' type='text/css' media='print' />
</head><body><div ID='a4'>
<!--Inhalt Beginnt -->

<header>
<img id='logo' src='logo.jpg' alt='Logo'>
<div id='title'>
");

            //Ende Head
            //Beginn Inhalt
            if (this.IstJahresabrechnung)
            {
                html = string.Concat(html, @"<h1 class='mitte'>Jahresabschluss</h1></div>");
            }
            else
            {
                html = string.Concat(html, @"<h1 class='mitte'>Zwischenbilanz</h1></div>");
            }
            html = string.Concat(html, @"
</header>
<div id='content'>
<h2>Informationen</h2>
<table class='tablehidden'>
");
            html = string.Concat(html, string.Format(@"<tr><th class='left'>Firma:</th><td>{0}</td></tr>
<tr><th class='left'>Name Vorname:</th><td>{1}</td></tr>
<tr><th class='left'>Strasse und Hausnr:</th><td>{2}</td></tr>
<tr><th class='left'>PLZ und Ort:</th><td>{3}</td></tr>
<tr><th class='left'></th><td></td></tr>
<tr><th class='left'>Anfang:</th><td>{4}</td></tr>
<tr><th class='left'>Ende:</th><td>{5}</td></tr>
", _firma, _nameVorname, _adresse, _plzUndOrt, StartDatum.ToShortDateString(), EndDatum.ToShortDateString()));

            html = string.Concat(html, @"</table>
<h2>Erfolgsrechnung</h2>
<div class='einnahmen'>
<h3>Einnahmen</h3>
<table class='table'>
<tr><th>Kategorie</th><th>Betrag in CHF</th></tr>
");
            foreach (var betraege in Einnahmen)
            {
                html = string.Concat(html, string.Format(@"<tr><td>{0}</td><td>{1} .-</td></tr>", betraege.Kategorie, betraege.BetragInFranken));
            }

            html = string.Concat(html, string.Format(@"<tr><td></td><td></td></tr>
<tr><th>Subtotal Einnahmen</th><th>{0} .-</th></tr></table></div>
<div class='ausgaben'><h3>Ausgaben</h3><table class='table'><tr><th>Kategorie</th><th>Betrag in CHF</th></tr>
", SubtotalEinnahmen));

            foreach (var betraege in Ausgaben)
            {
                html = string.Concat(html, string.Format(@"<tr><td>{0}</td><td>{1} .-</td></tr>", betraege.Kategorie, betraege.BetragInFranken));
            }

            html = string.Concat(html, string.Format(@"<tr><td></td><td></td></tr>
<tr><th>Subtotal Ausgaben</th><th>{0} .-</th></tr>
</table></div><div class='total'><h2>Endresultat</h2><table class='table'>
<tr><td>Einnahmen:</td><td>{1} .-</td></tr><tr><td>Ausgaben:</td><td>-{2} .-</td></tr>
", SubtotalAusgaben, SubtotalEinnahmen, SubtotalAusgaben));

            if (SubtotalEinnahmen >= SubtotalAusgaben)
            {
                html = string.Concat(html,
                                     string.Format(@"<tr class='gewinn'><th>Gewinn: </th><th class='double'> {0} .- CHF</th></tr>", Gewinn));
            }
            else
            {
                html = string.Concat(html,
                                     string.Format(@"<tr class='verlust'><th>Verlust: </th><th class='double'>-{0} .- CHF</th></tr>", Gewinn));
            }

            html = string.Concat(html, string.Format(@"</table></div><div id='signatur'><table class='tablehidden'>
<tr><th>Diese Abrechnung wurde erstellt von</th><td>{0}</td></tr>
<tr><td colspan='2'>Hiermit erkläre ich die Richtigkeit der Angaben.</td></tr><tr class='abstand'><th></th><td></td></tr>
<tr><th>Unterschrift</th><td>___________________________</td></tr>
", _nameVorname));
            //Ende Inhalt
            //Abschluss des Html Codes
            html = string.Concat(html, @"</table></div></div><!--Inhalt Endet --></div></body></html>");

            return(html);
        }