public void Should_Delete_Media_With_Access_Rules()
        {
            RunActionInTransaction(session =>
                {
                    var uow = new DefaultUnitOfWork(session);
                    var repository = new DefaultRepository(uow);

                    var file = TestDataProvider.CreateNewMediaFileWithAccessRules(3);
                    session.SaveOrUpdate(file);
                    session.Flush();
                    session.Clear();

                    var command = new DeleteMediaCommand();
                    command.Repository = repository;
                    command.UnitOfWork = uow;

                    var result = command.Execute(new DeleteMediaCommandRequest
                                        {
                                            Id = file.Id,
                                            Version = file.Version
                                        });

                    Assert.IsTrue(result);

                    session.Clear();

                    var deletedFile = session.Query<MediaFile>().FirstOrDefault(f => f.Id == file.Id && !f.IsDeleted);
                    Assert.IsNull(deletedFile);
                });
        }
        public void Should_Delete_Page_Content()
        {
            RunActionInTransaction(session =>
            {
                // Create content
                var content = TestDataProvider.CreateNewHtmlContent();
                var pageContent = TestDataProvider.CreateNewPageContent(content);

                session.SaveOrUpdate(pageContent);
                session.Flush();
                session.Clear();

                // Delete page content
                var request = new DeletePageContentCommandRequest
                                  {
                                      PageContentId = pageContent.Id,
                                      PageContentVersion = pageContent.Version,
                                      ContentVersion = content.Version
                                  };
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);
                var contentService = Container.Resolve<IContentService>();
                var command = new DeletePageContentCommand(contentService);
                command.UnitOfWork = unitOfWork;
                command.Repository = repository;

                var result = command.Execute(request);
                Assert.IsTrue(result);
            });
        }
