예제 #1
0
        public async Task <BaseApiResponse> Delete([FromBody] DeleteRequest request)
        {
            request.CheckNotNull(nameof(request));
            //分类判断
            var category = _pubCategoryQueryService.Find(request.Id);

            if (category == null)
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "没找到该分类"
                });
            }
            //判断是否有子分类
            var children = _pubCategoryQueryService.GetChildren(request.Id);

            if (children.Any())
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "包含子分类,无法删除"
                });
            }
            //删除
            var command = new DeletePubCategoryCommand(request.Id);
            var result  = await ExecuteCommandAsync(command);

            if (!result.IsSuccess())
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "命令没有执行成功:{0}".FormatWith(result.GetErrorMessage())
                });
            }
            return(new BaseApiResponse());
        }
예제 #2
0
        public async Task <BaseApiResponse> Delete(DeleteRequest request)
        {
            request.CheckNotNull(nameof(request));
            //分类判断
            var category = _pubCategoryQueryService.Find(request.Id);

            if (category == null)
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "没找到该分类"
                });
            }
            //判断是否有子分类
            var children = _pubCategoryQueryService.GetChildren(request.Id);

            if (children.Any())
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "包含子分类,无法删除"
                });
            }
            //删除
            var command = new DeletePubCategoryCommand(request.Id);
            var result  = await ExecuteCommandAsync(command);

            if (!result.IsSuccess())
            {
                return(new BaseApiResponse {
                    Code = 400, Message = "命令没有执行成功:{0}".FormatWith(result.GetErrorMessage())
                });
            }
            //添加操作记录
            var currentAdmin = _contextService.GetCurrentAdmin(HttpContext.Current);

            RecordOperat(currentAdmin.AdminId.ToGuid(), "删除发布分类", request.Id, category.Name);
            return(new BaseApiResponse());
        }
예제 #3
0
 public void Handle(ICommandContext context, DeletePubCategoryCommand command)
 {
     context.Get <PubCategory>(command.AggregateRootId).Delete();
 }