示例#1
0
        private Building CreateBuildingObject(BuildingEditingModel obj)
        {
            Building entityObject = new Building();

            entityObject.Id             = obj.Id;
            entityObject.Address        = obj.Address;
            entityObject.BuildingType   = btRepository.GetByName(obj.BuildingTypeName);
            entityObject.BuildingTypeId = entityObject.BuildingType.Id;
            entityObject.FloorsNumber   = obj.FloorsNumber;
            entityObject.Area           = obj.Area;
            entityObject.Note           = obj.Note;
            entityObject.Description    = obj.Description;
            entityObject.UserId         = User.Identity.GetUserId();
            //entityObject.UserId = obj.UserId;

            if (obj.Photos == null)
            {
                entityObject.Photos = SaveFiles(obj.Files);
            }
            else
            {
                entityObject.Photos = obj.Files != null?obj.Photos.Union(SaveFiles(obj.Files)).ToArray() : obj.Photos;
            }

            return(entityObject);
        }
示例#2
0
        public ActionResult Create(BuildingEditingModel model)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.BuildingTypeName = SelectTypeNames(btRepository);
                return(View(model));
            }

            //model.Photos =
            Building obj = CreateBuildingObject(model);

            repository.Create(obj);
            uow.Save();

            TempData["message"] = "Дані про будівлю збережено";
            return(RedirectToAction("Create"));
        }
示例#3
0
        public ActionResult Edit(BuildingEditingModel model)
        {
            Building obj  = CreateBuildingObject(model);
            Building item = repository.Get(obj.Id);

            if (User.Identity.GetUserId() == item.UserId)
            {
                if (!ModelState.IsValid)
                {
                    ViewBag.BuildingTypeName = SelectTypeNames(btRepository);
                    return(View(model));
                }

                ModifyBuilding(item, obj);

                repository.Update(item);
                uow.Save();

                TempData["message"] = "Дані про будівлю змінено";
            }

            return(RedirectToAction("Edit", "BuildingsAdmin", new { id = model.Id }));
        }