Example #3
0
 public ApiModuleDataDataController(
     DefaultRepository <MixCmsContext, MixModuleData, UpdateViewModel> repo,
     DefaultRepository <MixCmsContext, MixModuleData, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixModuleData, UpdateViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
Example #4
0
        public void Insert(Filial filial)
        {
            using (var session = NHibernateHelper.OpenSession())
            {
                ValidarNome(filial, session);
                ValidarSigla(filial, session);

                var filialRepository = new DefaultRepository<Filial>(session);

                var listUsuarios = filial.Usuarios;
                filial.Usuarios = null;

                filialRepository.Insert(filial);

                session.Flush();
                session.Clear();

                filial = filialRepository.FindById(filial.Id);

                filial.Usuarios = listUsuarios;

                filialRepository.Update(filial);

            }
        }
Example #5
0
        public AccountService(AppConfiguration appConfiguration,
                              EFCoreContext _db,
                              DefaultRepository <Sys_UserRole> _dbUserRole,
                              DefaultRepository <Sys_AppLog> _dbAppLog,
                              IHttpContextAccessor iHttpContextAccessor)
            : base(_db)
        {
            this.appConfiguration = appConfiguration;
            this.dbUserRole       = _dbUserRole;
            this.dbAppLog         = _dbAppLog;
            this.httpContext      = iHttpContextAccessor.HttpContext;

            this.Key = $"Authorization_{httpContext.Request.Host.Host}_{httpContext.Request.Host.Port}";

            //获取 cookie
            var token = this.GetToken();

            if (!string.IsNullOrWhiteSpace(token))
            {
                var Id = new JwtTokenUtil().ReadJwtToken(token).ToGuid();

                this.info = this.GetAccountByUserId(Id.ToGuid()).Result;
            }

            //if (httpContext.User != null)
            //{
            //    var claimsIdentity = httpContext.User.Identity as System.Security.Claims.ClaimsIdentity;
            //    if (claimsIdentity.Name != null)
            //    {
            //        var Id = claimsIdentity.Name;
            //        this.info = this.GetAccountByUserId(Id.ToGuid()).Result;
            //    }
            //}
        }
 public ApiPostController(
     DefaultRepository <MixCmsContext, MixPost, ReadViewModel> repo,
     DefaultRepository <MixCmsContext, MixPost, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixPost, DeleteViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
        public void Should_ThrowValidationException_AboutNonDeletableOption()
        {
            RunActionInTransaction(session =>
            {
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);

                var optionService = new DefaultOptionService(repository);

                // Create layout with options
                var layout = TestDataProvider.CreateNewLayout();
                layout.LayoutOptions = new List<LayoutOption>();

                var option1 = TestDataProvider.CreateNewLayoutOption(layout);
                option1.Type = OptionType.Text;
                option1.IsDeletable = false;
                layout.LayoutOptions.Add(option1);

                session.SaveOrUpdate(layout);
                session.Flush();
                session.Clear();

                optionService.SetOptions<LayoutOption, Layout>(layout, new List<IOption>());
                unitOfWork.Commit();
            });
        }
        public void Should_Delete_HtmlContentWidget_Successfully()
        {
            var htmlContentWidget = TestDataProvider.CreateNewHtmlContentWidget();

            RunActionInTransaction(session =>
            {
                session.SaveOrUpdate(htmlContentWidget);
                session.Flush();
                session.Clear();

                var uow            = new DefaultUnitOfWork(session);
                var repository     = new DefaultRepository(uow);
                var optionService  = new Mock <IOptionService>().Object;
                var contentService = new Mock <IContentService>().Object;

                var widgetService = new DefaultWidgetService(repository, uow, optionService, contentService);

                DeleteWidgetCommand command = new DeleteWidgetCommand(widgetService);

                bool success = command.Execute(new DeleteWidgetRequest
                {
                    WidgetId = htmlContentWidget.Id,
                    Version  = htmlContentWidget.Version
                });
                Assert.IsTrue(success);
            });
        }
 public ApiPortalPageNavigationPortalController(
     DefaultRepository <MixCmsContext, MixPortalPageNavigation, ReadViewModel> repo,
     DefaultRepository <MixCmsContext, MixPortalPageNavigation, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixPortalPageNavigation, UpdateViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
Example #10
0
        public SongsController(IFreeSql fsql,
                               GuidRepository <Song> repos1,
                               GuidRepository <xxxx> repos2,

                               DefaultRepository <Song, int> repos11,
                               DefaultRepository <xxxx, int> repos21,

                               BaseRepository <Song> repos3, BaseRepository <Song, int> repos4,
                               IBasicRepository <Song> repos31, IBasicRepository <Song, int> repos41,
                               IReadOnlyRepository <Song> repos311, IReadOnlyRepository <Song, int> repos411,

                               SongRepository reposSong
                               )
        {
            _songRepository = repos4;

            //test code
            var curd1 = fsql.GetRepository <Song, int>();
            var curd2 = fsql.GetRepository <Song, string>();
            var curd3 = fsql.GetRepository <Song, Guid>();
            var curd4 = fsql.GetGuidRepository <Song>();

            Console.WriteLine(repos1.Select.ToSql());
            Console.WriteLine(reposSong.Select.ToSql());

            Console.WriteLine(repos2.Select.ToSql());
            Console.WriteLine(repos21.Select.ToSql());

            using (reposSong.DataFilter.DisableAll()) {
                Console.WriteLine(reposSong.Select.ToSql());
            }
        }
Example #11
0
        Field IFieldRepository.Update(Field item)
        {
            try
            {
                var preUpdateField = GetById(item.Id);

                ChangeMaxOrderTriggerState(false);
                ChangeM2MDefaultTriggerState(false);

                var constraint   = item.Constraint;
                var dynamicImage = item.DynamicImage;

                item.ReorderContentFields();

                UpdateBackwardFields(item, preUpdateField);

                UpdateRelationData(item, preUpdateField);

                var newItem = DefaultRepository.Update <Field, FieldDAL>(item);

                UpdateFieldOrder(newItem.Id, item.Order);

                UpdateConstraint(constraint, newItem);

                UpdateDynamicImage(dynamicImage, newItem);

                return(GetById(newItem.Id));
            }
            finally
            {
                ChangeMaxOrderTriggerState(true);
                ChangeM2MDefaultTriggerState(true);
            }
        }
        public void Should_Delete_Page_Content()
        {
            RunActionInTransaction(session =>
            {
                // Create content
                var content     = TestDataProvider.CreateNewHtmlContent();
                var pageContent = TestDataProvider.CreateNewPageContent(content);

                session.SaveOrUpdate(pageContent);
                session.Flush();
                session.Clear();

                // Delete page content
                var request = new DeletePageContentCommandRequest
                {
                    PageContentId      = pageContent.Id,
                    PageContentVersion = pageContent.Version,
                    ContentVersion     = content.Version
                };
                var unitOfWork          = new DefaultUnitOfWork(session);
                var repository          = new DefaultRepository(unitOfWork);
                var securityService     = new Mock <ISecurityService>().Object;
                var optionService       = new Mock <IOptionService>().Object;
                var childContentService = new Mock <IChildContentService>().Object;

                var contentService = new DefaultContentService(securityService, repository, optionService, childContentService);
                var command        = new DeletePageContentCommand(contentService);
                command.UnitOfWork = unitOfWork;
                command.Repository = repository;

                var result = command.Execute(request);
                Assert.IsTrue(result);
            });
        }
Example #13
0
        Field IFieldRepository.CreateNew(Field item, bool explicitOrder)
        {
            try
            {
                if (explicitOrder)
                {
                    ChangeMaxOrderTriggerState(false);
                    item.ReorderContentFields();
                }

                var constraint   = item.Constraint;
                var dynamicImage = item.DynamicImage;

                DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Field, item);
                var newItem = DefaultRepository.Save <Field, FieldDAL>(item);
                DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Field);

                if (explicitOrder)
                {
                    UpdateFieldOrder(newItem.Id, item.Order);
                }

                SaveConstraint(constraint, newItem);
                SaveDynamicImage(dynamicImage, newItem);

                return(GetById(newItem.Id));
            }
            finally
            {
                if (explicitOrder)
                {
                    ChangeMaxOrderTriggerState(true);
                }
            }
        }
