public ActionResult Create(StavkaReklamacije stavka)
 {
     try
     {
         Reklamacija       reklamacija = BrokerBaze.Sesija().VratiReklamaciju(stavka.brojReklamacije);
         Artikal           artikal     = BrokerBaze.Sesija().VratiArtikal(stavka.artikalID);
         StavkaReklamacije novaStavka  = new StavkaReklamacije
         {
             Status    = Status.Dodat,
             kolicina  = stavka.kolicina,
             razlog    = stavka.razlog,
             artikalID = stavka.artikalID,
             Artikal   = artikal
         };
         reklamacija.StavkeReklamacije.Add(novaStavka);
         string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(reklamacija);
         if (rezultat.Equals("Uspesno!"))
         {
             return(RedirectToAction("Index", "Reklamacija"));//, new { brojReklamacije = reklamacija.brojReklamacije });
         }
         else
         {
             throw new Exception();
         }
     }
     catch (Exception)
     {
         return(View("Error",
                     new ErrorViewModel {
             Poruka = "Sistem ne moze da sacuva stavku!"
         }));
     }
 }
        public ActionResult Delete(StavkaReklamacije stavkaReklamacije)
        {
            try
            {
                Reklamacija       reklamacijaIzBaze       = BrokerBaze.Sesija().VratiReklamaciju(stavkaReklamacije.brojReklamacije);
                StavkaReklamacije stavkaReklamacijeIzBaze = reklamacijaIzBaze.StavkeReklamacije.FirstOrDefault(c => c.rb == stavkaReklamacije.rb);

                stavkaReklamacijeIzBaze.Status = Status.Obrisan;

                string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(reklamacijaIzBaze);
                if (rezultat.Equals("Uspesno!"))
                {
                    return(RedirectToAction("Details", "Reklamacija", new { brojReklamacije = stavkaReklamacije.brojReklamacije }));
                }
                else
                {
                    throw new Exception();
                }
            }
            catch (Exception)
            {
                return(View("Error",
                            new ErrorViewModel {
                    Poruka = "Sistem ne moze da obrise stavku!"
                }));
            }
        }
        public ActionResult Edit(StavkaReklamacije stavkaReklamacije)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Reklamacija       reklamacijaIzBaze       = BrokerBaze.Sesija().VratiReklamaciju(stavkaReklamacije.brojReklamacije);
                    StavkaReklamacije stavkaReklamacijeIzBaze = reklamacijaIzBaze.StavkeReklamacije.FirstOrDefault(c => c.rb == stavkaReklamacije.rb);
                    stavkaReklamacijeIzBaze.kolicina  = stavkaReklamacije.kolicina;
                    stavkaReklamacijeIzBaze.razlog    = stavkaReklamacije.razlog;
                    stavkaReklamacijeIzBaze.artikalID = stavkaReklamacije.artikalID;
                    stavkaReklamacijeIzBaze.Artikal   = BrokerBaze.Sesija().VratiArtikal(stavkaReklamacije.artikalID);
                    stavkaReklamacijeIzBaze.Status    = Status.Izmenjen;

                    string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(reklamacijaIzBaze);
                    if (rezultat.Equals("Uspesno!"))
                    {
                        return(RedirectToAction("Details", "Reklamacija", new { brojReklamacije = stavkaReklamacije.brojReklamacije }));
                    }
                    else
                    {
                        throw new Exception();
                    }
                }
                return(View(stavkaReklamacije));
            }
            catch (Exception)
            {
                return(View("Error",
                            new ErrorViewModel {
                    Poruka = "Sistem ne moze da sacuva cenu!"
                }));
            }
        }
 public ActionResult Edit(Reklamacija reklamacija)
 {
     try
     {
         Reklamacija reklamacijaIzBaze = BrokerBaze.Sesija().VratiReklamaciju(reklamacija.brojReklamacije);
         Kupac       kupac             = BrokerBaze.Sesija().VratiKupca(reklamacija.kupacID);
         reklamacijaIzBaze.naziv   = reklamacija.naziv;
         reklamacijaIzBaze.datum   = reklamacija.datum;
         reklamacijaIzBaze.razlog  = reklamacija.razlog;
         reklamacijaIzBaze.kupacID = reklamacija.kupacID;
         reklamacijaIzBaze.Kupac   = kupac;
         reklamacijaIzBaze.Status  = Status.Izmenjen;
         string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(reklamacijaIzBaze);
         if (rezultat.Equals("Uspesno!"))
         {
             return(RedirectToAction("Index", new { poruka = "Sistem je uspesno sacuvao reklamaciju!" }));
         }
         else
         {
             throw new Exception();
         }
     }
     catch (Exception)
     {
         return(View("Error",
                     new ErrorViewModel {
             Poruka = "Sistem ne moze da sacuva reklamaciju!"
         }));
     }
 }
        public ActionResult Create(int brojReklamacije)
        {
            Reklamacija reklamacija = BrokerBaze.Sesija().VratiReklamaciju(brojReklamacije);

            ViewBag.brojReklamacije = brojReklamacije;
            ViewBag.reklamacija     = reklamacija.naziv;
            ArtikalDropDownList();
            return(View());
        }
