public override async Task <EditoraResponse> GetById(EditoraFilter request, ServerCallContext context) { var editoraResponse = new EditoraResponse(); var result = await _servico.GetEditoraAsync(Guid.Parse(request.EditoraId)); if (result.Status is ResultStatus.NotFound) { editoraResponse.Code = (int)context.Status.StatusCode; editoraResponse.Errors.AddRange(result.Errors); editoraResponse.Message = $"Nenhum editora com o id '{request.EditoraId}' foi encontrada"; return(editoraResponse); } editoraResponse.Code = (int)result.Status; editoraResponse.Errors.AddRange(result.Errors); editoraResponse.Message = "Busca realizada com sucesso"; editoraResponse.Data = new EditoraModel { Id = result.Value.Id.ToString(), Nome = result.Value.Nome, SiteURL = result.Value.SiteURL, Endereco = result.Value.Endereco }; return(editoraResponse); }
public override async Task <EditoraResponse> Delete(EditoraFilter request, ServerCallContext context) { var editoraResponse = new EditoraResponse(); var result = await _servico.DeleteEditoraAsync(Guid.Parse(request.EditoraId)); if (result.Status is ResultStatus.NotFound) { editoraResponse.Code = (int)context.Status.StatusCode; editoraResponse.Errors.AddRange(result.Errors); editoraResponse.Message = $"Nenhum editora com o id '{request.EditoraId}' foi encontrada"; return(editoraResponse); } editoraResponse.Code = (int)result.Status; editoraResponse.Errors.AddRange(result.Errors); editoraResponse.Message = "Editora deletada com sucesso"; return(editoraResponse); }
public override async Task GetLivros(EditoraFilter request, IServerStreamWriter <EditoraLivrosResponse> responseStream, ServerCallContext context) { var livrosResponse = new EditoraLivrosResponse(); var result = await _servico.GetLivrosEditoraAsync(Guid.Parse(request.EditoraId)); if (result.Status is ResultStatus.NotFound) { livrosResponse.Code = (int)context.Status.StatusCode; livrosResponse.Errors.AddRange(result.Errors); livrosResponse.Message = $"Nenhum editora com o id '{request.EditoraId}' foi encontrada"; await responseStream.WriteAsync(livrosResponse); } livrosResponse.Code = (int)result.Status; livrosResponse.Errors.AddRange(result.Errors); livrosResponse.Message = "Busca realizada com sucesso"; livrosResponse.Data.AddRange( result.Value.Select(x => new EditoraLivroModel { Id = x.Id.ToString(), Titulo = x.Titulo, Descricao = x.Descricao, Valor = Convert.ToDouble(x.Valor), Isbn10 = x.ISBN_10, Edicao = x.Edicao, Idioma = x.Idioma, DataPublicacao = x.DataPublicacao.ToShortDateString(), NumeroPaginas = x.NumeroPaginas, EditoraId = x.EditoraId.ToString(), AutorId = x.AutorId.ToString() })); await responseStream.WriteAsync(livrosResponse); }