Example #1
0
        public DataSourceResult Delete(ComponentsModel viewModel, ModelStateDictionary modelState)
        {
            if (viewModel != null && modelState.IsValid)
            {
                var repo   = this.RepoFactory.Get <ComponentRepository>();
                var entity = repo.GetById(viewModel.Id);

                entity.Deleted   = true;
                entity.DeletedOn = DateTime.Now;

                repo.SaveChanges();
                return(null);
            }
            else
            {
                return(this.HandleErrors(modelState));
            }
        }
Example #2
0
        public DataSourceResult Save(ComponentsModel viewModel, ModelStateDictionary modelState)
        {
            if (viewModel != null && modelState.IsValid)
            {
                var repo   = this.RepoFactory.Get <ComponentRepository>();
                var entity = repo.GetById(viewModel.Id);

                var exists = repo.GetIfExists(viewModel.BlindTypeId, viewModel.Name, viewModel.Id);

                if (exists)
                {
                    return(new DataSourceResult
                    {
                        Errors = GlobalConstants.ComponentExistsMessage
                    });
                }

                if (entity == null)
                {
                    entity = new Data.Models.Component();
                    repo.Add(entity);
                }

                Mapper.Map(viewModel, entity);

                try
                {
                    repo.SaveChanges();
                    viewModel.Id = entity.Id;
                    return(null);
                }
                catch (DbEntityValidationException e)
                {
                    return(new DataSourceResult
                    {
                        Errors = this.HandleDbEntityValidationException(e)
                    });
                }
            }
            else
            {
                return(this.HandleErrors(modelState));
            }
        }