Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

AgroSolutions Property API

API para gerenciamento de propriedades e talhões (fields) criada como parte do curso/pos-graduação sobre Arquitetura de Sistemas .NET da FIAP.

Este repositório contém uma aplicação ASP.NET Core organizada em múltiplos projetos (API, Application, Domain, Infrastructure) e exemplos de testes automatizados.

Principais funcionalidades

  • Gerenciamento de propriedades (criação, listagem por usuário logado).
  • Criação de talhões (fields) vinculados a uma propriedade.

Organização do repositório

  • src/AgroSolutions_Property.API - Projeto ASP.NET Core da API (endpoints, middlewares, configuração).
  • src/AgroSolutions_Property.Application - Camada de aplicação (serviços, validadores, conversores).
  • src/AgroSolutions_Property.Domain - Modelos de domínio, DTOs, repositórios e interfaces.
  • src/AgroSolutions_Property.Infrastructure - Implementações de persistência (EF Core), migrations e repositórios.
  • tests/AgroSolutions_Property.Tests - Testes unitários/integrados do projeto.

Requisitos

  • .NET SDK 8.0 (ou versão compatível conforme o arquivo .csproj do projeto)
  • PostgreSQL Server local ou outro provedor configurado no appsettings.json
  • Ferramentas opcionais: Postman, curl, navegador para Swagger

Como executar (desenvolvimento)

Abra um terminal (PowerShell) na raiz do repositório e execute os comandos abaixo.

  1. Restaurar dependências e compilar:
dotnet restore
dotnet build
  1. Definir o ambiente de execução (opcional, para usar appsettings.Development.json):
$env:ASPNETCORE_ENVIRONMENT = "Development"
  1. Executar a API (a partir da raiz do repositório):
dotnet run --project .\src\AgroSolutions_Property.API\AgroSolutions_Property.API.csproj

A aplicação iniciará e, por padrão, exibirá a URL de escuta no console (por exemplo, https://localhost:5001). Para ambientes com perfis de lançamento, você também pode usar launchSettings.json via IDE (Visual Studio / Rider).

Como acessar a documentação (Swagger)

Com a API em execução, abra o navegador e acesse:

https://localhost:{porta}/swagger

(Substitua {porta} pela porta informada no console ao iniciar a aplicação.)

Configuração do banco de dados e migrations

Se o projeto usa Entity Framework Core e existe a pasta Migrations na camada Infrastructure, aplique as migrations antes de executar em um ambiente com banco de dados:

# Ajuste o caminho do projeto caso necessário
dotnet ef database update --project .\src\AgroSolutions_Property.Infrastructure\AgroSolutions_Property.Infrastructure.csproj --startup-project .\src\AgroSolutions_Property.API\AgroSolutions_Property.API.csproj

Observação: o comando acima exige a ferramenta dotnet-ef. Instale-a globalmente se necessário:

dotnet tool install --global dotnet-ef

Executando os testes

Para rodar a suíte de testes do projeto:

dotnet test .\tests\AgroSolutions_Property.Tests\AgroSolutions_Property.Tests.csproj

Contrato mínimo / Endpoints principais

  • POST /api/properties - Criar uma propriedade (validações aplicadas; retorna o Id criado)
  • GET /api/properties - Listar propriedades do usuário autenticado
  • POST /api/properties/{propertyId}/fields - Criar talhões para uma propriedade

Observação: consulte a documentação Swagger para a lista completa de endpoints, modelos de request/response e exemplos.

Contribuição

Sinta-se à vontade para abrir issues e pull requests. Para contribuições:

  1. Faça um fork do repositório.
  2. Crie uma branch descritiva (ex.: feature/novo-endpoint).
  3. Adicione testes para novas funcionalidades.
  4. Abra um Pull Request descrevendo as alterações.

Licença

Distribuído sem licença explícita. Adicione uma seção de licença conforme necessário para o seu projeto.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages