/// <summary>
        /// selects a certain  <see cref="BenutzerverwaltungBL.Model.DataObjects.Rechnung"/> of the customer given
        /// by checking the date given
        /// </summary>
        /// <param name="customerID">the customer whos  <see cref="BenutzerverwaltungBL.Model.DataObjects.Rechnung"/> to select</param>
        /// <param name="rechnungsID">the id of the  <see cref="BenutzerverwaltungBL.Model.DataObjects.Rechnung"/></param>
        /// <returns> a byte [] or null or throws an exception </returns>
        public static byte[] GetCertainRechnungForKunde(int customerID, int rechnungsID)
        {
            try
            {
                byte[] ret = null;

                using (IRepository repository = RepositoryFactory.Instance.CreateRepository <Repository>())
                {
                    Rechnung r = repository.SelectSingle <Rechnung>(DetachedCriteria.For <Rechnung>()
                                                                    .Add(Restrictions.IdEq(rechnungsID)));

                    ISQLQuery query = repository.GetQuery("select text from " + TABLERECHNUNGDOCS + " r where r.title like ?");
                    query.SetString(0, customerID + "%" + r.Rechnungsdatum.ToShortDateString());
                    query.AddScalar("text", NHibernateUtil.BinaryBlob);
                    ret = query.UniqueResult() as byte[];
                }

                return(ret);
            }
            catch (DatabaseException)
            {
                throw;
            }
            catch (Exception ex)
            {
                throw (new DatabaseException(ex, "Keine Rechnung vorhanden!"));
            }
        }
