├── .dockerignore ├── .github └── workflows │ └── master_thanhle-api.yml ├── .gitignore ├── InstantPOS.sln ├── README.md ├── database └── database_scripts.sql ├── src ├── InstantPOS.Application │ ├── CQRS │ │ ├── Product │ │ │ ├── BaseProductHandler.cs │ │ │ ├── Command │ │ │ │ └── CreateProductCommand.cs │ │ │ ├── CommandHandler │ │ │ │ └── CreateProductCommandHandler.cs │ │ │ ├── Query │ │ │ │ └── FetchProductQuery.cs │ │ │ └── QueryHandler │ │ │ │ └── FetchProductQueryHandler.cs │ │ └── ProductType │ │ │ ├── BaseProductTypeHandler.cs │ │ │ ├── Command │ │ │ ├── CreateProductTypeCommand.cs │ │ │ ├── DeleteProductTypeCommand.cs │ │ │ └── UpdateProductTypeCommand.cs │ │ │ ├── CommandHandler │ │ │ ├── CreateProductTypeCommandHandler.cs │ │ │ ├── DeleteProductTypeCommandHandler.cs │ │ │ └── UpdateProductTypeCommandHandler.cs │ │ │ ├── Query │ │ │ ├── FetchProductTypeQuery.cs │ │ │ └── GetProductTypeDetailsQuery.cs │ │ │ └── QueryHandler │ │ │ ├── FetchProductTypeQueryHandler.cs │ │ │ └── GetProductTypeDetailsQueryHandler.cs │ ├── Common │ │ ├── Behaviours │ │ │ └── RequestValidationBehavior.cs │ │ ├── Constants.cs │ │ ├── Exceptions │ │ │ ├── CustomValidationException.cs │ │ │ └── NotFoundException.cs │ │ └── ExtensionMethods │ │ │ └── EnumExtensions.cs │ ├── DatabaseServices │ │ └── Interfaces │ │ │ ├── IProductDataService.cs │ │ │ └── IProductTypeDataService.cs │ ├── InstantPOS.Application.csproj │ ├── Mappings │ │ ├── IMapFrom.cs │ │ └── MappingProfile.cs │ ├── Models │ │ ├── Product │ │ │ └── ProductResponseModel.cs │ │ └── ProductType │ │ │ ├── ProductTypeDetailsResponseModel.cs │ │ │ └── ProductTypeResponseModel.cs │ ├── RegisterServices.cs │ └── Validator │ │ └── ProductType │ │ ├── CreateProductTypeCommandValidator.cs │ │ └── UpdateProductTypeCommandValidator.cs ├── InstantPOS.Domain │ ├── Entities │ │ └── AuditableEntity.cs │ ├── Enums │ │ └── RecordStatus.cs │ └── InstantPOS.Domain.csproj ├── InstantPOS.Infrastructure │ ├── DatabaseServices │ │ ├── ProductDataServices.cs │ │ ├── ProductTypeDataServices.cs │ │ └── SqlConnectionFactory.cs │ ├── InstantPOS.Infrastructure.csproj │ └── RegisterServices.cs └── InstantPOS.WebAPI │ ├── Controllers │ ├── CustomBaseAPIController.cs │ ├── ProductTypesController.cs │ └── ProductsController.cs │ ├── Dockerfile │ ├── Filters │ └── ApiExceptionFilter.cs │ ├── InstantPOS.WebAPI.csproj │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── Startup.cs │ ├── appsettings.Development.json │ └── appsettings.json └── tests ├── InstantPOS.Application.Tests ├── Common │ └── Exceptions │ │ └── CustomValidationExceptionTests.cs ├── InstantPOS.Application.Tests.csproj └── Validators │ └── CreateProductTypeCommandValidatorTests.cs └── InstantPOS.WebAPI.Tests ├── Controllers ├── BaseAPITest.cs └── ProductTypesControllerTests.cs └── InstantPOS.WebAPI.Tests.csproj /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/.dockerignore -------------------------------------------------------------------------------- /.github/workflows/master_thanhle-api.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/.github/workflows/master_thanhle-api.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/.gitignore -------------------------------------------------------------------------------- /InstantPOS.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/InstantPOS.sln -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/README.md -------------------------------------------------------------------------------- /database/database_scripts.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/database/database_scripts.sql -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/Product/BaseProductHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/Product/BaseProductHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/Product/Command/CreateProductCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/Product/Command/CreateProductCommand.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/Product/CommandHandler/CreateProductCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/Product/CommandHandler/CreateProductCommandHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/Product/Query/FetchProductQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/Product/Query/FetchProductQuery.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/Product/QueryHandler/FetchProductQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/Product/QueryHandler/FetchProductQueryHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/BaseProductTypeHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/BaseProductTypeHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/Command/CreateProductTypeCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/Command/CreateProductTypeCommand.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/Command/DeleteProductTypeCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/Command/DeleteProductTypeCommand.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/Command/UpdateProductTypeCommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/Command/UpdateProductTypeCommand.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/CommandHandler/CreateProductTypeCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/CommandHandler/CreateProductTypeCommandHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/CommandHandler/DeleteProductTypeCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/CommandHandler/DeleteProductTypeCommandHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/CommandHandler/UpdateProductTypeCommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/CommandHandler/UpdateProductTypeCommandHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/Query/FetchProductTypeQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/Query/FetchProductTypeQuery.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/Query/GetProductTypeDetailsQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/Query/GetProductTypeDetailsQuery.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/QueryHandler/FetchProductTypeQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/QueryHandler/FetchProductTypeQueryHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/CQRS/ProductType/QueryHandler/GetProductTypeDetailsQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/CQRS/ProductType/QueryHandler/GetProductTypeDetailsQueryHandler.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Common/Behaviours/RequestValidationBehavior.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Common/Behaviours/RequestValidationBehavior.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Common/Constants.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Common/Constants.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Common/Exceptions/CustomValidationException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Common/Exceptions/CustomValidationException.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Common/Exceptions/NotFoundException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Common/Exceptions/NotFoundException.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Common/ExtensionMethods/EnumExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Common/ExtensionMethods/EnumExtensions.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/DatabaseServices/Interfaces/IProductDataService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/DatabaseServices/Interfaces/IProductDataService.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/DatabaseServices/Interfaces/IProductTypeDataService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/DatabaseServices/Interfaces/IProductTypeDataService.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/InstantPOS.Application.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/InstantPOS.Application.csproj -------------------------------------------------------------------------------- /src/InstantPOS.Application/Mappings/IMapFrom.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Mappings/IMapFrom.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Mappings/MappingProfile.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Mappings/MappingProfile.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Models/Product/ProductResponseModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Models/Product/ProductResponseModel.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Models/ProductType/ProductTypeDetailsResponseModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Models/ProductType/ProductTypeDetailsResponseModel.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Models/ProductType/ProductTypeResponseModel.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Models/ProductType/ProductTypeResponseModel.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/RegisterServices.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/RegisterServices.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Validator/ProductType/CreateProductTypeCommandValidator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Validator/ProductType/CreateProductTypeCommandValidator.cs -------------------------------------------------------------------------------- /src/InstantPOS.Application/Validator/ProductType/UpdateProductTypeCommandValidator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Application/Validator/ProductType/UpdateProductTypeCommandValidator.cs -------------------------------------------------------------------------------- /src/InstantPOS.Domain/Entities/AuditableEntity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Domain/Entities/AuditableEntity.cs -------------------------------------------------------------------------------- /src/InstantPOS.Domain/Enums/RecordStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Domain/Enums/RecordStatus.cs -------------------------------------------------------------------------------- /src/InstantPOS.Domain/InstantPOS.Domain.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Domain/InstantPOS.Domain.csproj -------------------------------------------------------------------------------- /src/InstantPOS.Infrastructure/DatabaseServices/ProductDataServices.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Infrastructure/DatabaseServices/ProductDataServices.cs -------------------------------------------------------------------------------- /src/InstantPOS.Infrastructure/DatabaseServices/ProductTypeDataServices.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Infrastructure/DatabaseServices/ProductTypeDataServices.cs -------------------------------------------------------------------------------- /src/InstantPOS.Infrastructure/DatabaseServices/SqlConnectionFactory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Infrastructure/DatabaseServices/SqlConnectionFactory.cs -------------------------------------------------------------------------------- /src/InstantPOS.Infrastructure/InstantPOS.Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Infrastructure/InstantPOS.Infrastructure.csproj -------------------------------------------------------------------------------- /src/InstantPOS.Infrastructure/RegisterServices.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.Infrastructure/RegisterServices.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Controllers/CustomBaseAPIController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Controllers/CustomBaseAPIController.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Controllers/ProductTypesController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Controllers/ProductTypesController.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Controllers/ProductsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Controllers/ProductsController.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Dockerfile -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Filters/ApiExceptionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Filters/ApiExceptionFilter.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/InstantPOS.WebAPI.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/InstantPOS.WebAPI.csproj -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Program.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/Startup.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/Startup.cs -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/appsettings.Development.json -------------------------------------------------------------------------------- /src/InstantPOS.WebAPI/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/src/InstantPOS.WebAPI/appsettings.json -------------------------------------------------------------------------------- /tests/InstantPOS.Application.Tests/Common/Exceptions/CustomValidationExceptionTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.Application.Tests/Common/Exceptions/CustomValidationExceptionTests.cs -------------------------------------------------------------------------------- /tests/InstantPOS.Application.Tests/InstantPOS.Application.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.Application.Tests/InstantPOS.Application.Tests.csproj -------------------------------------------------------------------------------- /tests/InstantPOS.Application.Tests/Validators/CreateProductTypeCommandValidatorTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.Application.Tests/Validators/CreateProductTypeCommandValidatorTests.cs -------------------------------------------------------------------------------- /tests/InstantPOS.WebAPI.Tests/Controllers/BaseAPITest.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.WebAPI.Tests/Controllers/BaseAPITest.cs -------------------------------------------------------------------------------- /tests/InstantPOS.WebAPI.Tests/Controllers/ProductTypesControllerTests.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.WebAPI.Tests/Controllers/ProductTypesControllerTests.cs -------------------------------------------------------------------------------- /tests/InstantPOS.WebAPI.Tests/InstantPOS.WebAPI.Tests.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thanhle0212/Self-Order-System/HEAD/tests/InstantPOS.WebAPI.Tests/InstantPOS.WebAPI.Tests.csproj --------------------------------------------------------------------------------