Beispiel #1
0
        /// <summary>
        /// 编辑主题
        /// </summary>
        /// <param name="id"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <Result <long> > Edit(long id, SaveTopicModel model)
        {
            if (this.CategoryService.Get(model.Category) == null)
            {
                return(Result <long> .ErrorResult("版块不存在"));
            }

            using (var uw = this.CreateUnitOfWork())
            {
                var entity = await uw.GetAsync <Topic>(t => t.ID == id);

                if (entity == null)
                {
                    return(Result <long> .ErrorResult("主题不存在"));
                }
                if (!this.SecurityManager.CanOperateTopic(entity))
                {
                    return(Result <long> .ErrorResult("无权操作"));
                }

                entity.Title      = model.Title;
                entity.Category   = model.Category;
                entity.Content    = model.Content;
                entity.UpdateDate = DateTime.Now;

                await uw.UpdateAsync(entity);

                return(Result.SuccessResult(entity.ID));
            }
        }
        public async Task <IActionResult> Edit(int id, SaveTopicModel model)
        {
            if (!ModelState.IsValid)
            {
                return(this.Notice(Core.Resource.Messages.ModelStateNotValid));
            }

            var result = await this.TopicService.Edit(id, model);

            if (result.Success)
            {
                return(this.RedirectToAction("Index", "Topic", new { id = id }));
            }
            else
            {
                return(this.Notice(result.ErrorMessage));
            }
        }
Beispiel #3
0
        /// <summary>
        /// 创建主题
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <Result <long> > Add(SaveTopicModel model)
        {
            if (this.CategoryService.Get(model.Category) == null)
            {
                return(Result <long> .ErrorResult("版块不存在"));
            }

            using (var uw = this.CreateUnitOfWork())
            {
                var entity = new Topic
                {
                    Category   = model.Category,
                    Content    = model.Content,
                    CreateDate = DateTime.Now,
                    CreateUser = SecurityManager.CurrentUser.ID,
                    Title      = model.Title
                };

                await uw.InsertAsync(entity);

                return(Result.SuccessResult(entity.ID));
            }
        }
        public async Task <IActionResult> New(SaveTopicModel model)
        {
            var vm = new PostViewModel();

            vm.CategoryList = new SelectList(this.CategoryService.All(), "Key", "Name");
            vm.Model        = model;

            if (!ModelState.IsValid)
            {
                return(this.Notice(Core.Resource.Messages.ModelStateNotValid));
            }

            var result = await this.TopicService.Add(model);

            if (result.Success)
            {
                return(this.RedirectToAction("Index", "Topic", new { id = result.Data }));
            }
            else
            {
                return(this.Notice(result.ErrorMessage));
            }
        }