[Authorize] public ActionResult Edit(AntibioticType obj)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    dbActionResult resultAction = new dbActionResult();
                    resultAction = db.EditAntibioticType(obj);
                    int id = resultAction.intResult;
                    if (id >= 0)
                    {
                        return(RedirectToAction("Index"));
                    }

                    if (id == -1)
                    {
                        db.DetachAntibioticType(obj);
                        AntibioticType oldObj = db.GetAntibioticType(obj.AntibioticTypeID);
                        ModelState.AddModelError("", "Ошибка параллельного доступа к данным. Если проблема повторится, обратитесь к системному администратору.");
                        if (oldObj.Code != obj.Code)
                        {
                            ModelState.AddModelError("Code", "Текущее значение: " + oldObj.Code.ToString());
                        }
                        if (oldObj.DescriptionEng != obj.DescriptionEng)
                        {
                            ModelState.AddModelError("DescriptionEng", "Текущее значение: " + oldObj.DescriptionEng.ToString());
                        }
                        if (oldObj.DescriptionRus.ToString() != obj.DescriptionRus.ToString())
                        {
                            ModelState.AddModelError("DescriptionRus", "Текущее значение: " + oldObj.DescriptionRus.ToString());
                        }
                        obj.Timestamp = oldObj.Timestamp;
                    }
                    if (id == -2)
                    {
                        ModelState.AddModelError("", resultAction.exData.Message.ToString() + " | " + resultAction.exData.GetType().ToString() + " | " +
                                                 "Невозможно сохранить изменения. Нажмите обновить страницу и повторить действия. Если проблема повторится, обратитесь к системному администратору.");
                    }
                }
            }

            catch (DataException ex)
            {
                ModelState.AddModelError("", ex.Message.ToString() + " | " + ex.GetType().ToString() + " | " + "Невозможно сохранить изменения. Попробуйте повторить действия. Если проблема повторится, обратитесь к системному администратору.");
            }

            return(View(obj));
        }
Esempio n. 2
0
        public ActionResult EditClinicGroup(ClinicGroup obj)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    dbActionResult resultAction = new dbActionResult();
                    resultAction = db.EditClinicGroup(obj);
                    int id = resultAction.intResult;
                    if (id >= 0)
                    {
                        return(RedirectToAction("ClinicGroupList", new { clinicGroupID = obj.ClinicGroupID }));
                    }

                    if (id == -1)
                    {
                        db.DetachClinicGroup(obj);
                        Clinic oldObj = db.GetClinic(obj.ClinicGroupID);
                        ModelState.AddModelError("", "Ошибка параллельного доступа к данным. Если проблема повторится, обратитесь к системному администратору.");
                        if (oldObj.Description != obj.Description)
                        {
                            ModelState.AddModelError("Description", "Текущее значение: " + oldObj.Description.ToString());
                        }
                        obj.Timestamp = oldObj.Timestamp;
                    }
                    if (id == -2)
                    {
                        ModelState.AddModelError("", resultAction.exData.Message.ToString() + " | " + resultAction.exData.GetType().ToString() + " | " +
                                                 "Невозможно сохранить изменения. Нажмите обновить страницу и повторить действия. Если проблема повторится, обратитесь к системному администратору.");
                    }
                }
            }

            catch (DataException ex)
            {
                ModelState.AddModelError("", ex.Message.ToString() + " | " + ex.GetType().ToString() + " | " + "Невозможно сохранить изменения. Попробуйте повторить действия. Если проблема повторится, обратитесь к системному администратору.");
            }
            return(RedirectToAction("ClinicGroupList", new { clinicGroupID = obj.ClinicGroupID }));
        }