public ActionResult DeleteConfirmed(int author, int id)
        {
            Disser dis    = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию
            Review review = db.Review.Find(id, dis.Id, dis.AuthorPass);                     //и отзыв

            if (review == null)                                                             //не нашли? Ошибка
            {
                return(HttpNotFound());
            }
            db.Review.Remove(review);                                          //удаляем отзыв
            db.SaveChanges();                                                  //сохраняем изменения
            return(RedirectToAction("Index", new { id = review.AuthorPass })); //к списку
        }
        public ActionResult Edit(int?id)
        {
            if (id == null)                                                             //нет ид?
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));            //ошибка!
            }
            Disser disser = db.Disser.Where(x => x.AuthorPass == id).SingleOrDefault(); //находим диссертацию

            if (disser == null)
            {
                return(HttpNotFound());
            }
            return(View(disser)); //редактируем её
        }
        public ActionResult Edit(int?author, int?id)
        {
            if (id == null || author == null || !db.Aspirant.Any(x => x.Pass == author)) //проверяем существование
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Disser dis    = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию
            Review review = db.Review.Find(id, dis.Id, dis.AuthorPass);                     //находим отзыв

            if (review == null)                                                             //не нашли? Ошибка!
            {
                return(HttpNotFound());
            }
            return(View(review));
        }
        public ActionResult Details(int?author, int?id)
        {
            if (id == null || author == null || !db.Aspirant.Any(x => x.Pass == author)) //проверяем существование
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Disser dis    = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию
            Review review = db.Review.Find(id, dis.Id, dis.AuthorPass);                     //находим отзыв

            if (review == null)                                                             //не нашли? Ошибка!
            {
                return(HttpNotFound());
            }
            ObjectParameter output = new ObjectParameter("result", typeof(string));

            db.JoinNames("Aspirant", author, output);
            ViewBag.Name = (string)output.Value;//Своей процедурой передаем имя-фамилию
            return(View(review));
        }
        public ActionResult Index(int?id)
        {
            if (id == null)                                                             //нет ид?
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));            //ошибка!
            }
            Disser disser = db.Disser.Where(x => x.AuthorPass == id).SingleOrDefault(); //находим диссертацию

            if (disser == null)                                                         //не нашли?
            {
                ViewBag.AuthorPass = id;
                return(View("Create")); //значит, создаем
            }
            ObjectParameter output = new ObjectParameter("result", typeof(string));

            db.JoinNames("Aspirant", id, output);
            ViewBag.Name = (string)output.Value; //иначе забираем своей процедурой имя-фамилию
            return(View("Details", disser));     //И смотрим детали
        }
 public ActionResult Create([Bind(Include = "Id,AuthorPass,Nomenclature,Readiness")] Disser disser)
 {
     if (ModelState.IsValid) //если все верно заполнено
     {
         Work work = new Work();
         work.UDC        = Request.Form["Work.UDC"]; //создаем и заполняем поля работы
         work.Name       = Request.Form["Work.Name"];
         work.AuthorPass = int.Parse(Request.Form["AuthorPass"]);
         work.Department = Request.Form["Work.Department"];
         work.Theme      = Request.Form["Work.Theme"];
         work            = db.Work.Add(work);                               //работу сливаем в БД
         db.SaveChanges();
         disser.Id         = work.Id;                                       //ИД
         disser.AuthorPass = work.AuthorPass;                               //И пропуск автора как ключ в диссертацию
         db.Disser.Add(disser);                                             //добавляем диссертацию
         db.SaveChanges();                                                  //сливаем изменения
         return(RedirectToAction("Index", new { id = disser.AuthorPass })); //и к списку
     }
     return(View(disser));
 }
Exemple #7
0
        // GET: Votings
        public ActionResult Index(int?author, int?id)
        {
            if (author == null || id == null) //проверяем на существование или ошибка
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Disser  d   = db.Disser.Where(x => x.AuthorPass == author).SingleOrDefault(); //находим диссертацию
            Defence def = db.Defence
                          .Where(x => (x.DisserId == d.Id && (x.Number == id) && x.AuthorPass == author))
                          .SingleOrDefault(); //и защиту
            Voting voting = db.Voting
                            .Where(x => x.DisserId == def.DisserId && x.AuthorPass == def.AuthorPass && x.DefenceId == def.Number)
                            .SingleOrDefault(); //и голосование

            if (voting != null)
            {
                return(View("Details", voting)); //если уже есть голосование, то смотрим его
            }
            ViewBag.Defence = def;
            return(View("Create"));//иначе создаем новое
        }
 public ActionResult Edit([Bind(Include = "Id,AuthorPass,Nomenclature,Readiness")] Disser disser)
 {
     if (ModelState.IsValid) //Если все верно внесли
     {
         disser = db.Disser.Where(x => x.AuthorPass == disser.AuthorPass).SingleOrDefault();
         var t = disser.Work;                                 //находим релевантную работу
         t.Name                 = Request.Form["Work.Name"];
         t.Theme                = Request.Form["Work.Theme"]; //заполняем работу
         t.UDC                  = Request.Form["Work.UDC"];
         t.Department           = Request.Form["Work.Department"];
         disser.Nomenclature    = Request.Form["Nomenclature"];
         disser.Readiness       = Int32.Parse(Request.Form["Readiness"]);
         disser.Id              = t.Id;
         disser.Work            = disser.Work;
         db.Entry(t).State      = EntityState.Modified;
         db.Entry(disser).State = EntityState.Modified;                     //выставляем состояние изменено
         db.SaveChanges();                                                  //накатываем изменения
         return(RedirectToAction("Index", new { id = disser.AuthorPass })); //и к списку
     }
     return(View(disser));                                                  //иначе все по-новой
 }