Example #14
0
        public void Should_Delete_Media_With_Access_Rules()
        {
            RunActionInTransaction(session =>
            {
                var uow        = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(uow);

                var file = TestDataProvider.CreateNewMediaFileWithAccessRules(3);
                session.SaveOrUpdate(file);
                session.Flush();
                session.Clear();

                var command        = new DeleteMediaCommand();
                command.Repository = repository;
                command.UnitOfWork = uow;

                var result = command.Execute(new DeleteMediaCommandRequest
                {
                    Id      = file.Id,
                    Version = file.Version
                });

                Assert.IsTrue(result);

                session.Clear();

                var deletedFile = session.Query <MediaFile>().FirstOrDefault(f => f.Id == file.Id && !f.IsDeleted);
                Assert.IsNull(deletedFile);
            });
        }
        private IRepository CreateRepository(ISession session)
        {
            var unitOfWork = new DefaultUnitOfWork(session);
            var repository = new DefaultRepository(unitOfWork);

            return(repository);
        }
Example #16
0
        ContentLink IContentRepository.UpdateLink(ContentLink link)
        {
            var result = MapperFacade.ContentLinkMapper.GetBizObject(DefaultRepository.SimpleUpdate(MapperFacade.ContentLinkMapper.GetDalObject(link)));

            result.WasNew = false;
            return(result);
        }
Example #17
0
        private int CopyObject(BllObject sourceObj)
        {
            var tempObj = ObjectRepository.GetObjectPropertiesById(sourceObj.Id);

            tempObj.Id       = 0;
            tempObj.PageId   = DestinationId;
            tempObj.LockedBy = 0;
            var newObj = DefaultRepository.Save <BllObject, ObjectDAL>(tempObj);

            if (sourceObj.IsObjectContainerType)
            {
                CopyContainer(newObj.Id, sourceObj.Container);
                CopyContainerStatuses(newObj.Id, sourceObj.Id);
            }
            else if (sourceObj.IsObjectFormType)
            {
                CopyContentForm(newObj.Id, sourceObj.ContentForm);
            }
            var formats        = ObjectFormatRepository.GetFormatsByObjectId(sourceObj.Id);
            var newDefFormatId = CopyObjectFormats(newObj.Id, sourceObj);

            if (newDefFormatId != 0)
            {
                ObjectRepository.UpdateDefaultFormatId(newObj.Id, newDefFormatId);
            }

            CopyObjectValues(newObj.Id, sourceObj);

            return(newObj.Id);
        }
        /// <summary>
        /// Возвращает версию статьи
        /// </summary>
        /// <param name="id">ID версии</param>
        /// <param name="articleId">ID статьи (параметр необязательный, необходимо передавать только, если версия - текущая</param>
        /// <returns>информация о версии статьи</returns>
        internal static ArticleVersion GetById(int id, int articleId = 0)
        {
            ArticleVersion articleVersion;

            if (id == ArticleVersion.CurrentVersionId)
            {
                if (articleId == 0)
                {
                    throw new Exception("Article id is not specified!");
                }

                var article = ArticleRepository.GetById(articleId);
                articleVersion = new ArticleVersion {
                    ArticleId = articleId, Id = id, Modified = article.Modified, LastModifiedBy = article.LastModifiedBy, LastModifiedByUser = article.LastModifiedByUser, Article = article
                };
            }
            else
            {
                var articleVersionDal = DefaultRepository.GetById <ArticleVersionDAL>(id);
                if (articleVersionDal == null)
                {
                    return(null);
                }

                articleVersionDal.LastModifiedByUserReference.Load();

                articleVersion = MapperFacade.ArticleVersionMapper.GetBizObject(articleVersionDal);
                if (articleVersion != null)
                {
                    articleVersion.Article = ArticleRepository.GetById(articleVersion.ArticleId);
                }
            }

            return(articleVersion);
        }
