public async Task <ActionResult <Lasku> > PostLasku([FromForm] Lasku lasku) { _context.Laskut.Add(lasku); await _context.SaveChangesAsync(); return(CreatedAtAction("GetLasku", new { id = lasku.LaskuId }, lasku)); }
public async Task <IActionResult> PutLasku(int id, [FromForm] Lasku lasku) { if (id != lasku.LaskuId) { return(BadRequest()); } _context.Entry(lasku).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!LaskuExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public void BillTest() { Lasku lasku = new Lasku(); float expected = (0.75f * 3) + (0.90f * 4) + 3.95f + 1.20f; lasku.Tuotteet.Add(new Product("Makkara", 0.75f), 3); lasku.Tuotteet.Add(new Product("Kalja", 0.90f), 4); lasku.Tuotteet.Add(new Product("Kahvi", 3.95f), 1); lasku.Tuotteet.Add(new Product("Sipsi", 1.20f), 1); lasku.Bill(); float actual = lasku.Kokonaishinta; Assert.AreEqual(expected, actual); }
// 3.3 Laskutuksen koodi. Laskuun ilmestyy automaattisesti asiakkaan tiedot valitusta varauksesta public Laskutus(Primary p, Lasku l) { InitializeComponent(); this.p = p; this.l = l; if (this.l.Varaus.Vahvistus_pvm.Equals(DateTime.Parse("1970-01-01 00:00:00"))) { btnVarmenna.Enabled = true; } TByht.Text = l.Summa.ToString(); TBAsiakas.Text = l.Varaus.Asiakas.ToString(); TBnum.Text = l.Lasku_id.ToString(); TBerapvm.Text = l.Erapaiva.ToString("dd-MM-yyyy"); TBpvm.Text = DateTime.Now.ToString("dd-MM-yyyy"); string lisatiedot = l.Varaus.Mokki.Kuvaus + "\r\n" + l.Varaus.Mokki.Varustelu + "\r\n"; string summat = l.Varaus.Alkupvm_varaus.ToString("yyyy-MM-dd") + " - " + l.Varaus.Loppupvm_varaus.ToString("yyyy-MM-dd") + "\r\n"; if (l.Varaus.Alkupvm_varaus == l.Varaus.Loppupvm_varaus) { summat += 1 + " päivä(ä), " + l.Varaus.Mokki.Hinta * 1 + "€"; } else { summat += (l.Varaus.Loppupvm_varaus - l.Varaus.Alkupvm_varaus).TotalDays.ToString() + " päivä(ä), " + l.Varaus.Mokki.Hinta * (l.Varaus.Loppupvm_varaus - l.Varaus.Alkupvm_varaus).TotalDays + "€"; } foreach (KeyValuePair <int, int> item in l.Varaus.Varauksenpalvelut) { Palvelu pa = this.p.Palvelut.Find(i => i.Palvelu_id == item.Key); lisatiedot += "\r\n" + pa.Nimi + pa.Hinta.ToString() + " €/kpl\r\nx" + item.Value; summat += "\r\nx" + item.Value + " * " + pa.Hinta.ToString() + "€" + " = " + (item.Value * pa.Hinta) + "€"; } TBlisatiedot.Text = lisatiedot; summat += "\r\nSumma (ilman ALV):" + l.SummaEiAlv + "€"; summat += "\r\nALV (24%):" + l.Alv + "€"; TBLaskutus.Text = summat; }
private void luoLaskuBtn_Click(object sender, EventArgs e) { bool voikoLuoda = true; //Luodaan asiakas ja laitetaan asiakkaalle tiedot Asiakas asiakas = new Asiakas(); asiakas.Sukunimi = sukunimiCBox.Text; asiakas.Etunimi = etunimiCBox.Text; asiakas = handler.HaeAsiakasNimellä(asiakas); //Luodaan yritys ja haetaan sille tiedot Yritys yritys = new Yritys(); yritys = handler.HaeYritys(id); DateTime dateAndTime = DateTime.Now; DateTime eräpäivä = dateAndTime.AddDays(14); //Luodaan lasku ja laitetaan laskulle tiedot Lasku lasku = new Lasku(); int laskunID; lasku.Päivämäärä = dateAndTime; lasku.Eräpäivä = eräpäivä; lasku.AsiakasID = asiakas.Id; try { lasku.Laskutuskausi = laskutusCbox.SelectedItem.ToString(); } catch (Exception) { MessageBox.Show("Et valinnut laskutuskautta", "!Huom"); voikoLuoda = false; } if (voikoLuoda == true) { laskunID = handler.TallennaLasku(lasku); string viitenumero; viitenumero = Viitenumero(asiakas, laskunID); // luodaan pdf tiedosto ja sille olennaiset ominaisuudet PdfLoadedDocument loadedDocument = new PdfLoadedDocument(Properties.Resources.laskupohja); PdfLoadedForm loadedForm = loadedDocument.Form; PdfLoadedPage loadedPage = loadedDocument.Pages[0] as PdfLoadedPage; PdfTemplate template = loadedPage.CreateTemplate(); PdfDocument document = new PdfDocument(); document.PageSettings.SetMargins(2); PdfPage page = document.Pages.Add(); PdfGraphics graphics = page.Graphics; graphics.DrawPdfTemplate(template, PointF.Empty, new SizeF(page.Size.Width, page.Size.Height)); PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 20); float veroYhteensä, määrä, verotonHinta, hinta, yhteensä; float.TryParse(hintaTbox.Text, out hinta); float.TryParse(määräTbox.Text, out määrä); verotonHinta = hinta * määrä; veroYhteensä = verotonHinta * 1.24f - verotonHinta; yhteensä = verotonHinta + veroYhteensä; //Viedään tietoa dokumenttiin (loadedForm.Fields[0] as PdfLoadedTextBoxField).Text = dateAndTime.ToString("dd/MM/yyyy"); (loadedForm.Fields[1] as PdfLoadedTextBoxField).Text = "7%"; //Viivästyskorko (loadedForm.Fields[2] as PdfLoadedTextBoxField).Text = laskunID.ToString(); //Laskunumero (loadedForm.Fields[3] as PdfLoadedTextBoxField).Text = asiakas.YTunnus; // Asiakkaan Y-Tunnus (loadedForm.Fields[4] as PdfLoadedTextBoxField).Text = maksuehtoTbox.Text; // Maksuehto (loadedForm.Fields[5] as PdfLoadedTextBoxField).Text = ""; // Viitteemme (loadedForm.Fields[6] as PdfLoadedTextBoxField).Text = eräpäivä.ToString("dd/MM/yyyy"); // Eräpäivä (loadedForm.Fields[7] as PdfLoadedTextBoxField).Text = ""; // Viittenne (loadedForm.Fields[8] as PdfLoadedTextBoxField).Text = toimitusehtoTbox.Text; // Toimitusehto (loadedForm.Fields[63] as PdfLoadedTextBoxField).Text = verotonHinta.ToString(); // Veroton yhteensä (loadedForm.Fields[64] as PdfLoadedTextBoxField).Text = veroYhteensä.ToString(); // ALV yhteensä (loadedForm.Fields[65] as PdfLoadedTextBoxField).Text = yhteensä.ToString(); // Verollinen yhteensä (loadedForm.Fields[70] as PdfLoadedTextBoxField).Text = yhteensä.ToString(); // Yhteensä (loadedForm.Fields[71] as PdfLoadedTextBoxField).Text = EtunimiLbl.Text + " " + sukunimiLbl.Text + "\n" + osoiteLbl.Text + "\n" + postinumeroLbl.Text + " " + postitoimipaikkaLbl.Text; // Asiakkaan tiedot (loadedForm.Fields[68] as PdfLoadedTextBoxField).Text = eräpäivä.ToString("dd/MM/yyyy"); // Eräpäivä (loadedForm.Fields[75] as PdfLoadedTextBoxField).Text = yritys.Nimi + "\n" + yritys.Osoite + "\n" // Laskun lähettäjän tiedot + yritys.Postinumero + " " + yritys.Postiosoite; // Laskun lähettäjän tiedot (loadedForm.Fields[66] as PdfLoadedTextBoxField).Text = yritys.Iban; // IBAN (loadedForm.Fields[67] as PdfLoadedTextBoxField).Text = yritys.Bicswift; // BIC/SWIFT = 67 (loadedForm.Fields[69] as PdfLoadedTextBoxField).Text = viitenumero; // Viitenumero = 69 (loadedForm.Fields[9] as PdfLoadedTextBoxField).Text = nimikeTbox.Text; // Nimike (loadedForm.Fields[10] as PdfLoadedTextBoxField).Text = määräTbox.Text; // Määrä (loadedForm.Fields[11] as PdfLoadedTextBoxField).Text = "kpl"; // Yks. (loadedForm.Fields[12] as PdfLoadedTextBoxField).Text = hintaTbox.Text; // hinta (loadedForm.Fields[13] as PdfLoadedTextBoxField).Text = "24%"; // Alv % (loadedForm.Fields[14] as PdfLoadedTextBoxField).Text = yhteensä.ToString(); // Verollinen yhteensä //Tällä luupilla voi katsoa missä kohdassa mikäkin field on. //for (int i = 0; i < 76; i++) //{ // (loadedForm.Fields[i] as PdfLoadedTextBoxField).Text = i.ToString(); //} // tallenetaan dokumentti loadedDocument.Save("Lasku.pdf"); document.Save("UusiLasku.pdf"); loadedDocument.Close(true); document.Close(true); Process.Start("Lasku.pdf"); // Tarkistetaan onko laskun tiedot saatu tallennettua if (laskunID != 0) { MessageBox.Show("Laskun tiedot tallennettiin tietokantaan", "Huom"); } else { MessageBox.Show("Laskun tietoja ei saatu tallennettua", "Huom"); } } }
public int TallennaLasku(Lasku lasku) { return(dbController.TallennaLasku(lasku)); }