private async void ShowHideDetails(object sender, System.Windows.RoutedEventArgs e) { Dokumentacija doc = DataGrid.SelectedItem as Dokumentacija; var dataProvider = new EFCoreDataProvider(); if (await dataProvider.DokumentImaPDFFajl(doc.IDDokumenta)) // Otvori taj fajl, da li je StatusDokumenta isto kao i to Da li ima pdf fajl??? za sad jeste { string filename = "temp.pdf"; File.WriteAllBytes(filename, (await dataProvider.GetPDFAsync(doc.IDDokumenta)).PDFFajl); //ovo kreira lokalni pdf fajl od bajtova System.Diagnostics.Process.Start(filename); // Otvara ga u default pdf vieweru } else // Prilozi pdf fajl { byte[] a; OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "PDF dokument | *.pdf"; if (dlg.ShowDialog() == true) { // Kreira se i prikazu progressWindows sa porukom dok se vrsi slanje dokumenta na server var progressWindow = new ProgressWindow("Upload PDF dokumenta"); progressWindow.Show(); string path = dlg.FileName.ToString(); a = File.ReadAllBytes(path); //ovo pretvara izabrani fajl u bajtove // Dodavanje novog PDF u tabelu await dataProvider.AddPDFAsync(new PDF { IDDokumenta = doc.IDDokumenta, PDFFajl = a }, Helper.TrenutniKorisnik); //Update dokumenta doc.StatusDokumenta = true; doc.Datum = DateTime.Now.ToString(); await dataProvider.UpdateDokumentAsync(doc); // ProgressWindow moze da se zatvori progressWindow.Close(); // Update podataka koji se prikazuju u dataGridu ProveriKojiDokumentiImajuUslov(); UpdateDataGrid(); } } }
private async void Potvrdi_Click(object sender, RoutedEventArgs e) { var dataProvider = new EFCoreDataProvider(); // Dodavanje podataka za trenutni projekat ZapocetiProjekat.DatumPocetka = dpDatumPocetkaProjekta.DisplayDate.ToShortDateString(); ZapocetiProjekat.StanjeProjekta = "Aktivan"; // Kreiranje i prikazivanje progress windowa var progressWindow = new ProgressWindow("Kreiranje projekta u toku..."); progressWindow.Show(); // U bazi se kreira novi projekat i za njega se kreiraju odgovarajuca dokumenta var listaDokumenata = GetListuDokumenata(ZapocetiProjekat.VrstaProjekta); await dataProvider.KreirajProjekatIDodajDokumenta(ZapocetiProjekat, listaDokumenata); // Unose se generalni troskovi - neka default vrednosti, 1 uplata, ukupnonovca = 100 await dataProvider.AddGeneralniTrosakAsync(new GeneralniTrosak { IDProjekta = ZapocetiProjekat.IDProjekta, BrojUplata = 1, Procenti = "100", UkupnoNovca = 100 }); // TODO: Ovde mogu i ostali atributi informaicje o lokaciji da se unose if (informacijaOLokaciji != null) // Ako je vec uneta informacija o lokaciji onda se ona pamti u bazi pri kreiranju projekta { await dataProvider.AddPDFAsync(new PDF { IDDokumenta = listaDokumenata[0].IDDokumenta, PDFFajl = informacijaOLokaciji }, Helper.TrenutniKorisnik); } // Zatvaranja ProgressWindow-a progressWindow.Close(); // Prelazak na ClanoviProjektaPage var parent = (Parent as MainWindow); Helper.TrenutniProjekat = ZapocetiProjekat; parent.Content = new ClanoviProjektaPage(); }