Ejemplo n.º 1
0
        //wydawnictwo czyta książkę, aby ocenić pozycję
        public void CzytajKsiazke(Zlecenie z)
        {
            Random  r = new Random();
            Ksiazka k = (Ksiazka)z.GetProdukt();

            k.ocena  = r.Next(1, 10);
            k.naklad = 1000 * k.ocena;
        }
Ejemplo n.º 2
0
        //ustalanie czasu wydruku na podstawie nakładu produktu oraz wydajności drukarni
        public void CzasWydruku(Zlecenie z)
        {
            double x = z.GetProdukt().strony *z.GetProdukt().naklad / wydajnosc;

            z.ileDni = (Int16)Math.Round(x);
            foreach (Zlecenie item in kolejka)
            {
                z.ileDni += item.ileDni;
            }
        }
Ejemplo n.º 3
0
        //ustalanie ceny sprzedaży
        public void UstalCene(Zlecenie z)
        {
            Ksiazka k = (Ksiazka)z.GetProdukt();
            double  x = ((float)k.strony / 30) * ((float)k.ocena / 5);

            if (z.GetProdukt().GetType() == typeof(Album))
            {
                x = x * 1.5;
            }
            k.cena = 30 * (Int32)Math.Round(x);
            if (k.cena < 3)
            {
                k.cena = 3;
            }
        }
Ejemplo n.º 4
0
 //wystawienie gotowych zleceń na sprzedaż
 public void DodajGotowe(Zlecenie z)
 {
     nasprzedanie.Add(z);
 }
Ejemplo n.º 5
0
 //przyjmowanie zamównień od klientów
 public void PrzyjmijZamowienie(Zlecenie z)
 {
     zlecenia.Add(z);
 }
