Esempio n. 1
0
 internal static void MultipleDeletePage(int[] ids)
 {
     if (ids.Length > 0)
     {
         DefaultRepository.Delete <PageDAL>(ids);
     }
 }
Esempio n. 2
0
        internal static ContentForm UpdateForm(ContentForm form)
        {
            var dal = MapperFacade.ContentFormMapper.GetDalObject(form);

            dal = DefaultRepository.SimpleUpdate(dal);
            return(MapperFacade.ContentFormMapper.GetBizObject(dal));
        }
Esempio n. 3
0
 internal static void MultipleDeleteObjectFormatVersion(int[] ids)
 {
     if (ids.Length > 0)
     {
         DefaultRepository.Delete <ObjectFormatVersionDAL>(ids);
     }
 }
Esempio n. 4
0
 public static void MultipleDelete(int[] ids)
 {
     if (ids.Length > 0)
     {
         DefaultRepository.Delete <NotificationsDAL>(ids);
     }
 }
Esempio n. 5
0
        internal static Container UpdateContainer(Container container)
        {
            var dal = MapperFacade.ContainerMapper.GetDalObject(container);

            dal = DefaultRepository.SimpleUpdate(dal);
            return(MapperFacade.ContainerMapper.GetBizObject(dal));
        }
Esempio n. 6
0
        internal static void Delete(int id)
        {
            using (var scope = new QPConnectionScope())
            {
                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    ChangeDeleteBindingsTriggerState(false);
                }

                var bindings = QPContext.EFContext.ContentWorkflowBindSet.Where(n => n.WorkflowId == id).ToArray();
                DefaultRepository.SimpleDeleteBulk(bindings);

                var bindings2 = QPContext.EFContext.ArticleWorkflowBindSet.Where(n => n.WorkflowId == id).ToArray();
                DefaultRepository.SimpleDeleteBulk(bindings2);

                var waits = QPContext.EFContext.WaitingForApprovalSet.Include(n => n.Article.WorkflowBinding)
                            .Where(n => n.Article.WorkflowBinding.WorkflowId == id).ToArray();
                DefaultRepository.SimpleDeleteBulk(waits);

                DefaultRepository.Delete <WorkflowDAL>(id);

                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    ChangeDeleteBindingsTriggerState(true);
                }
            }
        }
Esempio n. 7
0
        public static void Delete(ContentConstraint constraint)
        {
            if (constraint == null)
            {
                throw new ArgumentNullException(nameof(constraint));
            }

            if (constraint.IsNew)
            {
                throw new ArgumentException("Метод вызван для несуществующего в БД ContentConstraint");
            }

            using (var scope = new QPConnectionScope())
            {
                try
                {
                    if (QPContext.DatabaseType == DatabaseType.SqlServer)
                    {
                        ChangeContentIndexesTriggerState(scope.DbConnection, false);
                    }
                    var dal = MapperFacade.ContentConstraintMapper.GetDalObject(constraint);
                    Common.DropComplexIndex(scope.DbConnection, dal);
                    DefaultRepository.Delete <ContentConstraintDAL>(constraint.Id);
                }
                finally
                {
                    if (QPContext.DatabaseType == DatabaseType.SqlServer)
                    {
                        ChangeContentIndexesTriggerState(scope.DbConnection, true);
                    }
                }
            }
        }
Esempio n. 8
0
        internal static void RemoveUserQuerySourcesInfo(Content uqVirtualContent)
        {
            var virtualContentId = uqVirtualContent.Id;
            var recToRemove      = QPContext.EFContext.UserQueryContentsSet.Where(u => u.VirtualContentId == virtualContentId).ToArray();

            DefaultRepository.SimpleDelete(recToRemove);
        }
Esempio n. 9
0
        /// <summary>
        /// Добавляет новый сайт
        /// </summary>
        /// <param name="site">информация о сайте</param>
        /// <returns>информация о сайте</returns>
        internal static Site Save(Site site)
        {
            using (var scope = new QPConnectionScope())
            {
                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    ChangeInsertAccessTriggerState(false);
                    ChangeInsertDefaultTriggerState(false);
                    DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Site, site);
                }

                var fieldValues = site.QpPluginFieldValues;
                var result      = DefaultRepository.Save <Site, SiteDAL>(site);

                CommonSecurity.CreateSiteAccess(scope.DbConnection, result.Id);
                CreateDefaultStatuses(result);
                CreateDefaultNotificationTemplate(result);
                CreateDefaultGroup(result);
                UpdatePluginValues(fieldValues, result.Id);

                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Site);
                    ChangeInsertAccessTriggerState(true);
                    ChangeInsertDefaultTriggerState(true);
                }

                return(result);
            }
        }
Esempio n. 10
0
        public IEnumerable <BackendActionLog> Save(IEnumerable <BackendActionLog> logs)
        {
            IEnumerable <BackendActionLogDAL> toSave = MapperFacade.BackendActionLogMapper.GetDalList(logs.ToList());
            var saved = DefaultRepository.SimpleSaveBulk(toSave);

            return(MapperFacade.BackendActionLogMapper.GetBizList(saved.ToList()));
        }