Example #19
0
        private static void UpdateDynamicImage(DynamicImage dymamicImage, Field newItem)
        {
            if (dymamicImage != null)
            {
                var dymamicImageDal = MapperFacade.DynamicImageMapper.GetDalObject(dymamicImage);
                if (dymamicImage.IsNew)
                {
                    dymamicImage.Id = newItem.Id;
                    dymamicImageDal = DefaultRepository.SimpleSave(dymamicImageDal);
                }
                else
                {
                    dymamicImageDal = DefaultRepository.SimpleUpdate(dymamicImageDal);
                }

                newItem.DynamicImage = MapperFacade.DynamicImageMapper.GetBizObject(dymamicImageDal);
            }
            else
            {
                var context = QPContext.EFContext;
                var dynamicImageFieldDAL = DefaultRepository.GetById <DynamicImageFieldDAL>(newItem.Id, context);
                if (dynamicImageFieldDAL != null)
                {
                    DefaultRepository.SimpleDelete(dynamicImageFieldDAL, context);
                }
            }
        }
 public ApiLanguageController(
     DefaultRepository <MixCmsContext, MixLanguage, ReadMvcViewModel> repo,
     DefaultRepository <MixCmsContext, MixLanguage, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixLanguage, UpdateViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
        public void Should_Return_Widgets_List_Successfully()
        {
            RunActionInTransaction(
                session =>
                    {
                        ServerControlWidget control1 = TestDataProvider.CreateNewServerControlWidget();
                        HtmlContentWidget control2 = TestDataProvider.CreateNewHtmlContentWidget();

                        control1.Id = Guid.NewGuid();
                        control1.Name = Guid.NewGuid().ToString().Replace("-", string.Empty);

                        session.SaveOrUpdate(control1);
                        session.SaveOrUpdate(control2);
                        session.Flush();

                        var unitOfWork = new DefaultUnitOfWork(session);
                        var repository = new DefaultRepository(unitOfWork);
                        var categoryService = new Mock<ICategoryService>();
                        var cmsConfiguration = new Mock<ICmsConfiguration>().Object;
                        var widgetService = new DefaultWidgetService(repository, unitOfWork, null, null, null, categoryService.Object, cmsConfiguration);
                        var command = new GetSiteSettingsWidgetsCommand(widgetService);

                        var response = command.Execute(new WidgetsFilter { SearchQuery = control1.Name.Substring(1, control1.Name.Length - 1) });

                        Assert.IsNotNull(response);
                        Assert.IsNotNull(response.Items);
                        Assert.GreaterOrEqual(response.Items.Count(), 1);

                        var widget = response.Items.FirstOrDefault(w => control1.Id == w.Id);
                        Assert.IsNotNull(widget);
                        Assert.AreEqual(control1.Name, widget.WidgetName);
                    });
        }
        public AccountService(EFCoreContext _db,
                              DefaultRepository <Sys_UserRole> _dbUserRole,
                              DefaultRepository <Sys_AppLog> _dbAppLog,
                              IHttpContextAccessor iHttpContextAccessor)
            : base(_db)
        {
            this.dbUserRole  = _dbUserRole;
            this.dbAppLog    = _dbAppLog;
            this.httpContext = iHttpContextAccessor.HttpContext;

            this.Key = $"Authorization_{httpContext.Request.Host.Host}_{httpContext.Request.Host.Port}";

            //获取 cookie
            var token = this.GetToken();

            if (!string.IsNullOrWhiteSpace(token))
            {
                var Id = new JwtTokenUtil().ReadJwtToken(token).ToGuid();

                this.info = this.GetAccountByUserId(Id.ToGuid()).Result;
            }

            //if (httpContext.User != null)
            //{
            //    var claimsIdentity = httpContext.User.Identity as System.Security.Claims.ClaimsIdentity;
            //    if (claimsIdentity.Name != null)
            //    {
            //        var Id = claimsIdentity.Name;
            //        this.info = this.GetAccountByUserId(Id.ToGuid()).Result;
            //    }Toolkit.ReadXmlSummary.XMLFromName(System.Type, char, string) (位于 [ReadXmlSummary.cs] 中)(navigate-to-context
            //}
        }
        public void Should_Return_Widgets_List_Successfully()
        {
            RunActionInTransaction(
                session =>
            {
                ServerControlWidget control1 = TestDataProvider.CreateNewServerControlWidget();
                HtmlContentWidget control2   = TestDataProvider.CreateNewHtmlContentWidget();

                control1.Id   = Guid.NewGuid();
                control1.Name = Guid.NewGuid().ToString().Replace("-", string.Empty);

                session.SaveOrUpdate(control1);
                session.SaveOrUpdate(control2);
                session.Flush();

                var unitOfWork       = new DefaultUnitOfWork(session);
                var repository       = new DefaultRepository(unitOfWork);
                var categoryService  = new Mock <ICategoryService>();
                var cmsConfiguration = new Mock <ICmsConfiguration>().Object;
                var widgetService    = new DefaultWidgetService(repository, unitOfWork, null, null, null, categoryService.Object, cmsConfiguration);
                var command          = new GetSiteSettingsWidgetsCommand(widgetService);

                var response = command.Execute(new WidgetsFilter {
                    SearchQuery = control1.Name.Substring(1, control1.Name.Length - 1)
                });

                Assert.IsNotNull(response);
                Assert.IsNotNull(response.Items);
                Assert.GreaterOrEqual(response.Items.Count(), 1);

                var widget = response.Items.FirstOrDefault(w => control1.Id == w.Id);
                Assert.IsNotNull(widget);
                Assert.AreEqual(control1.Name, widget.WidgetName);
            });
        }
        public void Should_Save_Options_Successfully()
        {
            RunActionInTransaction(session =>
            {
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);

                var cmsConfiguration = new Mock <ICmsConfiguration>();
                var optionService    = new DefaultOptionService(repository, new HttpRuntimeCacheService(), cmsConfiguration.Object);

                // Create layout with options
                var layout           = TestDataProvider.CreateNewLayout();
                layout.LayoutOptions = new List <LayoutOption>();

                var option1  = TestDataProvider.CreateNewLayoutOption(layout);
                option1.Type = OptionType.Text;
                layout.LayoutOptions.Add(option1);

                var option2  = TestDataProvider.CreateNewLayoutOption(layout);
                option2.Type = OptionType.Text;
                layout.LayoutOptions.Add(option2);

                var option3  = TestDataProvider.CreateNewLayoutOption(layout);
                option3.Type = OptionType.Text;
                layout.LayoutOptions.Add(option3);

                session.SaveOrUpdate(layout);
                session.Flush();
                session.Clear();

                // Create fake options:
                // 1 should be kept
                // 2 should be updated
                // 3 should be inserted
                // option2 should be deleted
                var newOption1 = new LayoutOption {
                    Key = option1.Key, Type = option1.Type, DefaultValue = option1.DefaultValue
                };
                var newOption2 = new LayoutOption {
                    Key = option2.Key, Type = option2.Type, DefaultValue = TestDataProvider.ProvideRandomString(100)
                };
                var newOption3 = new LayoutOption {
                    Key = TestDataProvider.ProvideRandomString(100), Type = OptionType.Text, DefaultValue = TestDataProvider.ProvideRandomString(100)
                };
                var newOptions = new List <IOptionEntity> {
                    newOption1, newOption2, newOption3
                };

                optionService.SetOptions <LayoutOption, Layout>(layout, newOptions);
                unitOfWork.Commit();

                // Load all options
                var options = repository.AsQueryable <LayoutOption>(lo => lo.Layout == layout).ToList();

                Assert.AreEqual(options.Count, 3);
                Assert.IsTrue(options.Any(o => o.Key == option1.Key && o.DefaultValue == option1.DefaultValue && o.Type == option1.Type));
                Assert.IsTrue(options.Any(o => o.Key == option2.Key && o.DefaultValue == newOption2.DefaultValue && o.Type == option2.Type));
                Assert.IsTrue(options.Any(o => o.Key == newOption3.Key && o.DefaultValue == newOption3.DefaultValue && o.Type == newOption3.Type));
            });
        }