Ejemplo n.º 6
0
        //dodawanie zamówienie do kolejki
        private void Dodaj_Click(object sender, RoutedEventArgs e)
        {
            //sprawdzenie czy wszystkie dane zostały podane
            if (t.Text == "")
            {
                MessageBox.Show("Podaj tytuł"); return;
            }
            if (typy.SelectedItem == null)
            {
                MessageBox.Show("Wybierz typ produktu"); return;
            }
            if (str.Text == "")
            {
                MessageBox.Show("Podaj ilość stron"); return;
            }
            if (Ilu.SelectedItem == null)
            {
                MessageBox.Show("Wybierz ilość autorów"); return;
            }
            if (page.GetWydawnictwo().ZbierzZlecenia().Find(x => x.GetProdukt().tytul == t.Text) != null)
            {
                MessageBox.Show("Taki tytuł już istnieje w naszej bazie"); return;
            }
            TextBox  t1, t2;
            ComboBox c;
            Zlecenie z = new Zlecenie()
            {
                stan = "czeka"
            };

            //podział dodawania zlecenia zależnie od wybranego typu produktu
            if (typy.SelectedItem.ToString() == "Miesiecznik")
            {
                SprawdzStr();
                z.UstawProdukt(new Miesiecznik(30)
                {
                    tytul = t.Text, strony = Int32.Parse(str.Text), naklad = 8000, cena = 10
                });
                page.GetWydawnictwo().PrzyjmijZamowienie(z);
                for (int i = 1; i <= (Int32)Ilu.SelectedItem; i++)
                {
                    c = (ComboBox)Panel.FindName("combo" + i.ToString());
                    if (c.SelectedItem == null)
                    {
                        MessageBox.Show("Wybierz autora"); return;
                    }
                    Autor a = page.GetLista().Find(x => x.Imie + " " + x.Nazwisko == c.SelectedItem.ToString());
                    a.dzielo = z.GetProdukt().tytul;
                    z.GetProdukt().DodajAutora(a);
                }
            }
            if (typy.SelectedItem.ToString() == "Tygodnik")
            {
                SprawdzStr();
                z.UstawProdukt(new Tygodnik(7)
                {
                    tytul = t.Text, strony = Int32.Parse(str.Text), naklad = 2000, cena = 2
                });
                page.GetWydawnictwo().PrzyjmijZamowienie(z);
                for (int i = 1; i <= (Int32)Ilu.SelectedItem; i++)
                {
                    c = (ComboBox)Panel.FindName("combo" + i.ToString());
                    if (c.SelectedItem == null)
                    {
                        MessageBox.Show("Wybierz autora"); return;
                    }
                    Autor a = page.GetLista().Find(x => x.Imie + " " + x.Nazwisko == c.SelectedItem.ToString());
                    a.dzielo = z.GetProdukt().tytul;
                    z.GetProdukt().DodajAutora(a);
                }
            }
            if (typy.SelectedItem.ToString() == "Romans")
            {
                SprawdzStr();
                z.UstawProdukt(new Romans()
                {
                    tytul = t.Text, strony = Int32.Parse(str.Text)
                });
                page.GetWydawnictwo().CzytajKsiazke(z);
                page.GetWydawnictwo().UstalCene(z);
                page.GetWydawnictwo().PrzyjmijZamowienie(z);
                for (int i = 1; i <= (Int32)Ilu.SelectedItem * 2; i += 2)
                {
                    int x = i + 1;
                    t1 = (TextBox)Panel.FindName("autor" + i.ToString()); t2 = (TextBox)Panel.FindName("autor" + x.ToString());
                    if (t1.Text == "" || t2.Text == "")
                    {
                        MessageBox.Show("Uzupełnij dane autora"); return;
                    }
                    Autor a = new Autor()
                    {
                        Imie = t1.Text, Nazwisko = t2.Text, coPisze = typy.SelectedItem.ToString()
                    };
                    if (page.GetLista().Find(y => y.Imie == a.Imie && y.Nazwisko == a.Nazwisko) != null)
                    {
                        MessageBox.Show("Taki autor już znajduje się w bazie"); return;
                    }
                    a.DodajUmowe(new ODzielo()
                    {
                        stawka = 10
                    });
                    a.dzielo = z.GetProdukt().tytul;
                    page.DodajAutoraDoListy(a);
                    z.GetProdukt().DodajAutora(a);
                }
            }
            if (typy.SelectedItem.ToString() == "Sensacja")
            {
                SprawdzStr();
                z.UstawProdukt(new Sensacja()
                {
                    tytul = t.Text, strony = Int32.Parse(str.Text)
                });
                page.GetWydawnictwo().CzytajKsiazke(z);
                page.GetWydawnictwo().UstalCene(z);
                page.GetWydawnictwo().PrzyjmijZamowienie(z);
                for (int i = 1; i <= (Int32)Ilu.SelectedItem * 2; i += 2)
                {
                    int x = i + 1;
                    t1 = (TextBox)Panel.FindName("autor" + i.ToString()); t2 = (TextBox)Panel.FindName("autor" + x.ToString());
                    if (t1.Text == "" || t2.Text == "")
                    {
                        MessageBox.Show("Uzupełnij dane autora"); return;
                    }
                    Autor a = new Autor()
                    {
                        Imie = t1.Text, Nazwisko = t2.Text, coPisze = typy.SelectedItem.ToString()
                    };
                    if (page.GetLista().Find(y => y.Imie == a.Imie && y.Nazwisko == a.Nazwisko) != null)
                    {
                        MessageBox.Show("Taki autor już znajduje się w bazie"); return;
                    }
                    a.DodajUmowe(new ODzielo()
                    {
                        stawka = 10
                    });
                    a.dzielo = z.GetProdukt().tytul;
                    page.DodajAutoraDoListy(a);
                    z.GetProdukt().DodajAutora(a);
                }
            }
            if (typy.SelectedItem.ToString() == "Album")
            {
                SprawdzStr();
                z.UstawProdukt(new Album()
                {
                    tytul = t.Text, strony = Int32.Parse(str.Text)
                });
                page.GetWydawnictwo().CzytajKsiazke(z);
                page.GetWydawnictwo().UstalCene(z);
                page.GetWydawnictwo().PrzyjmijZamowienie(z);
                for (int i = 1; i <= (Int32)Ilu.SelectedItem * 2; i += 2)
                {
                    int x = i + 1;
                    t1 = (TextBox)Panel.FindName("autor" + i.ToString()); t2 = (TextBox)Panel.FindName("autor" + x.ToString());
                    if (t1.Text == "" || t2.Text == "")
                    {
                        MessageBox.Show("Uzupełnij dane autora"); return;
                    }
                    Autor a = new Autor()
                    {
                        Imie = t1.Text, Nazwisko = t2.Text, coPisze = typy.SelectedItem.ToString()
                    };
                    if (page.GetLista().Find(y => y.Imie == a.Imie && y.Nazwisko == a.Nazwisko) != null)
                    {
                        MessageBox.Show("Taki autor już znajduje się w bazie"); return;
                    }
                    a.DodajUmowe(new ODzielo()
                    {
                        stawka = 10
                    });
                    a.dzielo = z.GetProdukt().tytul;
                    page.DodajAutoraDoListy(a);
                    z.GetProdukt().DodajAutora(a);
                }
            }
            this.Close();
        }