Esempio n. 11
0
        public SessionsLog Update(SessionsLog session)
        {
            var sessionsLogDal = MapperFacade.SessionsLogMapper.GetDalObject(session);

            sessionsLogDal = DefaultRepository.SimpleUpdate(sessionsLogDal);
            return(MapperFacade.SessionsLogMapper.GetBizObject(sessionsLogDal));
        }
Esempio n. 12
0
        internal static void RemoveUnionSourcesInfo(Content virtualContent)
        {
            var virtualContentId = virtualContent.Id;
            var context          = QPContext.EFContext;
            var recToRemove      = context.UnionContentsSet.Where(u => u.VirtualContentId == virtualContentId).ToArray();

            DefaultRepository.SimpleDeleteBulk(recToRemove, context);
        }
Esempio n. 13
0
        internal static Notification SaveProperties(Notification notification)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Notification, notification);
            var result = DefaultRepository.Save <Notification, NotificationsDAL>(notification);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Notification);
            return(result);
        }
Esempio n. 14
0
        /// <summary>
        /// Обновляет информацию о сайте
        /// </summary>
        /// <param name="site">информация о сайте</param>
        /// <returns>информация о сайте</returns>
        internal static Site Update(Site site)
        {
            var fieldValues = site.QpPluginFieldValues;
            var result      = DefaultRepository.Update <Site, SiteDAL>(site);

            UpdatePluginValues(fieldValues, result.Id);
            return(result);
        }
Esempio n. 15
0
        internal static VisualEditorStyle SaveStyleProperties(VisualEditorStyle visualEditorStyle)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.VisualEditorStyle, visualEditorStyle);
            var result = DefaultRepository.Save <VisualEditorStyle, VeStyleDAL>(visualEditorStyle);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.VisualEditorStyle);
            return(result);
        }
Esempio n. 16
0
        /// <summary>
        /// Добавляет новый сайт
        /// </summary>
        /// <param name="site">информация о сайте</param>
        /// <returns>информация о сайте</returns>
        internal static Site Save(Site site)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Site, site);
            var result = DefaultRepository.Save <Site, SiteDAL>(site);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Site);
            return(result);
        }
Esempio n. 17
0
        internal static Field Save(Field item)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Field, item);
            var newItem = DefaultRepository.Save <Field, FieldDAL>(item);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Field);
            return(newItem);
        }
Esempio n. 18
0
        /// <summary>
        /// Добавляет новый виртуальный контент
        /// </summary>
        internal static Content Save(Content content)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Content, content);
            var newContent = DefaultRepository.Save <Content, ContentDAL>(content);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Content);
            return(newContent);
        }
Esempio n. 19
0
        internal static StatusType SaveProperties(StatusType statusType)
        {
            DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.StatusType);
            var result = DefaultRepository.Save <StatusType, StatusTypeDAL>(statusType);

            DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.StatusType);
            return(result);
        }
Esempio n. 20
0
 protected override Folder UpdateInDb(Folder folder)
 {
     using (var scope = new QPConnectionScope())
     {
         Common.UpdateContentSubFoldersPath(scope.DbConnection, folder.Id, folder.Path, QPContext.CurrentUserId, DateTime.Now);
     }
     return(DefaultRepository.Update <ContentFolder, ContentFolderDAL>((ContentFolder)folder));
 }
Esempio n. 21
0
        private static void CreateDefaultGroup(Site site)
        {
            var group = new ContentGroupDAL()
            {
                Name = ContentGroup.DefaultName, SiteId = site.Id
            };

            DefaultRepository.SimpleSave(group);
        }
Esempio n. 22
0
        internal static void SaveAppSettings(IEnumerable <AppSettingsItem> values)
        {
            var result = values.Select(n => new AppSettingsDAL()
            {
                Key = n.Key, Value = n.Value
            }).ToList();

            DefaultRepository.SimpleSaveBulk(result);
        }
Esempio n. 23
0
        public static Db Update(Db db)
        {
            var result = DefaultRepository.Update <Db, DbDAL>(db);

            DeleteAppSettings();
            SaveAppSettings(db.AppSettings);
            result.AppSettings = db.AppSettings;
            return(result);
        }
Esempio n. 24
0
        internal static Workflow SaveProperties(Workflow workflow)
        {
            using (new QPConnectionScope())
            {
                var entities = QPContext.EFContext;
                UpdateRuleOrder(workflow);

                var forceIds = workflow.ForceRulesIds == null ? null : new Queue <int>(workflow.ForceRulesIds);
                workflow.LastModifiedBy = QPContext.CurrentUserId;
                workflow.Created        = Common.GetSqlDate(QPConnectionScope.Current.DbConnection);
                workflow.Modified       = workflow.Created;
                if (workflow.ForceId > 0)
                {
                    workflow.Id = workflow.ForceId;
                }


                var dal = MapperFacade.WorkflowMapper.GetDalObject(workflow);
                entities.Entry(dal).State = EntityState.Added;

                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.Workflow, workflow);
                    ChangeInsertAccessTriggerState(false);
                }

                entities.SaveChanges();
                workflow.Id = (int)dal.Id;

                CommonSecurity.CreateWorkflowAccess(QPConnectionScope.Current.DbConnection, workflow.Id);

                if (QPContext.DatabaseType == DatabaseType.SqlServer)
                {
                    DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.Workflow);
                    ChangeInsertAccessTriggerState(true);
                }

                foreach (var rule in workflow.WorkflowRules)
                {
                    rule.WorkflowId = workflow.Id;
                    if (forceIds != null)
                    {
                        rule.Id = forceIds.Dequeue();
                    }

                    var dalRule = MapperFacade.WorkFlowRuleMapper.GetDalObject(rule);
                    entities.Entry(dalRule).State = EntityState.Added;
                }

                DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.WorkflowRule);
                entities.SaveChanges();
                DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.WorkflowRule);

                return(MapperFacade.WorkflowMapper.GetBizObject(dal));
            }
        }
