├── .all-contributorsrc ├── .gitignore ├── LICENSE ├── README.md ├── images └── swagger.png └── src └── Supermarket.API ├── .dockerignore ├── Controllers ├── BaseApiController.cs ├── CategoriesController.cs ├── Config │ └── InvalidModelStateResponseFactory.cs └── ProductsController.cs ├── Dockerfile ├── Domain ├── Models │ ├── Category.cs │ ├── Product.cs │ ├── Queries │ │ ├── ProductsQuery.cs │ │ ├── Query.cs │ │ └── QueryResult.cs │ └── UnitOfMeasurement.cs ├── Repositories │ ├── ICategoryRepository.cs │ ├── IProductRepository.cs │ └── IUnitOfWork.cs └── Services │ ├── Communication │ └── Response.cs │ ├── ICategoryService.cs │ └── IProductService.cs ├── Extensions ├── EnumExtensions.cs ├── MiddlewareExtensions.cs └── ModelStateExtensions.cs ├── GlobalUsings.cs ├── Infrastructure └── CacheKeys.cs ├── Mapping ├── ModelToResourceProfile.cs └── ResourceToModelProfile.cs ├── Persistence ├── Contexts │ ├── AppDbContext.cs │ ├── Configurations │ │ ├── CategoryConfiguration.cs │ │ └── ProductConfiguration.cs │ └── SeedData.cs └── Repositories │ ├── BaseRepository.cs │ ├── CategoryRepository.cs │ ├── ProductRepository.cs │ └── UnitOfWork.cs ├── Program.cs ├── Properties └── launchSettings.json ├── Resources ├── CategoryResource.cs ├── ErrorResource.cs ├── ProductResource.cs ├── ProductsQueryResource.cs ├── QueryResource.cs ├── QueryResultResource.cs ├── SaveCategoryResource.cs └── SaveProductResource.cs ├── Services ├── CategoryService.cs └── ProductService.cs ├── Startup.cs ├── Supermarket.API.csproj ├── Supermarket.API.sln ├── appsettings.Development.json └── appsettings.json /.all-contributorsrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/.all-contributorsrc -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/README.md -------------------------------------------------------------------------------- /images/swagger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/images/swagger.png -------------------------------------------------------------------------------- /src/Supermarket.API/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/.dockerignore -------------------------------------------------------------------------------- /src/Supermarket.API/Controllers/BaseApiController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Controllers/BaseApiController.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Controllers/CategoriesController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Controllers/CategoriesController.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Controllers/Config/InvalidModelStateResponseFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Controllers/Config/InvalidModelStateResponseFactory.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Controllers/ProductsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Controllers/ProductsController.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Dockerfile -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/Category.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/Category.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/Product.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/Product.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/Queries/ProductsQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/Queries/ProductsQuery.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/Queries/Query.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/Queries/Query.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/Queries/QueryResult.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/Queries/QueryResult.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Models/UnitOfMeasurement.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Models/UnitOfMeasurement.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Repositories/ICategoryRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Repositories/ICategoryRepository.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Repositories/IProductRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Repositories/IProductRepository.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Repositories/IUnitOfWork.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Repositories/IUnitOfWork.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Services/Communication/Response.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Services/Communication/Response.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Services/ICategoryService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Services/ICategoryService.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Domain/Services/IProductService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Domain/Services/IProductService.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Extensions/EnumExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Extensions/EnumExtensions.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Extensions/MiddlewareExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Extensions/MiddlewareExtensions.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Extensions/ModelStateExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Extensions/ModelStateExtensions.cs -------------------------------------------------------------------------------- /src/Supermarket.API/GlobalUsings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/GlobalUsings.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Infrastructure/CacheKeys.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Infrastructure/CacheKeys.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Mapping/ModelToResourceProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Mapping/ModelToResourceProfile.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Mapping/ResourceToModelProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Mapping/ResourceToModelProfile.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Contexts/AppDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Contexts/AppDbContext.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Contexts/Configurations/CategoryConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Contexts/Configurations/CategoryConfiguration.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Contexts/Configurations/ProductConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Contexts/Configurations/ProductConfiguration.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Contexts/SeedData.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Contexts/SeedData.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Repositories/BaseRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Repositories/BaseRepository.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Repositories/CategoryRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Repositories/CategoryRepository.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Repositories/ProductRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Repositories/ProductRepository.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Persistence/Repositories/UnitOfWork.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Persistence/Repositories/UnitOfWork.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Program.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/CategoryResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/CategoryResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/ErrorResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/ErrorResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/ProductResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/ProductResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/ProductsQueryResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/ProductsQueryResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/QueryResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/QueryResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/QueryResultResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/QueryResultResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/SaveCategoryResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/SaveCategoryResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Resources/SaveProductResource.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Resources/SaveProductResource.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Services/CategoryService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Services/CategoryService.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Services/ProductService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Services/ProductService.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Startup.cs -------------------------------------------------------------------------------- /src/Supermarket.API/Supermarket.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Supermarket.API.csproj -------------------------------------------------------------------------------- /src/Supermarket.API/Supermarket.API.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/Supermarket.API.sln -------------------------------------------------------------------------------- /src/Supermarket.API/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/appsettings.Development.json -------------------------------------------------------------------------------- /src/Supermarket.API/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evgomes/supermarket-api/HEAD/src/Supermarket.API/appsettings.json --------------------------------------------------------------------------------