Пример #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            Reklamacija reklamacija = db.Reklamacija.Find(id);

            db.Reklamacija.Remove(reklamacija);
            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
        public JsonResult Create([FromBody] Object reklamacija)
        {
            try
            {
                string      reklamacijaZaDeserijalizaciju = reklamacija.ToString();
                Reklamacija r               = Newtonsoft.Json.JsonConvert.DeserializeObject <Reklamacija>(reklamacijaZaDeserijalizaciju);
                Kupac       kupac           = BrokerBaze.Sesija().VratiKupca(r.kupacID);
                Reklamacija novaReklamacija = new Reklamacija
                {
                    datum           = r.datum,
                    naziv           = r.naziv,
                    razlog          = r.razlog,
                    Kupac           = kupac,
                    kupacID         = kupac.kupacID,
                    Status          = Status.Dodat,
                    brojReklamacije = BrokerBaze.Sesija().VratiSifru("brojReklamacije", "Reklamacija")
                };

                BindingList <StavkaReklamacije> stavke = new BindingList <StavkaReklamacije>();

                foreach (StavkaReklamacije s in r.StavkeReklamacije)
                {
                    Artikal artikal = BrokerBaze.Sesija().VratiArtikal(s.artikalID);

                    StavkaReklamacije novaStavka = new StavkaReklamacije

                    {
                        Status    = Status.Dodat,
                        razlog    = s.razlog,
                        kolicina  = s.kolicina,
                        Artikal   = artikal,
                        artikalID = artikal.artikalID
                    };

                    stavke.Add(novaStavka);
                }

                novaReklamacija.StavkeReklamacije = stavke;

                string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(novaReklamacija);

                if (rezultat.Equals("Uspesno!"))
                {
                    return(Json("Reklamacija sacuvana!"));
                }
                else
                {
                    return(Json("Greska!"));
                }
            }
            catch (Exception)
            {
                return(Json("Doslo je do greske prilikom unosa!"));
            }
        }
Пример #8
0
 public ActionResult Edit([Bind(Include = "ReklamacijaID,RacunID,Opis")] Reklamacija reklamacija)
 {
     if (ModelState.IsValid)
     {
         db.Entry(reklamacija).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.FK_RacunID = new SelectList(db.Racun, "RacunID", "Adresa", reklamacija.RacunID);
     return(View(new ViewDataContainer(reklamacija, new AdminView())));
 }
        public ActionResult Create()
        {
            Reklamacija reklamacija = new Reklamacija()
            {
                datum = DateTime.Now
            };

            reklamacija.StavkeReklamacije.Add(new StavkaReklamacije {
            });
            KupacDropDownList();
            ArtikalDropDownList();
            return(View(reklamacija));
        }
Пример #10
0
        public BindingList <Reklamacija> VratiReklamacije()
        {
            BindingList <Reklamacija> lista = new BindingList <Reklamacija>();

            try
            {
                konekcija.Open();
                transakcija = konekcija.BeginTransaction();
                komanda     = new SqlCommand("", konekcija, transakcija)
                {
                    CommandText = "Select * from Reklamacija r join Kupac k on (r.kupacID = k.kupacID)"
                };
                SqlDataReader citac = komanda.ExecuteReader();
                while (citac.Read())
                {
                    Reklamacija r = new Reklamacija
                    {
                        brojReklamacije = citac.GetInt32(0),
                        datum           = (DateTime)citac["datum"],
                        razlog          = citac.GetString(2),
                        naziv           = citac.GetString(4),
                        ukupno          = GetFloatValueOrDefault(citac, "ukupno"),

                        Kupac = new Kupac
                        {
                            kupacID = citac.GetInt32(6),
                            naziv   = citac.GetString(7),
                            tr      = citac.GetString(8),
                            mb      = citac.GetString(9),
                            pib     = citac["pib"].ToString()
                        }
                    };

                    lista.Add(r);
                }
                citac.Close();
                transakcija.Commit();

                return(lista);
            }
            catch (Exception e)
            {
                transakcija.Rollback();
                return(null);
            }
            finally { if (konekcija != null)
                      {
                          konekcija.Close();
                      }
            }
        }
Пример #11
0
        // GET: Reklamacija/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reklamacija reklamacija = db.Reklamacija.Find(id);

            if (reklamacija == null)
            {
                return(HttpNotFound());
            }
            return(View(new ViewDataContainer(reklamacija, new AdminView())));
        }