Esempio n. 25
0
 internal static void Delete(int id)
 {
     using (var scope = new QPConnectionScope())
     {
         ChangeDeleteValuesTriggerState(scope.DbConnection, false);
         DefaultRepository.Delete <PluginDAL>(id);
         Common.DropPluginTables(scope.DbConnection, id);
         ChangeDeleteValuesTriggerState(scope.DbConnection, true);
     }
 }
Esempio n. 26
0
        internal static QpPlugin SaveProperties(QpPlugin plugin)
        {
            var      entities = QPContext.EFContext;
            DateTime timeStamp;

            using (var scope = new QPConnectionScope())
            {
                timeStamp = Common.GetSqlDate(scope.DbConnection);

                var dal = MapperFacade.QpPluginMapper.GetDalObject(plugin);
                dal.LastModifiedBy = QPContext.CurrentUserId;
                dal.Modified       = timeStamp;
                dal.Created        = timeStamp;

                entities.Entry(dal).State = EntityState.Added;

                DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.QpPlugin, plugin);
                if (plugin.ForceId != 0)
                {
                    dal.Id = plugin.ForceId;
                }

                entities.SaveChanges();
                DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.QpPlugin);

                Common.CreatePluginTables(scope.DbConnection, (int)dal.Id);

                var forceIds = plugin.ForceFieldIds == null ? null : new Queue <int>(plugin.ForceFieldIds);
                var fields   = new List <PluginFieldDAL>();
                foreach (var field in plugin.Fields)
                {
                    var dalField = MapperFacade.QpPluginFieldMapper.GetDalObject(field);
                    dalField.PluginId = dal.Id;
                    if (forceIds != null)
                    {
                        dalField.Id = forceIds.Dequeue();
                    }

                    entities.Entry(dalField).State = EntityState.Added;
                    fields.Add(dalField);
                }

                DefaultRepository.TurnIdentityInsertOn(EntityTypeCode.QpPluginField);
                entities.SaveChanges();
                DefaultRepository.TurnIdentityInsertOff(EntityTypeCode.QpPluginField);

                foreach (var field in fields)
                {
                    Common.AddPluginColumn(scope.DbConnection, field);
                }

                return(MapperFacade.QpPluginMapper.GetBizObject(dal));
            }
        }
Esempio n. 27
0
        internal static BllObject UpdateObjectProperties(BllObject bllObject)
        {
            var oldObject = GetObjectPropertiesById(bllObject.Id);
            var result    = DefaultRepository.Update <BllObject, ObjectDAL>(bllObject);

            ManageObjectType(bllObject, oldObject, result);

            DeleteDefaultValues(result.Id);
            SetDefaultValues(bllObject.DefaultValues, result.Id);
            return(result);
        }
Esempio n. 28
0
        private static void CreateDefaultStatuses(Site site)
        {
            var statuses = new StatusTypeDAL[]
            {
                GetNewBuiltInStatus(site, 10, "Created", "Article has been created"),
                GetNewBuiltInStatus(site, 50, "Approved", "Article has been approved"),
                GetNewBuiltInStatus(site, 100, "Published", "Article has been published"),
                GetNewBuiltInStatus(site, 0, "None", "No Status has been assigned")
            };

            DefaultRepository.SimpleSaveBulk(statuses);
        }
Esempio n. 29
0
        /// <summary>
        /// Сохранить записи в таблице union_contents
        /// </summary>
        internal static void RecreateUserQuerySourcesInfo(Content uqVirtualContent)
        {
            var virtualContentId = uqVirtualContent.Id;

            RemoveUserQuerySourcesInfo(uqVirtualContent);
            DefaultRepository.SimpleSave(uqVirtualContent.UserQueryContentViewSchema.SelectUniqContentIDs().Select(id => new UserQueryContentsDAL
            {
                IsIdSource       = false,
                RealContentId    = id,
                VirtualContentId = virtualContentId
            }));
        }
Esempio n. 30
0
        public static void Delete(ContentConstraint constraint)
        {
            if (constraint == null)
            {
                throw new ArgumentNullException(nameof(constraint));
            }

            if (constraint.IsNew)
            {
                throw new ArgumentException("Метод вызван для несуществующего в БД ContentConstraint");
            }

            DefaultRepository.Delete <ContentConstraintDAL>(constraint.Id);
        }