void ArticlesController_RecordBeforeCreate(object sender, CrudEventArgs e)
        {
            var article = e.Item as Article;

            article.PublishedBy = WebSecurity.IsAuthenticated ? WebSecurity.CurrentUserName : string.Empty;
            article.PublishedOn = DateTime.Now;
        }
 /// <summary>
 /// 删除前
 /// </summary>
 /// <param name="arg"></param>
 /// <returns></returns>
 protected virtual AjaxResult OnBeforDelete(CrudEventArgs <TCodeTabelEntity, TCodeTabelModel> arg)
 {
     return(new AjaxResult
     {
         state = ResultType.success.ToString(),
     });
 }
Beispiel #3
0
        void UsersController_RecordCreated(object sender, CrudEventArgs e)
        {
            var user = e.Item as User;

            WebSecurity.CreateAccount(user.Username, _dataConfig.Value.DefaultUserPassword);
            _roles.AddUserToRole(user.Username, RoleNames.DefaultUsers);
        }
        void NewsItemsController_RecordBeforeCreate(object sender, CrudEventArgs e)
        {
            var newsItem = e.Item as NewsItem;

            newsItem.PublishedBy = WebSecurity.IsAuthenticated ? WebSecurity.CurrentUserName : string.Empty;
            newsItem.PublishedOn = DateTime.Now;
        }
        public async Task <IActionResult> UpdateAsync(int id, TCodeTabelModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequestResult(ModelState));
            }
            //var validationResults = (model as IViewModelValidate<TCodeTabelModel>).Validate(_validator);
            //if (validationResults.Any())
            //    return BadRequestResult(validationResults);
            Guard.CheckArgumentNull(CrudDtoMapper, "数据转换器不能为空");
            try
            {
                #region 编辑处理Befor
                var addArgs   = new CrudEventArgs <TCodeTabelEntity, TCodeTabelModel>(model);
                var rtnBefore = this.OnBeforEdit(addArgs);
                if (!rtnBefore.state.ToString().IsCaseSensitiveEqual(ResultType.success.ToString()))
                {
                    return(Error(rtnBefore.message));
                }
                #endregion
                #region 编辑处理

                if (model == null)
                {
                    throw new ValidationException("model not provided");
                }
                if (id != model.Id)
                {
                    throw new ValidationException("id does not match model id");
                }
                var codetableEntity = await _readerService.GetAsync(id);

                if (codetableEntity == null)
                {
                    return(NotFoundResult($"Code with id {id} not found in {typeof(TCodeTabelModel).Name}."));
                }
                var entity = CrudDtoMapper.MapDtoToEntity(model, codetableEntity);
                await _writerService.UpdateAsync(entity);

                #endregion
                #region 编辑处理After
                addArgs.Entity = entity;
                this.OnAfterEdit(addArgs);
                #endregion
                return(Success("updated success"));
            }
            catch (EntityNotFoundException)
            {
                return(NotFoundResult("No event found with id {0}", id));
            }
            catch (ValidationException validationEx)
            {
                return(BadRequestResult(validationEx));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex, "Error while updating {0}", typeof(TCodeTabelModel).Name));
            }
        }
        private void NewsItemsController_RecordBeforeUpdated(object sender, CrudEventArgs e)
        {
            var newsItem = e.Item as NewsItem;

            if (!string.IsNullOrEmpty(newsItem.Url))
            {
                newsItem.Url = HelperMethods.GetEmbeddableUrl(newsItem.Url);
            }
        }
        private void ArticlesController_RecordBeforeCreated(object sender, CrudEventArgs e)
        {
            var article = e.Item as Article;

            if (string.IsNullOrEmpty(article.SeoFriendlyId))
            {
                article.SeoFriendlyId = article.Subject.ToSeoFriendlyString();
            }
        }
        private void ArticlesController_RecordBeforeUpdated(object sender, CrudEventArgs e)
        {
            var article           = e.Item as Article;
            var original          = Repository.Find(article.Id);
            var subjectHasChanged = original.Subject != article.Subject;

            if (string.IsNullOrEmpty(article.SeoFriendlyId) || subjectHasChanged && original.SeoFriendlyId == original.Subject.ToSeoFriendlyString())
            {
                article.SeoFriendlyId = article.Subject.ToSeoFriendlyString();
            }
        }
