public PokladniZaznam VytvorZaznam(PokladniZaznam pokladniZaznam) { List <PokladniZaznam> data = NactiVse(); if (data.Find(doklad => doklad.Datum > pokladniZaznam.Datum) == null) // vkládaný záznam je poslední { data.Sort((a, b) => a.IdPokladniZaznam.CompareTo(b.IdPokladniZaznam)); pokladniZaznam.IdPokladniZaznam = data.Last().IdPokladniZaznam + 1; data.Sort((a, b) => a.Datum.CompareTo(b.Datum)); if (data.Last().Datum.Month == pokladniZaznam.Datum.Month) { pokladniZaznam.Cislo = data.Last().Cislo + 1; } else { pokladniZaznam.Cislo = 1; } pokladniZaznam.Zustatek = data.Last().Zustatek + pokladniZaznam.Castka; } // vkládaný záznam není poslední else { // Id bude nejvyšší +1 data.Sort((a, b) => a.IdPokladniZaznam.CompareTo(b.IdPokladniZaznam)); pokladniZaznam.IdPokladniZaznam = data.Last().IdPokladniZaznam + 1; // Číslo bude o jedna vyšší než poslední ve stejném měsíci List <PokladniZaznam> dataMesice = data.FindAll(doklad => doklad.Datum.Year == pokladniZaznam.Datum.Year && doklad.Datum.Month == pokladniZaznam.Datum.Month); dataMesice.Sort((a, b) => a.Cislo.CompareTo(b.Cislo)); if (dataMesice.Count > 0) { if (dataMesice.Find(doklad => doklad.Datum > pokladniZaznam.Datum) == null) // je poslední v rámci měsíce { pokladniZaznam.Cislo = dataMesice.Last().Cislo + 1; } else { int index = dataMesice.FindIndex(doklad => doklad.Datum > pokladniZaznam.Datum); pokladniZaznam.Cislo = dataMesice[index].Cislo; for (int i = index; i < dataMesice.Count; i++) { dataMesice[i].Cislo += 1; } } } else { pokladniZaznam.Cislo = 1; } // Zůstatek je } data.Add(pokladniZaznam); string json = JsonConvert.SerializeObject(data); File.WriteAllText(datovySoubor, json); return(pokladniZaznam); }
private void btnUlozitJakoNovy_Click(object sender, EventArgs e) { PokladniZaznam novyZaznam = new PokladniZaznam(dtpDatum.Value , txtPopis.Text , (double)numCastka.Value , txtPoznamka.Text); repositar.VytvorZaznam(novyZaznam); NactiDataAktMesic(); txtPopis.Text = ""; numCastka.Value = 0; txtPoznamka.Text = ""; }
public PokladniZaznam VytvorZaznam(PokladniZaznam pokladniZaznam) { PokladniZaznam result = pokladniZaznam; PokladniZaznam z = pokladniZaznam; using (SqlConnection sqlConnection = new SqlConnection(connString)) { string dotaz = $"insert into PokladniZaznamy(Cislo ,Datum ,Popis ,Castka ,Zustatek ,Poznamka ) " + $"values({z.Cislo},'{z.Datum.ToString("yyyyMMdd")}','{z.Popis}',{z.Castka},{z.Zustatek},'{z.Poznamka}')"; using (SqlCommand sqlCommand = new SqlCommand(dotaz, sqlConnection)) { sqlConnection.Open(); sqlCommand.ExecuteNonQuery(); sqlConnection.Close(); } } return(result); }
public PokladniZaznam VytvorZaznam(PokladniZaznam pokladniZaznam) { throw new NotImplementedException(); }
public void UpravZaznam(PokladniZaznam pokladniZaznam) { throw new NotImplementedException(); }