예제 #1
0
        public JsonResult CheckSystemName(ComponentTypeEditModel model)
        {
            var repository    = CurrentAccountDbContext.GetComponentTypeRepository();
            var componentType = repository.GetOneOrNullBySystemName(model.SystemName);

            if (componentType != null && (model.Id == Guid.Empty || model.Id != componentType.Id))
            {
                return(Json("Тип компонента с таким системным именем уже существует", JsonRequestBehavior.AllowGet));
            }
            return(Json(true, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
        public ActionResult Edit(ComponentTypeEditModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var repository    = CurrentAccountDbContext.GetComponentTypeRepository();
            var componentType = repository.GetById(model.Id);

            CheckEditingPermissions(componentType);
            repository.Update(componentType, model.DisplayName, model.SystemName);
            this.SetTempMessage(TempMessageType.Success, "Тип компонента сохранён");
            return(RedirectToAction("Show", new { id = model.Id }));
        }
예제 #3
0
        public ActionResult Show(Guid id)
        {
            var repository    = CurrentAccountDbContext.GetComponentTypeRepository();
            var componentType = repository.GetById(id);
            var model         = new ComponentTypeEditModel()
            {
                Id          = componentType.Id,
                DisplayName = componentType.DisplayName,
                SystemName  = componentType.SystemName,
                IsCommon    = componentType.IsSystem,
                IsDeleted   = componentType.IsDeleted
            };

            return(View(model));
        }
예제 #4
0
        public ActionResult Add(ComponentTypeEditModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var client   = GetDispatcherClient();
            var response = client.GetOrCreateComponentType(CurrentUser.AccountId, new GetOrCreateComponentTypeRequestData()
            {
                SystemName  = model.SystemName,
                DisplayName = model.DisplayName
            });

            if (!response.Success)
            {
                throw new UserFriendlyException(response.ErrorMessage);
            }

            var componentType = response.Data;

            this.SetTempMessage(TempMessageType.Success, string.Format("Добавлен тип компонента <a href='{1}' class='alert-link'>{0}</a>", componentType.DisplayName, Url.Action("Show", new { id = componentType.Id })));
            return(RedirectToAction("Index"));
        }
예제 #5
0
        public ActionResult Add()
        {
            var model = new ComponentTypeEditModel();

            return(View(model));
        }