Exemplo n.º 1
0
        // GET: EtkenMadde/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            EtkenMadde m = await db.EtkenMadde.FindAsync(id);

            if (m == null)
            {
                return(HttpNotFound());
            }
            var vm = new EtkenMaddeViewModel
            {
                Id       = m.Id,
                Ad       = m.Ad,
                Aciklama = m.Aciklama
            };
            var temp = await db.EtkenMaddeEtkilesim.Where(x => x.EtkenMaddeId1 == id || x.EtkenMaddeId2 == id).ToListAsync();

            if (temp != null)
            {
                foreach (var item in temp)
                {
                    if (item.EtkenMaddeId1 == id)
                    {
                        vm.EtkilesenEtkenMaddeler.Add(item.EtkenMadde2);
                    }
                    else if (item.EtkenMaddeId2 == id)
                    {
                        vm.EtkilesenEtkenMaddeler.Add(item.EtkenMadde1);
                    }
                }
            }
            foreach (var item in temp)
            {
                if (item.EtkenMaddeId1 == vm.Id)
                {
                    vm.EtkilesenEtkenMaddelerId.Add(item.EtkenMaddeId2);
                }
                else if (item.EtkenMaddeId2 == vm.Id)
                {
                    vm.EtkilesenEtkenMaddelerId.Add(item.EtkenMaddeId1);
                }
            }
            IEnumerable <SelectListItem> items = new MultiSelectList(db.EtkenMadde.Select(x => new SelectListItem {
                Text = x.Ad, Value = x.Id.ToString()
            }), "Value", "Text", vm.EtkilesenEtkenMaddelerId);

            ViewBag.EtkenMaddeListe = items;
            //ViewBag.EtkenMaddeListe = new MultiSelectList(db.EtkenMadde.Select(x => new SelectListItem { Text = x.Ad, Value = x.Id.ToString() }), "Value", "Text", vm.EtkilesenEtkenMaddelerId);


            return(View(vm));
        }
        public JsonResult SaveDataInDatabase(EtkenMaddeViewModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    // ViewBag.EtkenMaddeListe = db.EtkenMadde.Select(x => new SelectListItem { Text = x.Ad, Value = x.Id.ToString() }).ToList();
                    return(Json(false, JsonRequestBehavior.AllowGet));
                }
                if (model.Id != null && model.Id > 0)
                {
                    EtkenMadde m = db.EtkenMadde.SingleOrDefault(x => x.Id == model.Id);
                    if (m.Ad != model.Ad.ToLower() && db.EtkenMadde.Where(x => x.Ad == model.Ad.ToLower()).Count() > 0)
                    {
                        ModelState.AddModelError("Ad", "Bu isimde bir etken madde zaten var.");
                        return(Json(false, JsonRequestBehavior.AllowGet));
                    }
                    m.Aciklama = model.Aciklama;
                    db.SaveChanges();
                    return(Json(true, JsonRequestBehavior.AllowGet));
                }

                if (db.EtkenMadde.Where(x => x.Ad == model.Ad.ToLower()).Count() > 0)
                {
                    ModelState.AddModelError("Ad", "Bu isimde bir etken madde zaten var.");
                    return(Json(false, JsonRequestBehavior.AllowGet));
                    //ViewBag.EtkenMaddeListe =  db.EtkenMadde.Select(x => new SelectListItem { Text = x.Ad, Value = x.Id.ToString() }).ToList();
                }
                else
                {
                    EtkenMadde m = new EtkenMadde();
                    m.Ad       = model.Ad;
                    m.Aciklama = model.Aciklama;
                    db.EtkenMadde.Add(m);
                    db.SaveChanges();
                    return(Json(true, JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                return(Json(false, JsonRequestBehavior.AllowGet));
                //   ModelState.AddModelError("Hata", "Bu isimde bir etken madde zaten var.");
            }
        }
Exemplo n.º 3
0
        public async Task <ActionResult> Create([Bind(Include = "Id,Ad,Aciklama,EtkilesenEtkenMaddelerId")] EtkenMaddeViewModel vm)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.EtkenMaddeListe = await db.EtkenMadde.Select(x => new SelectListItem {
                    Text = x.Ad, Value = x.Id.ToString()
                }).ToListAsync();

                return(View(vm));
            }
            if (db.EtkenMadde.Where(x => x.Ad == vm.Ad.ToLower()).Count() > 0)
            {
                ModelState.AddModelError("Ad", "Bu isimde bir etken madde zaten var.");
                ViewBag.EtkenMaddeListe = await db.EtkenMadde.Select(x => new SelectListItem {
                    Text = x.Ad, Value = x.Id.ToString()
                }).ToListAsync();

                return(View(vm));
            }
            var m = new EtkenMadde
            {
                Ad       = vm.Ad.ToLower(),
                Aciklama = vm.Aciklama,
            };

            db.EtkenMadde.Add(m);
            await db.SaveChangesAsync();

            if (vm.EtkilesenEtkenMaddelerId != null && vm.EtkilesenEtkenMaddelerId.Count() > 0)
            {
                foreach (var item in vm.EtkilesenEtkenMaddelerId)
                {
                    db.EtkenMaddeEtkilesim.Add(new EtkenMaddeEtkilesim {
                        EtkenMaddeId1 = m.Id, EtkenMaddeId2 = item
                    });
                }
                await db.SaveChangesAsync();
            }
            return(RedirectToAction("Index"));
        }
