public ActionResult Edit(DocumentEditViewModel model, string submitVal)
        {
            if (ModelState.IsValid)
            {
                Helper.updateObjectFields(model.document);
                model.document.Rules.Clear();
                model.document.updateDate = DateTime.Now;
                model.document.companyID  = (int)db.Users.Find(WebSecurity.CurrentUserId).companyID;

                if (submitVal == "nueva version")
                {
                    HistDocument d = new HistDocument(model.document);
                    d.changeReason = model.changeReason;
                    db.HistDocuments.Add(d);
                    db.SaveChanges();
                    model.document.version++;
                }

                db.Entry(model.document).State = EntityState.Modified;
                db.SaveChanges();

                Document document = db.Documents.Include(d => d.Rules)
                                    .FirstOrDefault(d => d.ID == model.document.ID);
                document.Rules.Clear();
                db.Entry(document).State = EntityState.Modified;
                db.SaveChanges();

                if (model.selectedRules != null)
                {
                    foreach (int ruleId in model.selectedRules)
                    {
                        document.Rules.Add(db.Rules.Find(ruleId));
                    }
                }

                db.Entry(document).State = EntityState.Modified;
                db.SaveChanges();

                if (submitVal == "Capitulo")
                {
                    return(RedirectToAction("CreateChild", new { id = model.document.ID }));
                }
                else
                {
                    return(RedirectToAction("Index"));
                }
            }
            ViewBag.allRules = Helper.GetRulesSelect(db);

            return(View(model));
        }
Esempio n. 2
0
        public ActionResult Edit(ObjectivesViewModel model)
        {
            if (ModelState.IsValid)
            {
                Document d = db.Documents.Include(doc => doc.Rules)
                             .FirstOrDefault(t => model.id == t.ID);

                d.title        = model.title;
                d.documentText = model.document_text;
                d.updateDate   = DateTime.Now;

                d.Rules.Clear();
                db.SaveChanges();

                if (model.selectedRules != null)
                {
                    foreach (int r in model.selectedRules)
                    {
                        SGC_MVC.Models.Rule rule = db.Rules.Find(r);
                        d.Rules.Add(rule);
                    }
                }

                if (model.submitVal == "nueva version")
                {
                    HistDocument hd = new HistDocument(d);
                    hd.changeReason = model.changeReason;
                    db.HistDocuments.Add(hd);
                    db.SaveChanges();
                    d.version++;
                }

                db.Entry(d).State = EntityState.Modified;
                db.SaveChanges();

                return(RedirectToAction("Index"));
            }
            ViewBag.documentTypeID = db.DocumentTypes.FirstOrDefault(dt => dt.name == "Objetivo").ID;
            return(View(model));
        }
        public ActionResult Edit(PurposeEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                var document = db.Documents.Find(model.id);
                document.updateDate      = DateTime.Now;
                document.documentText    = model.document_text;
                db.Entry(document).State = EntityState.Modified;
                if (model.isNewVersion)
                {
                    var hist_document = new HistDocument(document);
                    hist_document.changeReason = model.changeReason;
                    document.version++;
                    db.HistDocuments.Add(hist_document);
                    db.Entry(document).State = EntityState.Modified;
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }