Ejemplo n.º 1
0
        public ProduktForm(List<Produkt> _produktLst, ProduktFormStatus _status, Produkt _produkt)
            : this(_produktLst)
        {
            formStatus = _status;
            ProduktAkt = _produkt;

            if (formStatus == ProduktFormStatus.Addera)
            {
                this.Text = "Addera produkt";
                prisTbx.Text = "0";
                saldoTbx.Text = "0";
            }
            else if (formStatus == ProduktFormStatus.Uppdatera)
            {
                this.Text = "Redigera produkt";
                varunrTbx.Text = ProduktAkt.Varunr.ToString();
                kategoriCbx.SelectedIndex = (int)ProduktAkt.Kategori;
                namnTbx.Text = ProduktAkt.Namn;
                prisTbx.Text = ProduktAkt.Pris.ToString();
                saldoTbx.Text = ProduktAkt.Saldo.ToString();

            }
        }
Ejemplo n.º 2
0
 // Methods
 /// <summary>
 /// Kopierar en produkt.
 /// </summary>
 /// <param name="_p">Den produkt som ska kopieras.</param>
 public void Copy(Produkt _p)
 {
     varunr = _p.Varunr;
     Kategori = _p.Kategori;
     Namn = _p.Namn;
     Pris = _p.Pris;
     Saldo = _p.Saldo;
 }
Ejemplo n.º 3
0
 // Copy-konstruktor
 public Produkt(Produkt _p)
 {
     this.Copy(_p);
 }
Ejemplo n.º 4
0
 public ProdSales(Produkt _prod, int _antal)
 {
     Prod = _prod;
     Antal = _antal;
 }
Ejemplo n.º 5
0
 ///////////////////////////////////////////////////
 ///// Metoder som relaterar till Lager-fliken /////
 ///////////////////////////////////////////////////
 /// <summary>
 /// Metod som fyller i vald produkts egenskaper i formen.
 /// </summary>
 /// <param name="_prod">Den produkt som ska visas.</param>
 private void UpdateLagerProduktInfo(Produkt _prod)
 {
     lagerVarunrTbx.Text = _prod.Varunr.ToString();
     lagerKategoriTbx.Text = _prod.Kategori.ToString();
     lagerNamnTbx.Text = _prod.Namn;
     lagerPrisTbx.Text = _prod.Pris.ToString();
     lagerSaldoTbx.Text = _prod.Saldo.ToString();
 }
Ejemplo n.º 6
0
        /// <summary>
        /// Callback-metod som anropas då användaren väljer att redigera uppgifterna för en befintlig produkt.
        /// </summary>
        private void lagerRedigeraProdBtn_Click(object sender, EventArgs e)
        {
            if (lagerVarunrTbx.Text.Length == 0)
                return;
            Produkt aktProd = butik.GetProdukt(Int64.Parse(lagerVarunrTbx.Text));
            Produkt tmpProd = new Produkt(aktProd);

            using (ProduktForm ap = new ProduktForm(butik.ProduktLst, ProduktFormStatus.Uppdatera, tmpProd))
            {
                if (ap.ShowDialog() == DialogResult.OK)
                {
                    aktProd.Copy(tmpProd);
                    lagerSearchForm.UpdateList(aktProd.Varunr);
                    butik.RedigeraProdukt(aktProd);
                }
            }
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Callback-metod som anropas då användaren väljer att lägga till en ny produkt.
 /// </summary>
 private void addProductBtn_Click(object sender, EventArgs e)
 {
     Produkt prod = new Produkt();
     using (ProduktForm ap = new ProduktForm(butik.ProduktLst, ProduktFormStatus.Addera, prod))
     {
         if (ap.ShowDialog() == DialogResult.OK)
         {
             long varunr = butik.AdderaProdukt(prod.Namn, prod.Kategori, prod.Pris);
             lagerSearchForm.UpdateList(varunr);
         }
     }
 }
Ejemplo n.º 8
0
 /// <summary>
 /// Lägger till en ny produkt till sortementet. Sparas även till fil.
 /// </summary>
 /// <param name="_namn">Produktens namn.</param>
 /// <param name="_kategori">Produktens kategori.</param>
 /// <param name="_pris">Produktens pris.</param>
 /// <param name="_saldo">Produktens lagersaldo.</param>
 /// <returns>Returnerar adderad produkts varunr.</returns>
 public long AdderaProdukt(string _namn, ProdKategoriEnum _kategori, int _pris=0, int _saldo=0, long _varunr=0)
 {
     Produkt prod;
     if(produktLst.Count == 0 && _varunr != 0) // Tomt produktregister, produkten som ska adderas är inte importerad
         prod = new Produkt(1 , _kategori, _namn, _pris, _saldo);
     else if(_varunr != 0) // Produkten är importerad (har ett varunr)
         prod = new Produkt(_varunr, _kategori, _namn, _pris, _saldo);
     else // Produkten är nyupplaggd här i programmet
         prod = new Produkt(produktLst.Max(p => p.Varunr+1), _kategori, _namn, _pris, _saldo);
     produktLst.Add(prod);
     lagring.SparaProdukter(produktLst);
     return prod.Varunr;
 }
Ejemplo n.º 9
0
 /// <summary>
 /// Redigerar uppgifterna på en befintlig produkt. Redigerar även i filen. 
 /// </summary>
 /// <param name="_prod">Aktuell produkt med redigerade uppgifter.</param>
 public void RedigeraProdukt(Produkt _prod)
 {
     if(produktLst.Exists(p => p.Varunr == _prod.Varunr))
     {
         Produkt prod = produktLst.First(p => p.Varunr == _prod.Varunr);
         prod.Copy(_prod);
         lagring.SparaProdukter(produktLst);
     }
 }