Ejemplo n.º 7
0
        //wczytywanie stanu drukarni
        public List <Drukarnia> WczytajDrukarnie()
        {
            List <Drukarnia> drukarnie = new List <Drukarnia>();

            for (int i = 1; i <= 3; i++)
            {
                if (File.Exists("drukarnia" + i.ToString() + ".txt"))
                {
                    Drukarnia d = new Drukarnia();
                    string[]  lines = File.ReadAllLines("drukarnia" + i.ToString() + ".txt");
                    int       x = 1, l = lines.Length;
                    string[]  tmp = lines[x].Split(';');
                    foreach (string s in tmp)
                    {
                        d.DodajCoDrukuje(s);
                    }
                    while (lines[x] != "Zlecenia")
                    {
                        x++;
                    }
                    x++;
                    while (lines[x] != "Staty")
                    {
                        tmp = lines[x].Split(';');
                        Zlecenie z = new Zlecenie()
                        {
                            ileDni = Int32.Parse(tmp[4]), stan = tmp[5]
                        };
                        z.UstawDrukarnie(d);
                        if (tmp[6] == "Tygodnik")
                        {
                            z.UstawProdukt(new Tygodnik(7)
                            {
                                cena = Int32.Parse(tmp[0]), naklad = Int32.Parse(tmp[1]), strony = Int32.Parse(tmp[2]), tytul = tmp[3]
                            });
                        }
                        else if (tmp[6] == "Miesiecznik")
                        {
                            z.UstawProdukt(new Miesiecznik(30)
                            {
                                cena = Int32.Parse(tmp[0]), naklad = Int32.Parse(tmp[1]), strony = Int32.Parse(tmp[2]), tytul = tmp[3]
                            });
                        }
                        else if (tmp[6] == "Romans")
                        {
                            z.UstawProdukt(new Romans()
                            {
                                cena = Int32.Parse(tmp[0]), naklad = Int32.Parse(tmp[1]), strony = Int32.Parse(tmp[2]), tytul = tmp[3]
                            });
                        }
                        else if (tmp[6] == "Sensacja")
                        {
                            z.UstawProdukt(new Sensacja()
                            {
                                cena = Int32.Parse(tmp[0]), naklad = Int32.Parse(tmp[1]), strony = Int32.Parse(tmp[2]), tytul = tmp[3]
                            });
                        }
                        else
                        {
                            z.UstawProdukt(new Album()
                            {
                                cena = Int32.Parse(tmp[0]), naklad = Int32.Parse(tmp[1]), strony = Int32.Parse(tmp[2]), tytul = tmp[3]
                            });
                        }
                        d.DodajZlecenie(z);
                        x++;
                    }
                    x++;
                    tmp         = lines[x].Split(';');
                    d.jakosc    = Int32.Parse(tmp[0]);
                    d.wydajnosc = Int32.Parse(tmp[1]);
                    d.zajeta    = Int32.Parse(tmp[2]);
                    drukarnie.Add(d);
                }
            }
            return(drukarnie);
        }
Ejemplo n.º 8
0
 public void DodajZlecenie(Zlecenie z)
 {
     z.stan = "w kolejce";
     kolejka.Enqueue(z);
     zajeta += z.ileDni;
 }