Пример #1
0
 public bool RestorePost(int postID)
 {
     try
     {
         var obj = _dbCMSContext.Posts.AsNoTracking().FirstOrDefault(x => x.Id == postID);
         obj.Deleted = false;
         _dbCMSContext.Posts.Update(obj);
         _dbCMSContext.SaveChanges();
         var objDetail = _dbCMSContext.PostDetails.AsNoTracking().Where(x => x.PostFid == postID).ToList();
         objDetail.ForEach(x => x.Deleted = false);
         _dbCMSContext.PostDetails.UpdateRange(objDetail);
         _dbCMSContext.SaveChanges();
         var objFileStream = _dbCMSContext.PostFileStreams.AsNoTracking().Where(x => x.PostFid == postID).ToList();
         _dbCMSContext.PostFileStreams.UpdateRange(objFileStream);
         objFileStream.ForEach(x => x.Deleted = false);
         int res = _dbCMSContext.SaveChanges();
         if (res > 0)
         {
             return(true);
         }
         return(false);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         throw ex;
     }
 }
Пример #2
0
        public long UpdatePostDetail(PostDetailCreateModel model)
        {
            try
            {
                var entity = _dbCMSContext.PostDetails.Find(model.Id);
                if (entity == null || entity.Deleted)
                {
                    throw new ArgumentNullException("Post detail");
                }
                int oldFileStreamId = entity.FileStreamFid;
                entity                  = _mapper.Map(model, entity);
                entity.UniqueId         = entity.UniqueId ?? UniqueIDHelper.GenerateRandomString(UNIQUE_ID_LENGTH);
                entity.LastModifiedDate = DateTime.Now;
                entity.LastModifiedBy   = _workContext.UserGuid;
                _dbCMSContext.SaveChanges();
                if (entity.Id > 0)
                {
                    if (model.FileStreamFid > 0 && oldFileStreamId != model.FileStreamFid)
                    {
                        #region Insert new post file stream
                        entity.FileTypeFid = (int)FileTypeEnum.Image;
                        var fileStreamModel = PreparingPostFileStreamCreateModel(entity, PostFileCategoryEnum.Thumbnail);
                        _postFileStreamService.CreatePostFileStream(fileStreamModel);
                        _postFileStreamService.DeletePostFileStream(oldFileStreamId);
                        #endregion
                    }
                    if (model.FileDescriptionIds.Count > 0)
                    {
                        foreach (var id in model.FileDescriptionIds)
                        {
                            var item = PreparingPostFileStreamCreateModel(entity, PostFileCategoryEnum.Detail);
                            item.FileStreamFid = id;
                            _postFileStreamService.CreatePostFileStream(item);
                        }
                    }

                    var havePostDetailActive = _dbCMSContext.PostDetails.Count(x => x.PostFid == entity.PostFid && x.IsActivated) > 0;

                    var post = _dbCMSContext.Posts.Find(entity.PostFid);
                    post.IsActivated      = havePostDetailActive;
                    post.LastModifiedBy   = _workContext.UserGuid;
                    post.LastModifiedDate = DateTime.Now;
                    _dbCMSContext.SaveChanges();
                }
                return(entity.Id);
            }
            catch (Exception ex)
            {
                AQException.ThrowException(ex);
                return(0);
            }
        }
Пример #3
0
        public long CreatePostDetail(PostDetailCreateModel model)
        {
            try
            {
                var existsPost = GetPostDetailByPostIdAndLanguageId(model.PostFid, model.LanguageFid);
                if (existsPost != null)
                {
                    throw new ArgumentNullException($"Post is  existing with language={model.LanguageFid} and postId={model.PostFid}");
                }

                var entity = _mapper.Map <PostDetails>(model);
                entity.UniqueId         = UniqueIDHelper.GenerateRandomString(UNIQUE_ID_LENGTH);
                entity.LastModifiedDate = DateTime.Now;
                entity.LastModifiedBy   = _workContext.UserGuid;
                entity.Deleted          = false;

                _dbCMSContext.PostDetails.Add(entity);
                _dbCMSContext.SaveChanges();
                if (entity.Id > 0)
                {
                    if (model.FileStreamFid > 0)
                    {
                        entity.FileTypeFid = (int)FileTypeEnum.Image;
                        var fileStreamModel = PreparingPostFileStreamCreateModel(entity, PostFileCategoryEnum.Thumbnail);
                        _postFileStreamService.CreatePostFileStream(fileStreamModel);
                    }
                    if (model.FileDescriptionIds.Count > 0)
                    {
                        foreach (var id in model.FileDescriptionIds)
                        {
                            var item = PreparingPostFileStreamCreateModel(entity, PostFileCategoryEnum.Detail);
                            item.FileStreamFid = id;
                            _postFileStreamService.CreatePostFileStream(item);
                        }
                    }
                }

                return(entity.Id);
            }
            catch (Exception ex)
            {
                AQException.ThrowException(ex);
                return(0);
            }
        }
Пример #4
0
 public long CreatePostFileStream(PostFileStreamCreateModel model)
 {
     try
     {
         var entity = _mapper.Map <PostFileStreams>(model);
         entity.LastModifiedDate = DateTime.Now;
         entity.LastModifiedBy   = _workContext.UserGuid;
         entity.Deleted          = false;
         _dbCMSContext.PostFileStreams.Add(entity);
         _dbCMSContext.SaveChanges();
         return(entity.Id);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(0);
     }
 }