Пример #12
0
        // GET: Reklamacija/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reklamacija reklamacija = db.Reklamacija.Find(id);

            if (reklamacija == null)
            {
                return(HttpNotFound());
            }
            ViewBag.FK_RacunID = new SelectList(db.Racun, "RacunID", "Adresa", reklamacija.RacunID);
            return(View(new ViewDataContainer(reklamacija, new AdminView())));
        }
 public ActionResult Delete(int brojReklamacije)
 {
     try
     {
         Reklamacija reklamacija = BrokerBaze.Sesija().VratiReklamaciju(brojReklamacije);
         KupacDropDownList(reklamacija.Kupac.kupacID);
         return(View(reklamacija));
     }
     catch (Exception)
     {
         return(View("Error",
                     new ErrorViewModel {
             Poruka = "Sistem ne moze da ucita reklamaciju!"
         }));
     }
 }
        public ActionResult Details(int brojReklamacije)
        {
            try
            {
                Reklamacija reklamacija = BrokerBaze.Sesija().VratiReklamaciju(brojReklamacije);
                BindingList <StavkaReklamacije> stavke = reklamacija.StavkeReklamacije;

                return(View(stavke));
            }
            catch (Exception)
            {
                return(View("Error",
                            new ErrorViewModel {
                    Poruka = "Sistem ne moze da ucita stavke reklamacije!"
                }));
            }
        }
 public ActionResult Edit(string brojReklamacije, string stavka)
 {
     try
     {
         int reklamacija = Int32.Parse(brojReklamacije);
         int rb          = Int32.Parse(stavka);
         ViewBag.brojReklamacije = reklamacija;
         Reklamacija reklamacijaIzBaze = BrokerBaze.Sesija().VratiReklamaciju(reklamacija);
         ViewBag.reklamacija = reklamacijaIzBaze.naziv;
         StavkaReklamacije stavkaIzBaze = reklamacijaIzBaze.StavkeReklamacije.FirstOrDefault(c => c.rb == rb);
         ArtikalDropDownList(stavkaIzBaze.Artikal.artikalID);
         return(View(stavkaIzBaze));
     }
     catch (Exception)
     {
         return(View("Error",
                     new ErrorViewModel {
             Poruka = "Sistem ne moze da ucita stavku!"
         }));
     }
 }
 public ActionResult Delete(Reklamacija reklamacija)
 {
     try
     {
         Reklamacija reklamacijaIzBaze = BrokerBaze.Sesija().VratiReklamaciju(reklamacija.brojReklamacije);
         reklamacijaIzBaze.Status = Status.Obrisan;
         string rezultat = BrokerBaze.Sesija().SacuvajReklamaciju(reklamacijaIzBaze);
         if (rezultat.Equals("Uspesno!"))
         {
             return(RedirectToAction("Index", new { poruka = "Sistem je uspesno obrisao reklamaciju!" }));
         }
         else
         {
             throw new Exception();
         }
     }
     catch (Exception)
     {
         return(View("Error",
                     new ErrorViewModel {
             Poruka = "Sistem ne moze da obrise reklamaciju!"
         }));
     }
 }
Пример #17
0
        public Reklamacija VratiReklamaciju(int reklamacijaBr)
        {
            Reklamacija r = new Reklamacija();

            try
            {
                konekcija.Open();
                komanda = new SqlCommand("", konekcija, transakcija)
                {
                    CommandText = $"Select * from Reklamacija r inner join Kupac k on r.kupacID = k.kupacID where brojReklamacije={reklamacijaBr}"
                };
                SqlDataReader citac = komanda.ExecuteReader();

                while (citac.Read())
                {
                    r.brojReklamacije = citac.GetInt32(0);
                    r.datum           = (DateTime)citac["datum"];
                    r.razlog          = citac.GetString(2);
                    r.naziv           = citac.GetString(4);
                    r.ukupno          = GetFloatValueOrDefault(citac, "ukupno");
                    r.Kupac           = new Kupac
                    {
                        kupacID = citac.GetInt32(6),
                        naziv   = citac.GetString(7),
                        pib     = citac.GetString(8),
                        mb      = citac.GetString(9),
                        tr      = citac.GetString(10)
                    };
                }
                citac.Close();

                komanda.CommandText = $"Select * from StavkaReklamacije sr inner join Artikal a on sr.artikalID = a.artikalID where brojReklamacije={reklamacijaBr}";
                citac = komanda.ExecuteReader();
                while (citac.Read())
                {
                    StavkaReklamacije sf = new StavkaReklamacije
                    {
                        brojReklamacije = citac.GetInt32(0),
                        rb       = citac.GetInt32(1),
                        kolicina = citac.GetInt32(2),
                        razlog   = citac.GetString(4),
                        Artikal  = new Artikal
                        {
                            artikalID = citac.GetInt32(5),
                            naziv     = citac.GetString(6),
                            pdv       = citac.GetDouble(7),
                            rabat     = citac.GetDouble(8)
                        }
                    };
                    sf.Artikal.aktuelnaCena = GetFloatValueOrDefault(citac, "aktuelnaCena");


                    r.StavkeReklamacije.Add(sf);
                }
                citac.Close();

                return(r);
            }
            catch (Exception e)
            {
                return(null);
            }
            finally { if (konekcija != null)
                      {
                          konekcija.Close();
                      }
            }
        }
Пример #18
0
        public string SacuvajReklamaciju(Reklamacija r)
        {
            SqlTransaction transakcija = null;
            string         poruka      = string.Empty;

            try
            {
                konekcija.Open();
                transakcija = konekcija.BeginTransaction();
                komanda     = new SqlCommand("", konekcija, transakcija);

                switch (r.Status)
                {
                case Status.Dodat:

                    komanda.CommandText =
                        $"insert into Reklamacija values ({r.brojReklamacije},@datum, '{r.razlog}', {r.Kupac.kupacID}, @naziv,@ukupno)";
                    komanda.Parameters.Add("@datum", SqlDbType.DateTime2).Value = r.datum;
                    komanda.Parameters.AddWithValue("@naziv", DBNull.Value);
                    komanda.Parameters.AddWithValue("ukupno", DBNull.Value);
                    komanda.ExecuteNonQuery();

                    break;

                case Status.Izmenjen:

                    komanda.CommandText = $"update Reklamacija set datum=@datum, razlog='{r.razlog}', kupacID={r.Kupac.kupacID} where brojReklamacije={r.brojReklamacije}";
                    komanda.Parameters.Add("@datum", SqlDbType.DateTime2).Value = r.datum;
                    komanda.ExecuteNonQuery();
                    break;

                case Status.Obrisan:
                    komanda.CommandText = $"Delete from Reklamacija where brojReklamacije={r.brojReklamacije}";

                    komanda.ExecuteNonQuery();
                    break;

                default:
                    break;
                }

                foreach (StavkaReklamacije sr in r.StavkeReklamacije)
                {
                    SqlCommand komanda1 = new SqlCommand();
                    komanda1.Transaction = transakcija;
                    komanda1.Connection  = konekcija;
                    switch (sr.Status)
                    {
                    case Status.Izmenjen:
                        komanda1.CommandText = $"Update StavkaReklamacije set kolicina={sr.kolicina}, artikalID={sr.Artikal.artikalID} where brojReklamacije={sr.brojReklamacije} and rb={sr.rb}";
                        komanda1.ExecuteNonQuery();
                        break;

                    case Status.Dodat:

                        komanda1.CommandText = $"insert into StavkaReklamacije (brojReklamacije,  kolicina, artikalID) values ({r.brojReklamacije}, {sr.kolicina}, {sr.Artikal.artikalID})";

                        komanda1.ExecuteNonQuery();
                        break;

                    case Status.Obrisan:
                        komanda1.CommandText = $"Delete from StavkaReklamacije where brojReklamacije={sr.brojReklamacije} and rb={sr.rb}";
                        komanda1.ExecuteNonQuery();
                        break;

                    default:
                        break;
                    }
                }

                transakcija.Commit();

                poruka = "Uspesno!";
                return(poruka);
            }
            catch (Exception ex)
            {
                transakcija.Rollback();
                poruka = ex.Message.ToString();
                return(poruka);
            }
            finally { if (konekcija != null)
                      {
                          konekcija.Close();
                      }
            }
        }