Example #25
0
 public ApiMixDatabaseDataAssociationPortalController(
     DefaultRepository <MixCmsContext, MixDatabaseDataAssociation, FormViewModel> repo,
     DefaultRepository <MixCmsContext, MixDatabaseDataAssociation, FormViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixDatabaseDataAssociation, DeleteViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
Example #26
0
        public void Should_ThrowValidationException_AboutNonDeletableOption()
        {
            RunActionInTransaction(session =>
            {
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);

                var optionService = new DefaultOptionService(repository, new HttpRuntimeCacheService());

                // Create layout with options
                var layout           = TestDataProvider.CreateNewLayout();
                layout.LayoutOptions = new List <LayoutOption>();

                var option1         = TestDataProvider.CreateNewLayoutOption(layout);
                option1.Type        = OptionType.Text;
                option1.IsDeletable = false;
                layout.LayoutOptions.Add(option1);

                session.SaveOrUpdate(layout);
                session.Flush();
                session.Clear();

                optionService.SetOptions <LayoutOption, Layout>(layout, new List <IOption>());
                unitOfWork.Commit();
            });
        }
        public void Should_Delete_HtmlContentWidget_Successfully()
        {
            var htmlContentWidget = TestDataProvider.CreateNewHtmlContentWidget();

            RunActionInTransaction(session =>
            {
                session.SaveOrUpdate(htmlContentWidget);
                session.Flush();
                session.Clear();

                var uow = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(uow);
                var optionService = new Mock<IOptionService>().Object;
                var contentService = new Mock<IContentService>().Object;
                var childContentService = new Mock<IChildContentService>().Object;
                var categoryService = new Mock<ICategoryService>();
                var widgetService = new DefaultWidgetService(repository, uow, optionService, contentService, childContentService, categoryService.Object);

                DeleteWidgetCommand command = new DeleteWidgetCommand(widgetService);

                bool success = command.Execute(new DeleteWidgetRequest
                                                    {
                                                        WidgetId = htmlContentWidget.Id,
                                                        Version = htmlContentWidget.Version
                                                    });
                Assert.IsTrue(success);
            });
        }
Example #28
0
        internal static ContentGroup UpdateGroup(ContentGroup group)
        {
            var dal    = MapperFacade.ContentGroupMapper.GetDalObject(group);
            var newDal = DefaultRepository.SimpleUpdate(dal);

            return(MapperFacade.ContentGroupMapper.GetBizObject(newDal));
        }
Example #29
0
 public ApiMixDatabaseDataValueController(
     DefaultRepository <MixCmsContext, MixDatabaseDataValue, ReadViewModel> repo,
     DefaultRepository <MixCmsContext, MixDatabaseDataValue, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixDatabaseDataValue, DeleteViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper) : base(repo, updRepo, delRepo, mixIdentityHelper)
 {
 }
Example #30
0
 public void Update(Filial filial)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var filialRepository = new DefaultRepository<Filial>(session);
         filialRepository.Update(filial);
     }
 }
Example #31
0
 public IList<Filial> GetAll()
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var filialRepository = new DefaultRepository<Filial>(session);
         return filialRepository.GetAll();
     }
 }
 public static void CleanUp()
 {
     //O indicador não deveria ser deletado, mas como é um teste...
     var repository = new DefaultRepository<Indicador>(NHibernateHelper.OpenSession());
     var indicadores = repository.GetAll().Where(v => v.Nome.Contains("Teste"));
     foreach (var indicador in indicadores)
         repository.Delete(indicador);
 }
 public void Update(Movimentacao movimentacao)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var repository = new DefaultRepository<Movimentacao>(session);
         repository.Update(movimentacao);
     }
 }
 public IList<Movimentacao> GetAll()
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var repository = new DefaultRepository<Movimentacao>(session);
         return repository.GetAll();
     }
 }
Example #35
0
 public Usuario FindById(int id)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var repository = new DefaultRepository<Usuario>(session);
         return repository.FindById(id);
     }
 }
Example #36
0
 public void Delete(Usuario usuario)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var visaoRepository = new DefaultRepository<Usuario>(session);
         visaoRepository.Delete(usuario);
     }
 }
Example #37
0
 public Visao FindById(int id)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var visaoRepository = new DefaultRepository<Visao>(session);
         return visaoRepository.FindById(id);
     }
 }