Beispiel #9
0
        private void UsersController_RecordBeforeDeleted(object sender, CrudEventArgs e)
        {
            var user = e.Item as User;

            try
            {
                user.SetToDeleted();
                Repository.Update(user);
            }
            catch (Exception exception)
            {
                Console.WriteLine(exception);
                throw;
            }
        }
        public async Task <IActionResult> PostAsync(TCodeTabelModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequestResult(ModelState));
            }
            //var validationResults = (model as IViewModelValidate<TCodeTabelModel>).Validate(_validator);
            //if (validationResults.Any())
            //    return BadRequestResult(validationResults);

            Guard.CheckArgumentNull(CrudDtoMapper, "数据转换器不能为空");
            try
            {
                #region 新增处理Befor
                var addArgs   = new CrudEventArgs <TCodeTabelEntity, TCodeTabelModel>(model);
                var rtnBefore = this.OnBeforAdd(addArgs);
                if (!rtnBefore.state.ToString().IsCaseSensitiveEqual(ResultType.success.ToString()))
                {
                    return(Error(rtnBefore.message));
                }
                #endregion
                #region 新增处理

                var entity         = CrudDtoMapper.MapDtoToEntity(model);
                var insertedEntity = await _writerService.InsertAsync(entity);

                #endregion
                #region 新增处理After
                addArgs.Entity = entity;
                this.OnAfterAdd(addArgs);
                #endregion
                return(Success("更新成功!", CrudDtoMapper.MapEntityToDto(insertedEntity, model)));
            }
            catch (ValidationException validationEx)
            {
                return(BadRequestResult(validationEx));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex, "Error while inserting {0}", typeof(TCodeTabelModel).Name));
            }
        }
        public async Task <IActionResult> DeleteAsync(int id)
        {
            Guard.CheckArgumentNull(CrudDtoMapper, "数据转换器不能为空");

            try
            {
                #region  除处理Befor
                var addArgs   = new CrudEventArgs <TCodeTabelEntity, TCodeTabelModel>(null, null, id);
                var rtnBefore = this.OnBeforDelete(addArgs);
                if (!rtnBefore.state.ToString().IsCaseSensitiveEqual(ResultType.success.ToString()))
                {
                    return(Error(rtnBefore.message));
                }
                #endregion
                #region  除处理

                await _writerService.DeleteAsync(id);

                #endregion
                #region  除处理After
                var entity = new TCodeTabelEntity();
                entity.Id      = id;
                addArgs.Entity = entity;
                this.OnAfterDeletet(addArgs);
                #endregion
                return(Success("delete success"));
            }
            catch (EntityNotFoundException)
            {
                return(NotFoundResult("No event found with id {0}", id));
            }
            catch (ValidationException validationEx)
            {
                return(BadRequestResult(validationEx));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex, "Error while deleting {0}", typeof(TCodeTabelModel).Name));
            }
        }
        void MessagesController_RecordBeforeCreate(object sender, CrudEventArgs e)
        {
            var message = e.Item as Message;

            message.SentByUserId = WebSecurity.IsAuthenticated ? WebSecurity.CurrentUserId : 0;
        }
Beispiel #13
0
 /// <summary>
 /// 删除后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterDeletet(CrudEventArgs <PostEntity, PostViewModel, Guid> arg)
 {
     this._mediator.Publish(new EntityDeletedEventData <PostEntity>(arg.Entity));
 }
 /// <summary>
 /// 编辑后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterEdit(CrudEventArgs <DataItemEntity, DataItemViewModel> arg)
 {
     this._mediator.Publish(new EntityUpdatedEventData <DataItemEntity>(arg.Entity));
 }
 /// <summary>
 /// 新增后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterAdd(CrudEventArgs <OrganizeEntity, OrganizeViewModel, long> arg)
 {
     this._mediator.Publish(new EntityCreatedEventData <OrganizeEntity>(arg.Entity));
 }
 /// <summary>
 /// 新增后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterAdd(CrudEventArgs <DepartmentEntity, DepartmentViewModel, long> arg)
 {
     this._mediator.Publish(new EntityCreatedEventData <DepartmentEntity>(arg.Entity));
 }
        private void ArchiveItemsController_RecordBeforeUpdate(object sender, CrudEventArgs e)
        {
            var archiveItem = e.Item as ArchiveItem;

            archiveItem.ArchiveCategory = _archiveCategoriesRepository.Find(archiveItem.CategoryId);
        }
 /// <summary>
 /// 编辑后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterEdit(CrudEventArgs <AreaEntity, AreaViewModel, long> arg)
 {
     this._mediator.Publish(new EntityUpdatedEventData <AreaEntity>(arg.Entity));
 }
Beispiel #19
0
        void ArticleSectionsController_RecordBeforeCreate(object sender, CrudEventArgs e)
        {
            var articleSection = e.Item as ArticleSection;

            articleSection.ArticleId = SessionHelper.GetIntValue(SessionConstants.ArticleId);
        }
 /// <summary>
 /// 删除后
 /// </summary>
 /// <param name="arg"></param>
 protected virtual void OnAfterDeletet(CrudEventArgs <TCodeTabelEntity, TCodeTabelModel> arg)
 {
 }
Beispiel #21
0
 /// <summary>
 /// 删除后
 /// </summary>
 /// <param name="arg"></param>
 protected override void OnAfterDeletet(CrudEventArgs <DataItemEntity, DataItemViewModel, long> arg)
 {
     this._mediator.Publish(new EntityDeletedEventData <DataItemEntity>(arg.Entity));
 }
Beispiel #22
0
 /// <summary>
 /// 编辑后
 /// </summary>
 /// <param name="arg"></param>
 protected virtual void OnAfterEdit(CrudEventArgs <TCodeTabelEntity, TCodeTabelModel, Tkey> arg)
 {
 }