Пример #5
0
 public long CreateNewPost(PostCreateModel model)
 {
     try
     {
         var entity = _mapper.Map <Posts>(model);
         entity.Deleted     = false;
         entity.CreatedBy   = _workContext.UserGuid;
         entity.CreatedDate = DateTime.Now;
         entity.UniqueId    = UniqueIDHelper.GenerateRandomString(UNIQUE_ID_LENGTH);
         var res = _dbCMSContext.Posts.Add(entity);
         _dbCMSContext.SaveChanges();
         return(entity.Id);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(0);
     }
 }
Пример #6
0
 public bool DeletePostFileStream(int id)
 {
     try
     {
         var entity = _dbCMSContext.PostFileStreams.Find(id);
         if (entity == null || entity.Deleted)
         {
             throw new ArgumentNullException("Post File Stream");
         }
         entity.Deleted          = true;
         entity.LastModifiedBy   = _workContext.UserGuid;
         entity.LastModifiedDate = DateTime.Now;
         _dbCMSContext.SaveChanges();
         return(true);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(false);
     }
 }
Пример #7
0
 public long UpdatePostFileStream(PostFileStreamCreateModel model)
 {
     try
     {
         var entity = _dbCMSContext.PostFileStreams.Find(model.Id);
         if (entity == null || entity.Deleted)
         {
             throw new ArgumentNullException("Post File Stream");
         }
         entity = _mapper.Map(model, entity);
         entity.LastModifiedDate = DateTime.Now;
         entity.LastModifiedBy   = _workContext.UserGuid;
         _dbCMSContext.SaveChanges();
         return(entity.Id);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(0);
     }
 }
Пример #8
0
 public int UpdatePostCategoryDetail(PostCategoryDetailCreateModel model)
 {
     try
     {
         var entity = _dbCMSContext.PostCategoryDetails.FirstOrDefault(x => x.PostCategoryFid == model.PostCategoryFid && x.Id == model.Id);
         if (entity == null)
         {
             throw new ArgumentNullException("PostCategoryDetail");
         }
         _mapper.Map(model, entity);
         entity.LastModifiedBy   = _workContext.UserGuid;
         entity.LastModifiedDate = DateTime.Now;
         _dbCMSContext.SaveChanges();
         return(entity.Id);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(0);
     }
 }
Пример #9
0
 public int CreatePostCategoryDetail(PostCategoryDetailCreateModel model)
 {
     try
     {
         var entity = _mapper.Map <PostCategoryDetails>(model);
         if (entity == null)
         {
             throw new ArgumentNullException("PostCategoryDetail");
         }
         entity.CreatedBy   = _workContext.UserGuid;
         entity.CreatedDate = DateTime.Now;
         entity.Deleted     = false;
         _dbCMSContext.Add(entity);
         _dbCMSContext.SaveChanges();
         return(entity.Id);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(0);
     }
 }
Пример #10
0
        public long UpdatePost(PostCreateModel model)
        {
            try
            {
                var entity = _dbCMSContext.Posts.Find(model.Id);
                if (entity == null || entity.Deleted)
                {
                    throw new ArgumentNullException("Post");
                }
                entity = _mapper.Map(model, entity);
                entity.LastModifiedBy   = _workContext.UserGuid;
                entity.LastModifiedDate = DateTime.Now;
                entity.UniqueId         = entity.UniqueId ?? UniqueIDHelper.GenerateRandomString(UNIQUE_ID_LENGTH);
                _dbCMSContext.SaveChanges();

                return(entity.Id);
            }
            catch (Exception ex)
            {
                AQException.ThrowException(ex);
                return(0);
            }
        }
Пример #11
0
 public bool DeletePostCategoryDetail(int id)
 {
     try
     {
         var entity = _dbCMSContext.PostCategoryDetails.FirstOrDefault(x =>
                                                                       x.PostCategoryFid == id &&
                                                                       !x.Deleted);
         if (entity == null)
         {
             throw new ArgumentNullException("PostCategoryDetail");
         }
         entity.Deleted          = true;
         entity.LastModifiedBy   = _workContext.UserGuid;
         entity.LastModifiedDate = DateTime.Now;
         _dbCMSContext.SaveChanges();
         return(true);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         return(false);
     }
 }
Пример #12
0
 public bool ChangeStatusPost(int postID, bool isActive)
 {
     try
     {
         var obj = _dbCMSContext.Posts.AsNoTracking().FirstOrDefault(x => x.Id == postID);
         obj.IsActivated      = isActive;
         obj.LastModifiedBy   = _workContext.UserGuid;
         obj.LastModifiedDate = DateTime.Now;
         _dbCMSContext.Posts.Update(obj);
         var objDetail = _dbCMSContext.PostDetails.AsNoTracking().Where(x => x.PostFid == postID).ToList();
         objDetail.ForEach(x => {
             x.IsActivated = isActive;
             if (isActive)
             {
                 x.ActivatedBy   = _workContext.UserGuid;
                 x.ActivatedDate = DateTime.Now;
             }
             else
             {
                 x.ActivatedBy   = null;
                 x.ActivatedDate = null;
             }
         });
         int res = _dbCMSContext.SaveChanges();
         if (res > 0)
         {
             return(true);
         }
         return(false);
     }
     catch (Exception ex)
     {
         AQException.ThrowException(ex);
         throw ex;
     }
 }