Example #38
0
 public Filial FindById(int id)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var filialRepository = new DefaultRepository<Filial>(session);
         return filialRepository.FindById(id);
     }
 }
Example #39
0
 public IList<Indicador> GetAll()
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var repository = new DefaultRepository<Indicador>(session);
         return repository.GetAll();
     }
 }
Example #40
0
 public IList<Visao> GetAll()
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var visaoRepository = new DefaultRepository<Visao>(session);
         return visaoRepository.GetAll();
     }
 }
Example #41
0
 public void Delete(Visao visao)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var visaoRepository = new DefaultRepository<Visao>(session);
         visaoRepository.Delete(visao);
     }
 }
Example #42
0
 public Indicador FindById(int id)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         var repository = new DefaultRepository<Indicador>(session);
         return repository.FindById(id);
     }
 }
 public DefaultController(ILogger <DefaultController> logger, IOptions <ServiceOptions> serviceOptions, IMapper mapper,
                          DefaultRepository defaultRepository)
 {
     Logger            = logger;
     ServiceOptions    = serviceOptions.Value;
     Mapper            = mapper;
     DefaultRepository = defaultRepository;
 }
Example #44
0
 public void Update(GrupoVisao grupoVisao)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         ValidarNome(grupoVisao, session);
         var repository = new DefaultRepository<GrupoVisao>(session);
         repository.Update(grupoVisao);
     }
 }
Example #45
0
 public MixDatabaseDataPortalController(
     DefaultRepository <MixCmsContext, MixDatabaseData, FormViewModel> repo,
     DefaultRepository <MixCmsContext, MixDatabaseData, FormViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixDatabaseData, DeleteViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper,
     AuditLogRepository auditlogRepo) :
     base(repo, updRepo, delRepo, mixIdentityHelper, auditlogRepo)
 {
 }
Example #46
0
 public void Update(Visao visao)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         ValidarNome(visao, session);
         var visaoRepository = new DefaultRepository<Visao>(session);
         visaoRepository.Update(visao);
     }
 }
Example #47
0
 public ApiRoleController(
     DefaultRepository <MixCmsAccountContext, AspNetRoles, ReadViewModel> repo,
     DefaultRepository <MixCmsAccountContext, AspNetRoles, UpdateViewModel> updRepo,
     MixIdentityHelper mixIdentityHelper, RoleManager <IdentityRole> roleManager,
     AuditLogRepository auditlogRepo)
     : base(repo, updRepo, updRepo, mixIdentityHelper, auditlogRepo)
 {
     _roleManager = roleManager;
 }
 public ApiTemplateController(
     DefaultRepository <MixCmsContext, MixTemplate, ReadViewModel> repo,
     DefaultRepository <MixCmsContext, MixTemplate, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixTemplate, DeleteViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper,
     AuditLogRepository auditlogRepo)
     : base(repo, updRepo, delRepo, mixIdentityHelper, auditlogRepo)
 {
 }
Example #49
0
        public Dictionary <Unit, Position> GetAll()
        {
            var result = new Dictionary <Unit, Position>();

            result.AddRange(DefaultRepository.GetAll());
            result.AddRange(UserRepository.GetAll());

            return(result);
        }
Example #50
0
 public ApiModuleController(
     DefaultRepository <MixCmsContext, MixModule, ReadListItemViewModel> repo,
     DefaultRepository <MixCmsContext, MixModule, UpdateViewModel> updRepo,
     DefaultRepository <MixCmsContext, MixModule, UpdateViewModel> delRepo,
     MixIdentityHelper mixIdentityHelper,
     AuditLogRepository auditlogRepo)
     : base(repo, updRepo, delRepo, mixIdentityHelper, auditlogRepo)
 {
 }
        public IBaseRepository <TEntity> GetRepository <TEntity>(Expression <Func <TEntity, bool> > filter = null) where TEntity : class
        {
            var repo = new DefaultRepository <TEntity, int>(_fsql, filter)
            {
                UnitOfWork = this
            };

            return(repo);
        }
Example #52
0
 public void Update(Usuario usuario)
 {
     using (var session = NHibernateHelper.OpenSession())
     {
         ValidarNome(usuario, session);
         var repository = new DefaultRepository<Usuario>(session);
         repository.Update(usuario);
     }
 }
Example #53
0
        public void Delete(Indicador indicador)
        {
            using (var session = NHibernateHelper.OpenSession())
            {
                ValidarVinculoComVisao(indicador, session);

                var repository = new DefaultRepository<Indicador>(session);
                repository.Delete(indicador);
            }
        }
