private void uiActionSpremi_Click(object sender, EventArgs e) { Sloj_pristupa_podacima.Artikl artikl = new Sloj_pristupa_podacima.Artikl(); try { artikl.godina_proizvodnje = int.Parse(uiInputGodinaProizvodnjeDijela.Text); artikl.opis_artikla = uiInputOpisRezervnogDijela.Text; artikl.naziv_artikla = uiInputNazivRezervnogDijela.Text; artikl.cijena_artikla = double.Parse(uiInputCijenaRezervnogDijela.Text); artikl.vrsta_artikla = 1; artikl.minimalna_kolicina = int.Parse(uiInputMinimalnaKolicina.Text); artikl.vrijeme_dostave = int.Parse(uiInputVrijemeDostave.Text); int kolicina = int.Parse(uiInputKolicina.Text); if (Sloj_poslovne_logike.UpravljanjeSkladistem.UpravljanjeSkladistemBLL.ProvjeraUnosaRezervnogDijela(artikl, kolicina) == true) { Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.KreiranjeArtikla(artikl, cbInputSkladiste.SelectedItem as Sloj_pristupa_podacima.Skladiste, kolicina); FormUpravljanjeSkladistem.OsvjeziPopisArtikala(); DnevnikRadaDLL.DnevnikLogin.ZapisiZapis(DnevnikRadaDLL.RadnjaDnevnika.KREIRANJE_REZERVNOG_DIJELA); } else { MessageBox.Show("Niste unijeli odgovarajuće parametre! Za pomoć pritisnite F1."); } } catch (Exception) { MessageBox.Show("Morate unijeti sve parametre"); } }
private void uiActionAzuriraj_Click(object sender, EventArgs e) { Sloj_pristupa_podacima.Artikl artikl = new Sloj_pristupa_podacima.Artikl(); try { artikl.id_artikl = proslijedeniArtikl.id_artikl; artikl.godina_proizvodnje = int.Parse(uiInputGodinaProizvodnjeDijela.Text); artikl.opis_artikla = uiInputOpisRezervnogDijela.Text; artikl.naziv_artikla = uiInputNazivRezervnogDijela.Text; artikl.cijena_artikla = double.Parse(uiInputCijenaRezervnogDijela.Text); artikl.vrsta_artikla = 1; artikl.minimalna_kolicina = int.Parse(uiInputMinimalnaKolicina.Text); artikl.vrijeme_dostave = int.Parse(uiInputVrijemeDostave.Text); if (Sloj_poslovne_logike.UpravljanjeSkladistem.UpravljanjeSkladistemBLL.ProvjeraUnosaRezervnogDijelaKodAzuriranja(artikl) == true) { Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.AzurirajArtikl(artikl); FormUpravljanjeSkladistem.OsvjeziPopisArtikala(); DnevnikRadaDLL.DnevnikLogin.ZapisiZapis(DnevnikRadaDLL.RadnjaDnevnika.AZURIRAJ_ARTIKL); } else { MessageBox.Show("Niste unijeli odgovarajuće parametre! Za pomoć pritisnite F1."); } } catch (Exception) { MessageBox.Show("Morate unijeti sve parametre"); } }
private static int ProsjecnoVrijemePoNarudzbi(Sloj_pristupa_podacima.Artikli_na_skladistu ans) { Sloj_pristupa_podacima.Artikl artikl = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiArtikl(ans.artikl); int ukupnoDanaProdaje = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.BrojRacunaProdanogArtikala(artikl); int sumaIntervalaNarudzbe = 0; if (ukupnoDanaProdaje > 0) { List <Sloj_pristupa_podacima.Stavke_dokumenta> stavke = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiStavkeDokumentaOdabranogArtikla(artikl, INTERVAL_NARUDZBE); for (int i = stavke.Count - 1; i > 0; i--) { Sloj_pristupa_podacima.Dokument d1 = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiDokument(stavke[i].dokument); Sloj_pristupa_podacima.Dokument d2 = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiDokument(stavke[i - 1].dokument); int brojDana = d1.datum_izdavanja.Subtract(d2.datum_izdavanja).Days; sumaIntervalaNarudzbe += brojDana; } int kolicnik = sumaIntervalaNarudzbe /= ukupnoDanaProdaje; if (kolicnik > 0) { return(kolicnik); } else { return(1); } } return(10); }
private void uiActionSpremi_Click(object sender, EventArgs e) { Sloj_pristupa_podacima.Artikl artikl = new Sloj_pristupa_podacima.Artikl(); try { artikl.godina_proizvodnje = int.Parse(uiInputGodinaProizvodnje.Text); artikl.emisija_vozila = int.Parse(uiInputEmisijaVozila.Text); artikl.snaga_vozila = int.Parse(uiInputSnagaVozila.Text); artikl.opis_artikla = uiInputOpisArtikla.Text; artikl.vrsta_goriva = (uiInputVrstaGoriva.SelectedItem as VrsteGoriva).Gorivo; artikl.naziv_artikla = uiInputNazivArtikla.Text; artikl.cijena_artikla = float.Parse(uiInputCijenaArtikla.Text); artikl.vrsta_artikla = 2; artikl.minimalna_kolicina = int.Parse(uiInputMinimalnaKolicina.Text); artikl.vrijeme_dostave = int.Parse(uiInputVrijemeDostave.Text); int kolicina = int.Parse(uiInputKolicina.Text); if (UpravljanjeSkladistemBLL.ProvjeraUnosaVozila(artikl, kolicina) == true) { Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.KreiranjeArtikla(artikl, cbinputSkladiste.SelectedItem as Sloj_pristupa_podacima.Skladiste, kolicina); FormUpravljanjeSkladistem.OsvjeziPopisArtikala(); DnevnikRadaDLL.DnevnikLogin.ZapisiZapis(DnevnikRadaDLL.RadnjaDnevnika.KREIRANJE_VOZILA); } else { MessageBox.Show("Niste unijeli odgovarajuće parametre! Za pomoć pritisnite F1."); } } catch (Exception) { MessageBox.Show("Morate unijeti sve parametre!"); } }
private static DateTime PredvidiDanNarudzbe(Sloj_pristupa_podacima.Artikli_na_skladistu ans, int sljedecaNarudzba, int kolicinaNarudzbe) { Sloj_pristupa_podacima.Artikl artikl = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiArtikl(ans.artikl); List <Sloj_pristupa_podacima.Stavke_dokumenta> stavke = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiStavkeDokumentaOdabranogArtikla(artikl, INTERVAL_NARUDZBE); if (stavke.Count > 0) { Sloj_pristupa_podacima.Dokument d3 = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiDokument(stavke.Last().dokument); DateTime vrijemeZadnjeNarudzbe = d3.datum_izdavanja; int trenutnaKolicina = ans.kolicina; while (true) { if (trenutnaKolicina - kolicinaNarudzbe >= MINIMALNA_KOLICINA) { trenutnaKolicina -= kolicinaNarudzbe; vrijemeZadnjeNarudzbe = vrijemeZadnjeNarudzbe.AddDays(sljedecaNarudzba); } else { break; } } return(vrijemeZadnjeNarudzbe); } else { return(DateTime.Now.AddDays(30)); } }
private void uiActionBrisanje_Click(object sender, EventArgs e) { ActivateButton(sender); Sloj_pristupa_podacima.Artikl artikl = new Sloj_pristupa_podacima.Artikl(); artikl = dgvSviArtikliNaSkladistu.CurrentRow.DataBoundItem as Sloj_pristupa_podacima.Artikl; Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.BrisanjeArtikla(artikl); DnevnikRadaDLL.DnevnikLogin.ZapisiZapis(DnevnikRadaDLL.RadnjaDnevnika.BRISANJE_ARTIKLA); OsvjeziPopisArtikala(); }
public static bool ProvjeraUnosaVozilaKodAzuriranja(Sloj_pristupa_podacima.Artikl artikl) { if (artikl.naziv_artikla == "" || artikl.opis_artikla == "" || artikl.cijena_artikla <= 0 || artikl.godina_proizvodnje < 1900 || artikl.emisija_vozila <= 0 || artikl.snaga_vozila <= 0 || artikl.vrsta_goriva == null || artikl.minimalna_kolicina <= 0 || artikl.vrijeme_dostave <= 0) { return(false); } else { return(true); } }
public static bool ProvjeraUnosaRezervnogDijelaKodAzuriranja(Sloj_pristupa_podacima.Artikl artikl) { if (artikl.naziv_artikla == "" || artikl.opis_artikla == "" || artikl.cijena_artikla <= 0 || artikl.godina_proizvodnje < 1900 || artikl.minimalna_kolicina <= 0 || artikl.vrijeme_dostave <= 0) { return(false); } else { return(true); } }
private static int AverageKolicineNarudzbe(Sloj_pristupa_podacima.Artikli_na_skladistu ans) { Sloj_pristupa_podacima.Artikl artikl = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiArtikl(ans.artikl); int kolicina = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.BrojProdanihArtikala(artikl); int brojRacuna = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.BrojRacunaProdanogArtikala(artikl); if (kolicina > 0 && brojRacuna > 0) { return((int)kolicina / (int)brojRacuna); } return(1); }
private void uiActionAzuriranje_Click(object sender, EventArgs e) { ActivateButton(sender); Sloj_pristupa_podacima.Artikl artikl = new Sloj_pristupa_podacima.Artikl(); artikl = dgvSviArtikliNaSkladistu.CurrentRow.DataBoundItem as Sloj_pristupa_podacima.Artikl; if (artikl.vrsta_artikla == 2) { PrikaziFormuAzuriranjeVozila(FormKreirajVozilo.Instance, sender, artikl); } else { PrikaziFormuAzuriranjeRezervnogDijela(FormKreirajRezervniDio.instance, sender, artikl); } }
private void dgvProdajniArtikli_DoubleClick(object sender, EventArgs e) { Sloj_pristupa_podacima.Artikl odabraniArtikl = dgvProdajniArtikli.CurrentRow.DataBoundItem as Sloj_pristupa_podacima.Artikl; if (Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.ProvjeraDostupnostiArtikla(odabraniArtikl) == true) { odabraniArtikli.Add(odabraniArtikl); suma += odabraniArtikl.cijena_artikla; OsvjeziOdabraneArtikle(); } else { MessageBox.Show("Odabrani artikl nije dostupan na skladištu."); PrikazFormeKreiranjaNarudzbe(FormKreirajNarudzbu.Instance, sender, odabraniArtikl); } }
public static string PredvidiVrijemeNarudzbe(Sloj_pristupa_podacima.Artikli_na_skladistu ans) { Sloj_pristupa_podacima.Artikl artikl = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiArtikl(ans.artikl); MINIMALNA_KOLICINA = artikl.minimalna_kolicina; MINIMALNA_DONJA_GRANICA_U_DANIMA = artikl.vrijeme_dostave; if (MINIMALNA_KOLICINA >= ans.kolicina) { return(DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss")); } else { int prosjecnoVrijemeNarudzbe = ProsjecnoVrijemePoNarudzbi(ans); int prosjecnaKolicinaNarudzbe = AverageKolicineNarudzbe(ans); DateTime vrijemeNarudzbe = PredvidiDanNarudzbe(ans, prosjecnoVrijemeNarudzbe, prosjecnaKolicinaNarudzbe); if (vrijemeNarudzbe.AddDays(-MINIMALNA_DONJA_GRANICA_U_DANIMA) <= DateTime.Now) { return(DateTime.Now.ToString()); } else { return(vrijemeNarudzbe.AddDays(-MINIMALNA_DONJA_GRANICA_U_DANIMA).ToString("dd.MM.yyyy HH:mm:ss")); } } }
private void FormKreirajArtikl_FormClosed(object sender, FormClosedEventArgs e) { _Instance = null; proslijedeniArtikl = null; }
private void FormKreirajNarudzbu_FormClosed(object sender, FormClosedEventArgs e) { _Instance = null; proslijedeniDokument = null; prosljedeniArtikl = null; }
private void PrikaziFormuAzuriranjeVozila(FormKreirajVozilo form, object sender, Sloj_pristupa_podacima.Artikl artikl) { form.proslijedeniArtikl = artikl; form.FormUpravljanjeSkladistem = this; form.MdiParent = this.MdiParent; form.StartPosition = FormStartPosition.CenterScreen; ActivateButton(sender); form.Show(); form.Activate(); }
private void FormKreirajRezervniDio_FormClosed(object sender, FormClosedEventArgs e) { _instance = null; proslijedeniArtikl = null; }
public static void DodajRed(Form forma, Sloj_pristupa_podacima.Artikli_na_skladistu ans, string datum, Korisnik korisnik) { Sloj_pristupa_podacima.Artikl artikl = Sloj_pristupa_podacima.UpravljanjeSkladistem.UpravljanjeSkladistemDAL.DohvatiArtikl(ans.artikl); Label lblNaziv = new Label(); lblNaziv.ForeColor = Color.LightGray; lblNaziv.Text = artikl.naziv_artikla; lblNaziv.Location = new Point(20, INITIAL_VERT + VERT_SPACE); Label lblDatum = new Label(); lblDatum.ForeColor = Color.LightGray; lblDatum.Text = datum; lblDatum.Location = new Point(INITIAL_HORIZ + HORIZ_SPACE, INITIAL_VERT + VERT_SPACE); Button btnNaruci = new Button(); btnNaruci.Text = "Naruči"; btnNaruci.ForeColor = Color.LightGray; btnNaruci.FlatStyle = FlatStyle.Flat; btnNaruci.FlatAppearance.BorderSize = 0; if (ProvjeriDaLiJeMoguceNaruciti(datum)) { btnNaruci.Enabled = true; } else { btnNaruci.Enabled = false; } btnNaruci.Click += (s, e) => { Sloj_pristupa_podacima.Dokument narudzba = new Sloj_pristupa_podacima.Dokument(); try { narudzba.datum_izdavanja = DateTime.Now; narudzba.opis_dokumenta = "Narudzba za " + artikl.naziv_artikla; narudzba.ukupni_saldo = artikl.cijena_artikla; narudzba.tip_dokumenta = 2; narudzba.korisnik = korisnik.id_korisnik; narudzba.zaposlenik = Sesija.PrijavljenKorisnik.id_korisnik; Sloj_pristupa_podacima.UpravljanjeNarudzbama.UpravljanjeNarudzbamaDAL.KreirajNarudzbu(narudzba); Sloj_pristupa_podacima.Usluga usluga = new Sloj_pristupa_podacima.Usluga(); usluga.naziv_usluge = narudzba.opis_dokumenta; usluga.vrsta_usluge = 1; Sloj_pristupa_podacima.Upravljanje_uslugama.UpravljanjeUslugamaDAL.KreiranjeUsluge(usluga); Sloj_pristupa_podacima.Stavke_dokumenta stavke_Dokumenta = new Sloj_pristupa_podacima.Stavke_dokumenta(); stavke_Dokumenta.usluga = Sloj_pristupa_podacima.Upravljanje_uslugama.UpravljanjeUslugamaDAL.VratiZadnjiUnos(usluga.naziv_usluge).id_usluga; stavke_Dokumenta.dokument = Sloj_pristupa_podacima.UpravljanjeNarudzbama.UpravljanjeNarudzbamaDAL.VratiZadnjiRacun(narudzba).id_dokument; stavke_Dokumenta.artikl = artikl.id_artikl; Sloj_pristupa_podacima.UpravljanjeNarudzbama.UpravljanjeNarudzbamaDAL.KreiranjeStavkeDokumenta(stavke_Dokumenta); Sloj_pristupa_podacima.Obavijest obavijest = new Sloj_pristupa_podacima.Obavijest(); obavijest.Korisnik = korisnik.id_korisnik; obavijest.Naslov = "Kreirana narudzba"; obavijest.Opis = narudzba.opis_dokumenta; obavijest.Procitano = 0; obavijest.Vrijeme_kreiranja = DateTime.Now; obavijest.Zaposlenik = Sesija.PrijavljenKorisnik.id_korisnik; Sloj_pristupa_podacima.UpravljanjeObavijestima.UpravljanjeObavijestimaDAL.KreirajObavijest(obavijest); Mailer.PosaljiObavijestNaMail(korisnik, narudzba.opis_dokumenta, "Kreirana narudzba"); } catch (Exception) { MessageBox.Show("Mail nije poslan!"); } }; btnNaruci.Location = new Point(INITIAL_HORIZ + 400, INITIAL_VERT + VERT_SPACE); INITIAL_VERT += VERT_SPACE; forma.Controls.Add(lblNaziv); sveKontrolePredikcije.Add(lblNaziv); forma.Controls.Add(lblDatum); sveKontrolePredikcije.Add(lblDatum); forma.Controls.Add(btnNaruci); sveKontrolePredikcije.Add(btnNaruci); }
private void PrikazFormeKreiranjaNarudzbe(FormKreirajNarudzbu form, object sender, Sloj_pristupa_podacima.Artikl artikl) { form.prosljedeniArtikl = artikl; form.FormProdajaArtikla = this; form.MdiParent = this.MdiParent; form.StartPosition = FormStartPosition.CenterScreen; form.Show(); form.Activate(); }