Example #2
0
        static void Main(string[] args)
        {
            try
            {
                var factoryImpl = new IBusinessMessageFactory[]
                {
                    new CancellationFactory(),
                    new InvoiceFactory(),
                    new MeasurementFactory()
                };

                var boMessageFactory = new BusinessMessageFactory(factoryImpl);

                var kündigung = new Kündigung {
                    TimestampUtc = DateTime.UtcNow
                };
                var messwert = new Messwert {
                    TimestampUtc = DateTime.UtcNow
                };
                var rechnung = new Rechnung {
                    TimestampUtc = DateTime.UtcNow
                };

                var boMessage = boMessageFactory.GetMessage(rechnung);

                Console.WriteLine(boMessage);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
            Console.ReadLine();
        }
Example #3
0
        public void RueckerstattungErfassenTest_KorrektesErfassen()
        {
            //Arrange
            Model     model = new Model();
            int       kId   = model.LadeKreditoren("").First().ID;
            Kategorie kat   = model.LadeKategorien().First();
            Rechnung  sollRueckerstattung = new Rechnung
            {
                Beschreibung    = "Testrueckerstattung",
                Betrag          = 100m,
                Kategorie       = kat.Name,
                KreditorID      = kId,
                AlsRueckzahlung = true
            };

            //Act
            this._id = model.SpeichereRueckzahlung(sollRueckerstattung);
            List <Rechnung> rlist           = model.LadeRueckzahlungen("");
            Rechnung        istRueckzahlung = rlist.First(i => i.ID == this._id);


            //Assert
            Assert.IsNotNull(istRueckzahlung);
            Assert.IsTrue(istRueckzahlung.Beschreibung == "Testrueckerstattung");
            Assert.IsTrue(model.LoescheRueckzahlung(istRueckzahlung));
        }
Example #4
0
        public async Task <IActionResult> PutRechnung(int id, Rechnung rechnung)
        {
            if (id != rechnung.Id)
            {
                return(BadRequest());
            }

            _context.Entry(rechnung).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RechnungExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Example #5
0
    public async Task Database_SpeicherRechnung()
    {
        //Arrange
        bool success;

        //Act
        using (var context = new ApplicationDbContext())
        {
            try
            {
                var exampleK1 = new Kunde {
                    KundeId = 1, Anrede = 0, Vorname = "Max", Nachname = "Mustermann", Adresse = "Musterstr. 1", Plz = 12345, Ort = "Musterstadt", Telefon = "+49123 456789", Bemerkungen = ""
                };
                var beispielRechnung = new Rechnung {
                    Kunde = exampleK1, ObjektId = 1, Datum = new DateTime(2021, 05, 19, 10, 30, 00), Taetigkeiten = "(automatisch generiert)", Material = "(automatisch generiert)", Arbeitszeit = new TimeSpan(1, 30, 0), Summe = 65, Bemerkungen = "(automatisch generiert)"
                };
                context.Add(beispielRechnung);
                context.SaveChanges();

                success = true;
            }
            catch (Exception e)
            {
                success = false;
            }
        }

        //Assert
        Assert.True(success);
    }
        public KundenData(long id, string vorname, string nachname, string strasse,
                    string ort, string objekt, string tel, string hausbesitzer, string bankVerbindung, 
                    Rechnung bekommtRechnung, DateTime eichDatum, string zaehlerNummer, 
                    DateTime einbauDatum, string erkl, DateTime tauschDatum, double zaehlermiete,
                    string bemerkung, string zahlung, long leitungskreis, long personenImObjekt) {

            this.id = id;
            this.vorname = vorname;
            this.nachname = nachname;
            this.strasse = strasse;
            this.ort = ort;
            this.objekt = objekt;
            this.tel = tel;
            this.hausbesitzer = hausbesitzer;
            this.bankVerbindung = bankVerbindung;
            this.bekommtRechnung = bekommtRechnung;
            this.eichDatum = eichDatum;
            this.zaehlerNummer = zaehlerNummer;
            this.einbauDatum = einbauDatum;
            this.erkl = erkl;
            this.tauschDatum = tauschDatum;
            this.zaehlermiete = zaehlermiete;
            this.bemerkung = bemerkung;
            this.zahlung = zahlung;
            this.leitungskreis = leitungskreis;
            this.personenImObjekt = personenImObjekt;
        }
Example #7
0
    public async Task Database_LadeRechnung()
    {
        //Arrange
        Rechnung actual;
        var      exampleK1 = new Kunde {
            KundeId = 1, Anrede = 0, Vorname = "Max", Nachname = "Mustermann", Adresse = "Musterstr. 1", Plz = 12345, Ort = "Musterstadt", Telefon = "+49123 456789", Bemerkungen = ""
        };
        var expected = new Rechnung {
            RechnungId = 1, Kunde = exampleK1, ObjektId = 1, Datum = new DateTime(2021, 05, 18, 15, 30, 00), Taetigkeiten = "Rasen mähen", Material = "Rasenmäher", Arbeitszeit = new TimeSpan(1, 0, 0), Summe = 30
        };

        //Act
        using (var context = new ApplicationDbContext())
        {
            var result = from r in context.Set <Rechnung>()
                         select r;

            actual = result.First();
        }

        //Assert
        Assert.Equal(expected.RechnungId, actual.RechnungId);
        Assert.Equal(expected.Kunde, actual.Kunde);
        Assert.Equal(expected.Objekt, actual.Objekt);
    }
        public async Task <IActionResult> Edit(int id, [Bind("RechnungId,Rechnungsnummer,Datum,KundeId,VerkaeuferId,RechnungfahrzeugId")] Rechnung rechnung)
        {
            if (id != rechnung.RechnungId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rechnung);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RechnungExists(rechnung.RechnungId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KundeId"]            = new SelectList(_context.Kundes, "KundeId", "Hn", rechnung.KundeId);
            ViewData["RechnungfahrzeugId"] = new SelectList(_context.Rechnungfahrzeugs, "RechnungfahrzeugId", "RechnungfahrzeugId", rechnung.RechnungfahrzeugId);
            ViewData["VerkaeuferId"]       = new SelectList(_context.Verkaeufers, "VerkaeuferId", "Nachname", rechnung.VerkaeuferId);
            return(View(rechnung));
        }
Example #9
0
        public async Task <ActionResult <Rechnung> > PostRechnung(Rechnung rechnung)
        {
            _context.Rechnung.Add(rechnung);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetRechnung", new { id = rechnung.Id }, rechnung));
        }
Example #10
0
        public void TestFindByIdSuccess()
        {
            List <Rechnung> rechnungen = rechnungsServices.ErstelleRechnungen();

            Rechnung re = rechnungsServices.FindRechnungById(rechnungen[0].Rechnungsnummer);

            Assert.AreEqual(re, rechnungen[0]);
        }
Example #11
0
        /// <summary>
        /// generates a  <see cref="BenutzerverwaltungBL.Model.DataObjects.Rechnung"/> as pdf out of the given  <see cref="BenutzerverwaltungBL.Model.DataObjects.Rechnung"/>
        /// and returns it as byte[] for storing it in a db
        /// </summary>
        /// <param name="rechnung">the object whhich should be "converted" to a pdf</param>
        /// <returns> a byte[]</returns>
        public static byte[] GeneratePDF(Rechnung rechnung)
        {
            byte[] bytes = null;
            r = rechnung;
            using (MemoryStream ms = new MemoryStream())
            {
                Document  document = new Document(PageSize.A4);
                PdfWriter writer   = PdfWriter.GetInstance(document, ms);

                document.Open();

                //1.titel
                document.Add(new Paragraph(rechnung.Kunde.WerkstattKonzern, new Font(Font.FontFamily.HELVETICA, 25, Font.BOLD)));
                //2.kunden und rechnungsinfo
                PdfPTable tab = CreateInfoTable();
                document.Add(tab);
                //3.anrede "sehr geehrte.."
                addAnredeText(document);

                //4.rechnungsposten und deren preis
                PdfPTable posten = new PdfPTable(2);
                posten.WidthPercentage = 100;
                posten.SetWidths(new int[] { PAGEWIDTH_TWO_THIRD, PAGEWIDTH_ONE_THIRD });
                AddCellToHeader(posten, "Bezeichnung");
                AddCellToHeader(posten, "Preis Netto");
                foreach (var reparatur in rechnung.Reparaturen)
                {
                    addCell(posten, reparatur.RepArt.Bezeichnung);
                    addCellRight(posten, reparatur.RepArt.Preis.ToString());
                }
                document.Add(posten);

                //5.gesamtpreis und mwst
                PdfPTable preisInfo = new PdfPTable(2);
                preisInfo.WidthPercentage = 100;
                preisInfo.SetWidths(new int[] { PAGEWIDTH_TWO_THIRD, PAGEWIDTH_ONE_THIRD });

                double gesamtPreis = r.Reparaturen.Sum(item => item.RepArt.Preis);
                addCellRightNoBorder(preisInfo, "Gesamt Netto:");
                addCellRightNoBorder(preisInfo, Math.Round(gesamtPreis, 2).ToString());
                addCellRightNoBorder(preisInfo, "MwSt 20%:");
                addCellRightNoBorder(preisInfo, Math.Round((gesamtPreis * 0.2), 2).ToString());
                addCellRightNoBorder(preisInfo, "Gesamt:");
                addCellRightNoBorder(preisInfo, Math.Round((gesamtPreis * 1.2), 2).ToString());

                document.Add(preisInfo);

                //6.zahlungsbedingungen
                addZahlungsInformation(document);

                //7.Close the document
                document.Close();
                bytes = ms.ToArray();
            }
            return(bytes);
        }
Example #12
0
        private static void Main(string[] args)
        {
            Program.InitialisiereLernfelder();

            foreach (var lernfeld in lernfelder)
            {
                lernfeld.Anzeigen();
            }
            Console.WriteLine("{0} {1:N2}", "gewichtete Empfehlung der BBU Note: ", Rechnung.Berechne(lernfelder));
        }
Example #13
0
        public void TestMethodErstelleRechnungen()
        {
            List <Rechnung> rechnungen = rechnungsServices.ErstelleRechnungen();

            //Rechnung für Kunde1
            Rechnungsposition rpos = new Rechnungsposition()
            {
                Rechnungspositionsnummer = rechnungen.ElementAt(0).Rechnungspositionen.ElementAt(0).Rechnungspositionsnummer,
                Kurs = kurs1
            };
            Rechnungsposition rPos2 = new Rechnungsposition()
            {
                Rechnungspositionsnummer = rechnungen.ElementAt(0).Rechnungspositionen.ElementAt(1).Rechnungspositionsnummer,
                Kurs = kurs2
            };
            List <Rechnungsposition> rpositions = new List <Rechnungsposition>();

            rpositions.Add(rpos);
            rpositions.Add(rPos2);
            Rechnung r1 = new Rechnung()
            {
                Rechnungsnummer     = rechnungen[0].Rechnungsnummer,
                AbrechnungsZeitraum = new AbrechnungsZeitraumTyp(DateTime.Now.Month, DateTime.Now.Year),
                Bezahlt             = false,
                Kunde = kunde1,
                Rechnungspositionen = rpositions
            };

            //Rechnung für Kunde2
            Rechnungsposition rPos3 = new Rechnungsposition()
            {
                Rechnungspositionsnummer = rechnungen.ElementAt(1).Rechnungspositionen.ElementAt(0).Rechnungspositionsnummer,
                Kurs = kurs2
            };

            List <Rechnungsposition> rpositions2 = new List <Rechnungsposition>();

            rpositions2.Add(rPos3);

            Rechnung r2 = new Rechnung()
            {
                Rechnungsnummer     = rechnungen[1].Rechnungsnummer,
                AbrechnungsZeitraum = new AbrechnungsZeitraumTyp(DateTime.Now.Month, DateTime.Now.Year),
                Bezahlt             = false,
                Kunde = kunde2,
                Rechnungspositionen = rpositions2
            };
            List <Rechnung> expected = new List <Rechnung>();

            expected.Add(r1);
            expected.Add(r2);
            //CollectionAssert.AreEqual(expected, rechnungen.ToList());
            Assert.AreEqual(2, rechnungen.Count);
            Assert.AreEqual(3, rechnungen.Sum(r => r.Rechnungspositionen.Count));
        }
Example #14
0
    public async Task Rechner_Mehrwertsteuer()
    {
        //Arrange
        var r = new Rechnung()
        {
            Summe = 1000
        };

        //Act & Assert
        Assert.Equal(1190, r.Mehrwertsteuer());
    }
Example #15
0
 //Commandhelpers
 private void NeueRechnung()
 {
     AktuelleRechnung            = new Rechnung();
     AktuelleRechnung.KreditorID = AktuelleKreditorId;
     KeineNeueRechnungAktiv      = false;
     if (KategorienListe.Any())
     {
         AktuelleKategorie = KategorienListe.First();
         UpdateKategorie(AktuelleKategorie.Name);
     }
 }
Example #16
0
        public List <Rechnung> ErstelleRechnungen()
        {
            int             monat      = DateTime.Now.Month;
            int             year       = DateTime.Now.Year;
            List <Rechnung> rechnungen = new List <Rechnung>();
            Dictionary <Kunde, List <Kurs> > kundenKurse = new Dictionary <Kunde, List <Kurs> >();

            return(ts.ExecuteInTransaction(() =>
            {
                var kurse = ks.GetKurseByVeranstaltungszeit(monat, year);
                foreach (var kurs in kurse)
                {
                    foreach (var teilnehmer in kurs.Teilnehmer)
                    {
                        if (!kundenKurse.ContainsKey(teilnehmer))
                        {
                            var listKurse = new List <Kurs>();
                            listKurse.Add(kurs);
                            kundenKurse.Add(teilnehmer, listKurse);
                        }
                        else
                        {
                            kundenKurse[teilnehmer].Add(kurs);
                        }
                    }
                }

                foreach (var pair in kundenKurse)
                {
                    List <Rechnungsposition> positionen = new List <Rechnungsposition>();

                    foreach (var kurs in pair.Value)
                    {
                        Rechnungsposition position = new Rechnungsposition()
                        {
                            Kurs = kurs
                        };
                        positionen.Add(position);
                    }

                    Rechnung r = new Rechnung()
                    {
                        Kunde = pair.Key,
                        AbrechnungsZeitraum =
                            new AbrechnungsZeitraumTyp(monat, year),
                        Bezahlt = false,
                        Rechnungspositionen = positionen
                    };
                    rechnungen.Add(r);
                }
                return repo.SaveAll(rechnungen);
            }));
        }
        public async Task <IActionResult> Create([Bind("RechnungId,Rechnungsnummer,Datum,KundeId,VerkaeuferId,RechnungfahrzeugId")] Rechnung rechnung)
        {
            if (ModelState.IsValid)
            {
                _context.Add(rechnung);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["KundeId"]            = new SelectList(_context.Kundes, "KundeId", "Hn", rechnung.KundeId);
            ViewData["RechnungfahrzeugId"] = new SelectList(_context.Rechnungfahrzeugs, "RechnungfahrzeugId", "RechnungfahrzeugId", rechnung.RechnungfahrzeugId);
            ViewData["VerkaeuferId"]       = new SelectList(_context.Verkaeufers, "VerkaeuferId", "Nachname", rechnung.VerkaeuferId);
            return(View(rechnung));
        }
Example #18
0
    // Update is called once per frame
    void Update()
    {
        if (startDelay >= 0)
        {
            udpateStartText();
            startDelay -= Time.deltaTime;
            return;
        }
        else
        {
        }
        startText.enabled  = false;
        startPanal.enabled = false;
        if (lives <= 0)
        {
            SaveScore();
            SceneManager.LoadScene("Board");
        }
        else
        {
            if (rechnung == null)
            {
                Transform start = getStartPoint();
                rechnung = Instantiate(rechnungsPrefab);
                rechnung.transform.parent   = null;
                rechnung.transform.position = startPos.position;
                rechClass = rechnung.GetComponent <Rechnung>();
                rechClass.init(nextMathType(), speed);

                speed += speed_increase;
            }
            if (rechClass.isAlive == false)
            {
                if (rechClass.state == State.OK)
                {
                    score += rechClass.typeScroe;
                }
                Debug.Log(rechClass.ToDebug());
                Destroy(rechnung);
                return;
            }

            if (rechnung.transform.position.y < deadPos.position.y)
            {
                rechClass.setDead();
            }

            updateUI();
        }
    }
Example #19
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rechnung = await _context.Rechnungs.FirstOrDefaultAsync(m => m.ID == id);

            if (Rechnung == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Example #20
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Rechnung = await _context.Rechnungs.FindAsync(id);

            if (Rechnung != null)
            {
                _context.Rechnungs.Remove(Rechnung);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
Example #21
0
 public void SelectRechnung(object o)
 {
     try
     {
         Rechnung r = SelectedRechnung.LastOrDefault <Rechnung>();
         RechnungsNummer        = r.RechnungsNummer;
         DatumFaelligkeit       = r.DatumFaelligkeit.ToShortDateString();
         KundenNummer           = r.KundenNummer;
         SummeRechnung          = r.SummeRechnung.ToString();
         DatumBegleichung       = r.DatumBegleichung.ToString();
         AendernButton          = true;
         RechnungsNummerTextBox = true;
     }
     catch (System.ArgumentNullException)
     {
         MessageBox.Show("Keine Rechnung gewählt");
     }
 }
Example #22
0
        public void AusgabeLoeschenTest_KorrektesLoeschen()
        {
            //Arrange
            Model           model       = new Model();
            List <Rechnung> rlist       = model.LadeRechnungen("");
            Rechnung        istRechnung = rlist.First(i => i.Beschreibung == "Testrechnung");


            //Act
            bool successfull = model.LoescheRechnung(istRechnung);

            rlist = model.LadeRechnungen("");
            bool nochVorhanden = rlist.Any(i => i.Beschreibung == "Testrechnung");


            //Assert
            Assert.IsTrue(successfull);
            Assert.IsFalse(nochVorhanden);
        }
        public ActionResult Erstellen(int Monatnummer)
        {
            log.Info("Rechnung - Erstellen - GET");

            Benutzer aktBenutzer = BenutzerAdministrator.GetUser(User.Identity.Name);

            List <Buchungsdetails> gesuchteBuchungsDetails = RechnungsVerwaltung.MonatsBuchungsDetails((int)aktBenutzer.Firma_id, Monatnummer);

            Rechnung rechnung = RechnungsVerwaltung.LiefereRechnungzuFirmaAusMonat(gesuchteBuchungsDetails);

            RechnungErstellenModel rechnungsModel = new RechnungErstellenModel();

            Firma firma = FirmenVerwaltung.LiefereFirma((int)aktBenutzer.Firma_id);

            rechnungsModel.Rg_Id                = rechnung.Id;
            rechnungsModel.Firmenname           = firma.Bezeichnung;
            rechnungsModel.FirmenstrassenNummer = firma.Nummer;
            rechnungsModel.FirmenOrt            = firma.Ort;
            rechnungsModel.Firmenstrasse        = firma.Strasse;
            rechnungsModel.FirmenPlz            = firma.Plz;
            rechnungsModel.Datum                = (DateTime)rechnung.Datum;
            rechnungsModel.Firmenname           = firma.Bezeichnung;
            rechnungsModel.Gesamtpreis          = gesuchteBuchungsDetails.Sum(x => x.Preis);
            rechnungsModel.Steuerbetrag         = (rechnungsModel.Gesamtpreis / 100) * 20;
            rechnungsModel.RechnungsDetails     = new List <RechnungsDetailModel>();
            foreach (var buchungsDetail in gesuchteBuchungsDetails)
            {
                RechnungsDetailModel model = new RechnungsDetailModel()
                {
                    Buchungs_ID   = buchungsDetail.Id.ToString(),
                    Buchungsdatum = buchungsDetail.Datum,
                    Preis         = buchungsDetail.Preis,
                    RaumNummer    = RaumVerwaltung.GesuchterRaumName(buchungsDetail.Buchung_id)
                };

                rechnungsModel.RechnungsDetails.Add(model);
            }
            DateTime VonDatum = (from x in gesuchteBuchungsDetails orderby x.Datum select x.Datum).FirstOrDefault();
            DateTime BisDatum = (from x in gesuchteBuchungsDetails orderby x.Datum descending select x.Datum).FirstOrDefault();

            return(new Rotativa.ViewAsPdf("Erstellen", rechnungsModel));
        }
Example #24
0
        public void AusgabeAendernTest_KorrektesSpeichern()
        {
            //Arrange
            Model           model       = new Model();
            List <Rechnung> rlist       = model.LadeRechnungen("");
            Rechnung        istRechnung = rlist.First(i => i.Beschreibung == "Testrechnung");

            istRechnung.Betrag = 555m;


            //Act
            this._id    = model.SpeichereRechnung(istRechnung);
            rlist       = model.LadeRechnungen("");
            istRechnung = rlist.First(i => i.Beschreibung == "Testrechnung");


            //Assert
            Assert.IsNotNull(istRechnung);
            Assert.IsTrue(istRechnung.Betrag == 555m);
        }
        public Rechnung Update(Rechnung rechnung)
        {
            using (var tran = CurrentSession.BeginTransaction())
            {
                try
                {
                    if (rechnung.RechnungID == 0)
                    {
                        throw new Exception("For creating a Rechnung please use POST");
                    }
                    CurrentSession.Update(rechnung);
                    tran.Commit();

                    return(rechnung);
                }
                catch (Exception ex)
                {
                    tran.Rollback();
                    throw ex;
                }
            }
        }
        public Rechnung Add(Rechnung rechnung)
        {
            using (var tran = CurrentSession.BeginTransaction())
            {
                try
                {
                    if (rechnung.RechnungID > 0)
                    {
                        throw new Exception(String.Format("A Rechnung with Bid {0} already exists. To update please use PUT.", rechnung.RechnungID));
                    }
                    CurrentSession.Save(rechnung);
                    tran.Commit();

                    return(rechnung);
                }
                catch (Exception ex)
                {
                    tran.Rollback();
                    throw ex;
                }
            }
        }
Example #27
0
        private void btnPrikazRacuna_Click(object sender, EventArgs e)
        {
            //Rechnung r = new Rechnung(allgemein);
            //r.Show();

            if (dgvAllgemein.SelectedCells.Count > 0)
            {
                foreach (DataGridViewRow row in dgvAllgemein.SelectedRows)
                {
                    int allgemeinID = Convert.ToInt32(row.Cells[0].Value);
                    if (_dokument == null)
                    {
                        _dokument             = new Rechnung(allgemein);
                        _dokument.FormClosed += dokument_FormClosed;
                        _dokument.Show();
                    }
                    else
                    {
                        _dokument.Activate();
                    }
                }
            }
        }
Example #28
0
        public Bootstrapper()
        {
            _sessionFactory = CreateSessionFactory();

            //Book b = new Book();
            //b.Author = "Hansi";
            //b.InventoryNumber = "B1";
            //b.Title = "Servus";
            //b.Lended = false;

            //User u = new User();
            //u.Email = "*****@*****.**";
            //u.Username = "******";



            //Lending l = new Lending();
            //l.DateOfLend = DateTime.Now;
            //l.User = u;
            //l.Book = b;

            Postleitzahl postleitzahl = new Postleitzahl();

            postleitzahl.Plz = "2223";
            postleitzahl.Ort = "Hohenruppersdorf";

            Titel titel = new Titel();

            titel.Bezeichnung = "Dr.";
            titel.Vorgestellt = true;

            Kursort kursort = new Kursort();

            kursort.Bezeichnung    = "Raum1";
            kursort.Beschreibung   = "erste Tür rechts";
            kursort.Strasse        = "Brennerweg 8";
            kursort.PostleitzahlID = postleitzahl;

            Kurskategorie kurskategorie = new Kurskategorie();

            kurskategorie.Bezeichnung = "Reise";

            Kurs kurs = new Kurs();

            kurs.Bezeichnung     = "Bez";
            kurs.Preis           = 23.34;
            kurs.MinTeilnehmer   = 1;
            kurs.MaxTeilnehmer   = 4;
            kurs.AnzEinheiten    = 4;
            kurs.Verbindlichkeit = true;
            kurs.Foerderung      = "NÖ-Bildungsförderung";
            kurs.Status          = "kommt zustande";
            kurs.Beschreibung    = "Bei diesem Kurs können Sie das Kochen lernen!";
            kurs.ZeitVon         = DateTime.Now;
            kurs.ZeitBis         = DateTime.Now;
            kurs.DatumVon        = DateTime.Now;
            kurs.DatumBis        = DateTime.Now;
            kurs.Seminarnummer   = "23EG43";
            kurs.KurskategorieID = kurskategorie;
            kurs.KursortID       = kursort;
            kurs.Anmeldeschluss  = DateTime.Now;
            kurs.Anmerkung       = "des passt";

            Termin termin = new Termin();

            termin.TerminDatum   = DateTime.Now;
            termin.TerminBeginn  = DateTime.Now;
            termin.TerminEnde    = DateTime.Now;
            termin.TerminBetreff = "betreff";
            termin.TerminZusatz  = "zusatz";
            termin.TerminIntern  = "intern";
            termin.KursID        = kurs;

            Altersgruppe altersgruppe = new Altersgruppe();

            altersgruppe.Bezeichnung = "zwischen 14 und 18";

            Sozialgruppe sozialgruppe = new Sozialgruppe();

            sozialgruppe.Bezeichnung = "Schüler";

            Staatsbuergerschaft staatsbuergerschaft = new Staatsbuergerschaft();

            staatsbuergerschaft.Staat = "Österreich";

            Kontakt kontakt = new Kontakt();

            kontakt.TitelID               = titel;
            kontakt.Vorname               = "Franz";
            kontakt.Nachname              = "Kautz";
            kontakt.SVNr                  = "4016270900";
            kontakt.Geschlecht            = "m";
            kontakt.Familienstand         = "ledig";
            kontakt.Email                 = "*****@*****.**";
            kontakt.Telefonnummer         = "025748469";
            kontakt.Strasse               = "Milchhausstraße 1";
            kontakt.PostleitzahlID        = postleitzahl;
            kontakt.AltersgruppeID        = altersgruppe;
            kontakt.SozialgruppeID        = sozialgruppe;
            kontakt.StaatsbuergerschaftID = staatsbuergerschaft;

            Bankverbindung bankverbindung = new Bankverbindung();

            bankverbindung.IBAN         = "AT1290909585";
            bankverbindung.Kontoinhaber = "Franz Kautz";
            bankverbindung.KontaktID    = kontakt;

            Rechnung rechnung = new Rechnung();

            rechnung.Rechnungsnummer = "A23";
            rechnung.Rechnungsdatum  = DateTime.Now;
            rechnung.KontaktID       = kontakt;
            rechnung.KursID          = kurs;

            KontaktKurs kontaktkurs = new KontaktKurs();

            //kontaktkurs.Teilnahmebestaetigung = false;
            //kontaktkurs.TeilnahmebestaetigungDatum = DateTime.Now;
            kontaktkurs.Bonus         = true;
            kontaktkurs.Buchungsdatum = DateTime.Now;
            kontaktkurs.Bezahlt       = true;
            kontaktkurs.KontakID      = kontakt;
            kontaktkurs.KursID        = kurs;

            Kursleiter kursleiter = new Kursleiter();

            kursleiter.KontaktID = kontakt;

            KursleiterKurs kursleiterKurs = new KursleiterKurs();

            kursleiterKurs.Honorar      = 324.23;
            kursleiterKurs.KursleiterID = kursleiter;
            kursleiterKurs.KursID       = kurs;

            Gutschein gutschein = new Gutschein();

            gutschein.Bezeichnung = "Geburtstagsgutschein";
            gutschein.Betrag      = 10;

            Pass pass = new Pass();

            pass.KontaktID  = kontakt;
            pass.PassNr     = "AT2342423424324234234";
            pass.PassBeginn = DateTime.Now;
            pass.PassEnde   = DateTime.Now;

            Kassabuchkonto kassabuchkonto = new Kassabuchkonto();

            kassabuchkonto.Kontonummer      = "20004";
            kassabuchkonto.Kontobezeichnung = "Kautz Franz";
            kassabuchkonto.Kontostand       = 300.50;

            Schluessel schluessel = new Schluessel();

            schluessel.Bezeichnung = "Raum 1";
            schluessel.Code        = "1234";
            schluessel.Platz       = "recht oben";
            schluessel.Anmerkung   = "hat nicht gesperrt";
            schluessel.Aktiv       = false;

            Mitgliedschaft mitgliedschaft = new Mitgliedschaft();

            mitgliedschaft.Bezeichnung      = "Theatermitlgiedschaft";
            mitgliedschaft.Mitgliedsbeitrag = 10;
            mitgliedschaft.Ermaessigung     = 3;

            Kassabuch kassabuch = new Kassabuch();

            kassabuch.Datum            = DateTime.Now;
            kassabuch.Buchungstext     = "Einzahlung von Kautz";
            kassabuch.Betrag           = 23;
            kassabuch.KontaktID        = kontakt;
            kassabuch.KassabuchkontoID = kassabuchkonto;

            MitgliedschaftKontakt mitgliedschaftKontakt = new MitgliedschaftKontakt();

            mitgliedschaftKontakt.Kalenderjahr     = 2009;
            mitgliedschaftKontakt.MitgliedschaftID = mitgliedschaft;
            mitgliedschaftKontakt.KontaktID        = kontakt;

            Benutzer benutzer = new Benutzer();

            benutzer.Benutzername = "frakau";
            benutzer.Passwort     = "1234";

            Benutzer benutzer1 = new Benutzer();

            benutzer1.Benutzername = "nichub";
            benutzer1.Passwort     = "1234";

            KontaktGutschein kontaktGutschein = new KontaktGutschein();

            kontaktGutschein.KontaktID   = kontakt;
            kontaktGutschein.GutscheinID = gutschein;
            kontaktGutschein.GetilgtAm   = DateTime.Now;
            kontaktGutschein.GetilgtBei  = "Frau Mustermann";
            kontaktGutschein.Betrag      = 342;

            SchluesselKontakt schluesselKontakt = new SchluesselKontakt();

            schluesselKontakt.SchluesselID = schluessel;
            schluesselKontakt.KontaktID    = kontakt;
            schluesselKontakt.Herausgeber  = "Frau Mustermann";
            schluesselKontakt.AusgabeAm    = DateTime.Now;
            schluesselKontakt.RetourAm     = DateTime.Now;
            schluesselKontakt.Frist        = 30;
            schluesselKontakt.Einsatz      = 25;
            schluesselKontakt.Verlust      = true;


            var session = _sessionFactory.OpenSession();

            using (var tran = session.BeginTransaction())
            {
                try
                {
                    //session.Save(postleitzahl);
                    //session.Save(kursort);
                    //session.Save(titel);
                    //session.Save(kurskategorie);
                    //session.Save(kurs);
                    //session.Save(termin);
                    //session.Save(altersgruppe);
                    //session.Save(sozialgruppe);
                    //session.Save(staatsbuergerschaft);
                    //session.Save(kontakt);
                    //session.Save(bankverbindung);
                    //session.Save(rechnung);
                    //session.Save(kontaktkurs);
                    //session.Save(kursleiter);
                    //session.Save(kursleiterKurs);
                    //session.Save(gutschein);
                    //session.Save(pass);
                    //session.Save(kassabuchkonto);
                    //session.Save(schluessel);
                    //session.Save(mitgliedschaft);
                    //session.Save(kassabuchkonto);
                    //session.Save(kassabuch);
                    //session.Save(mitgliedschaftKontakt);
                    //session.Save(benutzer);
                    //session.Save(benutzer1);
                    //session.Save(kontaktGutschein);
                    //session.Save(schluesselKontakt);

                    tran.Commit();
                }
                catch (Exception ex)
                {
                    tran.Rollback();
                    throw ex;
                }
            }
        }
 public static int Rechnung(Rechnung rechnung) {
     return ((int)rechnung);
 }
        /// <summary>
        /// Ausgabe der Rechnung in Excel Bereich
        /// </summary>
        /// <param name="range">Start-Zelle</param>
        /// <param name="rechnung">Rechnung</param>
        /// <param name="missingValue">Welcher Wert soll leer bleiben</param>
        /// <param name="WithSolution">Lösung ausgeben ?</param>
        private void WriteRechnung(Excel.Range range, Rechnung rechnung, AufgabenStellung missingValue = AufgabenStellung.ErgebnisFehlt, bool ShowSolution = false)
        {
            try
            {
                FormatNumber(range, rechnung.A, missingValue == AufgabenStellung.AFehlt, ShowSolution);
                range.Offset[0, 1].Value = Config.Rechenzeichen[(int)rechnung.Operator];
                FormatNumber(range.Offset[0, 2], rechnung.B, missingValue == AufgabenStellung.BFehlt, ShowSolution);
                range.Offset[0, 3].Value = "=";
                FormatNumber(range.Offset[0, 4], rechnung.R, missingValue == AufgabenStellung.ErgebnisFehlt, ShowSolution);
            }
            catch
            {

                // Ignore
            }
        }
Example #31
0
        public MainVM()
        {
            //CultureInfo.CurrentUICulture = new CultureInfo("de-DE", false);
            //Kunden = new ObservableCollection<Kunde>(Kundenverwaltung.Instance.GetKunden().OrderBy(k => k.KundenNummer));
            Buchhaltung.Instance.Load();
            Kundenverwaltung.Instance.Load();
            Rechnungen = new ObservableCollection <Rechnung>(Buchhaltung.Instance.GetRechnungen().OrderBy(r => r.RechnungsNummer));

            SaveCommand = new RelayCommand((o) =>
            {
                Rechnung vorhanden = Buchhaltung.Instance.GetRechnungen().Find(r => r.RechnungsNummer == RechnungsNummer);
                if (vorhanden == null && RechnungsNummer > 0 && KundenNummer > 0 && Kundenverwaltung.Instance.GetKunden().Find(k => k.KundenNummer == KundenNummer) != null)
                {
                    Rechnung r = new Rechnung();
                    if (DateTime.TryParse(DatumBegleichung, out DateTime dasDatum))
                    {
                        r.RechnungsNummer  = RechnungsNummer;
                        r.DatumFaelligkeit = DateTime.Parse(DatumFaelligkeit);
                        r.KundenNummer     = KundenNummer;
                        r.SummeRechnung    = Convert.ToDouble(SummeRechnung, System.Globalization.CultureInfo.CurrentCulture);
                        r.DatumBegleichung = dasDatum;
                        Buchhaltung.Instance.AddRechnung(r);
                        Rechnungen.Add(r);
                        Buchhaltung.Instance.Save(r);
                        Cancel(o);
                    }
                    else if (!DateTime.TryParse(DatumBegleichung, out DateTime nichts))
                    {
                        r.RechnungsNummer  = RechnungsNummer;
                        r.DatumFaelligkeit = DateTime.Parse(DatumFaelligkeit);
                        r.KundenNummer     = KundenNummer;
                        r.SummeRechnung    = Convert.ToDouble(SummeRechnung, System.Globalization.CultureInfo.CurrentCulture);
                        r.DatumBegleichung = null;
                        Buchhaltung.Instance.AddRechnung(r);
                        Rechnungen.Add(r);
                        Buchhaltung.Instance.Save(r);
                        Cancel(o);
                    }
                }
                else if (vorhanden != null)
                {
                    MessageBox.Show("Rechnungsnummer existert bereits");
                }
                else if (RechnungsNummer <= 0)
                {
                    MessageBox.Show("Rechnungsnummer muss größer als 0 sein");
                }
                else if (KundenNummer <= 0)
                {
                    MessageBox.Show("Kundennummer muss größer als 0 sein");
                }
                else if (Kundenverwaltung.Instance.GetKunden().Find(k => k.KundenNummer == KundenNummer) == null)
                {
                    MessageBox.Show($"Es existiert kein Kunde mit der {KundenNummer}");
                }
            });

            CancelCommand = new RelayCommand(Cancel);

            ExitCommand = new RelayCommand(Exit);

            SearchCommand = new RelayCommand((o) =>
            {
                Rechnungen = new ObservableCollection <Rechnung>(Buchhaltung.Instance.GetRechnungen().FindAll(r => r.KundenNummer.Equals(RechnungSuchen)));
            });

            SortCommand = new RelayCommand((o) =>
            {
                if (Sortieren == "Rechnung sortieren")
                {
                    Rechnungen = new ObservableCollection <Rechnung>(Buchhaltung.Instance.GetRechnungen().OrderBy(r => r.RechnungsNummer)); //.OrderBy(u => u.KundenNummer));
                    Sortieren  = "Kunden sortieren";
                }
                else if (Sortieren == "Kunden sortieren")
                {
                    Rechnungen = new ObservableCollection <Rechnung>(Buchhaltung.Instance.GetRechnungen().OrderBy(r => r.KundenNummer));
                    Sortieren  = "Rechnung sortieren";
                }
            });

            SelectCommand = new RelayCommand(SelectRechnung);

            ChangeCommand = new RelayCommand((o) =>
            {
                Rechnung vorhanden = Buchhaltung.Instance.GetRechnungen().Find(r => r.RechnungsNummer == RechnungsNummer);
                bool[] geandert    = new bool[4] {
                    false, false, false, false
                };
                if (RechnungsNummer > 0 && KundenNummer > 0)
                {
                    Rechnung r = new Rechnung();
                    if (DateTime.TryParse(DatumBegleichung, out DateTime dasDatum))
                    {
                        r.RechnungsNummer  = RechnungsNummer;
                        r.DatumFaelligkeit = DateTime.Parse(DatumFaelligkeit);
                        r.KundenNummer     = KundenNummer;
                        r.SummeRechnung    = Convert.ToDouble(SummeRechnung, System.Globalization.CultureInfo.CurrentCulture);
                        r.DatumBegleichung = dasDatum;
                    }
                    else if (!DateTime.TryParse(DatumBegleichung, out DateTime gehtehnicht))
                    {
                        r.RechnungsNummer  = RechnungsNummer;
                        r.DatumFaelligkeit = DateTime.Parse(DatumFaelligkeit);
                        r.KundenNummer     = KundenNummer;
                        r.SummeRechnung    = Convert.ToDouble(SummeRechnung, System.Globalization.CultureInfo.CurrentCulture);
                        r.DatumBegleichung = null;
                    }
                    if (r.DatumFaelligkeit != vorhanden.DatumFaelligkeit)
                    {
                        geandert[0] = true;
                    }
                    if (r.KundenNummer != vorhanden.KundenNummer)
                    {
                        geandert[1] = true;
                    }
                    if (r.SummeRechnung != vorhanden.SummeRechnung)
                    {
                        geandert[2] = true;
                    }
                    if (r.DatumBegleichung != vorhanden.DatumBegleichung)
                    {
                        geandert[3] = true;
                    }

                    Buchhaltung.Instance.RemoveRechnung(vorhanden);
                    Buchhaltung.Instance.AddRechnung(r);
                    Buchhaltung.Instance.Change(r, geandert);
                    Rechnungen = new ObservableCollection <Rechnung>(Buchhaltung.Instance.GetRechnungen().OrderBy(re => re.RechnungsNummer));
                    Cancel(o);
                }
                else if (RechnungsNummer > 0)
                {
                    MessageBox.Show("Rechnungsnummer muss größer als 0 sein");
                }
                else if (KundenNummer <= 0)
                {
                    MessageBox.Show("Kundennummer muss größer als 0 sein");
                }
            });
        }
Example #32
0
 private void Awake()
 {
     rechnung = GameObject.FindObjectOfType <Rechnung> ();
 }
        public Rechnung GenerateRechnung()
        {
            if (rnd == null)
                rnd = new Random();

            Rechnung r = new Rechnung();
            r.Operator = Config.SelectedOperators[rnd.Next(Config.SelectedOperators.Count)];
            int min = 0, max = 0;

            switch (r.Operator)
            {
                case GrundrechenArten.Plus:
                    min = !Config.AllowZero ? 1 : 0;
                    max = Math.Min(Config.MaxResult - min, Config.MaxSummand);
                    r.A = rnd.Next(min, max + 1);
                    max = Math.Min(Config.MaxResult - r.A, Config.MaxSummand);
                    r.B = rnd.Next(min, max + 1);
                    break;

                case GrundrechenArten.Minus:
                    min = !Config.AllowZero ? 2 : 0;
                    max = Math.Min(Config.MaxResult, Config.MaxSummand);
                    r.A = rnd.Next(min, max + 1);
                    min = !Config.AllowZero ? 1 : 0;
                    max = Math.Min(r.A - min, Config.MaxSummand);
                    r.B = rnd.Next(min, max + 1);
                    break;

                case GrundrechenArten.Mal:
                    if (Config.AllowedFaktors == null || Config.AllowedFaktors.Count == 0)
                    {
                        // Faktor A  (0/1/2) - Wurzel(MAX)
                        min = !Config.AllowOne ? 2 : (!Config.AllowZero ? 1 : 0);
                        max = Math.Min((int)Math.Sqrt(Config.MaxResult), Config.MaxFaktor);
                        r.A = rnd.Next(min, max + 1);
                        max = Math.Min(Config.MaxResult / r.A, Config.MaxFaktor);
                        r.B = rnd.Next(min, max + 1);

                        // Zufällig Operanten tauschen, damit auch große Zahlen vorne sein können
                        if (rnd.Next() > 0.5)
                            r.SwitchAB();
                    }
                    else
                    {
                        // nur bestimmte Einmal-Eins sind erlaubt
                        r.B = Config.AllowedFaktors[rnd.Next(0, Config.AllowedFaktors.Count)];
                        min = !Config.AllowOne ? 2 : (!Config.AllowZero ? 1 : 0);
                        max = Math.Min(Config.MaxResult / r.B, Config.MaxFaktor);
                        r.A = rnd.Next(min, max + 1);
                    }
                    break;

                case GrundrechenArten.Geteilt:
                    min = !Config.AllowOne ? 2 : (!Config.AllowZero ? 1 : 0);
                    max = Math.Min((int)Math.Sqrt(Config.MaxResult), Config.MaxFaktor);
                    r.B = rnd.Next(min, max);
                    max = Math.Min(Config.MaxResult / r.B, Config.MaxFaktor);
                    r.R = rnd.Next(min, max);

                    // Zufällig Operanten tauschen, damit auch große Zahlen vorne sein können
                    if (rnd.Next() > 0.5)
                    {
                        int t = r.R;
                        r.R = r.B;
                        r.B = t;
                    }

                    r.A = r.R * r.B;
                    break;

            }

            return r;
        }
Example #34
0
 public static double Mehrwertsteuer(this Rechnung r)
 {
     return(r.Summe * 1.19);
 }