Example #54
0
        public void Should_Clone_Page_With_Tags_Options_Contents_AccessRules()
        {
            RunActionInTransaction(session =>
                {
                    const string url = "/test-link";
                    var uow = new DefaultUnitOfWork(session);
                    var repository = new DefaultRepository(uow);

                    var pageToClone = TestDataProvider.CreateNewPageWithTagsContentsOptionsAndAccessRules(session, 2, 2, 2, 2);
                    
                    session.SaveOrUpdate(pageToClone);
                    session.Flush();
                    session.Clear();
                    
                    var pageService = new Mock<IPageService>();
                    pageService.Setup(f => f.ValidatePageUrl(It.IsAny<string>(), It.IsAny<Guid?>()));
                    pageService.Setup(f => f.CreatePagePermalink(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<Guid>(), It.IsAny<Guid>(), It.IsAny<Guid>())).Returns(url);

                    var urlService = new Mock<IUrlService>();
                    urlService.Setup(f => f.FixUrl(It.IsAny<string>())).Returns(url);

                    var rules = new List<IAccessRule>();
                    var rule1 = TestDataProvider.CreateNewAccessRule();
                    rules.Add(rule1);
                    var rule2 = TestDataProvider.CreateNewAccessRule();
                    rules.Add(rule2);

                    var pageCloningService = new DefaultPageCloneService(pageService.Object, urlService.Object, 
                        new Mock<ISecurityService>().Object, new Mock<IAccessControlService>().Object, repository, uow, 
                        Container.Resolve<ICmsConfiguration>());

                    var command = new ClonePageCommand(pageCloningService);
                    command.Repository = repository;
                    command.UnitOfWork = uow;

                    var result = command.Execute(new ClonePageViewModel
                                        {
                                            PageId = pageToClone.Id,
                                            PageTitle = "new cloned page",
                                            PageUrl = url,
                                            UserAccessList = pageToClone.AccessRules.Select(u => new UserAccessViewModel(u)).ToList()
                                        });

                    Assert.IsNotNull(result);
                    session.Clear();

                    var actual = repository.AsQueryable<PageProperties>().Where(f => f.Id == result.PageId).ToList().FirstOrDefault();
                    
                    Assert.IsNotNull(actual);
                    Assert.AreEqual(2, actual.AccessRules.Count(), "AccessRules");
                    Assert.AreEqual(2, actual.PageTags.Count(), "Tags");
                    Assert.AreEqual(2, actual.PageContents.Count(), "Contents");
                    Assert.AreEqual(2, actual.Options.Count(), "Options");
                });
        }
        public void Should_Return_Page_Content_Options_Successfully()
        {
            RunActionInTransaction(session =>
            {
                var content = TestDataProvider.CreateNewContent();
                var pageContent = TestDataProvider.CreateNewPageContent(content);

                FillContentWithOptions(content);
                FillPageContentWithOptions(content, pageContent);

                session.SaveOrUpdate(pageContent);
                session.Flush();
                session.Clear();

                // Create command
                var unitOfWork = new DefaultUnitOfWork(session);
                var command = new GetPageContentOptionsCommand();
                var repository = new DefaultRepository(unitOfWork);
                command.UnitOfWork = unitOfWork;
                command.Repository = repository;
                command.CmsConfiguration = Container.Resolve<ICmsConfiguration>();
                command.OptionService = new DefaultOptionService(repository, new HttpRuntimeCacheService(), command.CmsConfiguration);

                // Execute command
                var result = command.Execute(pageContent.Id);

                // Should return 4 options: 2 with assigned values, 1 without parent option and 1 unassigned
                Assert.IsNotNull(result);
                Assert.IsNotNull(result.OptionValues);
                Assert.AreEqual(result.OptionValues.Count, 5);
                Assert.IsNotNull(result.OptionValues.FirstOrDefault(o => o.OptionKey == content.ContentOptions[0].Key
                    && o.OptionValue == pageContent.Options[0].Value
                    && o.OptionDefaultValue == content.ContentOptions[0].DefaultValue
                    && !o.UseDefaultValue
                    && !o.CanEditOption));
                Assert.IsNotNull(result.OptionValues.FirstOrDefault(o => o.OptionKey == content.ContentOptions[1].Key
                    && o.OptionValue == pageContent.Options[1].Value
                    && o.OptionDefaultValue == content.ContentOptions[1].DefaultValue
                    && !o.UseDefaultValue
                    && !o.CanEditOption));
                Assert.IsNotNull(result.OptionValues.FirstOrDefault(o => o.OptionKey == content.ContentOptions[2].Key
                    && o.OptionValue == content.ContentOptions[2].DefaultValue
                    && o.OptionDefaultValue == content.ContentOptions[2].DefaultValue
                    && o.UseDefaultValue
                    && !o.CanEditOption));
                Assert.IsNotNull(result.OptionValues.FirstOrDefault(o => o.OptionKey == pageContent.Options[2].Key
                    && o.OptionValue == pageContent.Options[2].Value
                    && o.OptionDefaultValue == null
                    && o.CanEditOption));
                Assert.IsNotNull(result.OptionValues.FirstOrDefault(o => o.OptionKey == pageContent.Options[3].Key
                    && o.OptionValue == pageContent.Options[3].Value
                    && o.OptionDefaultValue == null
                    && o.CanEditOption));
            });
        }
Example #56
0
        public void Update(Indicador indicador)
        {
            using (var session = NHibernateHelper.OpenSession())
            {
                if (indicador.TipoCalculo == TipoCalculoEnum.Banco)
                    ValidarIndicadorBanco(indicador, session);

                var repository = new DefaultRepository<Indicador>(session);
                repository.Update(indicador);
            }
        }