Exemplo n.º 4
0
        // GET: EtkenMadde/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            EtkenMadde m = await db.EtkenMadde.FindAsync(id);

            if (m == null)
            {
                return(HttpNotFound());
            }
            var vm = new EtkenMaddeViewModel
            {
                Id       = m.Id,
                Ad       = m.Ad,
                Aciklama = m.Aciklama
            };
            var temp = await db.EtkenMaddeEtkilesim.Where(x => x.EtkenMaddeId1 == id || x.EtkenMaddeId2 == id).ToListAsync();

            if (temp != null)
            {
                foreach (var item in temp)
                {
                    if (item.EtkenMaddeId1 == id)
                    {
                        vm.EtkilesenEtkenMaddeler.Add(item.EtkenMadde2);
                    }
                    else if (item.EtkenMaddeId2 == id)
                    {
                        vm.EtkilesenEtkenMaddeler.Add(item.EtkenMadde1);
                    }
                }
            }
            return(View(vm));
        }
Exemplo n.º 5
0
        public async Task <ActionResult> Edit([Bind(Include = "Id,Ad,Aciklama,EtkilesenEtkenMaddelerId")] EtkenMaddeViewModel vm)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.EtkenMaddeListe = new MultiSelectList(db.EtkenMadde.Select(x => new SelectListItem {
                    Text = x.Ad, Value = x.Id.ToString()
                }), "Value", "Text", vm.EtkilesenEtkenMaddelerId);
                return(View(vm));
            }
            EtkenMadde m = await db.EtkenMadde.FindAsync(vm.Id);

            if (m == null)
            {
                return(HttpNotFound());
            }
            if (db.EtkenMadde.Where(x => x.Ad == vm.Ad.ToLower() && x.Id != vm.Id).Count() > 0)
            {
                ModelState.AddModelError("Ad", "Bu isimde bir etken madde zaten var.");
                ViewBag.EtkenMaddeListe = new MultiSelectList(db.EtkenMadde.Select(x => new SelectListItem {
                    Text = x.Ad, Value = x.Id.ToString()
                }), "Value", "Text", vm.EtkilesenEtkenMaddelerId);
                return(View(vm));
            }
            m.Ad       = vm.Ad;
            m.Aciklama = vm.Aciklama;
            var eskiEtkilesenEtkenMaddeler = await db.EtkenMaddeEtkilesim.Where(x => x.EtkenMaddeId1 == m.Id || x.EtkenMaddeId2 == m.Id).ToListAsync();

            if (eskiEtkilesenEtkenMaddeler == null || eskiEtkilesenEtkenMaddeler.Count == 0)
            {
                foreach (var item in vm.EtkilesenEtkenMaddelerId)
                {
                    db.EtkenMaddeEtkilesim.Add(new EtkenMaddeEtkilesim {
                        EtkenMaddeId1 = m.Id, EtkenMaddeId2 = item
                    });
                }
            }
            else
            {
                if (vm.EtkilesenEtkenMaddelerId == null || vm.EtkilesenEtkenMaddelerId.Count() == 0)
                {
                    db.EtkenMaddeEtkilesim.RemoveRange(eskiEtkilesenEtkenMaddeler);
                }
                else
                {
                    List <int> eskiEtkilesenEtkenMaddelerId = new List <int>();
                    foreach (var item in eskiEtkilesenEtkenMaddeler)
                    {
                        if (item.EtkenMaddeId1 == vm.Id)
                        {
                            eskiEtkilesenEtkenMaddelerId.Add(item.EtkenMaddeId2);
                        }
                        else if (item.EtkenMaddeId2 == vm.Id)
                        {
                            eskiEtkilesenEtkenMaddelerId.Add(item.EtkenMaddeId1);
                        }
                    }

                    var yeniEtkilesenEtkenMaddeFark = vm.EtkilesenEtkenMaddelerId.Except(eskiEtkilesenEtkenMaddelerId);
                    if (yeniEtkilesenEtkenMaddeFark != null && yeniEtkilesenEtkenMaddeFark.Count() > 0)
                    {
                        foreach (var item in yeniEtkilesenEtkenMaddeFark)
                        {
                            db.EtkenMaddeEtkilesim.Add(new EtkenMaddeEtkilesim {
                                EtkenMaddeId1 = m.Id, EtkenMaddeId2 = item
                            });
                        }
                    }
                    var eskiEtkilesenEtkenMaddeFark = eskiEtkilesenEtkenMaddelerId.Except(vm.EtkilesenEtkenMaddelerId);
                    if (eskiEtkilesenEtkenMaddeFark != null && eskiEtkilesenEtkenMaddeFark.Count() > 0)
                    {
                        db.EtkenMaddeEtkilesim.RemoveRange(eskiEtkilesenEtkenMaddeler.Where(x => eskiEtkilesenEtkenMaddeFark.Contains(x.EtkenMaddeId1) || eskiEtkilesenEtkenMaddeFark.Contains(x.EtkenMaddeId2)));
                    }
                }
            }
            db.Entry(m).State = EntityState.Modified;

            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }