示例#1
0
    protected void btnSave_Click(object sender, EventArgs e)
    {
        proizvod product = new proizvod();

        if (txtName.Text != "")
        {
            product.Naziv = txtName.Text;
        }
        if (txtPrice.Text != "")
        {
            product.Cena = double.Parse(txtPrice.Text);
        }
        if (txtDescription.Text != "")
        {
            product.Opis = txtDescription.Text;
        }
        product.ID_Kategorije = int.Parse(ddlCategory.SelectedItem.Value.ToString());

        if (FileUpload1.HasFile)
        {
            try
            {
                string filename = Path.GetFileName(FileUpload1.FileName);
                FileUpload1.SaveAs(Server.MapPath("~/Images/") + filename);
                product.Slika = filename;
            }
            catch (Exception ex)
            {
            }
        }
        DB.proizvods.InsertOnSubmit(product);
        DB.SubmitChanges();
        Response.Redirect(Link.BuildAbsolute("DodajNoviProizvod.aspx"));
    }
示例#2
0
    protected void btnSave_Click(object sender, EventArgs e)
    {
        proizvod products = DB.proizvods.Single(f => f.ID == Int32.Parse(Request.QueryString["IzmeniID"]));

        if (txtName.Text != "")
        {
            products.Naziv = txtName.Text;
        }
        if (txtPrice.Text != "")
        {
            products.Cena = double.Parse(txtPrice.Text);
        }
        if (txtDescription.Text != "")
        {
            products.Opis = txtDescription.Text;
        }
        if (FileUpload1.HasFile)
        {
            try
            {
                string filename = Path.GetFileName(FileUpload1.FileName);
                FileUpload1.SaveAs(Server.MapPath("~/Images/") + filename);
                products.Slika = filename;
            }
            catch (Exception ex)
            {
            }
        }
        DB.SubmitChanges();
        Response.Redirect(Link.BuildAbsolute("Proizvod.aspx?ProductID=" + k.First().ID));
    }
        public IHttpActionResult Getproizvod(int id)
        { // daj jedan proizvod po id
            proizvod p = db.proizvod.Find(id);

            if (p == null)
            {
                return(NotFound());
            }
            var proizvod = new proizvodDto()
            {
                idProizvod          = p.idProizvod,
                nazivProizvod       = p.nazivProizvod,
                opisProizvod        = p.opisProizvod,
                slikaProizvod       = p.slikaProizvod,
                cenaProizvod        = p.cenaProizvod,
                popustProizvod      = p.popustProizvod,
                statusProizvod      = p.statusProizvod,
                datumUnosaProizvod  = p.datumUnosaProizvod,
                datumIzmeneProizvod = p.datumIzmeneProizvod,
                idKategorija        = p.idKategorija,
                nazivKategorija     = p.kategorija.nazivKategorija,
                slike = db.slike.Where(x => x.idProizvod == p.idProizvod)
                        .Select(s => new slikeDto()
                {
                    idSlika      = s.idSlika,
                    idProizvod   = s.idProizvod,
                    putanjaSlika = s.putanjaSlika,
                })
            };

            return(Ok(proizvod));
        }
示例#4
0
    protected void btnDelete_Click(object sender, EventArgs e)
    {
        var      p  = from proizvod in DB.proizvods where int.Parse(productId) == proizvod.ID select proizvod;
        proizvod pr = p.Single();

        DB.proizvods.DeleteOnSubmit(pr);
        DB.SubmitChanges();
        Response.Redirect("Default.aspx");
    }
        public IHttpActionResult Postslike(int id)
        { // upload slika i upis u bazi po proizvodu
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var request  = HttpContext.Current.Request;
            var fileName = string.Empty;

            try
            {
                for (var i = 0; i < request.Files.Count; i++)
                {
                    var postedFile = request.Files[i];
                    fileName = Path.GetFileName(postedFile.FileName);
                    postedFile.SaveAs(HttpContext.Current.Server.MapPath("~/slike/" + fileName));


                    var slika = new slike
                    {
                        idProizvod   = id,
                        putanjaSlika = fileName
                    };
                    db.slike.Add(slika);
                }
            }
            catch (WebException ex)
            {
            }

            /* priprema male slike od prve slike koja se upload za proizvod */
            string originalFilename = request.Files[0].FileName;
            Image  imgOriginal      = Image.FromFile(HttpContext.Current.Server.MapPath("~/slike/" + request.Files[0].FileName));
            Image  imgActual        = ScaleBySize(imgOriginal, 400);

            imgActual.Save(HttpContext.Current.Server.MapPath("~/slike/" + "small_" + request.Files[0].FileName));
            imgActual.Dispose();


            var      old = db.proizvod.Find(id);
            proizvod p   = old;

            p.slikaProizvod = "small_" + request.Files[0].FileName;
            db.Entry(old).CurrentValues.SetValues(p);

            db.SaveChanges();

            return(StatusCode(HttpStatusCode.NoContent));
            //return CreatedAtRoute("DefaultApi", new { id = proizvod.idProizvod }, proizvod);
        }
        public IHttpActionResult Postproizvod(proizvod proizvod)
        { // unos novog proizvoda
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            proizvod.datumUnosaProizvod  = DateTime.Now;
            proizvod.datumIzmeneProizvod = DateTime.Now;
            db.proizvod.Add(proizvod);


            db.SaveChanges();

            return(Ok(new
            {
                id = proizvod.idProizvod
            }));
            //CreatedAtRoute("DefaultApi", new { id = proizvod.idProizvod });
        }
        public IHttpActionResult Deleteproizvod(int id)
        { // brisanje proizvoda
            proizvod p = db.proizvod.Find(id);

            if (p == null)
            {
                return(NotFound());
            }
            if (p.narudzbenicaProizvod.Count != 0)
            {
                return(Ok(new { error = "Ima narudzbenica sa ovim proizvodom. Stavite proizvod kao neaktivan!" }));
            }

            foreach (var slika in p.slike.ToList())
            {
                db.slike.Remove(slika);
            }
            db.proizvod.Remove(p);
            db.SaveChanges();

            return(Ok(p));
        }
        public IHttpActionResult Putproizvod(int id, proizvod proizvod)
        { // menjanje proizvoda, modifikovno u odnosu na ono sto EF scaffolding daje
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != proizvod.idProizvod)
            {
                return(BadRequest());
            }

            //db.Entry(proizvod).State = EntityState.Modified; - ovo iybaceno
            var old = db.proizvod.Find(id);

            proizvod.datumIzmeneProizvod = DateTime.Now;
            db.Entry(old).CurrentValues.SetValues(proizvod); // -ove dve linije ubacene

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!proizvodExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
示例#9
0
 partial void Deleteproizvod(proizvod instance);
示例#10
0
 partial void Updateproizvod(proizvod instance);
示例#11
0
 partial void Insertproizvod(proizvod instance);
示例#12
0
 private void detach_proizvods(proizvod entity)
 {
     this.SendPropertyChanging();
     entity.kategorija = null;
 }