Example #57
0
        public void Sould_Delete_Page_Successfully()
        {
            RunActionInTransaction(session =>
                {
                    const string url = "/test-link/";
                    var uow = new DefaultUnitOfWork(session);
                    var repository = new DefaultRepository(uow);
                    
                    var page = TestDataProvider.CreateNewPageWithTagsContentsOptionsAndAccessRules(session);
                    
                    session.SaveOrUpdate(page);
                    session.Flush();
                    session.Clear();
                    
                    var pageService = new Mock<IPageService>();
                    pageService.Setup(f => f.ValidatePageUrl(It.IsAny<string>(), It.IsAny<Guid?>()));
                    pageService.Setup(f => f.CreatePagePermalink(It.IsAny<string>(), It.IsAny<string>())).Returns(url);

                    var sitemapService = new Mock<ISitemapService>();
                    sitemapService
                        .Setup(service => service.GetNodesByPage(It.IsAny<PageProperties>()))
                        .Returns(() => new List<SitemapNode>());

                    var urlService = new Mock<IUrlService>();
                    urlService.Setup(f => f.FixUrl(It.IsAny<string>())).Returns((string a) => a);

                    var securityService = new Mock<ICmsSecurityConfiguration>();
                    securityService.Setup(f => f.AccessControlEnabled).Returns(false);

                    var configurationService = new Mock<ICmsConfiguration>();
                    configurationService.Setup(f => f.Security).Returns(securityService.Object);

                    var command = new DeletePageCommand(null, sitemapService.Object, urlService.Object, configurationService.Object);
                    command.Repository = repository;
                    command.UnitOfWork = uow;

                    var result = command.Execute(new DeletePageViewModel
                                        {
                                            PageId = page.Id,
                                            UpdateSitemap = false,
                                            RedirectUrl = null,
                                            SecurityWord = "DELETE",
                                            Version = page.Version
                                        });

                    Assert.IsTrue(result);
                    session.Clear();

                    var actual = repository.AsQueryable<PageProperties>().FirstOrDefault(f => f.Id == page.Id && !f.IsDeleted);                    
                    Assert.IsNull(actual);   
                });
        }
        public void Should_Save_Options_Successfully()
        {
            RunActionInTransaction(session =>
            {
                var unitOfWork = new DefaultUnitOfWork(session);
                var repository = new DefaultRepository(unitOfWork);

                var cmsConfiguration = new Mock<ICmsConfiguration>();
                var optionService = new DefaultOptionService(repository, new HttpRuntimeCacheService(), cmsConfiguration.Object);

                // Create layout with options
                var layout = TestDataProvider.CreateNewLayout();
                layout.LayoutOptions = new List<LayoutOption>();

                var option1 = TestDataProvider.CreateNewLayoutOption(layout);
                option1.Type = OptionType.Text;
                layout.LayoutOptions.Add(option1);

                var option2 = TestDataProvider.CreateNewLayoutOption(layout);
                option2.Type = OptionType.Text;
                layout.LayoutOptions.Add(option2);

                var option3 = TestDataProvider.CreateNewLayoutOption(layout);
                option3.Type = OptionType.Text;
                layout.LayoutOptions.Add(option3);
                
                session.SaveOrUpdate(layout);
                session.Flush();
                session.Clear();
                
                // Create fake options:
                // 1 should be kept
                // 2 should be updated
                // 3 should be inserted
                // option2 should be deleted
                var newOption1 = new LayoutOption { Key = option1.Key, Type = option1.Type, DefaultValue = option1.DefaultValue };
                var newOption2 = new LayoutOption { Key = option2.Key, Type = option2.Type, DefaultValue = TestDataProvider.ProvideRandomString(100) };
                var newOption3 = new LayoutOption { Key = TestDataProvider.ProvideRandomString(100), Type = OptionType.Text, DefaultValue = TestDataProvider.ProvideRandomString(100) };
                var newOptions = new List<IOptionEntity> { newOption1, newOption2, newOption3 };

                optionService.SetOptions<LayoutOption, Layout>(layout, newOptions);
                unitOfWork.Commit();

                // Load all options
                var options = repository.AsQueryable<LayoutOption>(lo => lo.Layout == layout).ToList();

                Assert.AreEqual(options.Count, 3);
                Assert.IsTrue(options.Any(o => o.Key == option1.Key && o.DefaultValue == option1.DefaultValue && o.Type == option1.Type));
                Assert.IsTrue(options.Any(o => o.Key == option2.Key && o.DefaultValue == newOption2.DefaultValue && o.Type == option2.Type));
                Assert.IsTrue(options.Any(o => o.Key == newOption3.Key && o.DefaultValue == newOption3.DefaultValue && o.Type == newOption3.Type));
            });
        }
 public void Insert(Movimentacao movimentacao)
 {
     try
     {
         using (var session = NHibernateHelper.OpenSession())
         {
             var repository = new DefaultRepository<Movimentacao>(session);
             repository.Insert(movimentacao);
         }
     }
     catch (Exception ex)
     {
         throw ErrorHandler.ExceptionTreatment(ex);
     }
 }
Example #60
0
        public void Insert(Indicador indicador)
        {
            using (var session = NHibernateHelper.OpenSession())
            using (var transaction = session.BeginTransaction())
            {
                ValidarId(indicador, session);
                ValidarNome(indicador, session);

                if (indicador.TipoCalculo == TipoCalculoEnum.Banco)
                    ValidarIndicadorBanco(indicador, session);

                var repository = new DefaultRepository<Indicador>(session);

                repository.Insert(indicador);
                transaction.Commit();
            }
        }